Metadata-Version: 2.4
Name: propcache
Version: 0.5.4
Summary: Accelerated property cache
Home-page: https://github.com/aio-libs/propcache
Author: Andrew Svetlov
Author-email: andrew.svetlov@gmail.com
Maintainer: aiohttp team <team@aiohttp.org>
Maintainer-email: team@aiohttp.org
License: Apache-2.0
Project-URL: Chat: Matrix, https://matrix.to/#/#aio-libs:matrix.org
Project-URL: Chat: Matrix Space, https://matrix.to/#/#aio-libs-space:matrix.org
Project-URL: CI: GitHub Workflows, https://github.com/aio-libs/propcache/actions?query=branch:master
Project-URL: Code of Conduct, https://github.com/aio-libs/.github/blob/master/CODE_OF_CONDUCT.md
Project-URL: Coverage: codecov, https://codecov.io/github/aio-libs/propcache
Project-URL: Docs: Changelog, https://propcache.readthedocs.io/en/latest/changes/
Project-URL: Docs: RTD, https://propcache.readthedocs.io
Project-URL: GitHub: issues, https://github.com/aio-libs/propcache/issues
Project-URL: GitHub: repo, https://github.com/aio-libs/propcache
Keywords: cython,cext,propcache
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Cython
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Internet :: WWW/HTTP
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.10
Description-Content-Type: text/x-rst
License-File: LICENSE
License-File: NOTICE
Dynamic: license-file

propcache
=========

The module provides a fast implementation of cached properties for Python 3.10+.

.. image:: https://github.com/aio-libs/propcache/actions/workflows/ci-cd.yml/badge.svg
  :target: https://github.com/aio-libs/propcache/actions?query=workflow%3ACI
  :align: right

.. image:: https://codecov.io/gh/aio-libs/propcache/branch/master/graph/badge.svg
  :target: https://codecov.io/gh/aio-libs/propcache

.. image:: https://badge.fury.io/py/propcache.svg
    :target: https://badge.fury.io/py/propcache


.. image:: https://readthedocs.org/projects/propcache/badge/?version=latest
    :target: https://propcache.readthedocs.io


.. image:: https://img.shields.io/pypi/pyversions/propcache.svg
    :target: https://pypi.python.org/pypi/propcache

.. image:: https://img.shields.io/matrix/aio-libs:matrix.org?label=Discuss%20on%20Matrix%20at%20%23aio-libs%3Amatrix.org&logo=matrix&server_fqdn=matrix.org&style=flat
   :target: https://matrix.to/#/%23aio-libs:matrix.org
   :alt: Matrix Room — #aio-libs:matrix.org

.. image:: https://img.shields.io/matrix/aio-libs-space:matrix.org?label=Discuss%20on%20Matrix%20at%20%23aio-libs-space%3Amatrix.org&logo=matrix&server_fqdn=matrix.org&style=flat
   :target: https://matrix.to/#/%23aio-libs-space:matrix.org
   :alt: Matrix Space — #aio-libs-space:matrix.org

Introduction
------------

The API is designed to be nearly identical to the built-in ``functools.cached_property`` class,
except for the additional ``under_cached_property`` class which uses ``self._cache``
instead of ``self.__dict__`` to store the cached values and prevents ``__set__`` from being called.

For full documentation please read https://propcache.readthedocs.io.

Installation
------------

::

   $ pip install propcache

The library is Python 3 only!

PyPI contains binary wheels for Linux, Windows and MacOS.  If you want to install
``propcache`` on another operating system where wheels are not provided,
the the tarball will be used to compile the library from
the source code. It requires a C compiler and and Python headers installed.

To skip the compilation you must explicitly opt-in by using a PEP 517
configuration setting ``pure-python``, or setting the ``PROPCACHE_NO_EXTENSIONS``
environment variable to a non-empty value, e.g.:

.. code-block:: console

   $ pip install propcache --config-settings=pure-python=false

Please note that the pure-Python (uncompiled) version is much slower. However,
PyPy always uses a pure-Python implementation, and, as such, it is unaffected
by this variable.


API documentation
------------------

The documentation is located at https://propcache.readthedocs.io.

Source code
-----------

The project is hosted on GitHub_

Please file an issue on the `bug tracker
<https://github.com/aio-libs/propcache/issues>`_ if you have found a bug
or have some suggestion in order to improve the library.

