Changelog
All changes to phpredis will be documented in this file.
We're basing this format on Keep a Changelog,
and PhpRedis adheres to Semantic Versioning.
[5.2.1] - 2020-03-19 (GitHub, PECL)
Sponsors
Fixed
[5.2.0] - 2020-03-02 (GitHub, PECL)
There were no changes between 5.2.0RC2 and 5.2.0
[5.2.0RC2] - 2020-02-21 (GitHub, PECL)
Sponsors
Fixed
[5.2.0RC1] - 2020-02-15 (GitHub, PECL)
Sponsors
Added
Fixed
-
Fixed ASK redirection logic
ba73fbee
(Michael Grunder)
-
Create specific 'test skipped' exception
c3d83d44
(Michael Grunder)
-
Fixed memory leaks in RedisCluster
a107c9fc
(Michael Grunder)
-
Fixes for session lifetime values that underflow or overflow
7a79ad9c,
3c48a332
(Michael Grunder)
-
Enables slot caching for Redis Cluster
23b1a9d8
(Michael Booth)
-
Housekeeping (spelling, doc changes, etc)
23f9de30,
d07a8df6,
2d39b48d,
0ef488fc,
2c35e435,
f52bd8a8,
2ddc5f21,
1ff7dfb7,
db446138
(Pavlo Yatsukhnenko,
Tyson Andre, Michael Grunder,
Paul DelRe, Tyson Andre)
Changed
[5.1.1] - 2019-11-11 (GitHub, PECL)
Fixed
[5.1.0] - 2019-10-31 (GitHub, PECL)
Added
Changed
Fixed
Removed
[5.0.2] - 2019-07-29 (GitHub, PECL)
Fixed
Changed
[5.0.1] - 2019-07-12 (GitHub, PECL)
Fixed
[5.0.0] - 2019-07-02 (GitHub, PECL)
This release contains important improvements and breaking changes. The most
interesting are: drop PHP5 support, RedisCluster slots caching, JSON and msgpack
serializers, soft deprecation of non-Redis commands.
Breaking Changes
Added
- Adds OPT_REPLY_LITERAL for rawCommand and EVAL 5cb30fb2
(Michael Grunder)
- JSON serializer 98bd2886,
96c57139,
235a27
(Pavlo Yatsukhnenko, Michael Grunder)
- msgpack serializer d5b8f833,
545250f3,
52bae8ab
(@bgort, Pavlo Yatsukhnenko,
Michael Grunder)
- Add support for STREAM to the type command d7450b2f,
068ce978, 8a45d18c
(Michael Grunder, Pavlo Yatsukhnenko)
- Add Cluster slots caching 9f0d7bc0,
ea081e05 (Michael Grunder)
Changed
Deprecated
Removed
Fixed
[4.3.0] - 2019-03-13 (GitHub, PECL)
This is probably the last release with PHP 5 suport!!!
Added
Changed
Fixed
[4.2.0] - 2018-11-08 (GitHub, PECL)
The main feature of this release is new Streams API implemented by
Michael Grunder.
Added
Changed
Fixed
[4.0.0] - 2018-03-07 (GitHub, PECL)
WARNING: THIS RELEASE CONTAINS BREAKING API CHANGES!
Added
Changed
Fixed
[3.1.5] - 2017-09-27 (GitHub, PECL)
This is interim release which contains only bug fixes.
Fixed
[3.1.4] - 2017-09-27 (GitHub, PECL)
The primary new feature phpredis 3.1.4 is the ability to send MULTI .. EXEC
blocks in pipeline mode. There are also many bugfixes and minor improvements
to the api, listed below.
Added
- Allow mixing MULTI and PIPELINE modes (experimental)! 5874b0
(Pavlo Yatsukhnenko)
- Added integration for coverty static analysis and fixed several warnings
faac8b0, eff7398, 4766c25, 0438ab4, 1e0b065, 733732a, 26eeda5, 735025,
42f1c9, af71d4 (Pavlo Yatsukhnenko).
- Added arginfo introspection structures 81a0303, d5609fc, e5660be, 3c60e1f,
50dcb15, 6c2c6fa, 212e323, e23be2c, 682593d, f8de702, 4ef3acd, f116be9,
5c111dd, 9caa029, 0d69650, 6859828, 024e593, 3643ab6, f576fab, 122d41f,
a09d0e6 (Tyson Andre, Pavlo Yatsukhnenko).
- Added a github issue template 61aba9 (Pavlo Yatsukhnenko)
Changed
Fixed
- Fixed link to redis cluster documentation 3b0b06 (Pavlo Yatsukhnenko)
- Removed duplicate HGET in redis array hash table, formatting d0b9c5
(Pavlo Yatsukhnenko).
- Treat NULL bulk as success for session read 659450 (Pavlo Yatsukhnenko)
- Fix valgrind warnings 471ce07, 1ab89e1, b624a8b (Pavlo Yatsukhnenko)
- Fix php5/php7 compatibility layer 1ab89e, 4e3225 (Pavlo Yatsukhnenko)
- Fix typo in README.markdown e47e44 (Toby Schrapel)
- Initialize gc member of zend_string 37f569 (Pavlo Yatsukhnenko).
- Don't try to set TCP_NODELAY on a unix socket and don't warn on multiple
calls to pipeline d11798, 77aeba (Michael Grunder)
- Various other library fixes 142b51, 4452f6, e672f4, 658ee3, c9df77, 4a0a46
(Pavlo Yatsukhnenko)
Removed
[3.1.3] - 2017-07-15 (GitHub, PECL)
This release contains two big improvements:
- Adding a new printf like command construction function with additionaly
format specifiers specific to phpredis.
- Implementation of custom objects for Redis and RedisArray wich eliminates
double hash lookup.
Also many small improvements and bug fixes were made.
Added
Changed
Fixed
[3.1.2] - 2017-03-16 (GitHub, PECL)
Changes
Fixed
[3.1.1] - 2017-02-01 (GitHub, PECL)
This release contains mostly fixes for issues introduced when merging
the php 5 and 7 codebase into a single branch.
- Additional test updates for 32 bit systems (@remicollet)
- ARM rounding issue in tests (@remicollet)
- Use new zend_list_close instead of zend_list_delete when reconnecting.
- Refactoring of redis_boolean_response_impl and redis_sock_write (@yatsukhnenko)
- Fixed a segfault in igbinary serialization (@yatsukhnenko)
- Restore 2.2.8/3.0.0 functionality to distinguish between an error
and simply empty session data. (@remicollet)
- Fix double to string conversion function (@yatsukhnenko)
- Use PHP_FE_END definition when available (@remicollet)
- Fixed various 'static function declared but not used' warnings
- Fixes to various calls which were typecasting pointers to the
- wrong size. (@remicollet)
- Added php session unit test (@yatsukhnenko)
- Added explicit module dependancy for igbinary (@remicollet)
- Added phpinfo serialization information (@remicollet)
[3.1.0] - 2016-12-14 (GitHub, PECL)
In this version of phpredis codebase was unified to work with all versions of php \o/
Also many bug fixes and some improvements has been made.
Added
Fixed
[3.0.0] - 2016-06-10 (GitHub, PECL)
This version of phpredis supports cluster and is intended for php versions
7.0.0 and higher. To compile cluster-enabled phpredis for older versions
of php, please use the 2.2.8 pecl package.
A huge thanks goes out to Sean DuBois for doing all the work required to get
phpredis working in php 7.0!
Added
- PHP 7 Support 3159bd2,
567dc2f, daa4d9f,
f2711e3, 9cb9d07,
d51c89, 9ff8f49,
33bb629, cbdf65a,
f30b7fd, c687a51,
6b3e773, 2bf8241,
71bd3d, 9221ca4,
4e00df6, e2407ca,
97fcfe6, 77e6200
Sean DuBois
- Redis Cluster support
- IPv6 support
Changed
Fixed
[2.2.8] - 2016-06-02 (GitHub, PECL)
The main improvement in this version of phpredis is support for Redis
Cluster. This version of phpredis is intended for versions of php older
than 7.
Added
- Added randomization to our seed nodes to balance which instance is used
to map the keyspace 32eb1c5f (Vitaliy Stepanyuk)
- Added support for IPv6 addresses
Fixed
[2.2.7] - 2015-03-03 (GitHub, PECL)
Added
- Implemented PFADD, PFMERGE, and PFCOUNT command handling
- Implemented ZRANGEBYLEX command (holding off on ZREVRANGEBYLEX
as that won't be out until 3.0)
- Implemented getMode() so clients can detect whether we're in
ATOMIC/MULTI/PIPELINE mode.
- Implemented rawCommand() so clients can send arbitrary things to
the redis server
- Implemented DEBUG OBJECT (@michael-grunder, @isage)
- Added/abide by connect timeout for RedisArray
Fixed
- Select to the last selected DB when phpredis reconnects
- Fix a possible invalid free in _serialize()
- Added SAVE and BGSAVE to "distributable" commands for RedisArray
- Fixed invalid "argc" calculation in HLL commands (@welting)
- Allow clients to break out of the subscribe loop and return context.
- Fixes a memory leak in SCAN when OPT_SCAN_RETRY id.
- Fix possible segfault when igbinary is enabled (@remicollet).
- Add a couple of cases where we throw on an error (LOADING/NOAUTH/MASTERDOWN)
- Fix several issues with serialization NARY
- Fix missing TSRMLS_CC and a TSRMLS_DC/TSRMLS_CC typo (@itcom)
[2.2.5] - 2014-03-15 (GitHub, PECL)
Added
- Support for the BITPOS command
- Connection timeout option for RedisArray (@MiketoString)
- A _serialize method, to complement our existing _unserialize method
- Support for the PUBSUB command
- Support for SCAN, SSCAN, HSCAN, and ZSCAN
- Support for the WAIT command
Fixed
- Handle the COPY and REPLACE arguments for the MIGRATE command
- Fix syntax error in documentation for the SET command (@mithunsatheesh)
- Fix Homebrew documentation instructions (@mathias)
[2.2.4] - 2013-09-01 (GitHub, PECL)
Added
- Randomized reconnect delay for RedisArray @mobli
- Lazy connections to RedisArray servers @mobli
- Allow LONG and STRING keys in MGET/MSET
- Extended SET options for Redis >= 2.6.12
- Persistent connections and UNIX SOCKET support for RedisArray
- Allow aggregates for ZUNION/ZINTER without weights @mheijkoop
- Support for SLOWLOG command
Changed
- Reworked MGET algorithm to run in linear time regardless of key count.
- Reworked ZINTERSTORE/ZUNIONSTORE algorithm to run in linear time
Fixed
- C99 Compliance (or rather lack thereof) fix @mobli
- Added ZEND_ACC_CTOR and ZEND_ACC_DTOR @euskadi31
- Stop throwing and clearing an exception on connect failure @matmoi
- Fix a false positive unit test failure having to do with TTL returns