yangjj-iso opened a new pull request, #7568: URL: https://github.com/apache/shenyu/pull/7568
Fixes #7562. Discovery deletions now invoke the optional guest export `removeDiscoveryUpstreamData(i64) -> ()`. The callback reuses the existing argument ID and `ARGUMENTS` bridge, carrying a `DiscoverySyncData` with the key's plugin name, selector ID, and optional selector name. Temporary arguments are cleared on success and failure, and existing Java subclasses need no new abstract method. Guests without the deletion export retain the legacy no-op behavior. `WasmLoader.getWasmExtern` checks export presence before calling Chicory, returning an empty optional for absent exports while still rejecting exports of the wrong kind. The callback contract is documented in Javadoc and the WASM base module README. Go and Rust fixtures were rebuilt. Tests cover direct deletion, update followed by subscriber deletion, nullable selector names, callback failure cleanup, and an original Go guest without the optional export. The deletion regression tests fail against the original handler (6 failures) and pass with the fix. Validation: 34 tests passed, including all WASM API/base tests and the discovery subscriber test. Checkstyle and Apache RAT passed in the dependency reactor: ```shell ./mvnw -pl shenyu-plugin/shenyu-plugin-wasm-base -am verify '-Dtest=AbstractWasm*Test,AbstractShenyuWasmPluginTest,CommonDiscoveryUpstreamDataSubscriberTest' -Dsurefire.failIfNoSpecifiedTests=false -Dmaven.javadoc.skip=true -Djacoco.skip=true ``` Make sure that: - [x] You have read the [contribution guidelines](https://shenyu.apache.org/community/contributor-guide). - [x] You submit test cases (unit or integration tests) that back your changes. - [ ] Your local test passed `./mvnw clean install -Dmaven.javadoc.skip=true`. (Full repository build not run; the affected module and its dependency reactor passed the verification command above.) -- 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]
