diff -r 517de1983677 -r 0be3805cade1 Lib/test/test_urllib.py --- a/Lib/test/test_urllib.py Thu Apr 17 12:30:14 2014 +0200 +++ b/Lib/test/test_urllib.py Thu Apr 17 12:03:48 2014 -0400 @@ -629,7 +629,7 @@ do_not_quote = '' .join(["ABCDEFGHIJKLMNOPQRSTUVWXYZ", "abcdefghijklmnopqrstuvwxyz", "0123456789", - "_.-"]) + "_.-~"]) result = urllib.parse.quote(do_not_quote) self.assertEqual(do_not_quote, result, "using quote(): %r != %r" % (do_not_quote, result)) diff -r 517de1983677 -r 0be3805cade1 Lib/urllib/parse.py --- a/Lib/urllib/parse.py Thu Apr 17 12:30:14 2014 +0200 +++ b/Lib/urllib/parse.py Thu Apr 17 12:03:48 2014 -0400 @@ -623,7 +623,7 @@ _ALWAYS_SAFE = frozenset(b'ABCDEFGHIJKLMNOPQRSTUVWXYZ' b'abcdefghijklmnopqrstuvwxyz' b'0123456789' - b'_.-') + b'_.-~') _ALWAYS_SAFE_BYTES = bytes(_ALWAYS_SAFE) _safe_quoters = {}