1.9.4
Bug fixes
-
Started raising :py:exc:
TypeError
when a string value is passed into
:py:meth:~yarl.URL.build
as theport
argument -- by :user:commonism
.Previously the empty string as port would create malformed URLs when rendered as string representations. (#883)
Packaging updates and notes for downstreams
-
The leading
--
has been dropped from the :pep:517
in-tree build
backend config setting names.--pure-python
is now justpure-python
-- by :user:webknjaz
.The usage now looks as follows:
.. code-block:: console
$ python -m build \ --config-setting=pure-python=true \ --config-setting=with-cython-tracing=true
(#963)
Contributor-facing changes
-
A step-by-step :doc:
Release Guide <contributing/release_guide>
guide has
been added, describing how to release yarl -- by :user:webknjaz
.This is primarily targeting maintainers. (#960)
-
Coverage collection has been implemented for the Cython modules
-- by :user:webknjaz
.It will also be reported to Codecov from any non-release CI jobs.
To measure coverage in a development environment, yarl can be
installed in editable mode, which requires an environment variable
YARL_CYTHON_TRACING=1
to be set:.. code-block:: console
$ YARL_CYTHON_TRACING=1 python -Im pip install -e .
Editable install produces C-files required for the Cython coverage
plugin to map the measurements back to the PYX-files. (#961) -
It is now possible to request line tracing in Cython builds using the
with-cython-tracing
:pep:517
config setting
-- :user:webknjaz
.This can be used in CI and development environment to measure coverage
on Cython modules, but is not normally useful to the end-users or
downstream packagers.Here's a usage example:
.. code-block:: console
$ python -Im pip install . --config-settings=with-cython-tracing=true
For editable installs, this setting is on by default. Otherwise, it's
off unless requested explicitly. (#962)