The remapping design doc states that /namespace/ is only prefixed to the match side of a rule if it does not begin with *, **, or /. This means the rules *:=foo and /*:=foo are the same.
If code uses a relative name bar and is put into namespace /ns then the rule bar:=foo will match while *:=foo does not. However, if code uses a fully qualified name /bar then both /bar:=foo and /*:=foo match. I think this difference in behavior when there is a leading / could be confusing.
Proposal
Change the behavior to say /namespace/ is prefixed to the match side when a rule begins with *, **, or a token.
The remapping design doc states that
/namespace/
is only prefixed to the match side of a rule if it does not begin with*
,**
, or/
. This means the rules*:=foo
and/*:=foo
are the same.If code uses a relative name
bar
and is put into namespace/ns
then the rulebar:=foo
will match while*:=foo
does not. However, if code uses a fully qualified name/bar
then both/bar:=foo
and/*:=foo
match. I think this difference in behavior when there is a leading/
could be confusing.Proposal
Change the behavior to say
/namespace/
is prefixed to the match side when a rule begins with*
,**
, or a token.