Every so often our tests will fail because we attempt to interact with
one of the daemonized server instances before it has enough time to
actually start.
Usually this happens when we try to use the cli tool to execute
`--cluster-create`, but it can occur elsewhere as well.
This commit adds a step that waits for every instance that we started to
actually be up before trying to create the cluster and run subsequent
unit tests.
Additionally it switches from `$(seq a b)` to the `{a..b}` brace
expansion.
Add Valkey to our server matrix in addition to making the jobs a bit
more efficient by only installing the specific server we're testing on
each run.
For now we allow tests to fail against Valkey as they don't yet have an
official release. Once there is an official release we'll remove the
`continue-on-error` setting for Valkey.
Let gen_stub.php define the constants for us, including deriving their
actual values from C defines.
As a side-effect we have to drop support for PHP < 7.2 as it does not
have interned strings.
* Fix expire check in testttl
The previous logic was timing related and also kind of testing Redis'
expiration logic itself.
* Use a smaller cluster in GitHub CI