Skip to content

Conversation

@dependabot
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Sep 15, 2025

Bumps github.com/dogmatiq/dogma from 0.15.0 to 0.16.0.

Release notes

Sourced from github.com/dogmatiq/dogma's releases.

Version 0.16.0

This release changes how handlers are added to an application. It introduces the ApplicationConfigurer.Routes() method to replace the RegisterAggregate(), RegisterProcess(), RegisterIntegration(), and RegisterProjection() methods, which have been removed.

It also introduces a global message type registry. The application-defined types that implement Command, Event, and Timeout must now be added to the registry before they can be used in handler routes.

Added

  • Added HandlerRoute and MessageRoute interfaces.
  • Added ViaAggregate(), ViaProcess(), ViaIntegration(), and ViaProjection() for use with ApplicationConfigurer.Routes().
  • Added AggregateHandlerRoute, ProcessHandlerRoute, IntegrationHandlerRoute and ProjectionHandlerRoute types.
  • Added RegisterCommand(), RegisterEvent(), and RegisterTimeout() for adding types to the message type registry. These functions panic if called with a pointer to a type that uses non-pointer receivers to implement the Message interface. If a type implements Command, Event, or Timeout using pointer receivers then a pointer type must be used; otherwise, a non-pointer type must be used.
  • Added RegisteredMessageTypes() and RegisteredMessageTypeFor() for querying the message type registry.
  • Added Now() method to AggregateCommandScope, ProcessEventScope, ProcessTimeoutScope, IntegrationCommandScope and ProjectionEventScope.
  • Added WithIdempotencyKey() option for CommandExecutor.
  • [ENGINE BC] Added Routes() method to ApplicationConfigurer.
  • [ENGINE BC] Added MessageValidationScope interface, which is embedded in CommandValidationScope, EventValidationScope and TimeoutValidationScope.
  • [ENGINE BC] Added MessageValidationScope.IsNew() method.
  • [ENGINE BC] Added RecordedAt() method to EventValidationScope.
  • [ENGINE BC] Added ScheduledAt() and ScheduledFor() methods to TimeoutValidationScope.

Changed

  • [BC] HandlesCommand(),ExecutesCommand(), HandlesEvent(), RecordsEvent() and SchedulesTimeout() now panic if the message type isn't in the message registry.
  • [BC] Changed ProjectionMessageHandler.HandleEvent() to explicitly use event stream IDs and event offsets for OCC, instead of abstract versioned resources.
  • [ENGINE BC] Implementations of MessageRoute now use RegisteredMessageType instead of reflect.Type.

Removed

  • [BC] Removed Route, use MessageRoute instead.
  • [BC] Removed ApplicationConfigurer.RegisterAggregate().
  • [BC] Removed ApplicationConfigurer.RegisterProcess().
  • [BC] Removed ApplicationConfigurer.RegisterIntegration().
  • [BC] Removed ApplicationConfigurer.RegisterProjection().
  • [BC] Removed RegisterAggregateOption.
  • [BC] Removed RegisterProcessOption.
  • [BC] Removed RegisterIntegrationOption.
  • [BC] Removed RegisterProjectionOption.
  • [BC] Removed ProjectionConfigurer.DeliveryPolicy()
  • [BC] Removed ProjectionScope.IsPrimaryDelivery()
  • [BC] Removed ProjectionDeliveryPolicy
  • [BC] Removed UnicastProjectionDeliveryPolicy
  • [BC] Removed BroadcastProjectionDeliveryPolicy
Changelog

Sourced from github.com/dogmatiq/dogma's changelog.

[0.16.0] - 2025-09-14

This release changes how handlers are added to an application. It introduces the ApplicationConfigurer.Routes() method to replace the RegisterAggregate(), RegisterProcess(), RegisterIntegration(), and RegisterProjection() methods, which have been removed.

It also introduces a global message type registry. The application-defined types that implement Command, Event, and Timeout must now be added to the registry before they can be used in handler routes.

