pnoltes commented on pull request #328: URL: https://github.com/apache/celix/pull/328#issuecomment-790012238
> > Yes a service dependency with a `(topic=t)(scope=*)` filter will result in a publisher with no scope property. The dependency will match all publishers with topic=t and a scope, but not the publisher just registered. > > Ah, so it does match all publishers, regardless of scope? I guess it goes to show how hard it is to explain the current behaviour. > (scope=*) will match all publisher with _any_ scope, but will not match publisher with no scope. The <attr>=* is present check. But yeah for this situation (or other services on demand usage) too confusing. Filter ABNF (https://www.ietf.org/rfc/rfc2254.txt) ``` filter = "(" filtercomp ")" filtercomp = and / or / not / item and = "&" filterlist or = "|" filterlist not = "!" filter filterlist = 1*filter item = simple / present / substring / extensible simple = attr filtertype value filtertype = equal / approx / greater / less equal = "=" approx = "~=" greater = ">=" less = "<=" extensible = attr [":dn"] [":" matchingrule] ":=" value / [":dn"] ":" matchingrule ":=" value present = attr "=*" substring = attr "=" [initial] any [final] initial = value any = "*" *(value "*") final = value attr = AttributeDescription from Section 4.1.5 of [1] matchingrule = MatchingRuleId from Section 4.1.9 of [1] value = AttributeValue from Section 4.1.6 of [1] ``` ---------------------------------------------------------------- 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org