propcache 0.3.1__tar.gz → 0.3.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {propcache-0.3.1 → propcache-0.3.2}/CHANGES.rst +36 -0
- {propcache-0.3.1/src/propcache.egg-info → propcache-0.3.2}/PKG-INFO +37 -1
- {propcache-0.3.1 → propcache-0.3.2}/docs/api.rst +1 -1
- {propcache-0.3.1 → propcache-0.3.2}/packaging/pep517_backend/_backend.py +2 -5
- {propcache-0.3.1 → propcache-0.3.2}/packaging/pep517_backend/_cython_configuration.py +17 -3
- {propcache-0.3.1 → propcache-0.3.2}/packaging/pep517_backend/_transformers.py +3 -1
- {propcache-0.3.1 → propcache-0.3.2}/pyproject.toml +0 -10
- propcache-0.3.2/requirements/cython.txt +1 -0
- propcache-0.3.1/requirements/test-pure.txt → propcache-0.3.2/requirements/test.txt +1 -0
- {propcache-0.3.1 → propcache-0.3.2}/src/propcache/__init__.py +1 -1
- {propcache-0.3.1 → propcache-0.3.2/src/propcache.egg-info}/PKG-INFO +37 -1
- {propcache-0.3.1 → propcache-0.3.2}/src/propcache.egg-info/SOURCES.txt +0 -3
- propcache-0.3.1/requirements/cython-freethreading.txt +0 -1
- propcache-0.3.1/requirements/cython.txt +0 -1
- propcache-0.3.1/requirements/test-freethreading.txt +0 -2
- propcache-0.3.1/requirements/test.txt +0 -2
- {propcache-0.3.1 → propcache-0.3.2}/.coveragerc +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/CHANGES/.TEMPLATE.rst +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/CHANGES/.gitignore +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/CHANGES/README.rst +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/LICENSE +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/MANIFEST.in +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/NOTICE +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/README.rst +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/docs/Makefile +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/docs/_static/README.txt +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/docs/changes.rst +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/docs/conf.py +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/docs/contributing/guidelines.rst +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/docs/contributing/release_guide.rst +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/docs/index.rst +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/docs/make.bat +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/docs/spelling_wordlist.txt +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/packaging/README.md +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/packaging/pep517_backend/__init__.py +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/packaging/pep517_backend/__main__.py +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/packaging/pep517_backend/_compat.py +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/packaging/pep517_backend/cli.py +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/packaging/pep517_backend/hooks.py +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/pytest.ini +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/requirements/codspeed.txt +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/requirements/dev.txt +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/requirements/doc-spelling.txt +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/requirements/doc.txt +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/requirements/lint.txt +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/requirements/towncrier.txt +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/setup.cfg +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/src/propcache/_helpers.py +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/src/propcache/_helpers_c.pyx +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/src/propcache/_helpers_py.py +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/src/propcache/api.py +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/src/propcache/py.typed +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/src/propcache.egg-info/dependency_links.txt +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/src/propcache.egg-info/not-zip-safe +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/src/propcache.egg-info/top_level.txt +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/tests/conftest.py +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/tests/test_api.py +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/tests/test_benchmarks.py +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/tests/test_cached_property.py +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/tests/test_init.py +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/tests/test_under_cached_property.py +0 -0
- {propcache-0.3.1 → propcache-0.3.2}/towncrier.toml +0 -0
|
@@ -14,6 +14,42 @@ Changelog
|
|
|
14
14
|
|
|
15
15
|
.. towncrier release notes start
|
|
16
16
|
|
|
17
|
+
0.3.2
|
|
18
|
+
=====
|
|
19
|
+
|
|
20
|
+
*(2025-06-09)*
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
Improved documentation
|
|
24
|
+
----------------------
|
|
25
|
+
|
|
26
|
+
- Fixed incorrect decorator usage in the :func:`~propcache.api.under_cached_property` example code -- by :user:`meanmail`.
|
|
27
|
+
|
|
28
|
+
*Related issues and pull requests on GitHub:*
|
|
29
|
+
:issue:`109`.
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
Packaging updates and notes for downstreams
|
|
33
|
+
-------------------------------------------
|
|
34
|
+
|
|
35
|
+
- Updated to use Cython 3.1 universally across the build path -- by :user:`lysnikolaou`.
|
|
36
|
+
|
|
37
|
+
*Related issues and pull requests on GitHub:*
|
|
38
|
+
:issue:`117`.
|
|
39
|
+
|
|
40
|
+
- Made Cython line tracing opt-in via the ``with-cython-tracing`` build config setting -- by :user:`bdraco`.
|
|
41
|
+
|
|
42
|
+
Previously, line tracing was enabled by default in :file:`pyproject.toml`, which caused build issues for some users and made wheels nearly twice as slow.
|
|
43
|
+
|
|
44
|
+
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.
|
|
45
|
+
|
|
46
|
+
*Related issues and pull requests on GitHub:*
|
|
47
|
+
:issue:`118`.
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
----
|
|
51
|
+
|
|
52
|
+
|
|
17
53
|
0.3.1
|
|
18
54
|
=====
|
|
19
55
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: propcache
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.2
|
|
4
4
|
Summary: Accelerated property cache
|
|
5
5
|
Home-page: https://github.com/aio-libs/propcache
|
|
6
6
|
Author: Andrew Svetlov
|
|
@@ -152,6 +152,42 @@ Changelog
|
|
|
152
152
|
|
|
153
153
|
.. towncrier release notes start
|
|
154
154
|
|
|
155
|
+
0.3.2
|
|
156
|
+
=====
|
|
157
|
+
|
|
158
|
+
*(2025-06-09)*
|
|
159
|
+
|
|
160
|
+
|
|
161
|
+
Improved documentation
|
|
162
|
+
----------------------
|
|
163
|
+
|
|
164
|
+
- Fixed incorrect decorator usage in the ``~propcache.api.under_cached_property`` example code -- by `@meanmail <https://github.com/sponsors/meanmail>`__.
|
|
165
|
+
|
|
166
|
+
*Related issues and pull requests on GitHub:*
|
|
167
|
+
`#109 <https://github.com/aio-libs/propcache/issues/109>`__.
|
|
168
|
+
|
|
169
|
+
|
|
170
|
+
Packaging updates and notes for downstreams
|
|
171
|
+
-------------------------------------------
|
|
172
|
+
|
|
173
|
+
- Updated to use Cython 3.1 universally across the build path -- by `@lysnikolaou <https://github.com/sponsors/lysnikolaou>`__.
|
|
174
|
+
|
|
175
|
+
*Related issues and pull requests on GitHub:*
|
|
176
|
+
`#117 <https://github.com/aio-libs/propcache/issues/117>`__.
|
|
177
|
+
|
|
178
|
+
- Made Cython line tracing opt-in via the ``with-cython-tracing`` build config setting -- by `@bdraco <https://github.com/sponsors/bdraco>`__.
|
|
179
|
+
|
|
180
|
+
Previously, line tracing was enabled by default in ``pyproject.toml``, which caused build issues for some users and made wheels nearly twice as slow.
|
|
181
|
+
|
|
182
|
+
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.
|
|
183
|
+
|
|
184
|
+
*Related issues and pull requests on GitHub:*
|
|
185
|
+
`#118 <https://github.com/aio-libs/propcache/issues/118>`__.
|
|
186
|
+
|
|
187
|
+
|
|
188
|
+
----
|
|
189
|
+
|
|
190
|
+
|
|
155
191
|
0.3.1
|
|
156
192
|
=====
|
|
157
193
|
|
|
@@ -4,7 +4,6 @@
|
|
|
4
4
|
from __future__ import annotations
|
|
5
5
|
|
|
6
6
|
import os
|
|
7
|
-
import sysconfig
|
|
8
7
|
import typing as t
|
|
9
8
|
from collections.abc import Iterator
|
|
10
9
|
from contextlib import contextmanager, nullcontext, suppress
|
|
@@ -293,7 +292,7 @@ def maybe_prebuild_c_extensions(
|
|
|
293
292
|
with build_dir_ctx:
|
|
294
293
|
config = _get_local_cython_config()
|
|
295
294
|
|
|
296
|
-
cythonize_args = _make_cythonize_cli_args_from_config(config)
|
|
295
|
+
cythonize_args = _make_cythonize_cli_args_from_config(config, cython_line_tracing_requested)
|
|
297
296
|
with _patched_cython_env(config['env'], cython_line_tracing_requested):
|
|
298
297
|
_cythonize_cli_cmd(cythonize_args) # type: ignore[no-untyped-call]
|
|
299
298
|
with patched_distutils_cmd_install():
|
|
@@ -376,10 +375,8 @@ def get_requires_for_build_wheel(
|
|
|
376
375
|
|
|
377
376
|
if is_pure_python_build:
|
|
378
377
|
c_ext_build_deps = []
|
|
379
|
-
elif sysconfig.get_config_var('Py_GIL_DISABLED'):
|
|
380
|
-
c_ext_build_deps = ['Cython ~= 3.1.0a1']
|
|
381
378
|
else:
|
|
382
|
-
c_ext_build_deps = ['Cython ~= 3.0
|
|
379
|
+
c_ext_build_deps = ['Cython ~= 3.1.0']
|
|
383
380
|
|
|
384
381
|
return _setuptools_get_requires_for_build_wheel(
|
|
385
382
|
config_settings=config_settings,
|
|
@@ -18,7 +18,7 @@ from ._transformers import get_cli_kwargs_from_config, get_enabled_cli_flags_fro
|
|
|
18
18
|
class Config(TypedDict):
|
|
19
19
|
env: dict[str, str]
|
|
20
20
|
flags: dict[str, bool]
|
|
21
|
-
kwargs: dict[str, str]
|
|
21
|
+
kwargs: dict[str, str | dict[str, str]]
|
|
22
22
|
src: list[str]
|
|
23
23
|
|
|
24
24
|
|
|
@@ -79,11 +79,25 @@ def get_local_cython_config() -> Config:
|
|
|
79
79
|
return config_mapping['tool']['local']['cythonize'] # type: ignore[no-any-return]
|
|
80
80
|
|
|
81
81
|
|
|
82
|
-
def
|
|
82
|
+
def _configure_cython_line_tracing(config_kwargs: dict[str, str | dict[str, str]], cython_line_tracing_requested: bool) -> None:
|
|
83
|
+
"""Configure Cython line tracing directives if requested."""
|
|
84
|
+
# If line tracing is requested, add it to the directives
|
|
85
|
+
if cython_line_tracing_requested:
|
|
86
|
+
directives = config_kwargs.setdefault('directive', {})
|
|
87
|
+
assert isinstance(directives, dict) # Type narrowing for mypy
|
|
88
|
+
directives['linetrace'] = 'True'
|
|
89
|
+
directives['profile'] = 'True'
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
def make_cythonize_cli_args_from_config(config: Config, cython_line_tracing_requested: bool = False) -> list[str]:
|
|
83
93
|
py_ver_arg = f'-{_python_version_tuple.major!s}'
|
|
84
94
|
|
|
85
95
|
cli_flags = get_enabled_cli_flags_from_config(config['flags'])
|
|
86
|
-
|
|
96
|
+
config_kwargs = config['kwargs']
|
|
97
|
+
|
|
98
|
+
_configure_cython_line_tracing(config_kwargs, cython_line_tracing_requested)
|
|
99
|
+
|
|
100
|
+
cli_kwargs = get_cli_kwargs_from_config(config_kwargs)
|
|
87
101
|
|
|
88
102
|
return cli_flags + [py_ver_arg] + cli_kwargs + ['--'] + config['src']
|
|
89
103
|
|
|
@@ -17,7 +17,9 @@ def _emit_opt_pairs(opt_pair: tuple[str, Union[dict[str, str], str]]) -> Iterato
|
|
|
17
17
|
yield from ("=".join(map(str, (flag_opt,) + pair)) for pair in sub_pairs)
|
|
18
18
|
|
|
19
19
|
|
|
20
|
-
def get_cli_kwargs_from_config(
|
|
20
|
+
def get_cli_kwargs_from_config(
|
|
21
|
+
kwargs_map: dict[str, Union[str, dict[str, str]]],
|
|
22
|
+
) -> list[str]:
|
|
21
23
|
"""Make a list of options with values from config."""
|
|
22
24
|
return list(chain.from_iterable(map(_emit_opt_pairs, kwargs_map.items())))
|
|
23
25
|
|
|
@@ -48,7 +48,6 @@ keep-going = false
|
|
|
48
48
|
# https://cython.rtfd.io/en/latest/src/userguide/source_files_and_compilation.html#compiler-directives
|
|
49
49
|
embedsignature = "True"
|
|
50
50
|
emit_code_comments = "True"
|
|
51
|
-
linetrace = "True" # Implies `profile=True`
|
|
52
51
|
|
|
53
52
|
[tool.local.cythonize.kwargs.compile-time-env]
|
|
54
53
|
# This section can contain compile time env vars
|
|
@@ -95,12 +94,3 @@ before-test = [] # Windows cmd has different syntax and pip chooses wheels
|
|
|
95
94
|
|
|
96
95
|
[tool.cibuildwheel.linux]
|
|
97
96
|
before-all = "yum install -y libffi-devel || apk add --upgrade libffi-dev || apt-get install libffi-dev"
|
|
98
|
-
|
|
99
|
-
# TODO: Remove this when there's a Cython 3.1 final release
|
|
100
|
-
# Remove PIP_CONSTRAINT from the environment
|
|
101
|
-
[[tool.cibuildwheel.overrides]]
|
|
102
|
-
select = "cp313t-*"
|
|
103
|
-
|
|
104
|
-
test-requires = "-r requirements/test-freethreading.txt"
|
|
105
|
-
inherit.environment = "append"
|
|
106
|
-
environment = {PIP_CONSTRAINT = "requirements/cython-freethreading.txt"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
cython==3.1.2
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: propcache
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.2
|
|
4
4
|
Summary: Accelerated property cache
|
|
5
5
|
Home-page: https://github.com/aio-libs/propcache
|
|
6
6
|
Author: Andrew Svetlov
|
|
@@ -152,6 +152,42 @@ Changelog
|
|
|
152
152
|
|
|
153
153
|
.. towncrier release notes start
|
|
154
154
|
|
|
155
|
+
0.3.2
|
|
156
|
+
=====
|
|
157
|
+
|
|
158
|
+
*(2025-06-09)*
|
|
159
|
+
|
|
160
|
+
|
|
161
|
+
Improved documentation
|
|
162
|
+
----------------------
|
|
163
|
+
|
|
164
|
+
- Fixed incorrect decorator usage in the ``~propcache.api.under_cached_property`` example code -- by `@meanmail <https://github.com/sponsors/meanmail>`__.
|
|
165
|
+
|
|
166
|
+
*Related issues and pull requests on GitHub:*
|
|
167
|
+
`#109 <https://github.com/aio-libs/propcache/issues/109>`__.
|
|
168
|
+
|
|
169
|
+
|
|
170
|
+
Packaging updates and notes for downstreams
|
|
171
|
+
-------------------------------------------
|
|
172
|
+
|
|
173
|
+
- Updated to use Cython 3.1 universally across the build path -- by `@lysnikolaou <https://github.com/sponsors/lysnikolaou>`__.
|
|
174
|
+
|
|
175
|
+
*Related issues and pull requests on GitHub:*
|
|
176
|
+
`#117 <https://github.com/aio-libs/propcache/issues/117>`__.
|
|
177
|
+
|
|
178
|
+
- Made Cython line tracing opt-in via the ``with-cython-tracing`` build config setting -- by `@bdraco <https://github.com/sponsors/bdraco>`__.
|
|
179
|
+
|
|
180
|
+
Previously, line tracing was enabled by default in ``pyproject.toml``, which caused build issues for some users and made wheels nearly twice as slow.
|
|
181
|
+
|
|
182
|
+
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.
|
|
183
|
+
|
|
184
|
+
*Related issues and pull requests on GitHub:*
|
|
185
|
+
`#118 <https://github.com/aio-libs/propcache/issues/118>`__.
|
|
186
|
+
|
|
187
|
+
|
|
188
|
+
----
|
|
189
|
+
|
|
190
|
+
|
|
155
191
|
0.3.1
|
|
156
192
|
=====
|
|
157
193
|
|
|
@@ -31,14 +31,11 @@ packaging/pep517_backend/_transformers.py
|
|
|
31
31
|
packaging/pep517_backend/cli.py
|
|
32
32
|
packaging/pep517_backend/hooks.py
|
|
33
33
|
requirements/codspeed.txt
|
|
34
|
-
requirements/cython-freethreading.txt
|
|
35
34
|
requirements/cython.txt
|
|
36
35
|
requirements/dev.txt
|
|
37
36
|
requirements/doc-spelling.txt
|
|
38
37
|
requirements/doc.txt
|
|
39
38
|
requirements/lint.txt
|
|
40
|
-
requirements/test-freethreading.txt
|
|
41
|
-
requirements/test-pure.txt
|
|
42
39
|
requirements/test.txt
|
|
43
40
|
requirements/towncrier.txt
|
|
44
41
|
src/propcache/__init__.py
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
cython==3.1.0a1
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
cython==3.0.12
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|