- No longer loose characters when decoding incorrect percent-sequences (like
``%e2%82%f8``). All non-decodable percent-sequences are now preserved.
- Provide generated ``.c`` files in TarBall distribution.
- ``human_repr()`` now always produces valid representation equivalent to the
original URL (if the original URL is valid).
- Fixed requoting a single percent followed by a percent-encoded character
in the Cython implementation.
- Fix ValueError when decoding ``%`` which is not followed by two hexadecimal
digits.
- Fix decoding ``%`` followed by a space and hexadecimal digit.
- Fix annotation of ``with_query()``/``update_query()`` methods for
``key=[val1, val2]`` case.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-yarl?expand=0&rev=31
- fix tests
* Convert host to lowercase on URL building. #386
* Allow using mod operator (%) for updating query string (an alias for update_query() method)
* Allow use of sequences such as list and tuple in the values of a mapping
such as dict to represent that a key has many values:
url = URL("http://example.com")
assert url.with_query({"a": [1, 2]}) == URL("http://example.com/?a=1&a=2")
* Support URL.build() with scheme and path (creates a relative URL)
* Cache slow IDNA encode/decode calls
* Add @final / Final type hints
* Support URL authority/raw_authority properties and authority argument
of URL.build() method
* Hide the library implementation details, make the exposed public list very clean
* Fix tests with newer Python (3.7.6, 3.8.1 and 3.9.0+)
* Fix a bug where query component, passed in a form of mapping or sequence,
is unquoted in unexpected way
* Hide Query and QueryVariable type aliases in __init__.pyi, now they
are prefixed with underscore.
* Keep ipv6 brackets after updating port/user/password.
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-yarl?expand=0&rev=26
- update to 1.4.2
* Workaround for missing str.isascii() in Python 3.6
* Distinguish an empty password in URL from a password not provided at all
* Fixed annotations for optional parameters of URL.build
* Use None as default value of user parameter of URL.build
* Enforce building C Accelerated modules when installing from source tarball,
use YARL_NO_EXTENSIONS environment variable for falling back to (slower)
Pure Python implementation
* Fix quoting of plus in path by pure python version
* Don't create a new URL if fragment is unchanged
* Included in error msg the path that produces starting slash forbidden error
* Skip slow IDNA encoding for ASCII-only strings
OBS-URL: https://build.opensuse.org/request/show/769623
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-yarl?expand=0&rev=24
* Fix annotations for query parameter
* An incoming query sequence can have int variables
* Add URL.explicit_port property
* Give a friendlier error when port cant be converted to int
* bool(URL()) now returns False
* Fix annotations for build
* Fix annotations for cached_property
* Accept str subclasses in URL constructor
* Forbid inheritance, replace __init__ with __new__
* Support PEP-561 (provide type hinting marker)
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-yarl?expand=0&rev=22