Discussion list
---------------

*aio-libs* GitHub Discussions: https://github.com/aio-libs/propcache/discussions

Feel free to post your questions and ideas here.


Authors and License
-------------------

The ``propcache`` package is derived from ``yarl`` which is written by Andrew Svetlov.

It's *Apache 2* licensed and freely available.


.. _GitHub: https://github.com/aio-libs/propcache

=========
Changelog
=========

..
    You should *NOT* be adding new change log entries to this file, this
    file is managed by towncrier. You *may* edit previous change logs to
    fix problems like typo corrections or such.
    To add a new change log entry, please see
    https://pip.pypa.io/en/latest/development/#adding-a-news-entry
    we named the news folder "changes".

    WARNING: Don't drop the next directive!

.. towncrier release notes start

0.5.4
=====

*(2026-09-15)*


Packaging updates and notes for downstreams
-------------------------------------------

- Fixed the release wheels being compiled without optimization since
  version 0.5.0. The build backend set ``CFLAGS`` to add
  ``-ffile-prefix-map``, which replaced the interpreter's own compiler
  flags instead of extending them, so ``-O3`` and ``-DNDEBUG`` were
  dropped; the extra flags now go through ``CPPFLAGS``, which is
  appended. Cached property reads are about 1.5x faster than in 0.5.3
  -- by `@bdraco <https://github.com/sponsors/bdraco>`__.

  *Related issues and pull requests on GitHub:*
  `#244 <https://github.com/aio-libs/propcache/issues/244>`__, `#302 <https://github.com/aio-libs/propcache/issues/302>`__.


----


0.5.3
=====

*(2026-09-15)*


Bug fixes
---------

- Fixed a possible crash in the C implementation of ``cached_property``
  and ``under_cached_property`` on free-threaded Python, where a cached
  value could be freed by another thread while it was being read; errors
  raised while looking up the cache are now propagated on all builds,
  and the computed value is no longer leaked if storing it fails
  -- by `@bdraco <https://github.com/sponsors/bdraco>`__.

  *Related issues and pull requests on GitHub:*
  `#297 <https://github.com/aio-libs/propcache/issues/297>`__.


Removals and backward incompatible breaking changes
---------------------------------------------------

- Dropped support for free-threaded Python 3.13 -- by `@Vizonex <https://github.com/sponsors/Vizonex>`__.

  *Related issues and pull requests on GitHub:*
  `#223 <https://github.com/aio-libs/propcache/issues/223>`__.


Improved documentation
----------------------

- Updated discussion links from the defunct Google Groups forum to
  GitHub Discussions
  -- by `@gundalow <https://github.com/sponsors/gundalow>`__.

  *Related issues and pull requests on GitHub:*
  `#217 <https://github.com/aio-libs/propcache/issues/217>`__.


Packaging updates and notes for downstreams
-------------------------------------------

- The ``setuptools`` build dependency lower bound has been restored to be
  ``>= 47`` after an incorrect automated increase in `PR #207 <https://github.com/aio-libs/propcache/pull/207>`__
  -- by `@bbhtt <https://github.com/sponsors/bbhtt>`__.

  *Related issues and pull requests on GitHub:*
  `#207 <https://github.com/aio-libs/propcache/issues/207>`__.

- Dropped support for free-threaded Python 3.13 -- by `@Vizonex <https://github.com/sponsors/Vizonex>`__.

  *Related issues and pull requests on GitHub:*
  `#223 <https://github.com/aio-libs/propcache/issues/223>`__.

- Dropped the deprecated ``License :: OSI Approved :: Apache Software
  License`` classifier; ``setuptools`` 84 warns about it and the dist
  build treats warnings as errors, so releases could no longer be built
  -- by `@bdraco <https://github.com/sponsors/bdraco>`__.

  *Related issues and pull requests on GitHub:*
  `#299 <https://github.com/aio-libs/propcache/issues/299>`__.


Contributor-facing changes
--------------------------

- Dependabot has been restricted to the ``requirements`` subdirectory to
  avoid unintended updates outside dependency requirement files
  -- by `@bbhtt <https://github.com/sponsors/bbhtt>`__.

  *Related issues and pull requests on GitHub:*
  `#207 <https://github.com/aio-libs/propcache/issues/207>`__.

