Skip to content

Releases: aio-libs/frozenlist

1.7.0

09 Jun 22:58
v1.7.0
63cbd49
Compare
Choose a tag to compare

Features

  • Added deepcopy support to FrozenList -- by :user:bdraco.

    Related issues and pull requests on GitHub:
    #659.

Packaging updates and notes for downstreams

  • Fixed an issue where frozenlist binary wheels would be built with debugging symbols and line tracing enabled, which significantly impacted performance. Line tracing is now disabled by default and can only be enabled explicitly -- by :user:bdraco.

    This change ensures that production builds are optimized for performance. Developers who need line tracing for debugging purposes can still enable it by:

    1. Setting the FROZENLIST_CYTHON_TRACING environment variable
    2. Using the --config-setting=with-cython-tracing=true option with pip

    Related issues and pull requests on GitHub:
    #660.

  • Enabled PIP_CONSTRAINT environment variable in the build configuration to ensure the pinned Cython version from requirements/cython.txt is used during wheel builds.

    Related issues and pull requests on GitHub:
    #661.


1.6.2

03 Jun 21:43
v1.6.2
46936c1
Compare
Choose a tag to compare

No changes from 1.6.1. This is re-publish since 1.6.1 failed to publish.

No significant changes.


1.6.1

02 Jun 23:02
v1.6.1
b71742c
Compare
Choose a tag to compare

This release was yanked because the upload job failed to upload all files to PyPI

Bug fixes

  • Correctly use cimport for including PyBool_FromLong -- by :user:lysnikolaou.

    Related issues and pull requests on GitHub:
    #653.

Packaging updates and notes for downstreams

  • Exclude _frozenlist.cpp from bdists/wheels -- by :user:musicinmybrain.

    Related issues and pull requests on GitHub:
    #649.

  • Updated to use Cython 3.1 universally across the build path -- by :user:lysnikolaou.

    Related issues and pull requests on GitHub:
    #654.


1.6.0

17 Apr 22:34
v1.6.0
9f4253c
Compare
Choose a tag to compare

Bug fixes

  • Stopped implicitly allowing the use of Cython pre-release versions when
    building the distribution package -- by :user:ajsanchezsanz and
    :user:markgreene74.

    Related commits on GitHub:
    :commit:41591f2.

Features

  • Implemented support for the free-threaded build of CPython 3.13 -- by :user:lysnikolaou.

    Related issues and pull requests on GitHub:
    #618.

  • Started building armv7l wheels -- by :user:bdraco.

    Related issues and pull requests on GitHub:
    #642.

Packaging updates and notes for downstreams

  • Stopped implicitly allowing the use of Cython pre-release versions when
    building the distribution package -- by :user:ajsanchezsanz and
    :user:markgreene74.

    Related commits on GitHub:
    :commit:41591f2.

  • Started building wheels for the free-threaded build of CPython 3.13 -- by :user:lysnikolaou.

    Related issues and pull requests on GitHub:
    #618.

  • The packaging metadata switched to including an SPDX license identifier introduced in :pep:639 -- by :user:cdce8p.

    Related issues and pull requests on GitHub:
    #639.

Contributor-facing changes

  • GitHub Actions CI/CD is now configured to manage caching pip-ecosystem
    dependencies using re-actors/cache-python-deps_ -- an action by
    :user:webknjaz that takes into account ABI stability and the exact
    version of Python runtime.

    .. _re-actors/cache-python-deps:
    https://github.com/marketplace/actions/cache-python-deps

    Related issues and pull requests on GitHub:
    #633.

  • Organized dependencies into test and lint dependencies so that no
    unnecessary ones are installed during CI runs -- by :user:lysnikolaou.

    Related issues and pull requests on GitHub:
    #636.

1.5.0

23 Oct 09:45
91991e3
Compare
Choose a tag to compare

