Skip to content

Releases: oliver-giersch/async-unsync

v0.3.0

12 Mar 13:04
Compare
Choose a tag to compare

Release 0.3.0

  • Performance improvements to Semaphore.

Breaking Changes

  • Removes bound::[Channel|Sender|SenderRef]::unbounded_send
  • Removes Semaphore::outstanding_permits and Semaphore::return_permits
  • Alters the behaviour of bounded::Channel::from_iter to use the maximum of the iterator's length and the given capacity as the channel's capacity.

v0.2.2

03 May 15:47
Compare
Choose a tag to compare

Release 0.2.2

  • Fixes a bug where a Waker registered by a Semaphore would not be dropped,
    causing memory leaks.

v0.2.1

03 May 06:51
Compare
Choose a tag to compare

Release 0.2.1

  • Fixes a bug Semaphore that would not wake waiters on close.
  • Change Semaphore::acquire[_many] to return a named Future type.

v0.2.0

19 Apr 07:09
Compare
Choose a tag to compare

Release 0.2.0

  • Includes Semaphore API to acquire multiple permits in a single call
  • Introduces alloc feature and enables semaphore without it, i.e.,
    Semaphore now requires zero allocations.
  • Enables non-allocating oneshot channel uses without alloc feature.
  • Document panic behavior when creating bounded channels with zero capacity.
  • Adds from_iter APIs for bounded and unbounded channels
  • Adds bounded::[Channel|Sender|SenderRef]::unbounded_send API.
  • Adds Semaphore::outstanding_permits for accounting handed out permits

Breaking Changes

  • Renames Semaphore::[try_]acquire_one to [try]_acquire
  • Introduces split alloc and std features, bounded and unbounded no
    longer exist without the alloc feature enabled,
    oneshot::Channel::into_split likewise requires alloc.

v0.1.1

08 Apr 06:45
Compare
Choose a tag to compare

This release fixes some bugs around closing semaphores and split mpsc channels. It also improves memory management in all allocating data structures, to periodically check if space can be saved by shrinking buffers. This should improve memory usage in very long lived channels (no more apparent memory leaks).

v0.1.0 - initial release

01 Apr 07:57
Compare
Choose a tag to compare

Contains full-featured async + !Sync data structures:

  • bounded & unbounded MPSC channels
  • "oneshot" channel
  • semaphore implementation