- Added an ``AGENTS.md`` file with contributor guidance for AI
  coding agents, adapted from the ``yarl`` equivalent
  -- by `@bdraco <https://github.com/sponsors/bdraco>`__.

  *Related issues and pull requests on GitHub:*
  `#231 <https://github.com/aio-libs/propcache/issues/231>`__.

- Migrated from standalone ``black`` and ``isort`` pre-commit hooks
  to ``ruff format`` and the ruff ``I`` lint rule, sharing a new
  ``[tool.ruff]`` config in ``pyproject.toml``. ``ruff-check`` runs
  with ``--fix`` so import-order fixes apply on commit, and the
  orphan ``[isort]`` block in ``setup.cfg`` was removed
  -- by `@bdraco <https://github.com/sponsors/bdraco>`__.

  *Related issues and pull requests on GitHub:*
  `#232 <https://github.com/aio-libs/propcache/issues/232>`__.

- Switched the ``cibuildwheel`` build frontend to ``build[uv]`` so
  that ``uv`` provisions every build and test virtual environment
  in the wheel matrix. Test-dependency installation in particular
  drops from a multi-second ``pip install`` per ABI to a roughly
  sub-second ``uv`` resolve
  -- by `@bdraco <https://github.com/sponsors/bdraco>`__.

  *Related issues and pull requests on GitHub:*
  `#234 <https://github.com/aio-libs/propcache/issues/234>`__.

- Dropped the ``libffi-devel`` install from the ``cibuildwheel``
  Linux ``before-all`` step. It was added in `PR #75 <https://github.com/aio-libs/propcache/pull/75>`__ so
  ``cffi`` could build from source during wheel testing; the
  current wheel-test chain no longer pulls in ``cffi``, so the
  header package is dead weight
  -- by `@bdraco <https://github.com/sponsors/bdraco>`__.

  *Related issues and pull requests on GitHub:*
  `#236 <https://github.com/aio-libs/propcache/issues/236>`__.

- The type preciseness coverage report generated by `MyPy
  <https://mypy-lang.org>`__ is now uploaded to `Coveralls
  <https://coveralls.io/github/aio-libs/propcache>`__ and
  will not be included in the `Codecov views
  <https://app.codecov.io/gh/aio-libs/propcache>`__ going forward
  -- by `@aiolibsbot <https://github.com/sponsors/aiolibsbot>`__.

  *Related issues and pull requests on GitHub:*
  `#239 <https://github.com/aio-libs/propcache/issues/239>`__.

- Switched CI/CD to ``tox-dev/workflow``'s ``reusable-tox.yml``
  driven by an in-tree ``tox.ini``. The ``build``,
  ``metadata-validation`` and ``lint`` (``pre-commit``,
  ``spellcheck-docs``) jobs all run through the reusable workflow;
  ``mypy`` coverage uploads to Coveralls from a ``post-tox-job``
  hook
  -- by `@bdraco <https://github.com/sponsors/bdraco>`__.

  *Related issues and pull requests on GitHub:*
  `#243 <https://github.com/aio-libs/propcache/issues/243>`__.

- Overrode ``CIBW_BUILD_FRONTEND=build`` for the QEMU-emulated
  odd-arch wheel matrix, since the pypa odd-arch container images
  do not ship ``uv`` preinstalled and the project's
  ``pyproject.toml`` sets ``build-frontend = "build[uv]"``
  -- by `@bdraco <https://github.com/sponsors/bdraco>`__.

  *Related issues and pull requests on GitHub:*
  `#246 <https://github.com/aio-libs/propcache/issues/246>`__.

- Allowed re-running the deploy job after a partial release failure: the
  ``Make Release`` step now skips when the GitHub Release already exists,
  and the PyPI publish step uses ``skip-existing`` so dists that were
  already uploaded on a prior attempt do not break the retry
  -- by `@bdraco <https://github.com/sponsors/bdraco>`__.

  *Related issues and pull requests on GitHub:*
  `#247 <https://github.com/aio-libs/propcache/issues/247>`__.

- Switched the aarch64 and armv7l wheel builds to GitHub's native ARM
  runners. The aarch64 wheels now build without QEMU emulation, and
  armv7l runs on aarch64 hosts so its 32-bit ARM execution is far
  cheaper than the previous aarch64-on-x86_64 path
  -- by `@bdraco <https://github.com/sponsors/bdraco>`__.

  *Related issues and pull requests on GitHub:*
  `#248 <https://github.com/aio-libs/propcache/issues/248>`__.

