Skip to content

Commit

Permalink
Release 0.5.0
Browse files Browse the repository at this point in the history
  • Loading branch information
bjosv committed Dec 7, 2020
1 parent abb920a commit fd25e30
Show file tree
Hide file tree
Showing 3 changed files with 41 additions and 6 deletions.
14 changes: 14 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,17 @@
### 0.5.0 - Dec 07, 2020

* Renamed to [hiredis-cluster](https://github.com/Nordix/hiredis-cluster)
* The C library `hiredis` is an external dependency rather than a builtin part
of the cluster client, meaning that `hiredis` v1.0.0 or later can be used.
* Support for SSL/TLS introduced in Redis 6
* Support for IPv6
* Support authentication using AUTH
* Handle variable number of keys in command EXISTS
* Improved CMake build
* Code style guide (using clang-format)
* Improved testing
* Memory leak corrections and allocation failure handling

### 0.4.0 - Jan 24, 2019

* Updated underlying hiredis version to 0.14.0
Expand Down
3 changes: 3 additions & 0 deletions COPYING
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
Copyright (c) 2009-2011, Salvatore Sanfilippo <antirez at gmail dot com>
Copyright (c) 2010-2011, Pieter Noordhuis <pcnoordhuis at gmail dot com>
Copyright (c) 2020, Nick <heronr1 at gmail dot com>
Copyright (c) 2020, Bjorn Svensson <bjorn.a.svensson at est dot tech>
Copyright (c) 2020, Viktor Söderqvist <viktor.soderqvist at est dot tech>

All rights reserved.

Expand Down
30 changes: 24 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ Hiredis-cluster is a fork of Hiredis-vip, with the following improvements:
of the cluster client, meaning that the latest `hiredis` can be used.
* Support for SSL/TLS introduced in Redis 6
* Support for IPv6
* Support authentication using AUTH
* Using CMake as build system
* Code style guide (using clang-format)
* Improved testing
Expand Down Expand Up @@ -306,13 +307,30 @@ callbacks have been executed. After this, the disconnection callback is executed
There are a few hooks that need to be set on the cluster context object after it is created.
See the `adapters/` directory for bindings to *ae* and *libevent*.

## AUTHORS
### Allocator injection

This fork is based on the heronr fork (https://github.com/heronr/hiredis-vip)
and uses hiredis (https://github.com/redis/hiredis).
Hiredis-cluster uses hiredis allocation structure with configurable allocation and deallocation functions. By default they just point to libc (`malloc`, `calloc`, `realloc`, etc).

Hiredis-vip was originally created by vipshop (https://github.com/vipshop/hiredis-vip).
#### Overriding

The Redis Cluster client library part in hiredis-vip was written by deep (https://github.com/deep011).
If you have your own allocator or if you expect an abort in out-of-memory cases,
you can configure the used functions in the following way:

Hiredis-vip is released under the BSD license.
```c
hiredisAllocFuncs myfuncs = {
.mallocFn = my_malloc,
.callocFn = my_calloc,
.reallocFn = my_realloc,
.strdupFn = my_strdup,
.freeFn = my_free,
};

// Override allocators (function returns current allocators if needed)
hiredisAllocFuncs orig = hiredisSetAllocators(&myfuncs);
```

To reset the allocators to their default libc functions simply call:

```c
hiredisResetAllocators();
```

0 comments on commit fd25e30

Please sign in to comment.