Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/phpredis/phpredis.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTill Krüss <tillkruss@users.noreply.github.com>2022-11-09 01:49:42 +0300
committerGitHub <noreply@github.com>2022-11-09 01:49:42 +0300
commit114f4d605635cfa8755000ff4659680c713ceb06 (patch)
tree5577a9790526cc97335a25b6765f6516af396921 /CHANGELOG.md
parent7930a7887565c77afb5eb1ebfec65ce54cee8f7e (diff)
Uniform meta file names (#2248)
* rename changelog to CHANGELOG * Rename COPYING to LICENSE * Rename cluster.markdown to cluster.md * Rename README.markdown to README.md * Rename INSTALL.markdown to INSTALL.md\ * Rename sentinel.markdown to sentinel.md * Rename arrays.markdown to array.md * fix all references
Diffstat (limited to 'CHANGELOG.md')
-rw-r--r--CHANGELOG.md1267
1 files changed, 1267 insertions, 0 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
new file mode 100644
index 00000000..c345854e
--- /dev/null
+++ b/CHANGELOG.md
@@ -0,0 +1,1267 @@
+# Changelog
+
+All changes to phpredis will be documented in this file.
+
+We're basing this format on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
+and PhpRedis adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
+
+## [Unreleased]
+
+## [5.3.5RC1] - 2021-11-16 ([GitHub](https://github.com/phpredis/phpredis/releases/5.3.5RC1), [PECL](https://pecl.php.net/package/redis/5.3.5RC1))
+
+### Sponsors :sparkling_heart:
+
+- [Audiomack](https://audiomack.com)
+- [Open LMS](https://openlms.net/)
+- [BlueHost](https://bluehost.com)
+- [Object Cache Pro for WordPress](https://objectcache.pro/)
+- [Avtandil Kikabidze](https://github.com/akalongman)
+- [Zaher Ghaibeh](https://github.com/zaherg)
+- [BatchLabs](https://batch.com)
+- [Stackhero](https://github.com/stackhero-io)
+- [Florian Levis](https://github.com/Gounlaf)
+- [Luis Zárate](https://github.com/jlzaratec)
+
+### Fixed
+
+- Fixed segfault in redis_setoption_handler
+ [#2030](https://github.com/phpredis/phpredis/issues/2030)
+ [692e4e84](https://github.com/phpredis/phpredis/commit/692e4e84)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Fix masters array in the event of a cluster failover
+ [bce692962](https://github.com/phpredis/phpredis/commit/bce692962)
+ [#2025](https://github.com/phpredis/phpredis/pull/2025)
+ ([Bar Shaul](https://github.com/barshaul))
+- Fix 32bit type error
+ [672dec87f](https://github.com/phpredis/phpredis/commit/672dec87f)
+ ([#1956](https://github.com/phpredis/phpredis/issues/1956))
+ ([Remi Collet](https://github.com/remicollet))
+- Fix radix character in certain locales
+ [#1893](https://github.com/phpredis/phpredis/issues/1893)
+ [89a871e24](https://github.com/phpredis/phpredis/commit/89a871e24)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- ZSTD Validation fix
+ [6a77ef5cd](https://github.com/phpredis/phpredis/commit/6a77ef5cd)
+ ([Michael Grunder](https://github.com/michael-grunder))
+- Remove superfluous typecast
+ [b2871471f](https://github.com/phpredis/phpredis/commit/b2871471f)
+ ([Remi Collet](https://github.com/remicollet))
+- Updated documentation
+ [f84168657](https://github.com/phpredis/phpredis/commit/f84168657),
+ [d017788e7](https://github.com/phpredis/phpredis/commit/d017788e7),
+ [20ac84710](https://github.com/phpredis/phpredis/commit/20ac84710),
+ [0adf05260](https://github.com/phpredis/phpredis/commit/0adf05260),
+ [aee29bf73](https://github.com/phpredis/phpredis/commit/aee29bf73),
+ [09a095e72](https://github.com/phpredis/phpredis/commit/09a095e72),
+ [12ffbf33a](https://github.com/phpredis/phpredis/commit/12ffbf33a),
+ [ff331af98](https://github.com/phpredis/phpredis/commit/ff331af98),
+ [a6bdb8731](https://github.com/phpredis/phpredis/commit/a6bdb8731),
+ [305c15840](https://github.com/phpredis/phpredis/commit/305c15840),
+ [1aa10e93a](https://github.com/phpredis/phpredis/commit/1aa10e93a),
+ [d78b0c79d](https://github.com/phpredis/phpredis/commit/d78b0c79d),
+ [c6d37c27c](https://github.com/phpredis/phpredis/commit/c6d37c27c),
+ [a6303f5b9](https://github.com/phpredis/phpredis/commit/a6303f5b9),
+ [d144bd2c7](https://github.com/phpredis/phpredis/commit/d144bd2c7),
+ [a6fb815ef](https://github.com/phpredis/phpredis/commit/a6fb815ef),
+ [9ef862bc6](https://github.com/phpredis/phpredis/commit/9ef862bc6)
+ ([neodisco](https://github.com/neodisco), [Billy Wilson](https://github.com/wilsonwr),
+ [Clément Tessier](https://github.com/ctessier), [wangqr](https://github.com/wangqr),
+ [T. Todua](https://github.com/ttodua), [Naphat Deepar](https://github.com/feverxai),
+ [dengliming](https://github.com/dengliming), [Poplary](https://github.com/poplary),
+ [Maxime Cornet](https://github.com/xElysioN), [Michael Grunder](https://github.com/michael-grunder),
+ [Emanuele Filannino](https://github.com/tatekan), [MiRacLe](https://github.com/MiRacLe-RPZ),
+ [Michael Grunder](https://github.com/michael-grunder))
+- Travis CI Fixes
+ [a43f4586e](https://github.com/phpredis/phpredis/commit/a43f4586e),
+ [4fde8178f](https://github.com/phpredis/phpredis/commit/4fde8178f),
+ [7bd5415ac](https://github.com/phpredis/phpredis/commit/7bd5415ac),
+ [fdb8c4bb7](https://github.com/phpredis/phpredis/commit/fdb8c4bb7),
+ [d4f407470](https://github.com/phpredis/phpredis/commit/d4f407470)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Minor fixes/cleanup
+ [2e190adc1](https://github.com/phpredis/phpredis/commit/2e190adc1),
+ [99975b592](https://github.com/phpredis/phpredis/commit/99975b592),
+ [9d0879fa5](https://github.com/phpredis/phpredis/commit/9d0879fa5),
+ [22b06457b](https://github.com/phpredis/phpredis/commit/22b06457b),
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Fix RedisArray constructor bug
+ [85dc883ba](https://github.com/phpredis/phpredis/commit/85dc883ba)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+### Changed
+
+- Moved to GitHub Actions
+ [4d2afa786](https://github.com/phpredis/phpredis/commit/4d2afa786),
+ [502d09fd5](https://github.com/phpredis/phpredis/commit/502d09fd5)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Use more appropriate array iteration macro
+ [6008900c2](https://github.com/phpredis/phpredis/commit/6008900c2)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Clean up session tests
+ [ab25ae7f3](https://github.com/phpredis/phpredis/commit/ab25ae7f3)
+ ([Michael Grunder](https://github.com/michael-grunder))
+- RedisArray refactors
+ [1250f0001](https://github.com/phpredis/phpredis/commit/1250f0001),
+ [017b2ea7f](https://github.com/phpredis/phpredis/commit/017b2ea7f),
+ [37ed3f079](https://github.com/phpredis/phpredis/commit/37ed3f079)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Use zend_parse_parameters_none helper
+ [a26b14dbe](https://github.com/phpredis/phpredis/commit/a26b14dbe)
+ ([Remi Collet](https://github.com/remicollet))
+
+### Added
+
+- Support for various exponential backoff strategies
+ [#1986](https://github.com/phpredis/phpredis/commit/#1986),
+ [#1993](https://github.com/phpredis/phpredis/commit/#1993),
+ [732eb8dcb](https://github.com/phpredis/phpredis/commit/732eb8dcb)
+ [05129c3a3](https://github.com/phpredis/phpredis/commit/05129c3a3)
+ [5bba6a7fc](https://github.com/phpredis/phpredis/commit/5bba6a7fc)
+ ([Nathaniel Braun](https://github.com/nbraun-amazon))
+- Added experimental support for detecting a dirty connection by
+ trying to determine if the underlying stream is readable.
+ [d68579562](https://github.com/phpredis/phpredis/commit/d68579562)
+ [#2013](https://github.com/phpredis/phpredis/issues/2013)
+ ([Michael Grunder](https://github.com/michael-grunder))
+- Created distinct compression utility methods (pack/unpack)
+ [#1939](https://github.com/phpredis/phpredis/issues/1939)
+ [da2790aec](https://github.com/phpredis/phpredis/commit/da2790aec)
+ ([Michael Grunder](https://github.com/michael-grunder))
+- SMISMEMBER Command
+ [#1894](https://github.com/phpredis/phpredis/commit/#1894)
+ [ae2382472](https://github.com/phpredis/phpredis/commit/ae2382472),
+ [ed283e1ab](https://github.com/phpredis/phpredis/commit/ed283e1ab),
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+## [5.3.4] - 2021-03-24 ([GitHub](https://github.com/phpredis/phpredis/releases/5.3.4), [PECL](https://pecl.php.net/package/redis/5.3.4))
+
+### Sponsors :sparkling_heart:
+
+- [Audiomack](https://audiomack.com)
+- [Open LMS](https://openlms.net/)
+- [BlueHost](https://bluehost.com)
+- [Object Cache Pro for WordPress](https://objectcache.pro/)
+- [Avtandil Kikabidze](https://github.com/akalongman)
+- [Zaher Ghaibeh](https://github.com/zaherg)
+- [BatchLabs](https://batch.com)
+
+### Fixed
+
+- Fix multi/pipeline segfault on Apple silicon [#1917](https://github.com/phpredis/phpredis/issues/1917)
+ [e0796d48](https://github.com/phpredis/phpredis/commit/e0796d48af18adac2b93982474e7df8de79ec854)
+ ([Michael Grunder](https://github.com/michael-grunder))
+- Pass compression flag on HMGET in RedisCluster [#1945](https://github.com/phpredis/phpredis/issues/1945)
+ [edc724e6](https://github.com/phpredis/phpredis/commit/edc724e6022620414abf4f90256522d03c3160fd)
+ ([Adam Olley](https://github.com/aolley))
+- Abide by ZSTD error return constants [#1936](https://github.com/phpredis/phpredis/issues/1936)
+ [8400ed1c](https://github.com/phpredis/phpredis/pull/1937/commits/8400ed1cb23a22f70727cb60e88ca5397ee10d23)
+ ([Michael Grunder](https://github.com/michael-grunder))
+- Fix timing related CI session tests
+ [9b986bf8](https://github.com/phpredis/phpredis/commit/9b986bf81859f5a5983cd148cb15ee6ce292d288)
+ ([Michael Grunder](https://github.com/michael-grunder))
+
+## [5.3.3] - 2021-02-01 ([GitHub](https://github.com/phpredis/phpredis/releases/5.3.3), [PECL](https://pecl.php.net/package/redis/5.3.3))
+
+### Sponsors :sparkling_heart:
+
+- [Audiomack](https://audiomack.com)
+- [BlueHost](https://bluehost.com)
+- [Redis Cache Pro for WordPress](https://wprediscache.com)
+- [Avtandil Kikabidze](https://github.com/akalongman)
+- [Oleg Babushkin](https://github.com/olbabushkin)
+- [Zaher Ghaibeh](https://github.com/zaherg)
+- [BatchLabs](https://batch.com)
+
+### Fixed
+
+- Fixed Windows includes for PHP 8
+ [270b4db8](https://www.github.com/phpredis//phpredis/commit/270b4db821fcbe9fb881eef83e046f87587c4110)
+ ([Jan-E](https://github.com/Jan-E))
+- Fix hash_ops for PHP 8.0.1
+ [87297cbb](https://www.github.com/phpredis/phpredis/commit/87297cbb4000c88b07e729b9379de321ead74aa2)
+ ([defender-11](https://github.com/defender-11))
+- Disable clone for Redis and RedisCluster objects. Presently they segfault.
+ [cd05a344](https://www.github.com/phpredis/phpredis/commit/87297cbb4000c88b07e729b9379de321ead74aa2)
+ ([Michael Grunder](https://github.com/michael-grunder))
+
+## [5.3.2] - 2020-10-22 ([GitHub](https://github.com/phpredis/phpredis/releases/5.3.2), [PECL](https://pecl.php.net/package/redis/5.3.2))
+
+### Sponsors :sparkling_heart:
+
+- [Audiomack](https://audiomack.com)
+- [BlueHost](https://bluehost.com)
+- [Redis Cache Pro for WordPress](https://wprediscache.com)
+- [Avtandil Kikabidze](https://github.com/akalongman)
+- [Oleg Babushkin](https://github.com/olbabushkin)
+
+### Fixed
+
+- Verify SET options are strings before testing them as strings
+ [514bc371](https://github.com/phpredis/phpredis/commit/514bc37102c08c1ba7222212b125390f34c35803)
+ ([Michael Grunder](https://github.com/michael-grunder))
+- Fix cluster segfault when dealing with NULL multi bulk replies in RedisCluster
+ [950e8de8](https://github.com/phpredis/phpredis/commit/950e8de807ba17ecfff62504a6ee7a959a5df714)
+ ([Michael Grunder](https://github.com/michael-grunder),
+ [Alex Offshore](https://github.com/offshore))
+- Fix xReadGroup() must return message id
+ [500916a4](https://github.com/phpredis/phpredis/commit/500916a4d052aa180aa8d27a9e147e64f3ee6303)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Fix memory leak in rediscluster session handler
+ [b2cffffc](https://github.com/phpredis/phpredis/commit/b2cffffc107541643bab7eb81751b497bc264639)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Fix XInfo() returns false if the stream is empty
+ [5719c9f7](https://github.com/phpredis/phpredis/commit/5719c9f7ff8ba4595c0f2d82e9549a604d925ed7),
+ [566fdeeb](https://github.com/phpredis/phpredis/commit/566fdeeb19c8112ac83cf4e47be6928626aa7b37)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko),
+ [Michael Grunder](https://github.com/michael-grunder))
+
+### Changed
+
+- Use "%.17g" sprintf format for doubles as done in Redis server.
+ [32be3006](https://github.com/phpredis/phpredis/commit/32be3006e6d5a9d58636efd53fe02aa22f18c496)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Relax requirements on set's expire argument
+ [36458071](https://github.com/phpredis/phpredis/commit/364580718891de94aac13dc352aa994d531d4272)
+ ([Michael Grunder](https://github.com/michael-grunder))
+- Refactor redis_sock_check_liveness
+ [c5950644](https://github.com/phpredis/phpredis/commit/c5950644e92e61e0c3f38a8ab8a380f707102eb0)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- PHP8 compatibility
+ [a7662da7](https://github.com/phpredis/phpredis/commit/a7662da7924dcbaa74f5f2c6e1dce06b19e64bfc),
+ [f4a30cb2](https://github.com/phpredis/phpredis/commit/f4a30cb2bda7414b159bf8b1be69dad52ed6f008),
+ [17848791](https://github.com/phpredis/phpredis/commit/178487919148a0f8f1ad4cae62847bc4ae82ee8c)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko),
+ [Remi Collet](https://github.com/remicollet))
+- Update documentation
+ [c9ed151d](https://github.com/phpredis/phpredis/commit/c9ed151dbae1532a98c0c9322c9401c47d1da149),
+ [398c99d9](https://github.com/phpredis/phpredis/commit/398c99d9851b267d9aaaa42c097c5fe54d507a6e)
+ ([Ali Alwash](https://github.com/aalwash),
+ [Gregoire Pineau](https://github.com/lyrixx))
+
+### Added
+
+- Add `Redis::OPT_NULL_MULTIBULK_AS_NULL` setting to treat NULL multi bulk replies as `NULL` instead of `[]`.
+ [950e8de8](https://github.com/phpredis/phpredis/commit/950e8de807ba17ecfff62504a6ee7a959a5df714)
+ ([Michael Grunder](https://github.com/michael-grunder),
+ [Alex Offshore](https://github.com/offshore))
+- Allow to specify stream context for rediscluster session handler
+ [a8daaff8](https://github.com/phpredis/phpredis/commit/a8daaff87a055bb6b4fb8702151915f56e144649),
+ [4fbe7df7](https://github.com/phpredis/phpredis/commit/4fbe7df79b9b0e03f92e8323aed0bda9513bc20a)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Add new parameter to RedisCluster to specify stream ssl/tls context.
+ [f771ea16](https://github.com/phpredis/phpredis/commit/f771ea16b77f39fcca555bec2d952412265197aa),
+ [72024afe](https://github.com/phpredis/phpredis/commit/72024afed3640230bbd1a017b2a374d12ab88e59)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Add new parameter to RedisSentinel to specify auth information
+ [81c502ae](https://github.com/phpredis/phpredis/commit/81c502ae7c0de65d63cd514ee59849c9d1b0b952)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+## [5.3.1] - 2020-07-06 ([GitHub](https://github.com/phpredis/phpredis/releases/5.3.1), [PECL](https://pecl.php.net/package/redis/5.3.1))
+
+### Sponsors :sparkling_heart:
+
+- [Audiomack](https://audiomack.com)
+- [BlueHost](https://bluehost.com)
+- [Redis Cache Pro for WordPress](https://wprediscache.com)
+- [Avtandil Kikabidze](https://github.com/akalongman)
+
+### Fixed
+
+- Properly clean up on session start failure
+ [066cff6a](https://github.com/phpredis/phpredis/commit/066cff6adee03ce05ec5d57083eb7995dfa4344d)
+ ([Michael Grunder](https://github.com/michael-grunder))
+- Treat NULL as a failure for redis_extract_auth_info
+ [49428a2f](https://github.com/phpredis/phpredis/commit/49428a2f7072dc30a52db4155aed3d382800b1a6),
+ [14ac969d](https://github.com/phpredis/phpredis/commit/14ac969da29dbf7203f8db31988ca26b9b45f583)
+ ([Michael Grunder](https://github.com/michael-grunder))
+- Don't dereference a NULL zend_string or try to efree it
+ [ff2e160f](https://github.com/phpredis/phpredis/commit/ff2e160f408efdc97676cffaa02093e65c2ad634),
+ [7fed06f2](https://github.com/phpredis/phpredis/commit/7fed60f248e2249e6cac5c5c3090509aa47647fb)
+ ([Michael Grunder](https://github.com/michael-grunder))
+- Fix config.m4 messages and test for and include php_hash.h
+ [83a1b7c5](https://github.com/phpredis/phpredis/commit/83a1b7c5e225abd94cd3459c52bf7d502dfb0979),
+ [3c56289c](https://github.com/phpredis/phpredis/commit/3c56289c71516a7c0ac81713ef2786c2b9e52274),
+ [08f202e7](https://github.com/phpredis/phpredis/commit/08f202e775037ccf849d7b933dddb467c9c2ee5f),
+ ([Remi Collet](https://github.com/remicollet))
+
+### Added
+
+- Add openSUSE installation instructions
+ [13a168f4](https://github.com/phpredis/phpredis/commit/13a168f42d6639a051d6f829d573dd81bcb97f3a)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+### Removed
+
+- Remove EOL Fedora installation instructions
+ [b4779e6a](https://github.com/phpredis/phpredis/commit/b4779e6a919103bd65fa0e6a0c88e658e05a3e7c)
+ ([Remi Collet](https://github.com/remicollet))
+
+## [5.3.0] - 2020-06-30 ([GitHub](https://github.com/phpredis/phpredis/releases/tag/5.3.0), [PECL](https://pecl.php.net/package/redis/5.3.0))
+
+### Sponsors :sparkling_heart:
+
+- [Audiomack](https://audiomack.com)
+- [BlueHost](https://bluehost.com)
+- [Redis Cache Pro for WordPress](https://wprediscache.com)
+- [Avtandil Kikabidze](https://github.com/akalongman)
+
+*There were no changes between 5.3.0RC2 and 5.3.0*
+
+## [5.3.0RC2] - 2020-06-26 ([GitHub](https://github.com/phpredis/phpredis/releases/tag/5.3.0RC2), [PECL](https://pecl.php.net/package/redis/5.3.0RC2))
+
+### Sponsors :sparkling_heart:
+
+- [Audiomack](https://audiomack.com)
+- [BlueHost](https://bluehost.com)
+- [Redis Cache Pro for WordPress](https://wprediscache.com/)
+- [Avtandil Kikabidze](https://github.com/akalongman)
+
+### Fixed
+
+- Fix LZ4 configuration and use pkg-config if we have it
+ [df398cb0](https://github.com/phpredis/phpredis/commit/df398cb07cd10d870c6805d5834703dc39590b0f)
+ ([Remi Collet](https://github.com/remicollet))
+
+- Make sure persistent pool ID is NULL terminated
+ [0838b5bd](https://github.com/phpredis/phpredis/commit/0838b5bde7ef25d419868c7e705bf6c70d68ea20),
+ [57bb95bf](https://github.com/phpredis/phpredis/commit/57bb95bf5a01a2adb74e2bf73bb285488e0d1586)
+ ([Michael Grunder](https://github.com/michael-grunder))
+
+### Changed
+
+- Run LZ4 tests in Travis
+ [3ba3f06d](https://github.com/phpredis/phpredis/commit/3ba3f06d51ff126eb51dd697381c0e56b38bbcf3)
+ ([Michael Grunder](https://github.com/michael-grunder))
+
+## [5.3.0RC1]
+
+### Sponsors :sparkling_heart:
+
+- [Audiomack.com](https://audiomack.com)
+- [BlueHost](https://bluehost.com)
+- [Redis Cache Pro for WordPress](https://wprediscache.com/)
+- [Avtandil Kikabidze](https://github.com/akalongman)
+
+### Added
+
+- Support for Redis 6 ACLs
+ [a311cc4e](https://github.com/phpredis/phpredis/commit/a311cc4ec3cecdbaf83ba66985efa82137e37cc0)
+ ([Michael Grunder](https://github.com/michael-grunder))
+
+- LZ4 Compression
+ [04def9fb](https://github.com/phpredis/phpredis/commit/04def9fbe2194b3b711362de57260a6cd5216e69)
+ ([Ilia Alshanetsky](https://github.com/iliaal),
+ [Michael Grunder](https://github.com/michael-grunder))
+
+- Support for new Redis 6 arguments (XINFO FULL, SET KEEPTTL)
+ [a0c53e0b](https://github.com/phpredis/phpredis/commit/a0c53e0b30e0c6af15cc137415e7d65f6d1867f7),
+ [f9c7bb57](https://github.com/phpredis/phpredis/commit/f9c7bb5788c39614c23e3bb9ec42ec8d6d5bbaa1)
+ ([Victor Kislov](https://github.com/vityank),
+ [Michael Grunder](https://github.com/michael-grunder))
+
+- Support for TLS connections
+ [890ee0e6](https://github.com/phpredis/phpredis/commit/890ee0e656e545b18179cf247db94a33179ce1ab),
+ [b0671296](https://github.com/phpredis/phpredis/commit/b067129678264fc1c5c0f611ce1b192e05c14669)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+- New option Redis::SCAN_PREFIX, Redis::SCAN_NOPREFIX
+ [e80600e2](https://github.com/phpredis/phpredis/commit/e80600e244b8442cb7c86e99b067966cd59bf2ee)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+- Configurable unit test authentication arguments
+ [e37f38a3](https://github.com/phpredis/phpredis/commit/e37f38a39eb4bece8f49ebd0652112dc992084a0),
+ [201a9759](https://github.com/phpredis/phpredis/commit/201a97599953a9621bb8eb02dc8d5f08d16499a3)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko),
+ [Michael Grunder](https://github.com/michael-grunder))
+
+### Fixed
+
+- Improved cluster slot caching mechanism to fix a couple of bugs and make it more efficient.
+ [5ca4141c](https://github.com/phpredis/phpredis/commit/5ca4141c72e23816f146b49877a6a4b8098b34c6)
+ ([Michael Grunder](https://github.com/michael-grunder))
+
+- Stop calling Redis constructor when creating a RedisArray
+ [e41e19a8](https://github.com/phpredis/phpredis/commit/e41e19a8342212ee9cfe35f622804c9870d05ec2)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+- Use ZEND_LONG_FMT instead of system `long`
+ [5bf88124](https://github.com/phpredis/phpredis/commit/5bf881244dd30b5310fcfcaf5bcd8f9e2675bb01)
+ ([Michael Grunder](https://github.com/michael-grunder))
+
+- Use long for SCAN iteration to fix potential overflow
+ [f13f9b7c](https://github.com/phpredis/phpredis/commit/f13f9b7c7f5e3a7d286b412541199a408a0a98bd)
+ ([Victor Kislov](https://github.com/vityank))
+
+- Fix config.m4 to test for the variable $PHP_REDIS_JSON and not the literal PHP_REDIS_JSON
+ [20a3dc72](https://github.com/phpredis/phpredis/commit/20a3dc7251cb0bf450ef2a1cfeeeaeaa10355cd2)
+ ([Mizuki Nakano](https://github.com/mi-nakano))
+
+- Fix compiler warnings
+ [b9b383f4](https://github.com/phpredis/phpredis/commit/b9b383f49939484dcddf1a5edefdb9d753baa7f8),
+ [215828e](https://github.com/phpredis/phpredis/commit/215828e3474dfd9ea72fdc6da67aa6bee2d95ddf)
+ ([Remi Collet](https://github.com/remicollet), [Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+- Avoid use-after-free of RediSock
+ [8c45816d](https://github.com/phpredis/phpredis/commit/8c45816dbf4746f6557f83332be874bd78b5ce34)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+- Fixed ZADD arginfo
+ [a8e2b021](https://github.com/phpredis/phpredis/commit/a8e2b021f9eb51ad3ed0cc89064e2f004c56f8ba)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+### Changed
+
+- Store AUTH information in flags RedisSock rather than duplicating information.
+ [58dab564](https://github.com/phpredis/phpredis/commit/58dab5649fcc2cc63f5a29df83f783e154d7fa22)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+- Refactor redis_sock_get_connection_pool logic.
+ [73212e1](https://github.com/phpredis/phpredis/commit/73212e141403ec47441142fe1c7fd5fad24f6720)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+- Updated documentation to show LPUSH and RPUSH are variadic and fixed DEL documentation.
+ [92f8dde1](https://github.com/phpredis/phpredis/commit/92f8dde1c996d4e1c3d79226b888119307612c40)
+ ([Michael Grunder](https://github.com/michael-grunder))
+
+- Authenticate in redis_server_sock_open
+ [4ef465b5](https://github.com/phpredis/phpredis/commit/4ef465b57325d2d93234fd66af06a7091ce7d1ea)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+- Dynamically include json.so in unit tests based on configuration
+ [0ce7ca2f](https://github.com/phpredis/phpredis/commit/0ce7ca2fb1eb2f3c445487957a49b70ad8d4ecb6)
+ (([Michael Grunder](https://github.com/michael-grunder))
+
+- Update save_path logic in Redis Cluster session unit tests
+ [dd66fce](https://github.com/phpredis/phpredis/commit/dd66fceeb232f9e1fb0a26373949e810180dc5fc)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+- Refactoring various bits of logic
+ [bbcf32a3](https://github.com/phpredis/phpredis/commit/bbcf32a37fa856ba0b50b489ba05bd3d43800fcc),
+ [a42cf189](https://github.com/phpredis/phpredis/commit/a42cf189a776fc43acf47ca519f1d7385cc27f2f),
+ [460c8f29](https://github.com/phpredis/phpredis/commit/460c8f29239c263e15a093c9bcdb6fb24587ec7d),
+ [b7f9df75](https://github.com/phpredis/phpredis/commit/b7f9df758b30187864012d5cd831dbbc5fa053d0),
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+- Use the portable `ZEND_LONG_FORMAT` family instead of C format specifiers
+ [b9b383f4](https://github.com/phpredis/phpredis/commit/b9b383f4)
+ ([Remi Collet](https://github.com/remicollet))
+
+- PHP 8 compatibility
+ [9ee94ca4](https://github.com/phpredis/phpredis/commit/9ee94ca4),
+ [7e4c7b3e](https://github.com/phpredis/phpredis/commit/7e4c7b3e)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+- Refactor PHPREDIS_GET_OBJECT macro
+ [d5dadaf6](https://github.com/phpredis/phpredis/commit/d5dadaf6),
+ [190c0d34](https://github.com/phpredis/phpredis/commit/190c0d34)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+- Fix documentation to show lPush and rPush are variadic
+ [6808cd6a](https://github.com/phpredis/phpredis/commit/6808cd6a)
+ ([Michel Grunder](https://github.com/michael-grunder))
+
+---
+
+## [5.2.2] - 2020-05-05 ([GitHub](https://github.com/phpredis/phpredis/releases/tag/5.2.2), [PECL](https://pecl.php.net/package/redis/5.2.2))
+
+### Sponsors :sparkling_heart:
+
+- [Audiomack.com](https://audiomack.com)
+- [Till Krüss](https://github.com/tillkruss)
+
+### Changed
+
+- Inexpensive liveness check, and making ECHO optional
+ [56898f81](https://github.com/phpredis/phpredis/commit/56898f81)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+- Move `AUTH` to `redis_sock_server_open`
+ [80f2529b](https://github.com/phpredis/phpredis/commit/80f2529b)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+---
+
+## [5.2.1] - 2020-03-19 ([GitHub](https://github.com/phpredis/phpredis/releases/tag/5.2.1), [PECL](https://pecl.php.net/package/redis/5.2.1))
+
+### Sponsors :sparkling_heart:
+
+- [Audiomack.com](https://audiomack.com)
+- [Till Krüss](https://github.com/tillkruss)
+
+### Fixed
+
+- Fix arginfo for Redis::zadd
+ [a8e2b021](https://github.com/phpredis/phpredis/commit/a8e2b021)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+- Fix segfault on closing persistent stream
+ [b7f9df75](https://github.com/phpredis/phpredis/commit/b7f9df75)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+---
+
+## [5.2.0] - 2020-03-02 ([GitHub](https://github.com/phpredis/phpredis/releases/tag/5.2.0), [PECL](https://pecl.php.net/package/redis/5.2.0))
+
+*There were no changes between 5.2.0RC2 and 5.2.0*
+
+## [5.2.0RC2] - 2020-02-21 ([GitHub](https://github.com/phpredis/phpredis/releases/tag/5.2.0RC2), [PECL](https://pecl.php.net/package/redis/5.2.0RC2))
+
+### Sponsors :sparkling_heart:
+
+- [Audiomack.com](https://audiomack.com)
+- [Till Krüss](https://github.com/tillkruss)
+
+### Fixed
+
+- Include RedisSentinelTest.php in package.xml!
+ [eddbfc8f](https://github.com/phpredis/phpredis/commit/eddbfc8f)
+ ([Michel Grunder](https://github.com/michael-grunder))
+
+- Fix -Wmaybe-uninitialized warning
+ [740b8c87](https://github.com/phpredis/phpredis/commit/740b8c87)
+ ([Remi Collet](https://github.com/remicollet))
+
+- Fix improper destructor when zipping values and scores
+ [371ae7ae](https://github.com/phpredis/phpredis/commit/371ae7ae)
+
+- Use php_rand instead of php_mt_rand for liveness challenge string
+ [9ef2ed89](https://github.com/phpredis/phpredis/commit/9ef2ed89)
+ ([Michael Grunder](https://github.com/michael-grunder))
+
+## [5.2.0RC1] - 2020-02-15 ([GitHub](https://github.com/phpredis/phpredis/releases/tag/5.2.0RC1), [PECL](https://pecl.php.net/package/redis/5.2.0RC1))
+
+### Sponsors :sparkling_heart:
+
+- [Till Krüss](https://github.com/tillkruss)
+
+### Added
+
+- Added challenge/response mechanism to ensure persistent connections are not in a bad state
+ [a5f95925](https://github.com/phpredis/phpredis/commit/a5f95925),
+ [25cdaee6](https://github.com/phpredis/phpredis/commit/25cdaee6),
+ [7b6072e0](https://github.com/phpredis/phpredis/commit/7b6072e0),
+ [99ebd0cc](https://github.com/phpredis/phpredis/commit/99ebd0cc),
+ [3243f426](https://github.com/phpredis/phpredis/commit/3243f426)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko), [Michael Grunder](https://github.com/michael-grunder))
+
+- Experimental support for RedisSentinel
+ [90cb69f3](https://github.com/phpredis/phpredis/commit/90cb69f3),
+ [c94e28f1](https://github.com/phpredis/phpredis/commit/c94e28f1),
+ [46da22b0](https://github.com/phpredis/phpredis/commit/46da22b0),
+ [5a609fa4](https://github.com/phpredis/phpredis/commit/5a609fa4),
+ [383779ed](https://github.com/phpredis/phpredis/commit/383779ed)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+### Fixed
+
+- Fixed ASK redirection logic
+ [ba73fbee](https://github.com/phpredis/phpredis/commit/ba73fbee)
+ ([Michael Grunder](https://github.com/michael-grunder))
+
+- Create specific 'test skipped' exception
+ [c3d83d44](https://github.com/phpredis/phpredis/commit/c3d83d44)
+ ([Michael Grunder](https://github.com/michael-grunder))
+
+- Fixed memory leaks in RedisCluster
+ [a107c9fc](https://github.com/phpredis/phpredis/commit/a107c9fc)
+ ([Michael Grunder](https://github.com/michael-grunder))
+
+- Fixes for session lifetime values that underflow or overflow
+ [7a79ad9c](https://github.com/phpredis/phpredis/commit/7a79ad9c),
+ [3c48a332](https://github.com/phpredis/phpredis/commit/3c48a332)
+ ([Michael Grunder](https://github.com/michael-grunder))
+
+- Enables slot caching for Redis Cluster
+ [23b1a9d8](https://github.com/phpredis/phpredis/commit/23b1a9d8)
+ ([Michael Booth](https://github.com/Michael03))
+
+- Housekeeping (spelling, doc changes, etc)
+ [23f9de30](https://github.com/phpredis/phpredis/commit/23f9de30),
+ [d07a8df6](https://github.com/phpredis/phpredis/commit/d07a8df6),
+ [2d39b48d](https://github.com/phpredis/phpredis/commit/2d39b48d),
+ [0ef488fc](https://github.com/phpredis/phpredis/commit/0ef488fc),
+ [2c35e435](https://github.com/phpredis/phpredis/commit/2c35e435),
+ [f52bd8a8](https://github.com/phpredis/phpredis/commit/f52bd8a8),
+ [2ddc5f21](https://github.com/phpredis/phpredis/commit/2ddc5f21),
+ [1ff7dfb7](https://github.com/phpredis/phpredis/commit/1ff7dfb7),
+ [db446138](https://github.com/phpredis/phpredis/commit/db446138)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko),
+ [Tyson Andre](https://github.com/TysonAndre), [Michael Grunder](https://github.com/michael-grunder),
+ [Paul DelRe](https://github.com/pdelre), [Tyson Andre](https://github.com/TysonAndre))
+
+### Changed
+
+- Support TYPE argument for SCAN
+ [8eb39a26](https://github.com/phpredis/phpredis/commit/8eb39a26)
+ [b1724b84](https://github.com/phpredis/phpredis/commit/b1724b84)
+ [53fb36c9](https://github.com/phpredis/phpredis/commit/53fb36c9)
+ [544e641b](https://github.com/phpredis/phpredis/commit/544e641b)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+---
+
+## [5.1.1] - 2019-11-11 ([GitHub](https://github.com/phpredis/phpredis/releases/tag/5.1.1), [PECL](https://pecl.php.net/package/redis/5.1.1))
+
+### Fixed
+
+- Fix fail to connect to redis through unix socket
+ [2bae8010](https://github.com/phpredis/phpredis/commit/2bae8010),
+ [9f4ededa](https://github.com/phpredis/phpredis/commit/9f4ededa)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko), [Michael Grunder](https://github.com/michael-grunder))
+
+---
+
+## [5.1.0] - 2019-10-31 ([GitHub](https://github.com/phpredis/phpredis/releases/tag/5.1.0), [PECL](https://pecl.php.net/package/redis/5.1.0))
+
+### Added
+
+- Add optional support for Zstd compression, using `--enable-redis-zstd`.
+ This requires libzstd version >= 1.3.0
+ [2abc61da](https://github.com/phpredis/phpredis/commit/2abc61da)
+ ([Remi Collet](https://github.com/remicollet))
+- Add documentation for zpopmin and zpopmax
+ [99ec24b3](https://github.com/phpredis/phpredis/commit/99ec24b3),
+ [4ab1f940](https://github.com/phpredis/phpredis/commit/4ab1f940)
+ ([alexander-schranz](https://github.com/alexander-schranz))
+- Allow to specify scheme for session handler.
+ [53a8bcc7](https://github.com/phpredis/phpredis/commit/53a8bcc7)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+### Changed
+
+- Refactor redis_session
+ [91a8e734](https://github.com/phpredis/phpredis/commit/91a8e734),
+ [978c3074](https://github.com/phpredis/phpredis/commit/978c3074)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Fix overallocation in RedisCluster directed node commands
+ [cf93649](https://github.com/phpredis/phpredis/commit/cf93649)
+ ([Michael Grunder](https://github.com/michael-grunder))
+- Also attach slaves when caching cluster slots
+ [0d6d3fdd](https://github.com/phpredis/phpredis/commit/0d6d3fdd),
+ [b114fc26](https://github.com/phpredis/phpredis/commit/b114fc26)
+ ([Michael Grunder](https://github.com/michael-grunder))
+- Use zend_register_persistent_resource_ex for connection pooling
+ [fdada7ae](https://github.com/phpredis/phpredis/commit/fdada7ae),
+ [7c6c43a6](https://github.com/phpredis/phpredis/commit/7c6c43a6)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+### Fixed
+
+- Fix regression for multihost_distribute_call added in [112c77e3](https://github.com/phpredis/phpredis/commit/112c77e3)
+ [fbe0f804](https://github.com/phpredis/phpredis/commit/fbe0f804)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Revert "fix regression for conntecting to ports > 32767" added in [1f41da64](https://github.com/phpredis/phpredis/commit/1f41da64) and add another fix
+ [17b139d8](https://github.com/phpredis/phpredis/commit/17b139d8),
+ [7ef17ce1](https://github.com/phpredis/phpredis/commit/7ef17ce1)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Fix regression for conntecting to unix sockets with relative path added in [1f41da64](https://github.com/phpredis/phpredis/commit/1f41da64)
+ [17b139d8](https://github.com/phpredis/phpredis/commit/17b139d8),
+ [7ef17ce1](https://github.com/phpredis/phpredis/commit/7ef17ce1)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Fix unix-socket detection logic broken in [418428fa](https://github.com/phpredis/phpredis/commit/418428fa)
+ [a080b73f](https://github.com/phpredis/phpredis/commit/a080b73f)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Fix memory leak and bug with getLastError for redis_mbulk_reply_assoc and redis_mbulk_reply_zipped.
+ [7f42d628](https://github.com/phpredis/phpredis/commit/7f42d628),
+ [3a622a07](https://github.com/phpredis/phpredis/commit/3a622a07)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko)),
+ ([Michael Grunder](https://github.com/michael-grunder))
+- Fix bug with password contain "#" for redis_session
+ [2bb08680](https://github.com/phpredis/phpredis/commit/2bb08680)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Missing null byte in PHP_MINFO_FUNCTION
+ [8bc2240c](https://github.com/phpredis/phpredis/commit/8bc2240c)
+ ([Remi Collet](https://github.com/remicollet))
+
+### Removed
+
+- Dead code generic_unsubscribe_cmd
+ [8ee4abbc](https://github.com/phpredis/phpredis/commit/8ee4abbc)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+---
+
+## [5.0.2] - 2019-07-29 ([GitHub](https://github.com/phpredis/phpredis/releases/tag/5.0.2), [PECL](https://pecl.php.net/package/redis/5.0.2))
+
+### Fixed
+
+- Fix regression for conntecting to ports > 32767
+ [1f41da64](https://github.com/phpredis/phpredis/commit/1f41da64),
+ ([Owen Smith](https://github.com/orls))
+- RedisCluster segfaults after second connection with cache_slots enabled
+ [f52cd237](https://github.com/phpredis/phpredis/commit/f52cd237),
+ [cb5d6b94](https://github.com/phpredis/phpredis/commit/cb5d6b94)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko), [Michael Grunder](https://github.com/michael-grunder))
+
+### Changed
+
+- Cleanup TSRMLS_* usage
+ [94380227](https://github.com/phpredis/phpredis/commit/94380227)
+ ([Remi Collet](https://github.com/remicollet))
+- Replace ulong with zend_ulong
+ [b4eb158a](https://github.com/phpredis/phpredis/commit/b4eb158a)
+ ([Remi Collet](https://github.com/remicollet))
+- Replace uint with uint32_t
+ [d6fc5c73](https://github.com/phpredis/phpredis/commit/d6fc5c73)
+ ([Remi Collet](https://github.com/remicollet))
+
+---
+
+## [5.0.1] - 2019-07-12 ([GitHub](https://github.com/phpredis/phpredis/releases/tag/5.0.1), [PECL](https://pecl.php.net/package/redis/5.0.1))
+
+### Fixed
+
+- RedisCluster segfaults after second connection with cache_slots enabled
+ [327cf0bd](https://github.com/phpredis/phpredis/commit/327cf0bd)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+---
+
+## [5.0.0] - 2019-07-02 ([GitHub](https://github.com/phpredis/phpredis/releases/tag/5.0.0), [PECL](https://pecl.php.net/package/redis/5.0.0))
+
+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
+
+- [Nullable xReadGroup COUNT and BLOCK arguments](#brk500-xreadgroup)
+- [RedisArray exception now includes host information](#brk500-exception-host)
+- [zRange now conforms to zRangeByScore to get scores](#brk500-zrange-withscores)
+
+### Added
+- Adds OPT_REPLY_LITERAL for rawCommand and EVAL [5cb30fb2](https://www.github.com/phpredis/phpredis/commit/5cb30fb2)
+ ([Michael Grunder](https://github.com/michael-grunder))
+- JSON serializer [98bd2886](https://www.github.com/phpredis/phpredis/commit/98bd2886),
+ [96c57139](https://www.github.com/phpredis/phpredis/commit/96c57139),
+ [235a27](https://www.github.com/phpredis/phpredis/commit/235a27)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko), [Michael Grunder](https://github.com/michael-grunder))
+- msgpack serializer [d5b8f833](https://www.github.com/phpredis/phpredis/commit/d5b8f833),
+ [545250f3](https://www.github.com/phpredis/phpredis/commit/545250f3),
+ [52bae8ab](https://www.github.com/phpredis/phpredis/commit/52bae8ab)
+ ([@bgort](https://github.com/bgort), [Pavlo Yatsukhnenko](https://github.com/yatsukhnenko),
+ [Michael Grunder](https://github.com/michael-grunder))
+- Add support for STREAM to the type command [d7450b2f](https://www.github.com/phpredis/phpredis/commit/d7450b2f),
+ [068ce978](https://www.github.com/phpredis/phpredis/commit/068ce978), [8a45d18c](https://www.github.com/phpredis/phpredis/commit/8a45d18c)
+ ([Michael Grunder](https://github.com/michael-grunder), [Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Add Cluster slots caching [9f0d7bc0](https://www.github.com/phpredis/phpredis/commit/9f0d7bc0),
+ [ea081e05](https://www.github.com/phpredis/phpredis/commit/ea081e05) ([Michael Grunder](https://github.com/michael-grunder))
+
+### Changed
+
+- <a id="brk500-exception-host">Add server address to exception message. This changes the exception message from `read error on connection` to
+ `read error on connection to <host>:<port>` or `read error on connection to </path/to/socket>` so code matching the exception string might break.
+ [e8fb49be](https://www.github.com/phpredis/phpredis/commit/e8fb49be),
+ [34d6403d](https://www.github.com/phpredis/phpredis/commit/34d6403d)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Allow to specify server address as `schema://host` [418428fa](https://www.github.com/phpredis/phpredis/commit/418428fa)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko)).
+- Update Fedora installation instructions [90aa067c](https://www.github.com/phpredis/phpredis/commit/90aa067c)
+ ([@remicollet](https://github.com/remicollet))
+- Enable connection pooling by default [8206b147](https://www.github.com/phpredis/phpredis/commit/8206b147)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- <a id="brk500-ping-argument">Allow PING to take an optional argument. PING now returns `true` instead of "+PONG" [6e494170](https://www.github.com/phpredis/phpredis/commit/6e494170)
+ ([Michael Grunder](https://github.com/michael-grunder))
+- <a id="brk500-zrange-withscores">Allow ZRANGE to be called either with `true` or `['withscores' => true]`
+ [19f3efcf](https://www.github.com/phpredis/phpredis/commit/19f3efcf) ([Michael Grunder](https://github.com/michael-grunder))
+- Documentation improvements ([@alexander-schranz](https://github.com/alexander-schranz), [@cookieguru](https://github.com/cookieguru),
+ [Pavlo Yatsukhnenko](https://github.com/yatsukhnenko), [Michael Grunder](https://github.com/michael-grunder))
+
+### Deprecated
+
+- Soft deprecate methods that aren't actually Redis commands [a81b4f2d](https://www.github.com/phpredis/phpredis/commit/a81b4f2d),
+ [95c8aab9](https://www.github.com/phpredis/phpredis/commit/95c8aab9), [235a27](https://www.github.com/phpredis/phpredis/commit/235a27) ([@michael-grunder](https://github.com/michael-grunder), [@yatsukhnenko](https://github.com/weltling))
+- Remove HAVE_SPL define [[55c5586c](https://www.github.com/phpredis/phpredis/commit/55c5586c)] ([@petk](https://github.com/petk))
+
+### Removed
+
+- Drop PHP5 support [[f9928642](https://www.github.com/phpredis/phpredis/commit/f9928642), [46a50c12](https://www.github.com/phpredis/phpredis/commit/46a50c12), [4601887d](https://www.github.com/phpredis/phpredis/commit/4601887d), [6ebb36ce](https://www.github.com/phpredis/phpredis/commit/6ebb36ce), [fdbe9d29](https://www.github.com/phpredis/phpredis/commit/fdbe9d29)] (Michael
+ Grunder)
+
+### Fixed
+
+- Reworked PHP msgpack >= 2.0.3 version requirement. [6973478](https://www.github.com/phpredis/phpredis/commit/6973478)..[a537df8](https://www.github.com/phpredis/phpredis/commit/a537df8)
+ ([@michael-grunder](https://github.com/michael-grunder)).
+- Enable pooling for cluster slave nodes [17600dd1](https://www.github.com/phpredis/phpredis/commit/17600dd1) ([Michael Grunder](https://github.com/michael-grunder))
+- xInfo response format [4852a510](https://www.github.com/phpredis/phpredis/commit/4852a510), [ac9dca0a](https://www.github.com/phpredis/phpredis/commit/ac9dca0a) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- <a id="brk500-xreadgroup">Make the XREADGROUP optional COUNT and BLOCK arguments nullable
+ [0c17bd27](https://www.github.com/phpredis/phpredis/commit/0c17bd27)
+ ([Michael Grunder](https://github.com/michael-grunder))
+- Allow persistent_id to be passed as NULL with strict_types enabled [60223762](https://www.github.com/phpredis/phpredis/commit/60223762)
+ ([Michael Grunder](https://github.com/michael-grunder))
+- Fix TypeError when using built-in constants in `setOption` [4c7643ee](https://www.github.com/phpredis/phpredis/commit/4c7643ee)
+ ([@JoyceBabu](https://github.com/JoyceBabu))
+- Handle references in MGET [60d8b679](https://www.github.com/phpredis/phpredis/commit/60d8b679) ([Michael Grunder](https://github.com/michael-grunder))
+
+---
+
+## [4.3.0] - 2019-03-13 ([GitHub](https://github.com/phpredis/phpredis/releases/tag/4.3.0), [PECL](https://pecl.php.net/package/redis/4.3.0))
+
+This is probably the last release with PHP 5 suport!!!
+
+### Added
+
+- RedisArray auth [b5549cff](https://www.github.com/phpredis/phpredis/commit/b5549cff), [339cfa2b](https://www.github.com/phpredis/phpredis/commit/339cfa2b),
+ [6b411aa8](https://www.github.com/phpredis/phpredis/commit/6b411aa8) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Add ZPOPMAX and ZPOPMIN support [46f03561](https://www.github.com/phpredis/phpredis/commit/46f03561),
+ [f89e941a](https://www.github.com/phpredis/phpredis/commit/f89e941a),
+ [2ec7d91a](https://www.github.com/phpredis/phpredis/commit/2ec7d91a) (@mbezhanov, [Michael Grunder](https://github.com/michael-grunder))
+- Implement GEORADIUS_RO and GEORADIUSBYMEMBER_RO [22d81a94](https://www.github.com/phpredis/phpredis/commit/22d81a94) ([Michael Grunder](https://github.com/michael-grunder))
+- RedisCluster auth [c5994f2a](https://www.github.com/phpredis/phpredis/commit/c5994f2a) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Different key hashing algorithms from hash extension [850027ff](https://www.github.com/phpredis/phpredis/commit/850027ff)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+### Changed
+
+- Proper persistent connections pooling implementation [a3703820](https://www.github.com/phpredis/phpredis/commit/a3703820),
+ [c76e00fb](https://www.github.com/phpredis/phpredis/commit/c76e00fb), [0433dc03](https://www.github.com/phpredis/phpredis/commit/0433dc03),
+ [c75b3b93](https://www.github.com/phpredis/phpredis/commit/c75b3b93) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Use zend_string for storing key hashing algorithm [8cd165df](https://www.github.com/phpredis/phpredis/commit/8cd165df),
+ [64e6a57f](https://www.github.com/phpredis/phpredis/commit/64e6a57f), [Pavlo Yatsukhnenko](https://github.com/yatsukhnenko)
+
+- Add callback parameter to subscribe/psubscribe arginfo [0653ff31](https://www.github.com/phpredis/phpredis/commit/0653ff31),
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Xgroup updates [15995c06](https://www.github.com/phpredis/phpredis/commit/15995c06) ([Michael Grunder](https://github.com/michael-grunder))
+- Use zend_string for pipeline_cmd [e98f5116](https://www.github.com/phpredis/phpredis/commit/e98f5116) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Implement consistent hashing algorithm for RedisArray [bb32e6f3](https://www.github.com/phpredis/phpredis/commit/bb32e6f3), [71922bf1](https://www.github.com/phpredis/phpredis/commit/71922bf1)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Use zend_string for storing RedisArray hosts [602740d3](https://www.github.com/phpredis/phpredis/commit/602740d3),
+ [3e7e1c83](https://www.github.com/phpredis/phpredis/commit/3e7e1c83) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Refactor redis_sock_read_bulk_reply [bc4dbc4b](https://www.github.com/phpredis/phpredis/commit/bc4dbc4b) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+### Fixed
+
+- Don't check the number affected keys in PS_UPDATE_TIMESTAMP_FUNC [b00060ce](https://www.github.com/phpredis/phpredis/commit/b00060ce)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Cancel pipeline mode without executing commands [789256d7](https://www.github.com/phpredis/phpredis/commit/789256d7)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Breaking the lock acquire loop in case of network problems [61889cd7](https://www.github.com/phpredis/phpredis/commit/61889cd7)
+ ([@SkydiveMarius](https://github.com/SkydiveMarius))
+- Update lzf_compress to be compatible with PECL lzf extension [b27fd430](https://www.github.com/phpredis/phpredis/commit/b27fd430)
+ ([@jrchamp](https://github.com/jrchamp))
+- Fix RedisCluster keys memory leak [3b56b7db](https://www.github.com/phpredis/phpredis/commit/3b56b7db) ([Michael Grunder](https://github.com/michael-grunder))
+- Directly use return_value in RedisCluster::keys method [ad10a49e](https://www.github.com/phpredis/phpredis/commit/ad10a49e)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Fix segfault in Redis Cluster with inconsistent configuration [72749916](https://www.github.com/phpredis/phpredis/commit/72749916),
+ [6e455e2e](https://www.github.com/phpredis/phpredis/commit/6e455e2e) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Masters info leakfix [91bd7426](https://www.github.com/phpredis/phpredis/commit/91bd7426) ([Michael Grunder](https://github.com/michael-grunder))
+- Remove unused parameter lazy_connect from redis_sock_create [c0793e8b](https://www.github.com/phpredis/phpredis/commit/c0793e8b)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Remove useless `ZEND_ACC_[C|D]TOR`. [bc9b5597](https://www.github.com/phpredis/phpredis/commit/bc9b5597) (@[twosee](https://github.com/twose))
+- Documentation improvements ([yulonghu](https://github.com/yulonghu), [@alexander-schranz](https://github.com/alexander-schranz), [@hmc](https://github.com/hmczju),
+ [Pavlo Yatsukhnenko](https://github.com/yatsukhnenko), [Michael Grunder](https://github.com/michael-grunder))
+
+---
+
+## [4.2.0] - 2018-11-08 ([GitHub](https://github.com/phpredis/phpredis/releases/tag/4.2.0), [PECL](https://pecl.php.net/package/redis/4.2.0))
+
+The main feature of this release is new Streams API implemented by
+[Michael Grunder](https://github.com/michael-grunder).
+
+### Added
+
+- Streams API [2c9e0572](https://www.github.com/phpredis/phpredis/commit/2c9e0572), [0b97ec37](https://www.github.com/phpredis/phpredis/commit/0b97ec37) ([Michael Grunder](https://github.com/michael-grunder))
+- Display ini entries in output of phpinfo [908ac4b3](https://www.github.com/phpredis/phpredis/commit/908ac4b3) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Persistent connections can be closed via close method + change reconnection
+ logic [1d997873](https://www.github.com/phpredis/phpredis/commit/1d997873) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+### Changed
+
+- Optimize close method [2a1ef961](https://www.github.com/phpredis/phpredis/commit/2a1ef961) ([yulonghu](https://github.com/yulonghu))
+- Use a ZSET insted of SET for EVAL tests [2e412373](https://www.github.com/phpredis/phpredis/commit/2e412373) ([Michael Grunder](https://github.com/michael-grunder))
+- Modify session testing logic [bfd27471](https://www.github.com/phpredis/phpredis/commit/bfd27471) ([Michael Grunder](https://github.com/michael-grunder))
+- Documentation improvements ([@michael-grunder](https://github.com/michael-grunder), [@elcheco](https://github.com/elcheco), [@lucascourot](https://github.com/lucascourot), [@nolimitdev](https://github.com/nolimitdev),
+ [Michael Grunder](https://github.com/michael-grunder))
+
+### Fixed
+
+- Prevent potential infinite loop for sessions [4e2de158](https://www.github.com/phpredis/phpredis/commit/4e2de158) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Fix coverty warnings [6f7ddd27](https://www.github.com/phpredis/phpredis/commit/6f7ddd27) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Fix session memory leaks [071a1d54](https://www.github.com/phpredis/phpredis/commit/071a1d54), [92f14b14](https://www.github.com/phpredis/phpredis/commit/92f14b14) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko),
+ [Michael Grunder](https://github.com/michael-grunder))
+- Fix XCLAIM on 32-bit installs [18dc2aac](https://www.github.com/phpredis/phpredis/commit/18dc2aac) ([Michael Grunder](https://github.com/michael-grunder))
+- Build warning fixes [b5093910](https://www.github.com/phpredis/phpredis/commit/b5093910), [51027044](https://www.github.com/phpredis/phpredis/commit/51027044), [8b0f28cd](https://www.github.com/phpredis/phpredis/commit/8b0f28cd) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko),
+ [Remi Collet](https://github.com/remicollet), [twosee](https://github.com/twose))
+- Fix incorrect arginfo for `Redis::sRem` and `Redis::multi` [25b043ce](https://www.github.com/phpredis/phpredis/commit/25b043ce)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Treat a -1 response from cluster_check_response as a timeout. [27df9220](https://www.github.com/phpredis/phpredis/commit/27df9220),
+ [07ef7f4e](https://www.github.com/phpredis/phpredis/commit/07ef7f4e), [d1172426](https://www.github.com/phpredis/phpredis/commit/d1172426) ([Michael Grunder](https://github.com/michael-grunder)).
+- Missing space between command and args [0af2a7fe](https://www.github.com/phpredis/phpredis/commit/0af2a7fe) ([@remicollet](https://github.com/remicollet))
+- Reset the socket after a timeout to make sure no wrong data is received
+ [cd6ebc6d](https://www.github.com/phpredis/phpredis/commit/cd6ebc6d) ([@marcdejonge](https://github.com/marcdejonge))
+- Allow '-' and '+' arguments and add tests for zLexCount and zRemRangeByLex
+ [d4a08697](https://www.github.com/phpredis/phpredis/commit/d4a08697) ([Michael Grunder](https://github.com/michael-grunder))
+- Fix printf format warnings [dcde9331](https://www.github.com/phpredis/phpredis/commit/dcde9331) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Session module is required [58bd8cc8](https://www.github.com/phpredis/phpredis/commit/58bd8cc8) ([@remicollet](https://github.com/remicollet))
+- Set default values for ini entries [e206ce9c](https://www.github.com/phpredis/phpredis/commit/e206ce9c) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+---
+
+## [4.0.0] - 2018-03-07 ([GitHub](https://github.com/phpredis/phpredis/releases/tag/4.0.0), [PECL](https://pecl.php.net/package/redis/4.0.0))
+
+*WARNING:* THIS RELEASE CONTAINS BREAKING API CHANGES!
+
+### Added
+
+- Add proper ARGINFO for all methods. ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko), [Michael Grunder](https://github.com/michael-grunder))
+- Let EXISTS take multiple keys [cccc39](https://www.github.com/phpredis/phpredis/commit/cccc39) ([Michael Grunder](https://github.com/michael-grunder))
+- Implement SWAPDB and UNLINK commands [84f1f28b](https://www.github.com/phpredis/phpredis/commit/84f1f28b), [9e65c429](https://www.github.com/phpredis/phpredis/commit/9e65c429) ([Michael Grunder](https://github.com/michael-grunder))
+- Add LZF compression (experimental) [e2c51251](https://www.github.com/phpredis/phpredis/commit/e2c51251), [8cb2d5bd](https://www.github.com/phpredis/phpredis/commit/8cb2d5bd), [8657557](https://www.github.com/phpredis/phpredis/commit/8657557) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Allow mixing MULTI and PIPELINE modes (experimental) [5874b0](https://www.github.com/phpredis/phpredis/commit/5874b0) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+### Changed
+
+- Use zend_string as returning value for ra_extract_key and ra_call_extractor
+ [9cd05911](https://www.github.com/phpredis/phpredis/commit/9cd05911) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Return real connection error as exception [5b9c0c60](https://www.github.com/phpredis/phpredis/commit/5b9c0c60) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko),
+ [Michael Grunder](https://github.com/michael-grunder))
+- Use zend_string for storing auth and prefix members [4b8336f7](https://www.github.com/phpredis/phpredis/commit/4b8336f7)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Add tcp_keepalive option to redis sock [68c58513](https://www.github.com/phpredis/phpredis/commit/68c58513), [5101172a](https://www.github.com/phpredis/phpredis/commit/5101172a), [010336d5](https://www.github.com/phpredis/phpredis/commit/010336d5),
+ [51e48729](https://www.github.com/phpredis/phpredis/commit/51e48729) ([@git-hulk](https://github.com/git-hulk), [Michael Grunder](https://github.com/michael-grunder))
+- More robust GEORADIUS COUNT validation [f7edee5d](https://www.github.com/phpredis/phpredis/commit/f7edee5d) ([Michael Grunder](https://github.com/michael-grunder))
+- Allow to use empty string as persistant_id [ec4fd1bd](https://www.github.com/phpredis/phpredis/commit/ec4fd1bd) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Documentation improvements ([Michael Grunder](https://github.com/michael-grunder), [@TomA-R](https://github.com/TomA-R))
+
+### Fixed
+
+- Disallow using empty string as session name. [485db46f](https://www.github.com/phpredis/phpredis/commit/485db46f) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- The element of z_seeds may be a reference on php7 [367bc6aa](https://www.github.com/phpredis/phpredis/commit/367bc6aa), [1e63717a](https://www.github.com/phpredis/phpredis/commit/1e63717a)
+ ([@janic716](https://github.com/janic716))
+- Avoid connection in helper methods [91e9cfe1](https://www.github.com/phpredis/phpredis/commit/91e9cfe1) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Don't use convert_to_string in redis_hmget_cmd [99335d6](https://www.github.com/phpredis/phpredis/commit/99335d6) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- PHP >=7.3.0 uses zend_string to store `php_url` elements [b566fb44](https://www.github.com/phpredis/phpredis/commit/b566fb44) ([@fmk](https://github.com/fmk))
+
+---
+
+## [3.1.5] - 2017-09-27 ([GitHub](https://github.com/phpredis/phpredis/releases/tag/3.1.5), [PECL](https://pecl.php.net/package/redis/3.1.5))
+
+This is interim release which contains only bug fixes.
+
+### Fixed
+
+- Fix segfault when extending Redis class in PHP 5 [d23eff](https://www.github.com/phpredis/phpredis/commit/d23eff) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Fix RedisCluster constructor with PHP 7 strict scalar type [5c21d7](https://www.github.com/phpredis/phpredis/commit/5c21d7)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Allow to use empty string as persistant_id [344de5](https://www.github.com/phpredis/phpredis/commit/344de5) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Fix cluster_init_seeds. [db1347](https://www.github.com/phpredis/phpredis/commit/db1347) ([@adlagares](https://github.com/adlagares))
+- Fix z_seeds may be a reference [42581a](https://www.github.com/phpredis/phpredis/commit/42581a) ([@janic716](https://github.com/janic716))
+- PHP >=7.3 uses zend_string for php_url elements [b566fb](https://www.github.com/phpredis/phpredis/commit/b566fb) ([@fmk](https://github.com/fmk))
+
+---
+
+## [3.1.4] - 2017-09-27 ([GitHub](https://github.com/phpredis/phpredis/releases/tag/3.1.4), [PECL](https://pecl.php.net/package/redis/3.1.4))
+
+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](https://www.github.com/phpredis/phpredis/commit/5874b0)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Added integration for coverty static analysis and fixed several warnings
+ [faac8b0](https://www.github.com/phpredis/phpredis/commit/faac8b0), [eff7398](https://www.github.com/phpredis/phpredis/commit/eff7398), [4766c25](https://www.github.com/phpredis/phpredis/commit/4766c25), [0438ab4](https://www.github.com/phpredis/phpredis/commit/0438ab4), [1e0b065](https://www.github.com/phpredis/phpredis/commit/1e0b065), [733732a](https://www.github.com/phpredis/phpredis/commit/733732a), [26eeda5](https://www.github.com/phpredis/phpredis/commit/26eeda5), [735025](https://www.github.com/phpredis/phpredis/commit/735025),
+ [42f1c9](https://www.github.com/phpredis/phpredis/commit/42f1c9), [af71d4](https://www.github.com/phpredis/phpredis/commit/af71d4) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko)).
+- Added arginfo introspection structures [81a0303](https://www.github.com/phpredis/phpredis/commit/81a0303), [d5609fc](https://www.github.com/phpredis/phpredis/commit/d5609fc), [e5660be](https://www.github.com/phpredis/phpredis/commit/e5660be), [3c60e1f](https://www.github.com/phpredis/phpredis/commit/3c60e1f),
+ [50dcb15](https://www.github.com/phpredis/phpredis/commit/50dcb15), [6c2c6fa](https://www.github.com/phpredis/phpredis/commit/6c2c6fa), [212e323](https://www.github.com/phpredis/phpredis/commit/212e323), [e23be2c](https://www.github.com/phpredis/phpredis/commit/e23be2c), [682593d](https://www.github.com/phpredis/phpredis/commit/682593d), [f8de702](https://www.github.com/phpredis/phpredis/commit/f8de702), [4ef3acd](https://www.github.com/phpredis/phpredis/commit/4ef3acd), [f116be9](https://www.github.com/phpredis/phpredis/commit/f116be9),
+ [5c111dd](https://www.github.com/phpredis/phpredis/commit/5c111dd), [9caa029](https://www.github.com/phpredis/phpredis/commit/9caa029), [0d69650](https://www.github.com/phpredis/phpredis/commit/0d69650), [6859828](https://www.github.com/phpredis/phpredis/commit/6859828), [024e593](https://www.github.com/phpredis/phpredis/commit/024e593), [3643ab6](https://www.github.com/phpredis/phpredis/commit/3643ab6), [f576fab](https://www.github.com/phpredis/phpredis/commit/f576fab), [122d41f](https://www.github.com/phpredis/phpredis/commit/122d41f),
+ [a09d0e6](https://www.github.com/phpredis/phpredis/commit/a09d0e6) ([Tyson Andre](https://github.com/TysonAndre), [Pavlo Yatsukhnenko](https://github.com/yatsukhnenko)).
+- Added a github issue template [61aba9](https://www.github.com/phpredis/phpredis/commit/61aba9) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+### Changed
+
+- Refactor redis_send_discard [ea15ce](https://www.github.com/phpredis/phpredis/commit/ea15ce) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Improve redis array rehash [577a91](https://www.github.com/phpredis/phpredis/commit/577a91) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Change redis array pure_cmds from zval to hashtable [a56ed7](https://www.github.com/phpredis/phpredis/commit/a56ed7) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Use zend_string rather than char for various context fields (err, prefix, etc)
+ [2bf7b2](https://www.github.com/phpredis/phpredis/commit/2bf7b2) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Updated runtime exception handling [8dcaa4](https://www.github.com/phpredis/phpredis/commit/8dcaa4), [7c1407](https://www.github.com/phpredis/phpredis/commit/7c1407) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+### Fixed
+
+- Fixed link to redis cluster documentation [3b0b06](https://www.github.com/phpredis/phpredis/commit/3b0b06) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Removed duplicate HGET in redis array hash table, formatting [d0b9c5](https://www.github.com/phpredis/phpredis/commit/d0b9c5)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko)).
+- Treat NULL bulk as success for session read [659450](https://www.github.com/phpredis/phpredis/commit/659450) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Fix valgrind warnings [471ce07](https://www.github.com/phpredis/phpredis/commit/471ce07), [1ab89e1](https://www.github.com/phpredis/phpredis/commit/1ab89e1), [b624a8b](https://www.github.com/phpredis/phpredis/commit/b624a8b) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Fix php5/php7 compatibility layer [1ab89e](https://www.github.com/phpredis/phpredis/commit/1ab89e), [4e3225](https://www.github.com/phpredis/phpredis/commit/4e3225) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Fix typo in README.markdown [e47e44](https://www.github.com/phpredis/phpredis/commit/e47e44) ([Toby Schrapel](https://github.com/schrapel))
+- Initialize gc member of zend_string [37f569](https://www.github.com/phpredis/phpredis/commit/37f569) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko)).
+- Don't try to set TCP_NODELAY on a unix socket and don't warn on multiple
+ calls to pipeline [d11798](https://www.github.com/phpredis/phpredis/commit/d11798), [77aeba](https://www.github.com/phpredis/phpredis/commit/77aeba) ([Michael Grunder](https://github.com/michael-grunder))
+- Various other library fixes [142b51](https://www.github.com/phpredis/phpredis/commit/142b51), [4452f6](https://www.github.com/phpredis/phpredis/commit/4452f6), [e672f4](https://www.github.com/phpredis/phpredis/commit/e672f4), [658ee3](https://www.github.com/phpredis/phpredis/commit/658ee3), [c9df77](https://www.github.com/phpredis/phpredis/commit/c9df77), [4a0a46](https://www.github.com/phpredis/phpredis/commit/4a0a46)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+### Removed
+
+- Remove unused PHP_RINIT and PHP_RSHUTDOWN functions [c760bf](https://www.github.com/phpredis/phpredis/commit/c760bf) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+---
+
+## [3.1.3] - 2017-07-15 ([GitHub](https://github.com/phpredis/phpredis/releases/tag/3.1.3), [PECL](https://pecl.php.net/package/redis/3.1.3))
+
+This release contains two big improvements:
+
+1. Adding a new printf like command construction function with additionaly
+ format specifiers specific to phpredis.
+2. Implementation of custom objects for Redis and RedisArray wich eliminates
+ double hash lookup.
+
+Also many small improvements and bug fixes were made.
+
+### Added
+
+- Add hStrLen command [c52077](https://www.github.com/phpredis/phpredis/commit/c52077), [fb88e1](https://www.github.com/phpredis/phpredis/commit/fb88e1) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- A printf like method to construct a Redis RESP command [a4a0ed](https://www.github.com/phpredis/phpredis/commit/a4a0ed), [d75081](https://www.github.com/phpredis/phpredis/commit/d75081),
+ [bdd287](https://www.github.com/phpredis/phpredis/commit/bdd287), [0eaeae](https://www.github.com/phpredis/phpredis/commit/0eaeae), [b3d00d](https://www.github.com/phpredis/phpredis/commit/b3d00d) ([Michael Grunder](https://github.com/michael-grunder))
+- Use custom objects instead of zend_list for storing Redis/RedisArray [a765f8](https://www.github.com/phpredis/phpredis/commit/a765f8),
+ [8fa85a](https://www.github.com/phpredis/phpredis/commit/8fa85a) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Add configureoption tag to package.xml [750963](https://www.github.com/phpredis/phpredis/commit/750963) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+### Changed
+
+- Add optional COUNT argument to sPop [d2e203](https://www.github.com/phpredis/phpredis/commit/d2e203) ([Michael Grunder](https://github.com/michael-grunder))
+- Allow sInterStore to take one arg [26aec4](https://www.github.com/phpredis/phpredis/commit/26aec4), [4cd06b](https://www.github.com/phpredis/phpredis/commit/4cd06b) ([Michael Grunder](https://github.com/michael-grunder))
+- Allow MIGRATE to accept multiple keys [9aa3db](https://www.github.com/phpredis/phpredis/commit/9aa3db) ([Michael Grunder](https://github.com/michael-grunder))
+- Use crc32 table from PHP distro [f81694](https://www.github.com/phpredis/phpredis/commit/f81694) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Throw exception for all non recoverable errors [e37239](https://www.github.com/phpredis/phpredis/commit/e37239) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Increase read buffers size [520e06](https://www.github.com/phpredis/phpredis/commit/520e06) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Better documentation [f0c25a](https://www.github.com/phpredis/phpredis/commit/f0c25a), [c5991f](https://www.github.com/phpredis/phpredis/commit/c5991f), [9ec9ae](https://www.github.com/phpredis/phpredis/commit/9ec9ae) ([Michael Grunder](https://github.com/michael-grunder))
+- Better TravisCI integration [e37c08](https://www.github.com/phpredis/phpredis/commit/e37c08) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+### Fixed
+
+- Make sure redisCluster members are all initialized on (re)creation [162d88](https://www.github.com/phpredis/phpredis/commit/162d88)
+- ([Michael Grunder](https://github.com/michael-grunder)).
+- Fix Null Bulk String response parsing in cluster library [058753](https://www.github.com/phpredis/phpredis/commit/058753)
+- ([Alberto Fernández](https://github.com/albertofem))
+- Allow using numeric string in zInter command [ba0070](https://www.github.com/phpredis/phpredis/commit/ba0070) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Use ZVAL_DEREF macros for dereference input variables [ad4596](https://www.github.com/phpredis/phpredis/commit/ad4596)
+- ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Fix read_timeout [18149e](https://www.github.com/phpredis/phpredis/commit/18149e), [b56dc4](https://www.github.com/phpredis/phpredis/commit/b56dc4) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Fix zval_get_string impl for PHP5 [4e56ba](https://www.github.com/phpredis/phpredis/commit/4e56ba) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Fix Redis/RedisArray segfaults [be5c1f](https://www.github.com/phpredis/phpredis/commit/be5c1f), [635c3a](https://www.github.com/phpredis/phpredis/commit/635c3a), [1f8dde](https://www.github.com/phpredis/phpredis/commit/1f8dde), [43e1e0](https://www.github.com/phpredis/phpredis/commit/43e1e0)
+- ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Fix memory leak and potential segfault [aa6ff77a](https://www.github.com/phpredis/phpredis/commit/aa6ff77a), [88efaa](https://www.github.com/phpredis/phpredis/commit/88efaa) ([Michael Grunder](https://github.com/michael-grunder))
+- Assume "NULL bulk" reply as success (empty session data) [4a81e1](https://www.github.com/phpredis/phpredis/commit/4a81e1)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Refactoring ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko), [Michael Grunder](https://github.com/michael-grunder))
+
+---
+
+## [3.1.2] - 2017-03-16 ([GitHub](https://github.com/phpredis/phpredis/releases/tag/3.1.2), [PECL](https://pecl.php.net/package/redis/3.1.2))
+
+### Changes
+
+- Re allow single array for sInterStore [6ef0c2](https://www.github.com/phpredis/phpredis/commit/6ef0c2), [d01966](https://www.github.com/phpredis/phpredis/commit/d01966) ([Michael Grunder](https://github.com/michael-grunder))
+- Better TravisCI integration [4fd2f6](https://www.github.com/phpredis/phpredis/commit/4fd2f6) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+### Fixed
+
+- RedisArray segfault fix [564ce3](https://www.github.com/phpredis/phpredis/commit/564ce3) ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+- Small memory leak fix [645888b](https://www.github.com/phpredis/phpredis/commit/645888b) (Mike Grunder)
+- Segfault fix when recreating RedisCluster objects [abf7d4](https://www.github.com/phpredis/phpredis/commit/abf7d4) ([Michael Grunder](https://github.com/michael-grunder))
+- Fix for RedisCluster bulk response parsing [4121c4](https://www.github.com/phpredis/phpredis/commit/4121c4) ([Alberto Fernández](https://github.com/albertofem))
+
+---
+
+## [3.1.1] - 2017-02-01 ([GitHub](https://github.com/phpredis/phpredis/releases/tag/3.1.1), [PECL](https://pecl.php.net/package/redis/3.1.1))
+
+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](https://github.com/remicollet))
+- ARM rounding issue in tests ([@remicollet](https://github.com/remicollet))
+- Use new zend_list_close instead of zend_list_delete when reconnecting.
+- Refactoring of redis_boolean_response_impl and redis_sock_write ([@yatsukhnenko](https://github.com/weltling))
+- Fixed a segfault in igbinary serialization ([@yatsukhnenko](https://github.com/weltling))
+- Restore 2.2.8/3.0.0 functionality to distinguish between an error
+ and simply empty session data. ([@remicollet](https://github.com/remicollet))
+- Fix double to string conversion function ([@yatsukhnenko](https://github.com/weltling))
+- Use PHP_FE_END definition when available ([@remicollet](https://github.com/remicollet))
+- Fixed various 'static function declared but not used' warnings
+- Fixes to various calls which were typecasting pointers to the
+- wrong size. ([@remicollet](https://github.com/remicollet))
+-
+- Added php session unit test ([@yatsukhnenko](https://github.com/weltling))
+- Added explicit module dependancy for igbinary ([@remicollet](https://github.com/remicollet))
+- Added phpinfo serialization information ([@remicollet](https://github.com/remicollet))
+
+---
+
+## [3.1.0] - 2016-12-14 ([GitHub](https://github.com/phpredis/phpredis/releases/3.1.0), [PECL](https://pecl.php.net/package/redis/3.1.0))
+
+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
+
+- Support the client to Redis Cluster just having one master ([andyli](https://github.com/andyli029)) [892e5646](https://www.github.com/phpredis/phpredis/commit/892e5646)
+- Allow both long and strings that are longs for zrangebyscore offset/limit
+ ([Michael Grunder](https://github.com/michael-grunder)) [bdcdd2aa](https://www.github.com/phpredis/phpredis/commit/bdcdd2aa)
+- Process NX|XX, CH and INCR options in zAdd command [71c9f7c8](https://www.github.com/phpredis/phpredis/commit/71c9f7c8)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+### Fixed
+
+- Fix incrby/decrby for large integers ([Michael Grunder](https://github.com/michael-grunder)) [3a12758a](https://www.github.com/phpredis/phpredis/commit/3a12758a)
+- Use static declarations for spl_ce_RuntimeException decl [a9857d69](https://www.github.com/phpredis/phpredis/commit/a9857d69)
+ ([Jeremy Mikola](https://github.com/jmikola))
+- Fixed method call problem causes session handler to display two times
+ [24f86c49](https://www.github.com/phpredis/phpredis/commit/24f86c49) ([ZiHang Gao](https://github.com/cdoco)).
+- PSETEX method returns '+OK' on success, not true [afcd8445](https://www.github.com/phpredis/phpredis/commit/afcd8445) ([sitri@ndxbn](https://github.com/ndxbn))
+- Fix integer overflow for long (>32bit) increments in hIncrBy [58e1d799](https://www.github.com/phpredis/phpredis/commit/58e1d799)
+ ([@iyesin](https://github.com/iyesin))
+- Move zend_object handler to the end ([Michael Grunder](https://github.com/michael-grunder)) [34107966](https://www.github.com/phpredis/phpredis/commit/34107966)
+- Using setOption on redis array causes immediate connection [f1a85b38](https://www.github.com/phpredis/phpredis/commit/f1a85b38)
+ ([Pavlo Yatsukhnenko](https://github.com/yatsukhnenko))
+
+---
+
+## [3.0.0] - 2016-06-10 ([GitHub](https://github.com/phpredis/phpredis/releases/3.0.0), [PECL](https://pecl.php.net/package/redis/3.0.0))
+
+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](https://www.github.com/phpredis//phpredis/commit/3159bd2),
+ [567dc2f](https://www.github.com/phpredis//phpredis/commit/567dc2f), [daa4d9f](https://www.github.com/phpredis//phpredis/commit/daa4d9f),
+ [f2711e3](https://www.github.com/phpredis//phpredis/commit/f2711e3), [9cb9d07](https://www.github.com/phpredis//phpredis/commit/9cb9d07),
+ [d51c89](https://www.github.com/phpredis//phpredis/commit/d51c89), [9ff8f49](https://www.github.com/phpredis//phpredis/commit/9ff8f49),
+ [33bb629](https://www.github.com/phpredis//phpredis/commit/33bb629), [cbdf65a](https://www.github.com/phpredis//phpredis/commit/cbdf65a),
+ [f30b7fd](https://www.github.com/phpredis//phpredis/commit/f30b7fd), [c687a51](https://www.github.com/phpredis//phpredis/commit/c687a51),
+ [6b3e773](https://www.github.com/phpredis//phpredis/commit/6b3e773), [2bf8241](https://www.github.com/phpredis//phpredis/commit/2bf8241),
+ [71bd3d](https://www.github.com/phpredis//phpredis/commit/71bd3d), [9221ca4](https://www.github.com/phpredis//phpredis/commit/9221ca4),
+ [4e00df6](https://www.github.com/phpredis//phpredis/commit/4e00df6), [e2407ca](https://www.github.com/phpredis//phpredis/commit/e2407ca),
+ [97fcfe6](https://www.github.com/phpredis//phpredis/commit/97fcfe6), [77e6200](https://www.github.com/phpredis//phpredis/commit/77e6200)
+ [Sean DuBois](https://github.com/Sean-Der)
+- Redis Cluster support
+- IPv6 support
+
+### Changed
+
+- Allow SINTERSTORE to take a single array argument again
+- Exception handling improvement [Jan-E](https://github.com/Jan-E) [314a2c3c](https://www.github.com/phpredis//phpredis/commit/314a2c3c)
+- Allow '-' and '+' in ZRANGEBYLEX [Patrick Pokatilo](https://github.com/SHyx0rmZ) [8bfa2188](https://www.github.com/phpredis//phpredis/commit/8bfa2188)
+
+### Fixed
+
+- config.w32 fix [Jan-E](https://github.com/Jan-E) [495d308](https://www.github.com/phpredis//phpredis/commit/495d308), [c9e0b682](https://www.github.com/phpredis//phpredis/commit/c9e0b682)
+- Unit test fix for max int value [Jan-E](https://github.com/Jan-E) [659ea2aa](https://www.github.com/phpredis//phpredis/commit/659ea2aa)
+- unsigned long -> zend_ulong fix [Jan-E](https://github.com/Jan-E) [4d66e3d4](https://www.github.com/phpredis//phpredis/commit/4d66e3d4)
+- Visual Stuio 14 fixes [Jan-E](https://github.com/Jan-E) [ea98401c](https://www.github.com/phpredis//phpredis/commit/ea98401c)
+- Segfault fix when looking up our socket [ephemeralsnow](https://github.com/ephemeralsnow) [0126481a](https://www.github.com/phpredis//phpredis/commit/0126481a)
+- Documentation fixes [Ares](https://github.com/ares333) [54b9a0ec](https://www.github.com/phpredis//phpredis/commit/54b9a0ec)
+- php7 related memory leak fix [Stuart Carnie](https://github.com/stuartcarnie) [b75bf3b4](https://www.github.com/phpredis//phpredis/commit/b75bf3b4)
+- Potential segfault fix in cluster session [Sergei Lomakov](https://github.com/sapfeer0k) [661fb5b1](https://www.github.com/phpredis//phpredis/commit/661fb5b1)
+- php7 related serialization leak fix (Adam Harvey) [c40fc1d8](https://www.github.com/phpredis//phpredis/commit/c40fc1d8)
+
+---
+
+## [2.2.8] - 2016-06-02 ([GitHub](https://github.com/phpredis/phpredis/releases/2.2.8), [PECL](https://pecl.php.net/package/redis/2.2.8))
+
+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](https://www.github.com/phpredis/phpredis/commit/32eb1c5f) (Vitaliy Stepanyuk)
+- Added support for IPv6 addresses
+
+### Fixed
+
+- PHP liveness checking workaround (Shafreeck Sea) [c18d58b9](https://www.github.com/phpredis/phpredis/commit/c18d58b9)
+- Various documentation and code formatting and style fixes ([ares333](https://github.com/ares333),
+ [sanpili](https://github.com/sanpili), [Bryan Nelson](https://github.com/bplus), [linfangrong](https://github.com/linfangrong), [Romero Malaquias](https://github.com/RomeroMalaquias), [Viktor Szépe](https://github.com/szepeviktor))
+- Fix scan reply processing to use long instead of int to avoid overflow
+ [mixiaojiong](https://github.com/mixiaojiong)).
+- Fix potential segfault in Redis Cluster session storage [cc15aae](https://www.github.com/phpredis/phpredis/commit/cc15aae)
+ ([Sergei Lomakov](https://github.com/sapfeer0k)).
+- Fixed memory leak in discard function [17b1f427](https://www.github.com/phpredis/phpredis/commit/17b1f427)
+- Sanity check for igbinary unserialization
+ [3266b222](https://www.github.com/phpredis/phpredis/commit/3266b222), [528297a](https://www.github.com/phpredis/phpredis/commit/528297a) ([Maurus Cuelenaere](https://github.com/mcuelenaere)).
+- Fix segfault occuring from unclosed socket connection for Redis Cluster
+ [04196aee](https://www.github.com/phpredis/phpredis/commit/04196aee) ([CatKang](https://github.com/CatKang))
+- Case insensitive zRangeByScore options
+- Fixed dreaded size_t vs long long compiler warning
+
+---
+
+## [2.2.7] - 2015-03-03 ([GitHub](https://github.com/phpredis/phpredis/releases/tag/2.2.7), [PECL](https://pecl.php.net/package/redis/2.2.7))
+
+### 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](https://github.com/michael-grunder), [@isage](https://github.com/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](https://github.com/weltling))
+- 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](https://github.com/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](https://github.com/itcom))
+
+---
+
+## [2.2.5] - 2014-03-15 ([GitHub](https://github.com/phpredis/phpredis/releases/tag/2.2.5), [PECL](https://pecl.php.net/package/redis/2.2.5))
+
+### Added
+
+- Support for the BITPOS command
+- Connection timeout option for RedisArray ([@MiketoString](https://github.com/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](https://github.com/mithunsatheesh))
+- Fix Homebrew documentation instructions ([@mathias](https://github.com/mathiasverraes))
+
+---
+
+## [2.2.4] - 2013-09-01 ([GitHub](https://github.com/phpredis/phpredis/releases/tag/2.2.4), [PECL](https://pecl.php.net/package/redis/2.2.4))
+
+### 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 &gt;= 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](https://github.com/euskadi31)
+- Stop throwing and clearing an exception on connect failure @matmoi
+- Fix a false positive unit test failure having to do with TTL returns