- Added ``UV_CONSTRAINT`` and ``UV_BUILD_CONSTRAINT`` alongside
  ``PIP_CONSTRAINT`` and ``PIP_BUILD_CONSTRAINT`` in the
  ``cibuildwheel`` environment so the ``requirements/cython.txt``
  pin is honored under the ``build[uv]`` frontend; ``uv pip``
  ignores the ``PIP_`` variables and reads only the ``UV_`` ones,
  while the ``PIP_`` variants are kept for the pip fallback path
  -- by `@bdraco <https://github.com/sponsors/bdraco>`__.

  *Related issues and pull requests on GitHub:*
  `#249 <https://github.com/aio-libs/propcache/issues/249>`__.

- Fixed coverage for testing benchmarks when codspeed is not installed
  -- by `@Vizonex <https://github.com/sponsors/Vizonex>`__.

  *Related issues and pull requests on GitHub:*
  `#251 <https://github.com/aio-libs/propcache/issues/251>`__.

- Stopped running the test suite inside the wheel build jobs outside of
  release builds, since the test matrix installs and tests the same
  wheels, and added Python 3.15 and 3.15t to the test matrix so those
  wheels stay covered. Off-tag macOS builds are now limited to the
  architecture the test matrix runs on. Release builds still build every
  architecture and test every wheel, and all release checks in the CI
  workflow now use ``github.ref_type``
  -- by `@bdraco <https://github.com/sponsors/bdraco>`__.

  *Related issues and pull requests on GitHub:*
  `#300 <https://github.com/aio-libs/propcache/issues/300>`__.


----


0.5.2
=====

*(2026-05-08)*


No significant changes.


----


0.5.1
=====

*(2026-05-08)*


No significant changes.


----


0.5.0
=====

*(2026-05-08)*


Features
--------

- Added support for newer type hints and remove ``Optional`` and ``Union`` from all annotations
  -- by `@Vizonex <https://github.com/sponsors/Vizonex>`__

  *Related issues and pull requests on GitHub:*
  `#193 <https://github.com/aio-libs/propcache/issues/193>`__.


Removals and backward incompatible breaking changes
---------------------------------------------------

- Dropped support for Python 3.9 as it has reached end of life.

  *Related issues and pull requests on GitHub:*
  `#216 <https://github.com/aio-libs/propcache/issues/216>`__.


Packaging updates and notes for downstreams
-------------------------------------------

- Changed the Cython build dependency from ``~= 3.1.0`` to ``>= 3.2.0``,
  removing the upper version bound to avoid conflicts for downstream packagers
  -- by `@jameshilliard <https://github.com/sponsors/jameshilliard>`__ and `@gundalow <https://github.com/sponsors/gundalow>`__.

  The upstream Cython version is pinned to 3.2.4 in the CI/CD environment.

  *Related issues and pull requests on GitHub:*
  `#184 <https://github.com/aio-libs/propcache/issues/184>`__, `#188 <https://github.com/aio-libs/propcache/issues/188>`__, `#214 <https://github.com/aio-libs/propcache/issues/214>`__.

- Start building and shipping riscv64 wheels
  -- by `@justeph <https://github.com/sponsors/justeph>`__.

  *Related issues and pull requests on GitHub:*
  `#194 <https://github.com/aio-libs/propcache/issues/194>`__.

- The `PEP 517 <https://peps.python.org/pep-517>`__ build backend now supports a new ``build-inplace``
  config setting (and ``PROPCACHE_BUILD_INPLACE`` environment variable)
  for controlling whether to build the project in-tree or in a
  temporary directory. It only affects wheels and is set up to build
  in a temporary directory by default. It does not affect editable
  wheel builds; they will keep being built in-tree regardless.

  Here's an example of using this setting:

  .. code-block:: console

     $ python -m build --config-setting=build-inplace=true

  Additionally, when building wheels in an automatically created
  temporary directory, the build backend now normalizes the
  respective file system path to a deterministic source checkout
  directory by injecting the ``-ffile-prefix-map`` compiler option
  into the ``CFLAGS`` environment variable, as suggested by known
  `reproducible build practices
  <https://reproducible-builds.org/docs/build-path/>`__.

  The effect is that downstreams will get reproducible build results.

  *Related issues and pull requests on GitHub:*
  `#218 <https://github.com/aio-libs/propcache/issues/218>`__.


