Changelog
### 1.2.2
```
================================================================================
Removed: Support for Python 2.6, which reached EOL on 2013-10-29.
================================================================================
v1.2.1
================================================================================
Fixed: Join URLs without an authority (e.g. 'foo:blah') consistently with
urllib.parse.urljoin().
================================================================================
v1.2
================================================================================
Added: Path segment appending via the division operator (__truediv__()).
Changed: Bump orderedmultidict dependency to v1.0.
Changed: Check code style with flake8 instead of pycodestyle.
Changed: Percent-encode all non-unreserved characters in Query key=value pairs,
including valid query characters (e.g. '=', '?', etc). Old encoding:
"?url=http://foo.com/"; new encoding: "?url=http%3A%2F%2Ffoo.com%2F". Equal
signs remain decoded in query values where the key is empty to allow for, and
preserve, queries like '?==3=='.
================================================================================
v1.1
================================================================================
Fixed: Support and preserve all query strings as provided. For example, preserve
the query '&&==' of 'http://foo.com?&&==' as-is. Empty key=value pairs are
stored as ('', None) in Query.params, e.g. [('', None), ('', None)] for the
query '&'.
Changed: Don't encode equal signs ('=') in query values if the key is empty.
That is, allow and preserve queries like '?==3==' while also percent encoding
equal signs in query values with an associted key, as expected. E.g.
'?a=1%3D1'.
================================================================================
v1.0.2
================================================================================
Added: strip_scheme() public function.
Changed: Make get_scheme() and set_scheme() functions public.
Added: Support all schemes without a netloc/authority, like
'mailto:hiemail.com', without an explicit whitelist of such schemes
(e.g. tel:, sms:, mailto:, etc).
Fixed: Restore furl.url's setter method. E.g. furl.url = 'http://www.foo.com/'.
Removed: Support for Python 3.3, which reached EOL on 2017-09-29.
================================================================================
v1.0.1
================================================================================
Added: Add dictionary representations of Path, Query, Fragment, and furl objects
via an asdict() method.
================================================================================
v1.0.0
================================================================================
Added: Test against Python 3.6.
Changed: Bumped the version number to v1.0 to signify that furl is a mature and
stable library. Furl has been marked Production/Stable in setup.py for a long
time anyhow -- it's high time for the version number to catch up.
================================================================================
v0.5.7
================================================================================
Fixed: Only percent-decode percent-encoded path strings once, not twice.
================================================================================
v0.5.6
================================================================================
Changed: Bumped the orderedmultidict dependency from v0.7.7 to v0.7.8. The
latter, v0.7.8, fixes a splat (i.e. **omdict) bug.
================================================================================
v0.5.5
================================================================================
Changed: Bumped the orderedmultidict dependency from v0.7.6 to v0.7.7. The
latter, v0.7.7, better interoperates with other popular libraries, like
Requests.
================================================================================
v0.5.4
================================================================================
Fixed: When provided to constructors and load() methods, treat None as the empty
string, not the string 'None'. E.g. furl(None) == furl(''), not furl('None').
================================================================================
v0.5.3
================================================================================
Fixed: In Python 2, furl.netloc and furl.origin return strings, not Unicode
strings.
================================================================================
v0.5.2
================================================================================
Added: Test PEP8 compliance with tox.
Fixed: Verify valid schemes before adoption.
================================================================================
v0.5.1
================================================================================
Added: Origin support (e.g. http://google.com of http://u:pgoogle.com/).
This changelog wasn't maintained prior to v0.5.
```
Links
- PyPI: https://pypi.org/project/furl
- Changelog: https://pyup.io/changelogs/furl/
- Repo: https://github.com/gruns/furl
This PR updates furl from 1.2.1 to 2.0.0.
Changelog
### 1.2.2 ``` ================================================================================ Removed: Support for Python 2.6, which reached EOL on 2013-10-29. ================================================================================ v1.2.1 ================================================================================ Fixed: Join URLs without an authority (e.g. 'foo:blah') consistently with urllib.parse.urljoin(). ================================================================================ v1.2 ================================================================================ Added: Path segment appending via the division operator (__truediv__()). Changed: Bump orderedmultidict dependency to v1.0. Changed: Check code style with flake8 instead of pycodestyle. Changed: Percent-encode all non-unreserved characters in Query key=value pairs, including valid query characters (e.g. '=', '?', etc). Old encoding: "?url=http://foo.com/"; new encoding: "?url=http%3A%2F%2Ffoo.com%2F". Equal signs remain decoded in query values where the key is empty to allow for, and preserve, queries like '?==3=='. ================================================================================ v1.1 ================================================================================ Fixed: Support and preserve all query strings as provided. For example, preserve the query '&&==' of 'http://foo.com?&&==' as-is. Empty key=value pairs are stored as ('', None) in Query.params, e.g. [('', None), ('', None)] for the query '&'. Changed: Don't encode equal signs ('=') in query values if the key is empty. That is, allow and preserve queries like '?==3==' while also percent encoding equal signs in query values with an associted key, as expected. E.g. '?a=1%3D1'. ================================================================================ v1.0.2 ================================================================================ Added: strip_scheme() public function. Changed: Make get_scheme() and set_scheme() functions public. Added: Support all schemes without a netloc/authority, like 'mailto:hiemail.com', without an explicit whitelist of such schemes (e.g. tel:, sms:, mailto:, etc). Fixed: Restore furl.url's setter method. E.g. furl.url = 'http://www.foo.com/'. Removed: Support for Python 3.3, which reached EOL on 2017-09-29. ================================================================================ v1.0.1 ================================================================================ Added: Add dictionary representations of Path, Query, Fragment, and furl objects via an asdict() method. ================================================================================ v1.0.0 ================================================================================ Added: Test against Python 3.6. Changed: Bumped the version number to v1.0 to signify that furl is a mature and stable library. Furl has been marked Production/Stable in setup.py for a long time anyhow -- it's high time for the version number to catch up. ================================================================================ v0.5.7 ================================================================================ Fixed: Only percent-decode percent-encoded path strings once, not twice. ================================================================================ v0.5.6 ================================================================================ Changed: Bumped the orderedmultidict dependency from v0.7.7 to v0.7.8. The latter, v0.7.8, fixes a splat (i.e. **omdict) bug. ================================================================================ v0.5.5 ================================================================================ Changed: Bumped the orderedmultidict dependency from v0.7.6 to v0.7.7. The latter, v0.7.7, better interoperates with other popular libraries, like Requests. ================================================================================ v0.5.4 ================================================================================ Fixed: When provided to constructors and load() methods, treat None as the empty string, not the string 'None'. E.g. furl(None) == furl(''), not furl('None'). ================================================================================ v0.5.3 ================================================================================ Fixed: In Python 2, furl.netloc and furl.origin return strings, not Unicode strings. ================================================================================ v0.5.2 ================================================================================ Added: Test PEP8 compliance with tox. Fixed: Verify valid schemes before adoption. ================================================================================ v0.5.1 ================================================================================ Added: Origin support (e.g. http://google.com of http://u:pgoogle.com/). This changelog wasn't maintained prior to v0.5. ```Links
- PyPI: https://pypi.org/project/furl - Changelog: https://pyup.io/changelogs/furl/ - Repo: https://github.com/gruns/furl