When we push a collection of functionality it is available via nuget.org and symbol files are published to symbolsource.org
This section lists features in master, available by AppVeyor, but not yet deployed to nuget.org.
Master
Renamed MessageStore to Outbox and CommandStore to Inbox for clarity with well-known pattern names outside this team
--- Impact is wide, namespaces, class names and project names, so this is a BREAKING CHANGE
--- Mostly you can search and replace to fix
--- Added support for a global inbox via a UseInbox configuration parameter to the Command Processor
------ Will insert an Inbox in all pipelines
------ Can be overriden by a NoGlobalInbox attribute for don't add to pipeline, or an alternative UseInbox attribute to vary config
--- The goal here is to be clearer than our own internal names, which don't help folks who were not part of this team
-- The Outbox now fills up if a producer fails to send. You can set an upper limit on your producer, which is the maximum outstanding messages
---- that you want in the Outbox before we throw an exception. This is not the same as Outbox size limits or sweeper, which is seperate and mainly
---- intended if you don't want the Outbox limit to fail-fast on hitting a limit but keep accumulating results
Added caching of attributes on target handlers in the pipeline build step
--- This means we don't do reflection every time we build the pipeline for a request
--- We do still always call the handler factory to instantiate as we don't own handler lifetime, implementer does
--- We added a method to clear the pipeline cache, particularly for testing where you want to test configuration scenarios
Added ability to persist RabbitMQ messages
Added subscription to blocked/unblocked RMQ channel events. A warning log is created when a channel becomes blocked and an info log is generated when the channel becomes unblocked.
Improved the Kafka Client. It now uses the publisher/creator model to ensure that a message is in Brighter format i.e. headers as well as body; updated configuration values; generally improved reliability. This is a breaking change with previous versions of the Kafka client.
The class BrighterMessaging now only has a default constructor and now has setters on properties. Use the initializer syntax instead - new BrighterMessage{} to avoid having redundant constructor arguments.
Changes to how we configure transports - renaming classes and extending their functionality
--- Connection is renamed to Subscription
--- Added a matching Publication for producers
--- Base class includes the attributes that Brighter Core (Brighter & ServiceActivator) need
--- Derived classes contain transport specific details
--- On SQSConnection, renamed VisibilityTimeout to LockTimeout to more generically describe its purpose
--- Seperated from GatewayConfiguration, that now has a marker interface, used to connect to the Gateway and not about how we publish or subscribe
--- We now have the option to declare infastructure separately and Validate or Assume it exists, still have an option to Create which is the default
--- We think it will be most useful for environments like AWS where there is a price to checking (HTTP call, and often looping through results)
--- Added support for a range of parameters that we did not have before such as dead letter queues, security etc via these platform specific configuration files
Provided a short form of the BrighterMessaging constructor, that queries object provided for async versions of interfaces
Changed IsAsync to RunAsync on a Subscription for clarity
Supports an async pipeline: callbacks should happen on the same thread as the handler (and the pump), avoiding thread pool threads
Fixed issue in SQlite with SQL to mark a message as dispatched
Release 8.1.1399
Update nuget libs
RabbitMQ 6.*
Fix correlationid no been sent correctly when using SqlCommandStore
Release 8.1.1036
Fixes issue when a rabbitmq connection is dropped it sometimes ends up with 2 connections and then does not dispose the ghost connection.
Fix for System.InvalidOperationException: You cannot enqueue more items than the buffer length #846
fix for Suppress and log BrokerUnreachableException during ResetConnection #502
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps Paramore.Brighter.Extensions.DependencyInjection from 2.0.4 to 9.1.3.
Release notes
Sourced from Paramore.Brighter.Extensions.DependencyInjection's releases.
... (truncated)
Changelog
Sourced from Paramore.Brighter.Extensions.DependencyInjection's changelog.
... (truncated)
Commits
454599d
Fixed Sqlite, removed transaction from dispatched, patched postgres outbox (#...0d1f1bd
NuGet package upgrades65a4827
Update HowToRelease.md969c230
Update HowToRelease.md747e9f6
Create HowToRelease.mdee71bb2
Update packages, fix multi-targetting issues5eccec6
Added SalutationAnalytics support for Dynamo, fixed some defects (#2164)6494310
WebAPI Dynamo Db Sample (#2155)050cacc
WebAPI Dapper Example (#2123)e3f8805
Upgrade packagesDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)