----


0.4.1
=====

*(2025-10-08)*


Bug fixes
---------

- Fixed reference leak caused by ``Py_INCREF`` because Cython has its own reference counter systems -- by `@Vizonex <https://github.com/sponsors/Vizonex>`__.

  *Related issues and pull requests on GitHub:*
  `#162 <https://github.com/aio-libs/propcache/issues/162>`__.


Contributor-facing changes
--------------------------

- Fixes the default value for the ``os``
  parameter in ``reusable-build-wheel.yml``
  to be ``ubuntu-latest`` instead of
  ``ubuntu``.

  *Related issues and pull requests on GitHub:*
  `#155 <https://github.com/aio-libs/propcache/issues/155>`__.


----


0.4.0
=====

*(2025-10-04)*


Features
--------

- Optimized propcache by replacing sentinel ``object`` for checking if
  the ``object`` is ``NULL`` and changed ``dict`` API for
  Python C-API -- by `@Vizonex <https://github.com/sponsors/Vizonex>`__.

  *Related issues and pull requests on GitHub:*
  `#121 <https://github.com/aio-libs/propcache/issues/121>`__.


Contributor-facing changes
--------------------------

- Builds have been added for arm64 Windows
  wheels and the ``reusable-build-wheel.yml``
  workflow has been modified to allow for
  an OS value (``windows-11-arm``) which
  does not include the ``-latest`` postfix
  -- by `@finnagin <https://github.com/sponsors/finnagin>`__.

  *Related issues and pull requests on GitHub:*
  `#133 <https://github.com/aio-libs/propcache/issues/133>`__.

- Added CI for CPython 3.14 -- by `@kumaraditya303 <https://github.com/sponsors/kumaraditya303>`__.

  *Related issues and pull requests on GitHub:*
  `#140 <https://github.com/aio-libs/propcache/issues/140>`__.


----


0.3.2
=====

*(2025-06-09)*


Improved documentation
----------------------

- Fixed incorrect decorator usage in the ``~propcache.api.under_cached_property`` example code -- by `@meanmail <https://github.com/sponsors/meanmail>`__.

  *Related issues and pull requests on GitHub:*
  `#109 <https://github.com/aio-libs/propcache/issues/109>`__.


Packaging updates and notes for downstreams
-------------------------------------------

- Updated to use Cython 3.1 universally across the build path -- by `@lysnikolaou <https://github.com/sponsors/lysnikolaou>`__.

  *Related issues and pull requests on GitHub:*
  `#117 <https://github.com/aio-libs/propcache/issues/117>`__.

- Made Cython line tracing opt-in via the ``with-cython-tracing`` build config setting -- by `@bdraco <https://github.com/sponsors/bdraco>`__.

  Previously, line tracing was enabled by default in ``pyproject.toml``, which caused build issues for some users and made wheels nearly twice as slow.

  Now line tracing is only enabled when explicitly requested via ``pip install . --config-setting=with-cython-tracing=true`` or by setting the ``PROPCACHE_CYTHON_TRACING`` environment variable.

  *Related issues and pull requests on GitHub:*
  `#118 <https://github.com/aio-libs/propcache/issues/118>`__.


----


0.3.1
=====

*(2025-03-25)*


Bug fixes
---------

- Improved typing annotations, fixing some type errors under correct usage
  and improving typing robustness generally -- by `@Dreamsorcerer <https://github.com/sponsors/Dreamsorcerer>`__.

  *Related issues and pull requests on GitHub:*
  `#103 <https://github.com/aio-libs/propcache/issues/103>`__.


----


0.3.0
=====

*(2025-02-20)*


Features
--------

- Implemented support for the free-threaded build of CPython 3.13 -- by `@lysnikolaou <https://github.com/sponsors/lysnikolaou>`__.

  *Related issues and pull requests on GitHub:*
  `#84 <https://github.com/aio-libs/propcache/issues/84>`__.


Packaging updates and notes for downstreams
-------------------------------------------

