Open JohnJamesUtley opened 1 year ago
RFC 3986 defines a scheme as follows
scheme = ALPHA *( ALPHA / DIGIT / "+" / "-" / "." )
Furl will accept non-alphanumeric characters in its schemes
import furl f = furl.furl('sch^eme://user@host.com') print(f.scheme)
In this example, Furl will currently print the scheme as 'sch^eme'. This is in violation of RFC 3896 because of the '^' character.
'sch^eme'
'^'
Background
RFC 3986 defines a scheme as follows
The Bug
Furl will accept non-alphanumeric characters in its schemes
In this example, Furl will currently print the scheme as
'sch^eme'
. This is in violation of RFC 3896 because of the'^'
character.The Pull Request