gnodet opened a new pull request, #13550:
URL: https://github.com/apache/maven/pull/13550

   Backport of #13319 to `maven-4.0.x`.
   
   Project extensions contribute custom `Packaging`, `Type`, and `Lifecycle`
   implementations via SPI providers, but SISU's visibility filtering only
   kicks in on an explicit `Lookup` call. Registries that cached providers at
   construction time or queried a static map could not see extension-contributed
   values, causing `Unknown packaging: app-client` and similar errors even when
   the extension was properly loaded (#13306).
   
   - `DefaultExtensibleEnumRegistry`: new Lookup-aware constructor; queries
     `Lookup.lookupList(providerType)` first, letting SISU apply project-scope
     filtering before falling back to statically registered values
   - `DefaultPackagingRegistry`: delegates dynamic lookup to super via
     `PackagingProvider.class`; retains legacy `LifecycleMapping` as last resort
   - `DefaultTypeRegistry`: queries `TypeProvider` list uncached before the
     `ArtifactHandler` fallback cache, preventing type leaks across reactor 
projects
   - `DefaultLifecycleRegistry`: Lookup-aware constructor; `stream()` merges
     injected and dynamically discovered lifecycles, deduplicating by id
   - Tests: unit tests for all three registries + IT 
`MavenITgh13306PackagingProviderTest`
   
   Fixes: #13306


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to