- Started building wheels for the free-threaded build of CPython 3.13 -- by `@lysnikolaou <https://github.com/sponsors/lysnikolaou>`__.

  *Related issues and pull requests on GitHub:*
  `#84 <https://github.com/aio-libs/propcache/issues/84>`__.


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
  `@webknjaz <https://github.com/sponsors/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:*
  `#93 <https://github.com/aio-libs/propcache/issues/93>`__.


----


0.2.1
=====

*(2024-12-01)*


Bug fixes
---------

- Stopped implicitly allowing the use of Cython pre-release versions when
  building the distribution package -- by `@ajsanchezsanz <https://github.com/sponsors/ajsanchezsanz>`__ and
  `@markgreene74 <https://github.com/sponsors/markgreene74>`__.

  *Related commits on GitHub:*
  `64df0a6 <https://github.com/aio-libs/propcache/commit/64df0a6>`__.

- Fixed ``wrapped`` and ``func`` not being accessible in the Cython versions of ``propcache.api.cached_property`` and ``propcache.api.under_cached_property`` decorators -- by `@bdraco <https://github.com/sponsors/bdraco>`__.

  *Related issues and pull requests on GitHub:*
  `#72 <https://github.com/aio-libs/propcache/issues/72>`__.


Removals and backward incompatible breaking changes
---------------------------------------------------

- Removed support for Python 3.8 as it has reached end of life -- by `@bdraco <https://github.com/sponsors/bdraco>`__.

  *Related issues and pull requests on GitHub:*
  `#57 <https://github.com/aio-libs/propcache/issues/57>`__.


Packaging updates and notes for downstreams
-------------------------------------------

- Stopped implicitly allowing the use of Cython pre-release versions when
  building the distribution package -- by `@ajsanchezsanz <https://github.com/sponsors/ajsanchezsanz>`__ and
  `@markgreene74 <https://github.com/sponsors/markgreene74>`__.

  *Related commits on GitHub:*
  `64df0a6 <https://github.com/aio-libs/propcache/commit/64df0a6>`__.


----


0.2.0
=====

*(2024-10-07)*


Bug fixes
---------

- Fixed loading the C-extensions on Python 3.8 -- by `@bdraco <https://github.com/sponsors/bdraco>`__.

  *Related issues and pull requests on GitHub:*
  `#26 <https://github.com/aio-libs/propcache/issues/26>`__.


Features
--------

- Improved typing for the ``propcache.api.under_cached_property`` decorator -- by `@bdraco <https://github.com/sponsors/bdraco>`__.

  *Related issues and pull requests on GitHub:*
  `#38 <https://github.com/aio-libs/propcache/issues/38>`__.


Improved documentation
----------------------

- Added API documentation for the ``propcache.api.cached_property`` and ``propcache.api.under_cached_property`` decorators -- by `@bdraco <https://github.com/sponsors/bdraco>`__.

  *Related issues and pull requests on GitHub:*
  `#16 <https://github.com/aio-libs/propcache/issues/16>`__.


Packaging updates and notes for downstreams
-------------------------------------------

- Moved ``propcache.api.under_cached_property`` and ``propcache.api.cached_property`` to `propcache.api` -- by `@bdraco <https://github.com/sponsors/bdraco>`__.

  Both decorators remain importable from the top-level package, however importing from `propcache.api` is now the recommended way to use them.

  *Related issues and pull requests on GitHub:*
  `#19 <https://github.com/aio-libs/propcache/issues/19>`__, `#24 <https://github.com/aio-libs/propcache/issues/24>`__, `#32 <https://github.com/aio-libs/propcache/issues/32>`__.

- Converted project to use a src layout -- by `@bdraco <https://github.com/sponsors/bdraco>`__.

  *Related issues and pull requests on GitHub:*
  `#22 <https://github.com/aio-libs/propcache/issues/22>`__, `#29 <https://github.com/aio-libs/propcache/issues/29>`__, `#37 <https://github.com/aio-libs/propcache/issues/37>`__.


----


0.1.0
=====

*(2024-10-03)*


Features
--------

- Added ``armv7l`` wheels -- by `@bdraco <https://github.com/sponsors/bdraco>`__.

  *Related issues and pull requests on GitHub:*
  `#5 <https://github.com/aio-libs/propcache/issues/5>`__.


----


0.0.0
=====

*(2024-10-02)*


- Initial release.
