Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
|
|
Add support for Redis 6 ACLs in the `Redis`, `RedisCluster`, and `RedisArray` classes.
On a related note, it adds a mechanism for users to customize how we generate persistent connection IDs such that they can be grouped in different ways depending on the specific use case required (e.g. it would allow connections to be grouped by username, or by user-defined persistent_id, or both).
|
|
|
|
package.xml has a minimum version of 7.0
PHP 8.0 will probably be out in around a year.
|
|
|
|
|
|
|
|
|
|
For unknown reasons some methods named differently to Redis
commands (for example setTimeout instead of expire).
This change aligns naming and allows easly remove aliases in future if
we will decide to deprecate them.
|
|
This commit updates ZPOPMIN/ZPOPMAX to return the same format that
zRange WITHSCORES and zRangeByScore WITHSCORES does.
In addition the blocking variants BZPOPMIN and BZPOPMAX are implemented.
|
|
|
|
This addresses #1502, #1487
|
|
|
|
|
|
|
|
|
|
Streams API
|
|
Conflicts:
redis_session.c
tests/RedisTest.php
|
|
|
|
|
|
This commit implements UNLINK for Redis, RedisCluster, and RedisArray.
To a client library UNLINK behaves identically to DEL so we can use the
same handlers for both.
|
|
* Use a precalculated SHA1 of our lock release script and first
attempt to EVALSHA the script while falling back to EVAL if that
fails. This means that the very first time we attempt to release
a lock after server restart or script cache will fail but subsequent
attempts will succeed as Redis will cache the script automatically.
* Reorganized the new locking prototypes by making them static and removing
them from the header file as they never need to be called from outside
of redis_session.c anyway. Did the same for the lock_secret structure
as we don't need to expose the structure externally.
* Consolidated allocation and deallocation of lock pointers such that our
redis_pool "constructor" and "desctructor" handle that as well.
* Updating how we release the lock means we no longer need the new REDIS_G
module globals, so those were removed.
* HOST_NAME_MAX doesn't exist on OSX so added some preprocessor logic around that
Still a WIP as it needs more testing as I'm sure I broke *something* :-)
|
|
use estrdup for filling
|
|
|
|
|
|
|
|
|
|
Since we don't do anything while request start/end we may safely remove
PHP_RINIT and PHP_RSHUTDOWN functions.
|
|
|
|
|
|
|
|
Change multi, pipeline and remove unused prototypes
|
|
|
|
`hStrLen` command
|
|
|
|
|
|
|
|
|
|
|
|
All tests passed. \o/
|
|
|
|
|
|
To avoid users confusion, this is NOT a released version
And use something > last released version.
|
|
This commit adds initial support for the new GEO commands.
Presently the more complicated GEORADIUS[BYMEMBER] command
doesn't do much post-processing of the response, but will
probably be modified in the future to return it in a more
php friendly way.
|
|
Presently, the sAdd command is variadic, meaning that it takes a key
and then 1 to N additional arguments for the members being added. We
need to keep this functionality to avoid breaking existing code,
but there are good performance and other reasons to have an sAdd
command which takes a key followed by an array of members, which is
what the sAddArray method implements.
|
|
|