mirror of
https://github.com/rtic-rs/rtic.git
synced 2025-12-16 21:05:35 +01:00
2 KiB
2 KiB
Change Log
All notable changes to this project will be documented in this file. This project adheres to Semantic Versioning.
For each category, Added, Changed, Fixed add new entries at the top!
Unreleased
v2.0.1 - 2025-06-22
Changed
- Replace
asyncimplementations ofdelay/delay_until/timeout/timeout_atwith structs to reduce memory usage.
v2.0.0 - 2024-05-29
Added
Changed
- Full rewrite of the
MonotonicAPI.- Now split into multiple traits:
Monotonic- A user-facing trait that defines what the functionality of a monotonic is.TimerQueueBackend- The set of functionality a backend must provide in order to be used with theTimerQueue.
TimerQueueis now purely based on ticks and has no concept of real time.- The
TimerQueueBasedMonotonictrait implements aMonotonicbased on aTimerQueueBackend, translating ticks intoInstantandDuration.
- Now split into multiple traits:
Fixed
- Docs: Rename
DelayUstoDelayNsin docs.
v1.3.0 - 2024-01-10
Changed
- Using
embedded-hal1.0.
v1.2.0 - 2023-12-06
Changed
- Docs: Add sanity check to
half_period_countercode example - Deprecate
Monotonic::should_dequeue_checkas it was erroneous
Fixed
- Fix race condition in
half_period_counter::calculate_now. This sadly required a minor API change.
v1.1.0 - 2023-12-04
Added
half_period_countercontaining utilities for implementing a half-period-counter based monotonic.should_dequeue_checkto theMonotonictrait to handle bugged timers.
Changed
Fixed
- Soundness fix:
TimerQueuedid not wait long enough inDurationbased delays. Fixing this sadly required adding aconst TICK_PERIODto theMonotonictrait, which requires updating all existing implementations. - If the queue was non-empty and a new instant was added that was earlier than
head, then the queue would no pend the monotonic handler. This would cause the newheadto be dequeued at the wrong time.