Skip to content

[Release Notes] Record the registry core/implementation decoupling behavior change from #7578 #7585

Closed

Description

@Aias00

Context

PR #7578 ("[ISSUE #7311] Decouple registry core from implementations", merged as a7d80b7) removed the five registry implementation dependencies (zookeeper, etcd, nacos, eureka, kubernetes) from shenyu-registry-core. That module now depends only on shenyu-registry-api and shenyu-spi.

Problem

This is a behavior change for downstream users, but it is not recorded in RELEASE-NOTES.md under ## Unreleased → ### Behavior Changes. Downstream consumers currently have no advance signal in the release notes.

The points that need documenting:

  1. shenyu-registry-core no longer transitively provides registry implementations. Applications that depended on shenyu-registry-core — or on shenyu-sdk-core / shenyu-sdk-feign, which now depend on shenyu-registry-api instead of shenyu-registry-core — and relied on transitive providers must declare their configured provider explicitly before upgrading, e.g.:

    <dependency>
        <groupId>org.apache.shenyu</groupId>
        <artifactId>shenyu-registry-zookeeper</artifactId>
        <version>${shenyu.version}</version>
        <scope>runtime</scope>
    </dependency>
  2. ShenyuInstanceRegisterRepositoryFactory.loadRepository(String) is new public API, and the factory now throws a descriptive IllegalArgumentException (naming the missing shenyu-registry-<type> artifact and listing the available SPI keys) when a registerType has no SPI provider on the classpath. Previously ExtensionLoader.getJoin(type) failed with a much less actionable error.

  3. AbstractDiscoveryProcessor#createDiscovery now resolves repositories through ShenyuInstanceRegisterRepositoryFactory.loadRepository(type) instead of calling the SPI loader directly.

  4. shenyu-admin and shenyu-spring-boot-starter-registry explicitly re-declare the five providers, which is why existing users of the compatibility starter are unaffected. Apollo was never part of the previous aggregate and remains an explicit choice.

Suggested fix

Add an entry to ## Unreleased → ### Behavior Changes in RELEASE-NOTES.md covering the four points above, referencing #7578 and pointing to shenyu-registry/README.md (added by the same PR) for the migration and rollback guidance.

Activity

  1. github-actions commented on Oct 13, 2026

    @github-actions
    Contributor

    👋 Hello @yuluo-yx

    A new issue has been opened by @Aias00:

    Please review when you have time. Thank you! 🙏

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions