tisonkun opened a new pull request, #540: URL: https://github.com/apache/casbin-jcasbin/pull/540
Replacing wildcard domain matching with exact matching can turn a denied request into an allowed one: previously propagated links remain in a concrete domain, while their pattern-domain conditions stop matching. Deleting a pattern link can also erase an independently registered exact-domain membership. Keep explicit domain links as the source of truth and build matched domain views from those links. Invalidate derived views when links, matching functions, condition functions, or parameters change, and retain cached views only for registered domains. Regressions cover matcher registration before/after links, existing/lazy domains, tightening and re-enabling matching, parameter and callback updates, overlapping memberships, and clearing/deleting links. This PR is based on #539 and should follow it. The base supplies complete condition copying, including callbacks registered before their links; the diff here contains only the domain-view change and its regressions. Validation: - Java 8 (Zulu 8u482), Maven 3.9.12: `mvn -B -ntp clean verify cobertura:cobertura -Papache-release -Drevision=1.100.0 -Dgpg.skip=true` passed all 356 tests with zero failures, errors, or skips, including conformance inputs pinned to `apache/casbin@c35c93d29063b8bc3bc2ef30b09943d344a289f4`. - All 11 targeted regression cases across both PRs pass. The original staged-JAR reproduction programs also retain denied results after matcher changes when run against the rebuilt JAR. - Apache RAT 0.18 and all 11 release-verification Python tests pass. Cobertura still emits the existing source-parser diagnostics while calculating complexity; the build exits successfully. -- 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] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
