Represents the NuGet versions.
- Fixed: Updated internal Beef dependencies to latest.
- Fixed: Updated internal Beef dependencies to latest.
- Enhancement: Updated for changes to
Beef.Abstractions
andBeef.Core
.
- Enhancement: Upgraded the
CloudNative.CloudEvents
NuGet packages to v2.0.0. This required code changes due to the breaking changes to the underlying API. The approach to writing theEventMetadata
as extension attributes had to be changed to align correctly with the specification.
- Enhancement: Re-baseline all Beef components to version v4.2.1 required by
Beef.Abstractions
introduction; including updating all dependent NuGet packages to their latest respective version.
- Enhancement: Updated project to produce symbol packages for improved debugging.
- Fixed: Corrected issue where converting JSON deserialized
EventData.Value
to an intrinsic type such as aGuid
. - Enhancement: Added new
IEventSubscriber.ConsiderNullValueAsInvalidData
which defaults totrue
. Will automatically result in anInvalidData
result where theEventData.Value
isnull
. - Enhancement: Added new
IEventSubscriber.OriginatingData
and correspondingEventSubscriber.GetOriginatingData
to enable access to the originatingIEventSubscriberData
where required in advanced scenarios.
- Enhancement: Added new
IEventDataContentSerializer
andIEventDataConverter
to more easily facilitate multiple serializers and converters over time. - Enhancement: Leverage
IEventDataContentSerializer
to support CloudEvents with newNewtonsoftJsonCloudEventSerializer
. This is the default. - Enhancement: Leverage
IEventDataContentSerializer
to support existingEventData
format withNewtonsoftJsonEventDataSerializer
for backwards compatibility.
- Enhancement: Added new
EventMetadata
class to house the Beef metadata property names.
- Enhancement: Updated all dependent NuGet packages to their latest respective version.
- Enhancement: Moved all Event Hubs specific functionality to
Beef.Events.EventHubs
.
- Fixed: Breaking change. The
ResultHandling.Stop
has been renamed toResultHandling.ThrowException
as this is more aligned to what is happening. The correspondingEventSubscriberStopException
has been renamedEventSubscriberUnhandledException
.
- Enhancement: Added support for the new unique
EventData.EventId
. - Enhancement:
EventHubPublisher
updated to reflectIEventHubPublisher
changes.
- Enhancement: Moved all subscriber host arguments to
EventSubscriberHostArgs
to centralize and enable simple configuration via DI.
- Enhancement: Introduction of Dependency Injection support.
- Enhancement: Updated the
WebJobsBuilderExtensions.GetConfiguration
to probe in the following order: 1) Azure Key Vault (see https://docs.microsoft.com/en-us/aspnet/core/security/key-vault-configuration), 2) User Secrets where hosting environment is development (see https://docs.microsoft.com/en-us/aspnet/core/security/app-secrets), 3) environment variable (using specified prefix), 4)appsettings.{environment}.json
, 5)appsettings.json
, 6)webjobs.{environment}.json
(embedded resource), and 7)webjobs.json
(embedded resource).
- Enhancement: Updated
WebJobsBuilderExtensions.GetConfiguration
to build the configuration probing; will probe in the following order: 1) Azure Key Vault (see https://docs.microsoft.com/en-us/aspnet/core/security/key-vault-configuration) or User Secrets where hosting environment is development (see https://docs.microsoft.com/en-us/aspnet/core/security/app-secrets), 2) environment variable (using specified prefix), 3)appsettings.{environment}.json
, 4)appsettings.json
, 5)webjobs.{environment}.json
(embedded resource), and 6)webjobs.json
(embedded resource).
- Enhancement: All references to
DateTime.Now
have been updated toCleaner.Clean(DateTime.Now)
.
- Enhancement: The
EventSubscriberHost
has been futher extended to supportInvalidEventData()
. This occurs where theEventData
is not considered valid, or theValue
is unable to be deserialized. - Fixed: The
ResilientEventHubProcessor
was not always catching and actioning the internalEventSubscriberStopException
.
- Enhancement: Added
EventHubSubscriberHost.ExecutionContext(createFunc)
to more easily support the creation of a customisedExecutionContext
instance. - Enhancement: The
IEventSubscriber.ReceiveAsync
must now (breaking change) return aResult
; these includeSuccess()
,DataNotFound()
(also automatically inferred from aNotFoundException
),InvalidData()
(also automatically inferred from aValidationException
orBusinessException
). Otherwise, for anything else, just allow anException
to bubble out. - Enhancement:
EventSubscriberHost
has been extended to supportNotSubscribedHandling
(defaults toContinueSilent
),DataNotFoundHandling
(defaults toStop
) andInvalidDataHandling
(defaults toStop
).ResultHandling
options areStop
,ContinueSilent
,ContinueWithLogging
andContinueWithAudit
.
- Upgrade: Upgraded the project to .NET Standard 2.1 (compatible with .NET Core 3.1).
- Enhancement: Sprinkled
Task.ConfigureAwait(false)
as per https://devblogs.microsoft.com/dotnet/configureawait-faq/.
- Fixed: Introduced FxCop Analysis to
Beef.Events
; this version represents the remediation based on the results.
- New: Initial publish to GitHub. New capability to support an Event-driven Architecture; specifically leveraging Azure EventHubs.