All Versions
Latest Version
Avg Release Cycle
81 days
Latest Release
1615 days ago

Changelog History

  • v1.1.7 Changes

    December 22, 2019

    🔌 Plugs a memory leak (watchers were not always being de-registered when returning REMOVE), and other minor bug-fixes and documentation updates.

    👀 A chat server example has been added (see examples/ folder).

  • v1.1.6 Changes

    May 23, 2019

    📚 This release includes a critical bug-fix for OpenBSD. In addition, there have been some minor documentation improvements.

  • v1.1.5 Changes

    September 14, 2018

    🚀 This release just removes some constructs which technically provoke undefined behaviour, includes a tiny performance/memory use optimisation, and a little bit of refactoring.

  • v1.1.4 Changes

    April 02, 2018

    This is a minor release with some fixes/updates to documentation, and the lambda-based "add_timer" function (previously undocumented) now takes const timespec & arguments (which allows using time_val values).

    • document the pre-existing "add_timer() with lambda" function
    • 🔄 change "add_timer()" (with lambda) to accept const timespec & arguments (previously the parameter types were non-const).
    • 🛠 fix broken timer example in introduction (
    • various internal changes.
  • v1.1.3 Changes

    March 08, 2018

    🛠 This is primarily a bugfix release, but includes CMake support files (installed alongside the library with "make install"). Note that CMake is not required to build.

    • 🛠 fix timers not working on non-Linux systems
    • Includes CMake files (makes it easier for projects using CMake to use Dasynq)
    • 🏗 build fixes for platforms without kqueue or epoll
    • 🛠 install fixes for BSDs
  • v1.1.2 Changes

    February 09, 2018

    🚀 Unfortunately the previous release had build issues, hence this immediate re-release.

  • v1.1.1 Changes

    February 09, 2018

    🚀 This release fixes a bug which prevented "emulated" fd watches from working properly. It also includes a workaround for a MacOS kernel bug which prevented signals from being reliably detected using the kqueue backend on that platform.

  • v1.1.0 Changes

    January 30, 2018

    🚀 This release includes bug fixes for multi-thread event loops using the kqueue backend, and also adds a new backend which uses pselect(2). Since pselect is mandated by POSIX this means Dasynq should work on nearly all mostly-POSIX-compliant systems.

    🐎 (Note however that pselect is probably not going to be great performance wise, and suffers from an inherent inability to deal with file descriptors beyond a certain number).

  • v1.0.4 Changes

    January 16, 2018

    🚀 This release fixes a silly bug with subtraction of time values which gives the wrong result for times with exactly equal nanoseconds. While this probably would strike only rarely, it's a bug best squashed as early as possible, and so I'm drafting this release.

  • v1.0.3 Changes

    December 23, 2017

    🚀 This is a bug-fix for an issue that crept into v1.0.2, the previous bug-fix release.