Aias00 opened a new issue, #7297: URL: https://github.com/apache/shenyu/issues/7297
## Background SOFA RPC is an optional RPC integration with a large repository footprint: runtime plugin, starter, client registration, common DTO/converter types, admin registration, examples, E2E, Kubernetes ingress integration, and integrated tests. It is actively maintained upstream, so this is an ownership move to the official extension repository, not a deprecation. The runtime plugin cannot be copied in isolation because ShenYu core currently hard-codes SOFA in `PluginEnum`, `RpcTypeEnum`, RPC response handling, registration adapters, and protocol DTOs. Depends on #7294. ## Scope ### plugin-store - Add the SOFA runtime plugin and Spring Boot starter using the established store layout. - Preserve current main-branch fixes for null RPC results, null-safe metadata comparison, selector/upstream change detection, and cache invalidation. - Port existing unit tests and add regression tests for all recent SOFA fixes. - Add an E2E module with a real SOFA provider covering registration/metadata, simple and complex parameters, successful/no-result/error responses, selector updates, metadata refresh, and gateway restart. - Add a minimal example and compatibility documentation for SOFA RPC, Spring Boot, JDK, and ShenYu versions. ### apache/shenyu and companion repositories - Define extension-owned plugin/rpc identifiers and DTO/converter registration so SOFA does not require hard-coded core enum entries. - Move or maintain the SOFA client in the authoritative client repository and verify registration compatibility. - Remove SOFA plugin/starter/default-bootstrap dependencies and duplicated examples/E2E/integrated-test modules only after store parity. - Update admin seed data, menus, docs, distribution LICENSE/NOTICE, and release packaging without deleting historical upgrade SQL. - Preserve or replace Kubernetes ingress behavior if it remains supported. ## Acceptance Criteria - [ ] Store plugin/starter compile against the declared ShenYu API without SOFA-specific core coupling. - [ ] Existing SOFA unit and integration behavior is represented by tests in the owning repository. - [ ] E2E covers registration, invocation, complex parameters, errors, and dynamic config changes. - [ ] Client and Kubernetes ingress support are either migrated and tested or explicitly deprecated with release notes. - [ ] External artifacts work in a minimal bootstrap. - [ ] Publication and main-repository removal are performed as a coordinated, rollback-safe cutover. -- 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]