Added

  • Added HandlerRoute and MessageRoute interfaces.
  • Added ViaAggregate(), ViaProcess(), ViaIntegration(), and ViaProjection() for use with ApplicationConfigurer.Routes().
  • Added AggregateHandlerRoute, ProcessHandlerRoute, IntegrationHandlerRoute and ProjectionHandlerRoute types.
  • Added RegisterCommand(), RegisterEvent(), and RegisterTimeout() for adding types to the message type registry. These functions panic if called with a pointer to a type that uses non-pointer receivers to implement the Message interface. If a type implements Command, Event, or Timeout using pointer receivers then a pointer type must be used; otherwise, a non-pointer type must be used.
  • Added RegisteredMessageTypes() and RegisteredMessageTypeFor() for querying the message type registry.
  • Added Now() method to AggregateCommandScope, ProcessEventScope, ProcessTimeoutScope, IntegrationCommandScope and ProjectionEventScope.
  • Added WithIdempotencyKey() option for CommandExecutor.
  • [ENGINE BC] Added Routes() method to ApplicationConfigurer.
  • [ENGINE BC] Added MessageValidationScope interface, which is embedded in CommandValidationScope, EventValidationScope and TimeoutValidationScope.
  • [ENGINE BC] Added MessageValidationScope.IsNew() method.
  • [ENGINE BC] Added RecordedAt() method to EventValidationScope.
  • [ENGINE BC] Added ScheduledAt() and ScheduledFor() methods to TimeoutValidationScope.

Changed

  • [BC] HandlesCommand(),ExecutesCommand(), HandlesEvent(), RecordsEvent() and SchedulesTimeout() now panic if the message type isn't in the message registry.
  • [BC] Changed ProjectionMessageHandler.HandleEvent() to explicitly use event stream IDs and event offsets for OCC, instead of abstract versioned resources.
  • [ENGINE BC] Implementations of MessageRoute now use RegisteredMessageType instead of reflect.Type.

Removed

... (truncated)

Commits
  • dac18d1 Bump version to v0.16.0.
  • 175a0b1 Merge pull request #202 from dogmatiq/dependabot/github_actions/actions/check...
  • b2a42ae Bump actions/checkout from 4 to 5
  • be14bcc Refer to RFC 9562 instead of 4122
  • 9254b19 Rename messageregistry.go to messagetyperegistry.go.
  • c0073ac Ensure reading from an empty message type registry does not cause panic due t...
  • 16c67e4 Merge pull request #201 from dogmatiq/option-values
  • 82e4948 Refactor route and option types to use value-based interfaces
  • bbe70d3 Use visitor pattern to build handler route configuration.
  • 2e5714f Add offset and checkpoint offset to glossary.
  • Additional commits viewable in compare view

Dependabot compatibility score

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 show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @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 [github.com/dogmatiq/dogma](https://github.com/dogmatiq/dogma) from 0.15.0 to 0.16.0.
- [Release notes](https://github.com/dogmatiq/dogma/releases)
- [Changelog](https://github.com/dogmatiq/dogma/blob/main/CHANGELOG.md)
- [Commits](dogmatiq/dogma@v0.15.0...v0.16.0)

---
updated-dependencies:
- dependency-name: github.com/dogmatiq/dogma
  dependency-version: 0.16.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file go Pull requests that update Go code labels Sep 15, 2025
@github-actions github-actions bot enabled auto-merge September 15, 2025 06:16
@dependabot @github
Copy link
Contributor Author

dependabot bot commented on behalf of github Sep 18, 2025

Looks like github.com/dogmatiq/dogma is up-to-date now, so this is no longer needed.

@dependabot dependabot bot closed this Sep 18, 2025
auto-merge was automatically disabled September 18, 2025 21:22

Pull request was closed

@dependabot dependabot bot deleted the dependabot/go_modules/github.com/dogmatiq/dogma-0.16.0 branch September 18, 2025 21:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file go Pull requests that update Go code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants