Skip to content

fix(docs/migration-paths): document @Namespace as the @ProcessingGroup replacement#4639

Open
MateuszNaKodach wants to merge 1 commit into
axon-5.1.xfrom
docs/namespace-replaces-processing-group
Open

fix(docs/migration-paths): document @Namespace as the @ProcessingGroup replacement#4639
MateuszNaKodach wants to merge 1 commit into
axon-5.1.xfrom
docs/namespace-replaces-processing-group

Conversation

@MateuszNaKodach

Copy link
Copy Markdown
Contributor

Summary

The "Projectors and Event Processors" migration path stated that a "namespace" replacement for @ProcessingGroup was "expected to be introduced soon." That replacement already exists: @Namespace (org.axonframework.messaging.core.annotation.Namespace). This PR rewrites that section to document the current state.

Changes

Single file: docs/reference-guide/modules/migration/pages/paths/projectors-event-processors.adoc

  • Retitled "Removal of @ProcessingGroup""Replacing @ProcessingGroup with @Namespace".
  • Show the AF4 → AF5 annotation + import swap, preserving the string value.
  • Note @Namespace's broader placement (class, enclosing class, package-info.java, module-info.java).
  • Add a WARNING that the namespace value is a binding contract that must match the event processor name everywhere it is referenced (a mismatch silently misroutes events, with no compile-time signal).
  • Split processor assignment into Spring Boot vs Declarative (non-Spring) tabs, making clear that annotation-driven assignment is a Spring Boot feature, while non-Spring configurations register handlers explicitly via MessagingConfigurer.eventProcessing(...).

Verification

  • Verified @Namespace semantics against the framework code: Spring extension (DefaultProcessorModuleFactory, EventHandlerSelector) reads it for processor assignment; core (AnnotationMessageTypeResolver) reads it only for message-type namespace. Non-Spring core config does not use it for assignment.
  • Antora docs build (Vale prose-linting) passes for this file: zero errors, zero warnings, ASCII-only.

@MateuszNaKodach MateuszNaKodach requested a review from a team as a code owner June 5, 2026 12:35
@MateuszNaKodach MateuszNaKodach requested review from hatzlj, jangalinski and smcvb and removed request for a team June 5, 2026 12:35
@MateuszNaKodach MateuszNaKodach self-assigned this Jun 6, 2026
@MateuszNaKodach MateuszNaKodach added Priority 1: Must Highest priority. A release cannot be made if this issue isn’t resolved. Type: Documentation Use to signal issues that describe documentation work. labels Jun 6, 2026
@MateuszNaKodach MateuszNaKodach added this to the Release 5.1.2 milestone Jun 6, 2026
…replacement

The projectors and event processors migration path claimed that a "namespace"
replacement for @processinggroup was "expected to be introduced soon". It already
exists as @namespace (org.axonframework.messaging.core.annotation.Namespace).

Rework the section to reflect the current state:
* show the AF4 to AF5 annotation and import swap, preserving the value
* note @namespace's broader placement (class, package-info, module-info)
* warn that the namespace value is a binding contract that must match the event
  processor name everywhere it is referenced, since a mismatch silently misroutes
  events with no compile-time signal
* split processor assignment into Spring Boot and declarative (non-Spring) tabs,
  clarifying that annotation-driven assignment is a Spring Boot feature while
  non-Spring configurations register handlers explicitly
@MateuszNaKodach MateuszNaKodach force-pushed the docs/namespace-replaces-processing-group branch from 370c8f6 to ac911b4 Compare June 6, 2026 15:16
@MateuszNaKodach MateuszNaKodach changed the base branch from main to axon-5.1.x June 6, 2026 15:16
@sonarqubecloud

sonarqubecloud Bot commented Jun 6, 2026

Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Priority 1: Must Highest priority. A release cannot be made if this issue isn’t resolved. Type: Documentation Use to signal issues that describe documentation work.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant