Skip to content

Releases: tonarino/actor

0.12.1

03 Feb 09:34

Choose a tag to compare

What's Changed

  • Fix docs build on docs.rs (hopefully), add Docs CI by @strohel in #98

Full Changelog: v0.12.0...v0.12.1

0.12.0

02 Feb 14:29

Choose a tag to compare

⚠️ API-breaking Changes

  • Reduce duplication between Context and TimedContext using BareContext by @strohel in #97
    • this is almost semver-compatible change,
  • Actorless Addr: transition from Addr<A: Actor> to Addr<M: Message> (API breaking) by @strohel in #93
    • Action needed: transform all your Addr<Actor> to Addr<Message> (or transition to Recipients)
    • You may find the new provided methods Actor::addr(), Actor::addr_with_capacity() handy

🚀 Exciting New Features

Other Changes

  • Fix Rust 1.89 lints (inconsistent inferred lifetimes) by @strohel in #95
  • Update 3 dependencies, Rust edition to latest & greatest by @strohel in #96

Full Changelog: v0.11.0...v0.12.0

0.11.0

31 Jul 19:44

Choose a tag to compare

What's Changed

  • Stop all actors at once instead of stopping/joining threads sequentially by @bschwind in #85
  • Add default impl for Actor::name(), reorder methods, small cleanups by @strohel in #92

Chores

Full Changelog: v0.10.0...v0.11.0

0.10.0

13 Aug 13:32

Choose a tag to compare

What's Changed

  • Cache last published event by @goodhoko in #87
    • ⚠️ BREAKING: Event types now must be Send + Sync
  • Error reporting QoL by @strohel in #88
    • ⚠️ BRAKING: Actor::Error now must be Display (and no longer needs to be Debug)
  • Make Actor::started(), stopped() fallible by @strohel in #89
    • ⚠️ BREAKING: Actor::started(), Actor::stopped() signatures have changed, you need to adapt your code

New Contributors

Full Changelog: v0.9.0...v0.10.0

0.9.0

31 May 07:35
4ce67b5

Choose a tag to compare

What's Changed

  • Derive Default (clippy 1.68 lint) by @strohel in #76
  • Fix clippy 1.73 lints, update lint configuration by @strohel in #78
  • Make spawn builder harder to misuse by @mbernat in #83

New Contributors

Full Changelog: v0.8.3...v0.9.0

0.8.3

28 Feb 11:30

Choose a tag to compare

What's Changed

  • Fix timed messages for busy actors by @strohel in #73

Full Changelog: v0.8.2...v0.8.3

0.8.2

07 Sep 08:52

Choose a tag to compare

What's Changed

  • Allow specifying default capacities on actors themselves in #66

Full Changelog: v0.8.1...v0.8.2

0.8.1

14 Jun 05:55

Choose a tag to compare

What's Changed

  • Publisher/subscriber system was added in #67

Full Changelog: v0.8.0...v0.8.1

0.8.0

17 Feb 15:40

Choose a tag to compare

What's Changed

  • Add priority field to SendError, DisconnectedError by @strohel in #64
  • Move .recipient() from Addr to Recipient by @strohel in #65
  • Make Capacity fields normal, hish public by @strohel in #65
  • Update dependencies

Full Changelog: 0.7.0...v0.8.0

tonari-actor 0.7.0

24 Aug 21:36

Choose a tag to compare

  • [breaking] ActorError::ChannelDisconnected enum variant has been removed. Code branch that produced it was deemed unreachable.
  • [breaking] Recipient::remaining_capacity method has been removed. Priority channels should should remove the need for it.
  • Added support for priority channels. Each actor can define optional priority(&Self::Message) method to determine priority for incoming messages before they are being sent. Available priorities are Normal and High. All high-priority messages are delivered before normal priority messages.
  • Actor inbox capacities can be now set independently using the new Capacity type. Conversion from usize is provided, so existing code should continue to work.
  • Underlying channel implementation has been changed from crossbeam-channel to flume. According to a simple benchmark this has improved maximum throughput slightly; addition of priority channels has potentially lowered the throughput again, but the net result should be still positive. See #61 and #62.