Skip to content

Releases: 3rd-Eden/memcached

AWS friendly

18 May 02:56
Compare
Choose a tag to compare

This release adds support for AWS auto discovery (thank you, @kcarlson), fixes quite a big connection-leak bug (thank you, @calvinfo) and fixes a typo in the readme (thank you again, @kcarlson).

Compatibility improvements

24 Nov 03:10
Compare
Choose a tag to compare

This release improves compatiblity with Ubunty releases of Memcached. Ubunty likes injecting its name into the Memcached version, breaking our parser. This was fixed by @mrlannigan (thanks!).

We now also test all Travis runs against Node 4 and 5.

IOJS / Node 4.0 support

09 Sep 08:54
Compare
Choose a tag to compare

The underlaying hashring module has been updated and had its binary addons removed. While the test showed no regression in hashring distribution, I would rather be safe than sorry and published it as 2.2.0 instead of 2.1.1.

Yet another hashring distribution update

22 Sep 07:26
Compare
Choose a tag to compare

There was another incompatibility discovered in the hash ring module, see 3rd-Eden/node-hashring#23. So we've bumped the dependency of hashring and as the distribution slightly changes again, we've also done a major update of this module.

Sorry for the inconvenience.

1.0 - Major breaking change

07 Sep 17:25
Compare
Choose a tag to compare

New hash ring version

This 1.0 release contains a major breaking change for those of us who are using multiple servers with the memcached driver. The 1.0 release contains an updated hashring module which is now fully compatible with libketama and the python hash_ring module. Because of the changes within this module your keys will be requested on different servers as the hash ring now uses a better distribution. To switch between hashing algorithms you can set a compatiblity option. It's ketama by default but you can switch to hash_ring compatiblity by setting to hash_ring

The updated hashring module also fixes a memory leak that we had within memcached as key->server mapping is now cached with a LRU cache instead of just a plain object.

No more CHANGELOG

Also as you might have noticed, the CHANGELOG.md file has been deleted. All future releases and changes will be announced using the releases feature of Github. To see a full list of changes you can just compare the different versions as from now on, we will make sure that every release is automatically tagged (which is done automatically for us using the Github releases feature).

Death to domains

Domains have been source of pain, it's an experimental feature and in some cases lead to memory leaks and crashes of applications. We've decided to completely remove support for domains and believe that node should make it possible for users to implement this instead of library authors.

Future

So what is the future of this module. As some of you might have been noticing the commits and fixes in this module has been slacking to a point of being completely dead at times. My apologies for this but it's quite hard to maintain all your modules equally. If you wish to help maintaining or sponsor the maintenance, please reach out to me on twitter or send me an e-mail.

To keep this module moving forward I've decided to re-start my 1.0 branch which implements a new parser and reboot it as the future 2.0. The new parser will fix a lot of new line issues that this module has faced and dramatically improves the parsing speed. As this will touch all API's it should be considered that it will be a full rewrite of the module as it also allows me to clean up dead and horrible code.