Brighter

A framework for building messaging apps with .NET and C#.

MIT License

Stars
2K
Committers
82

Bot releases are hidden (Show)

Brighter - Paramore.Brighter.v7.0.137

Published by iancooper over 7 years ago

  • Support for .NET Core (NETSTANDARD 1.5)

Breaking Changes

  • Configuration no longer supports XML based config sections. We use data structures instead, and expect you to configure mostly in code, initializing those data structures from your config system of choice yourself. We recommend following 12-Factor Apps guidelines and preferring enviroment variables for items that vary by environment over XML or JSON based configuration files. (We may consider providing config sections in Contrib again, please feedback if this is a critical issue for you. PRs welcome.)
  • Dropped CommandProcessor from namespaces and folder names, to shorten, and remove semantic issue that it is not just a Command Processor
  • Changed namespaces and folders to be CamelCase
  • As a result, your using statements will need revision with this release
  • Some namespaces i.e Paramore.Brighter.Policy changed to avoid clashes now CamelCase (has become Paramore.Brighter.Policies)
Brighter - Paramore.Brighter.v7.1.0

Published by iancooper over 7 years ago

  • Fixes issue with high CPU when failing to connect to RabbitMQ.
  • Fixes missing High Availability setting, had to make changes to IAmAChannelFactory.
Brighter - Paramore.Brighter.v6.1.8

Published by iancooper about 8 years ago

Stabilty Fixes

Brighter - Paramore.Brighter.v6.1.1

Published by iancooper about 8 years ago

Stabilty Fixes

Brighter - Paramore.Brighter.v6.1.0

Published by iancooper about 8 years ago

Stabilty Fixes

Brighter - Paramore.Brighter.v6.0.28

Published by iancooper about 8 years ago

Stabilty Fixes

Brighter - Paramore.Brighter.v5.0.323

Published by iancooper about 9 years ago

Release 5

Bug Fixes:

  • #100 CommandProcessor.Post fails with Object reference not set to an instance of an object.
  • Fix RequeueMessage exhaustion to log ERROR.
  • #101 Updated Requeue method to send a message to a specific queue as opposed to a topic.
  • Added a message store write timeout and message gateway timeout on a post; perviously we wait indefinitely (bad Brighter team, no biscuit).
  • Replace Successor write-only property with SetSuccessor method.
  • Message Viewer, fixed startup issues.
  • Removed a few unused interfaces.
  • Correct exceptions namespace to actions.

Features:

  • A connection can now be flagged as isDurable in the configuration. Choosing isDurable when using RMQ as the broker will create a durable channel (i.e. does not die if no one is consuming it, and thus continues to subscribe to messages that match it's topic). We think there are sufficient trade-offs with a message store that allows replay to make this setting false by default, but have configured to allow users to make this choice dependent on the characteristics of their consumers (i.e. sufficiently intermittend that messages would be lost).
  • #92 Added Event Store Message Store implementation
  • #30 Changed RabbitMQ Messaging Gateway to support multiple performers per connection, fixing the pipeline errors from RabbitMQ Client
  • Added a UseCommandSourcing attribute that stores commands to a command store. This is the Event Sourcing paradigm described by Martin Fowler in http://martinfowler.com/eaaDev/EventSourcing.html The term Command Sourcing refers to the fact that as described the pattern stores commands (instructions to change state) not events (the results of applying those commands).
    • This may result in a breaking change that the Id on IRequest requires a setter to allow it to be deserialized
  • Added MS SQL Command Store implementation
  • Added monitoring attribute, which fires message onto control bus
  • Cleaning up code so working with dnx and Portable will be easier
  • Message Viewer, Add paging
  • Update Code of Conduct to Contributor Covenant 1.1.0
  • Add DDL scripts to help create SQL based schemes

Remove and Depreciated:

  • Flag the method Repost on IAmACommandProcessor as obsolete, We will probably drop this in the next release. We suggest that you use the message store directly to retrieve a message and then call Post.
  • Dropped support for RavenDb as a message store, we feel EventStore covers this scenario better where non-relational stores are an option
  • Removed release branch. We just tag a release on master now, so this only existed to support an older version of the library that was pre the tagging strategy. Removed now as confusing to new users of the library.
Brighter - Paramore.Brighter.v4.0.215

Published by iancooper over 9 years ago

  1. Fixed an issue where you could not have multiple UsePolicy or FallbackPolicy attributes on a single handler.#
  2. We pool connections now, to prevent clients with large number of channels overwhelming servers.
  3. Add concept of delayed (deferred) message sending.
  4. Implement delayed requeuing using gateway support (when supported).
  5. Delayed message provider support for RabbitMQ using rabbitmq_delayed_message_exchange plugin (3.5+).
  6. Renamed RequeueException to DeferMessageAction and moved it into the command processor project.
  7. Fixed and issues with unhandled exceptions from handlers when an event is published not been logged correctly
  8. The first early version of a Message Store Viewer has been release as a zip file download.
Brighter - Paramore.Brighter.v3.0.129

Published by iancooper over 9 years ago

Stabilty Fixes

Brighter - Paramore.Brighter.v3.0.94

Published by iancooper over 9 years ago

Improved RabbitMQ gateway performance and availability. Changes to ServiceActivator Channel and Gateway Model.