Skip to content
This repository has been archived by the owner on Apr 6, 2019. It is now read-only.

Releases: Cylix/cpp_redis

v4.3.1

01 Feb 06:33
bbe38a7
Compare
Choose a tag to compare

Tag

4.3.1.

Date

January 31st, 2018

Changes

  • Fix compilation issues on some platforms
  • Fix CMake configuration issues
  • Compile with position independent code
  • Fix issue when reconnecting if the internal buffer was not cleared. Now fully clear all input/output buffers
  • Fix set_nb_workers behavior
  • Bump tacopie: compilation fix, position independent code, set_nb_workers fix

Additions

None

Removals

None

v4.3.0

14 Nov 07:57
580e3ce
Compare
Choose a tag to compare

Tag

4.3.0.

Date

November 13th, 2017

Changes

  • tacopie: fork support: allow set_default_io_service to take nullptr. In order to safely fork, call set_default_io_service(nullptr) to make sure the io_service destructor is called and all underlying threads joined.
  • tacopie: fix: timeout for connection not working due to invalid param to select, now working
  • tacopie: improvement: make sure socket is in blocking mode before connection (#32) as it differs from one OS to another
  • tacopie: improvement: check for non-blocking connect errors with getsockopt to avoid connect reporting a successful connection followed by a call to disconnection handler (now connect report a failed

Additions

  • tacopie: ipv6 support (connect, bind and accept operations, on tcp_server and tcp_client)

Removals

None

v4.2.0

03 Nov 05:38
d0a71d3
Compare
Choose a tag to compare

Tag

4.2.0.

Date

November 2nd, 2017

Changes

  • CMake fix: Remove explicit STATIC in add_library call so dynamic libraries can be built and improve consistency
  • Tacopie bump to 3.1.0 (refer to tacopie changelog for updates)

Additions

  • Visual Studio C++ solution

Removals

None

v4.1.0

26 Sep 19:42
a99fabd
Compare
Choose a tag to compare

Tag

4.1.0.

Date

September 26th, 2017

Changes

  • Fix some compilation issues on windows (on both cpp_redis and tacopie sides)
  • scan command improvement with additional overloads

Additions

  • sort command
  • hscan command
  • sscan command
  • zscan command
  • zinterstore command
  • zunionstore command
  • zrangebyscore command
  • zrevrangebyscore command
  • zrangebylex command
  • zrevrangebylex command
  • georadius command
  • georadiusbymember command
  • bitfield command

Removals

  • Private, Protected and Static functions from doxygen documentation

v4.0.0

25 Sep 13:30
eb6856f
Compare
Choose a tag to compare

Tag

4.0.0.

Date

September 20th, 2017

Changes

  • ZADD score param changed from map to multimap to allow multiple elements with same score
  • connection_callback (replacement of disconnection_callback). Called for any steps of connection process (attempt, success, failure, reconnection, drop, ...)

Additions

  • Sentinel support
  • Automatic reconnection if requested
  • Connection timeout
  • Ability to set number of io workers if you are working with tacopie
  • redis_client renamed into client
  • redis_subscriber renamed into subscriber
  • commands that failed to be sent (client not connected or disconnected) get their callback called with an error reply connection failure. This ensure that now all callbacks are always called
  • if reconnection process is enabled and succeed, failed commands are resent
  • if you send command and commit while client is not connected, it will now dismiss the commands and call their callback with an error, or resend them if reconnection is enabled. This is a change compared to the existing behavior that simply kept the commands in the buffer.
  • doxygen documentation

Removals

  • future_client: all functions have been merge into the redis_client
  • disconnection_callback: it is now replaced by the connection callback

This is a major release with lots of breaking changes.
It aims to enable high availability configuration as well as improved consistency with an enhanced design.

If you are upgrading please consider the following breaking changes:

  • redis_client is now client and redis_subscriber is now subscriber
  • future_client has been removed, but it is actually merged into client. Simply switch from future_client to client and you will have the same behavior
  • disconnection_callback has been removed and replaced by a connection_callback. If you are looking for exact same behavior, you will have to check if the state param is equal to dropped.
  • commands callbacks are always called. In case of failure, an error reply is passed in.

Any other changes should not be breaking changes but you might be interested into the added features.

v3.5.4

25 Aug 04:58
Compare
Choose a tag to compare

Tag

3.5.4.

Date

August 24th, 2017

Changes

  • fix issue #86 by changing some int32_t to int64_t (was causing overflow leading to stuck program on some architecture)
  • improve travis build with caching

Additions

  • ZADD command
  • CLIENT KILL

Removals

None

v3.5.3

02 Jul 19:29
Compare
Choose a tag to compare

Tag

3.5.3.

Date

July 2nd, 2017

Changes

  • bump tacopie to fix #85 - select keep sleeping and does not process incoming read/write events

Additions

None

Removals

None

v3.5.2

21 Jun 05:56
Compare
Choose a tag to compare

Tag

3.5.2.

Date

June 19th, 2017

Changes

  • Fix TACOPIE_CMAKE_ARGS getting converted to a string instead of a list
  • Fix Issue 76 (CMake install dir)
  • bump tacopie - fixes to address high CPU usage issues.

Additions

  • Expose wait_for_removal in .disconnect of redis_client redis_subcriber future_client

Removals

None

v3.5.1

30 Apr 22:45
Compare
Choose a tag to compare

Tag

3.5.1.

Date

April 30th, 2017

Changes

  • Fix compilations on windows
  • Fix reconnection behavior
  • Do not clear commands/callback buffer on calling commit or sync_commit while client is disconnected.

Additions

None

Removals

None

v3.5.0

10 Apr 03:15
Compare
Choose a tag to compare

Tag

3.5.0.

Date

April 9th, 2017

Changes

None

Additions

  • New feature - Update tacopie ref - Provide support for Unix socket. Simply pass in 0 as the port when building a redis_client, redis_subscriber or future_client. Then, the host will automatically be treated as the path to a Unix socket instead of a real host. - More in #67.

Removals

None