Skip to content

Commit 444b0f4

Browse files
authored
Restrict namespace and package names to lowercase words (#338)
Resolves #299
1 parent cc7bdbf commit 444b0f4

File tree

1 file changed

+10
-6
lines changed

1 file changed

+10
-6
lines changed

design/mvp/Explainer.md

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1431,21 +1431,25 @@ plainname ::= <label>
14311431
| '[constructor]' <label>
14321432
| '[method]' <label> '.' <label>
14331433
| '[static]' <label> '.' <label>
1434-
label ::= <word>
1435-
| <label> '-' <word>
1434+
label ::= <fragment>
1435+
| <label> '-' <fragment>
1436+
fragment ::= <word>
1437+
| <acronym>
14361438
word ::= [a-z] [0-9a-z]*
1437-
| [A-Z] [0-9A-Z]*
1439+
acronym ::= [A-Z] [0-9A-Z]*
14381440
interfacename ::= <namespace> <label> <projection> <version>?
14391441
| <namespace>+ <label> <projection>+ <version>? 🪺
1440-
namespace ::= <label> ':'
1442+
namespace ::= <words> ':'
1443+
words ::= <word>
1444+
| <words> '-' <word>
14411445
projection ::= '/' <label>
14421446
version ::= '@' <valid semver>
14431447
depname ::= 'unlocked-dep=<' <pkgnamequery> '>'
14441448
| 'locked-dep=<' <pkgname> '>' ( ',' <hashname> )?
14451449
pkgnamequery ::= <pkgpath> <verrange>?
14461450
pkgname ::= <pkgpath> <version>?
1447-
pkgpath ::= <namespace> <label>
1448-
| <namespace>+ <label> <projection>* 🪺
1451+
pkgpath ::= <namespace> <words>
1452+
| <namespace>+ <words> <projection>* 🪺
14491453
verrange ::= '@*'
14501454
| '@{' <verlower> '}'
14511455
| '@{' <verupper> '}'

0 commit comments

Comments
 (0)