Bug fixes

  • An incorrect signature of the __class_getitem__ class method
    has been fixed, adding a missing class_item argument under
    Python 3.8 and older.

    This change also improves the code coverage of this method that
    was previously missing -- by :user:webknjaz.

    Related issues and pull requests on GitHub:
    #567, #571.

Improved documentation

  • Rendered issue, PR, and commit links now lead to
    frozenlist's repo instead of yarl's repo.

    Related issues and pull requests on GitHub:
    #573.

  • On the :doc:Contributing docs <contributing/guidelines> page,
    a link to the Towncrier philosophy has been fixed.

    Related issues and pull requests on GitHub:
    #574.

Packaging updates and notes for downstreams

  • A name of a temporary building directory now reflects
    that it's related to frozenlist, not yarl.

    Related issues and pull requests on GitHub:
    #573.

  • Declared Python 3.13 supported officially in the distribution package metadata.

    Related issues and pull requests on GitHub:
    #595.


1.4.1

15 Dec 08:39
v1.4.1
457b28e
Compare
Choose a tag to compare

Packaging updates and notes for downstreams

  • Declared Python 3.12 and PyPy 3.8-3.10 supported officially
    in the distribution package metadata.

    Related issues and pull requests on GitHub:
    #553.

  • Replaced the packaging is replaced from an old-fashioned :file:setup.py to an
    in-tree :pep:517 build backend -- by :user:webknjaz.

    Whenever the end-users or downstream packagers need to build frozenlist
    from source (a Git checkout or an sdist), they may pass a config_settings
    flag pure-python. If this flag is not set, a C-extension will be built
    and included into the distribution.

    Here is how this can be done with pip:

    .. code-block:: console

    $ python3 -m pip install . --config-settings=pure-python=
    

    This will also work with -e | --editable.

    The same can be achieved via pypa/build:

    .. code-block:: console

    $ python3 -m build --config-setting=pure-python=
    

    Adding -w | --wheel can force pypa/build produce a wheel from source
    directly, as opposed to building an sdist and then building from it.

    Related issues and pull requests on GitHub:
    #560.

Contributor-facing changes

  • 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

    $ python3 -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.

    The following produces C-files required for the Cython coverage
    plugin to map the measurements back to the PYX-files:

    .. code-block:: console

    $ python -Im pip install -e .
    

    Alternatively, the FROZENLIST_CYTHON_TRACING=1 environment variable
    can be set to do the same as the :pep:517 config setting.

    Related issues and pull requests on GitHub:
    #560.

  • 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.

    Related issues and pull requests on GitHub:
    #561.

  • A step-by-step :doc:Release Guide <contributing/release_guide> guide has
    been added, describing how to release frozenlist -- by :user:webknjaz.

    This is primarily targeting the maintainers.

    Related issues and pull requests on GitHub:
    #563.

  • Detailed :doc:Contributing Guidelines <contributing/guidelines> on
    authoring the changelog fragments have been published in the
    documentation -- by :user:webknjaz.

    Related issues and pull requests on GitHub:
    #564.


1.4.0

12 Jul 20:44
v1.4.0
9d96e08
Compare
Choose a tag to compare

The published source distribution package became buildable
under Python 3.12.


Bugfixes

  • Removed an unused :py:data:typing.Tuple import
    (#411)_

Deprecations and Removals

  • Dropped Python 3.7 support.
    (#413)_

Misc


1.3.3

08 Nov 15:04
1feb7fa
Compare
Choose a tag to compare
  • Fixed CI runs when creating a new release, where new towncrier versions
    fail when the current version section is already present.

1.3.1

03 Aug 08:22
v1.3.1
3e15fbb
Compare
Choose a tag to compare

The published source distribution package became buildable
under Python 3.11.


v1.3.0a0

18 Jan 14:45
9f1e15f
Compare
Choose a tag to compare

Bugfixes

  • Do not install C sources with binary distributions.
    (#250)_

Deprecations and Removals

  • Dropped Python 3.6 support
    (#274)_