Releases: adel-mamin/amast
Releases · adel-mamin/amast
v0.6.1
Changes
- Add more active object API documentation
am_ao_publish()now takesconst struct am_event **as a parameter
v0.6.0
Changes
- Add amast-pragma: verbatim-include-std-on(off) support
- Enable AM_ASSERT_FAILURE in amast_config.h
- Add AM_PAL_MUTEX_NUM_MAX
- Use LTO only for amast.c and amast_test.c
- Add example links for ringbuf and ao modules
- Add repo link to copyright notes
- Add libs/pal/pal.h descriptions
- Add README.rst to ringbuf, onesize, event, timer and ao libs
- Enable optimization, ASAN and USAN
v0.5.0
Changes
- Prune on_idle AO callback
- Rework am_ao_run_all()
- Add AM_PAL_TASK_ID_MAIN
- Add am_pal_sleep_till_ticks() and am_pal_sleep_till_ms()
- Rename AM_DIVIDE_ROUND_UP() to AM_DIV_CEIL()
- Add AM_PAL_TASK_NUM_MAX
- Fix am_ao_notify() signature
- Prune ao_type meson option
- Prune global src variable from meson.build files
- Upgrade pixi tools
- Add minimal active object usage unit test
- Add cspell, fix typos
- Mark am_ao_init_subscribe_list() as optional
- Add ringbuf module with examples
Known issues
- the FreeRTOS port is still work in progress
v0.4.2
Changes
- Fix posix port of DPP example
- Allow for external setting of HSM_HIERARCHY_DEPTH_MAX
- Use AM_POOL_BLOCK_SIZEOF and AM_POOL_BLOCK_ALIGNMENT
- Re-enable LTO and release type optimization
- Assert HSM transitions are not to am_hsm_top() state
- Streamline naming of global variables
- Rework am_event_recall()
- Rename AM_EVENT_RC_OK_WAS_EMPTY to AM_EVENT_RC_OK_QUEUE_WAS_EMPTY
- Upgrade build tools. Fix warnings
- Rework libs/ao/cooperative/port.c
- Expose am_ao_event_queue_is_empty()
- Add enum am_event_rc and rework event push APIs
- Fix ao/cooperative/port.c compilation errors
- Prune am_ao_notify_event_queue_empty(), rework AO cooperative port
- Prune am_ao_wait()
- Prune AO_COOPERATIVE and AO_PREEMPTIVE defines
Known issues
- the FreeRTOS port is still work in progress
v0.4.1
Changes
- combine
amast_stubs.cwithamast_test.c - add debug print-outs to dining philosophers problem (DPP) example
Known issues
- the posix port of DPP crashes sometimes
- the freertos port is still work in progress
v0.4.0
Changes
- Extend and fix bugs in posix port
- Add active ojbect library implementation
- Add dining philosophers example. Tested with posix port
- Extend and fix bugs in event library implementation
- Improve FSM and HSM documentation
- Add bit library
- Add
libs/hsm/tests/defer.c
v0.3.1
Features
- Add AM_ASSERT_FAILURE configuration to amast_config.h
- Add struct am_onesize_cfg with crit_enter(exit) callbacks
v0.3.0
Features
- Add critical section handling to timer module
- Add libs/pal/stubs
- Fix include-what-you-use warnings
- Add tools/unity/amast_config.h
- Add libs/common/assert.c
- Rework hierarchy depth check in hsm_dispatch()
- Add am_hsm_state::init_called
- Place static functions at top of hsm.c
- Optimize HSM implementation
v0.2.0
Features
- The finite state machine implementation (documentation)
- Compilation instructions in
README.md
v0.1.0
Features
- The hierarchical state machine implementation (documentation, examples)
- The async-await implementation (documentation)
- Singly and doubly linked lists
- One size memory allocator
- Timers
- Events