Skip to content
  • DATA: Updated the Lite data file for Feb.
  • BUG: Fixed segmentation fault for headers_in structure potentially being null.
  • BUILD: Updated/added pre-compiled modules for Nginx versions.
  • DOC: Updated README instructions for compiling Nginx.
Assets 2

@ben51degrees ben51degrees released this Feb 4, 2019 · 41 commits to master since this release

Highlights Include:

  • OPTIM: Improved Node.JS auto update functionality
  • BUILD: Node.JS Lite data file packages are now dev dependencies rather than full dependencies. This means that they are not installed in a production environment unless explicitely included.
  • BUG: The case where a single, unterminated, header was passed to the fiftyoneDegreesMatchForHttpHeaders method was not properly handled.
Assets 2

@JoshGrew51D JoshGrew51D released this Nov 16, 2018 · 2 commits to master since this release

Node, Python and Nginx build improvements

  • Updated Lite data file for November.
  • Python – Modified to support Clang and MacOS by removing the compiler argument 'gnu89' from the build script.
  • Python – Updated README to provide in depth explanations for users coming directly from PyPi.
  • NodeJS – Modified examples to require the NPM packages when referencing data file paths.
  • NodeJS – Updated output of running copysource.js so it is clearer.
  • NodeJS – Ensured version below 6 throw an appropriate build error.
  • Nginx - Added option to set the cache key length as a build argument.
  • Nginx – Resolved a segfault error when long values such as those used with JavaScriptHardwareProfile are requested.
Assets 2

@JoshGrew51D JoshGrew51D released this Aug 20, 2018 · 7 commits to master since this release

Multiple varnish version support & minor PHP bug fix

Notes: Varnish tested on versions 4.0.3+ / 4.1.5+ / 5.1.3 / 5.2.0 / 6.0.0

  • FEAT: Included copying source files into the build process.
  • BUILD/BUG: Amended build process to take into consideration the multiple versions of Varnish that were not supported and as a result throwing a segfault when starting the module . Also added additional error logging for when the module fails to start.
  • FEAT: Added functionality to switch the module build based on the Varnish version.
  • BUILD/DOC: Changed data file check to use a warning message as opposed to error. Update README with additional Hash and build instructions.
  • FEAT/DOC/OPTIM: Added Varnish Hash API, added documentation and improved memory allocation
  • BUILD: Included SWIG PHP changes in SWIG generated C files.
Assets 2

@JoshGrew51D JoshGrew51D released this May 24, 2018 · 10 commits to master since this release

In preparation for GDPR a disclaimer has been added as a .md file for consumer reference.
Updated the Lite files for May data.

Assets 2

@Joseph51D Joseph51D released this Apr 11, 2018 · 14 commits to master since this release

Highlights include:

  • FEAT: Golang API released as stable.
  • DATA: Updated Lite Binary file for April 2018
Assets 2

@Joseph51D Joseph51D released this Nov 30, 2017 · 24 commits to master since this release

Highlights include:

  • OPTIM: Newer Hash Trie files are written with the length of the string including the null terminator. This means that this does not need to added when allocating memory for a string in indirect mode.
  • FEAT: Added features and tests to Nginx, also fixed some bugs.
  • DATA: Updated the Lite Binary file for November 2017.
  • FEAT: Added Lua module. This is currently in beta, and supports the core functionality. Examples are included as with other modules. See readme for details.
  • FEAT: 51Degrees PHP common API released.
Assets 2

@ben51degrees ben51degrees released this Oct 5, 2017 · 37 commits to master since this release

Highlights Include:

  • OPTIM: Improved performance when used with SWIG and C++.
  • OPTIM: Improved performance when used in a multi-threaded environment.
Assets 2
Sep 20, 2017


BUG: Nginx shared memory locks were not being properly handled.
The cache is now locked until the result of the cache fetch is finished
with. The dataset cleanup now ensures that only one process attempts to
free the dataset, and that it is the last process to exit which does so.

Pre-compiled modules have also been rebuilt with this fix, and the makefile optimised to build the modules without the need to build the entire Nginx binary.

@ben51degrees ben51degrees released this Sep 14, 2017 · 45 commits to master since this release

Highlights Include:

  • FEAT: Implemented new Hash Trie V34 algorithm. See our blog post for details: 51Degrees: More Than Three Times Faster!
  • FEAT: Added Java Hash Trie implementation.
  • BUG: Cache performance impacted if NDEBUG is not defined.
  • BUG: distribute package is depricated and has been replaced by setuptools.
  • FEAT: Mozilla Public License Version 2.0 displayed in GitHub markdown.
  • BUG: User-Agent cache in the shared memory zone lock was not released in the rare case when an identical match had been inserted in the time between getting a match and adding it to the cache.
  • FEAT: 51D_match methods can now be called from http and server blocks.
  • DOC: Instructions to build module for PHP 7 are now clearer.
  • BUG: Nginx now frees a previously allocated dataset if the config is reloaded.
  • BUILD: Added a check for node version when installing.
  • DATA: Updated Lite data files for September 2017.
Assets 2
You can’t perform that action at this time.