Skip to content

Releases: agents-net/agents.net

2021.6.2

07 Jun 09:10
e5680ef
Compare
Choose a tag to compare

Added

  • PushAndExecute accepts a CancellationToken now. With this it is possible to stop the wait operation

Fixed

  • #93 - When changing the message domain the message domain of the whole hierarchy is now changed
  • #95 - Terminated domains are not considered anymore when choosing the parent for a new domain

2021.6.1

02 Jun 11:18
e6fc10f
Compare
Choose a tag to compare

Notice

There was no 2021.6.0 as I made a mistake in the last release and created the 2021.6.0 by accident. This version is unlisted on nuget but I cannot overwrite it on nuget. That is why this is a 2021.6.1.

Changed

  • Breaking Change: Removed the Predecessors and GetPredecessor members from Message. This was a huge unfixable memory leak. Instead of it MessageDomain and MessageCollector should be used to address scenarios where the predecessor message must be evaluated
  • Breaking Change: The Agent class implements now IDisposable. Disposables can now be added with the new AddDisposable method
  • MessageAggregator automatically terminates the message domains of the aggregated messages. Can be disabled with optional constructor parameter
  • MessageCollector automatically removes messages from a terminated domain. This was a huge memory leak

Added

  • MessageCollector.PushAndExecute is a replacement for MessageCollector.FindSetsForDomain. It adds a message to the collector and waits for a complete set with that message to execute an action
  • Agent.AddDisposable marks the passed object for disposal in a thread-safe way

Removed

  • Breaking Change: Removed useless MessageDomainsCreatedMessage and MessageDomainsTerminatedMessage
  • Breaking Change: Removed the MessageCollector.FindSetsForDomain method. Use the new MessageCollector.PushAndExecute method instead

Fixed

  • MessageDomain did not dispose replaced messages. This is now fixed
  • Several memory leaks fixed

2021.0

30 Dec 12:25
0e7a86f
Compare
Choose a tag to compare

Added

  • Integration tests
  • Community health files and appropriate readme
  • It is now possible to register to all messages by using the type Message for the ConsumeAttribute or InterceptsAttribute
  • Messages have now a defined lifecycle. This can be used to dispose objects during execution safely
  • XML Documentation for all public classes in Agents.Net project - should be visible in nuget package
  • Getting Started guide and documentation website

Changed

  • Breaking Change: Switch from magic string based agent definition to type based agent definition
  • Breaking Change: Change execution method of aggregator to IReadonlyCollection so that it can be passed directly to TerminateDomainsOf
  • Breaking Change: Switched logging framework from NLog to Serilog
  • MessageCollector messages can know be consumed directly, so that they are removed from the collector
  • Message predecessor property visibility changed to public

Removed

  • Breaking Change: Removed Community class. Register agents directly with IMessageBoard
  • Breaking Change: Removed Terminate methods from MessageDomain helper
  • Breaking Change: Removed HandledExceptionMessageDecorator as it is useless unless there is a default exeception message agent
  • Breaking Change: Removed children from Message constructor. Each message can have only one child and only by using the MessageDecorator class.

2020.6

21 Jun 07:48
53573c3
Compare
Choose a tag to compare
  • Performance improvements
  • Added benchmarks
  • Added unit tests
  • This release contains lots of breaking changes to 2020.0.1

2020.0.1

21 Jun 07:49
39bea01
Compare
Choose a tag to compare

First real release!