Skip to content

Releases: linkmonitor/eventrouter

Update GitHub Actions to Node 20 from Node 16

01 Jul 17:45
Compare
Choose a tag to compare

Node 16 has reached EOL and is deprecated. GitHub is transitioning to Node 20:

GitHub Actions: Transitioning from Node 16 to Node 20

Assert when ErSend() posts to a full queue

13 Jun 20:32
Compare
Choose a tag to compare
v4.1.0

Update DefaultSendEvent logic not to wait for queue to be cleaned up …

Add context argument to event handlers

23 May 20:06
Compare
Choose a tag to compare

NOTE: This release changes the signature of event handlers and breaks existing code.

The fixes should be relatively straightforward: add an argument to all event handlers, ignore it, and add a NULL context to all module declarations.

This context makes it possible to use class instances as modules that share an event-handling function (possibly a static method of their class).

Refine ER_ASSERT_E

16 Apr 22:23
Compare
Choose a tag to compare

A small update to make ER_ASSERT_E more sensitive to unintended assignment in its conditional argument.

Print event info on assert

16 Apr 13:52
Compare
Choose a tag to compare

This minor release prints information about events related to assertions. There should be no functional change.

Remove `ErAtomLock_t`

15 Apr 20:47
Compare
Choose a tag to compare

The introduction of ErAtomLock_t caused problems for clients that re-sent events. This release removes that feature until it can be fixed.

Add ErTryClaim() to the OS implementations

20 Jul 00:05
Compare
Choose a tag to compare

This release adds ErTryClaim() to the OS-based implementations. This mechanism provides a safe way to send events from non-owning tasks and, hopefully, provides enough documentation to explain what that means.

A side-effect of this change is that clients may have to claim events before sending them during initialization.

Fix ErQueueTimedPopFront()

13 Jul 17:34
Compare
Choose a tag to compare

Fix an extra indirection in ErQueueTimedPopFront().

queue_.h and MockOs Bug Fixes

12 Jul 22:08
Compare
Choose a tag to compare

This minor release adds GetTimeMs() to the MockOs files and adds extern "C" annotations to queue_.h. Clients using v3.0.0 should see no difference when upgrading to this revision.

Version v3.0.0: Add a POSIX backend

10 Jul 15:53
Compare
Choose a tag to compare

This release adds a POSIX backend, an OS-agnostic queue abstraction, and functions for receiving events to handle in a task (these actions happened outside the Event Router in previous releases, and that behavior is still supported).

Clients that use the new functions to receive events and the new queue abstraction can write modules and task-functions that can be shared between the FreeRTOS and POSIX backends.