@@ -14,6 +14,113 @@ Changelog
14
14
15
15
.. towncrier release notes start
16
16
17
+ 1.4.1 (2023-12-15)
18
+ ==================
19
+
20
+ Packaging updates and notes for downstreams
21
+ -------------------------------------------
22
+
23
+ - Declared Python 3.12 and PyPy 3.8-3.10 supported officially
24
+ in the distribution package metadata.
25
+
26
+
27
+ *Related issues and pull requests on GitHub: *
28
+ :issue: `553 `.
29
+
30
+ - Replaced the packaging is replaced from an old-fashioned :file: `setup.py ` to an
31
+ in-tree :pep: `517 ` build backend -- by :user: `webknjaz `.
32
+
33
+ Whenever the end-users or downstream packagers need to build ``frozenlist ``
34
+ from source (a Git checkout or an sdist), they may pass a ``config_settings ``
35
+ flag ``pure-python ``. If this flag is not set, a C-extension will be built
36
+ and included into the distribution.
37
+
38
+ Here is how this can be done with ``pip ``:
39
+
40
+ .. code-block :: console
41
+
42
+ $ python3 -m pip install . --config-settings=pure-python=
43
+
44
+ This will also work with ``-e | --editable ``.
45
+
46
+ The same can be achieved via ``pypa/build ``:
47
+
48
+ .. code-block :: console
49
+
50
+ $ python3 -m build --config-setting=pure-python=
51
+
52
+ Adding ``-w | --wheel `` can force ``pypa/build `` produce a wheel from source
53
+ directly, as opposed to building an ``sdist `` and then building from it.
54
+
55
+
56
+ *Related issues and pull requests on GitHub: *
57
+ :issue: `560 `.
58
+
59
+
60
+ Contributor-facing changes
61
+ --------------------------
62
+
63
+ - It is now possible to request line tracing in Cython builds using the
64
+ ``with-cython-tracing `` :pep: `517 ` config setting
65
+ -- :user: `webknjaz `.
66
+
67
+ This can be used in CI and development environment to measure coverage
68
+ on Cython modules, but is not normally useful to the end-users or
69
+ downstream packagers.
70
+
71
+ Here's a usage example:
72
+
73
+ .. code-block :: console
74
+
75
+ $ python3 -Im pip install . --config-settings=with-cython-tracing=true
76
+
77
+ For editable installs, this setting is on by default. Otherwise, it's
78
+ off unless requested explicitly.
79
+
80
+ The following produces C-files required for the Cython coverage
81
+ plugin to map the measurements back to the PYX-files:
82
+
83
+ .. code-block :: console
84
+
85
+ $ python -Im pip install -e .
86
+
87
+ Alternatively, the ``FROZENLIST_CYTHON_TRACING=1 `` environment variable
88
+ can be set to do the same as the :pep: `517 ` config setting.
89
+
90
+
91
+ *Related issues and pull requests on GitHub: *
92
+ :issue: `560 `.
93
+
94
+ - Coverage collection has been implemented for the Cython modules
95
+ -- by :user: `webknjaz `.
96
+
97
+ It will also be reported to Codecov from any non-release CI jobs.
98
+
99
+
100
+ *Related issues and pull requests on GitHub: *
101
+ :issue: `561 `.
102
+
103
+ - A step-by-step :doc: `Release Guide <contributing/release_guide >` guide has
104
+ been added, describing how to release *frozenlist * -- by :user: `webknjaz `.
105
+
106
+ This is primarily targeting the maintainers.
107
+
108
+
109
+ *Related issues and pull requests on GitHub: *
110
+ :issue: `563 `.
111
+
112
+ - Detailed :doc: `Contributing Guidelines <contributing/guidelines >` on
113
+ authoring the changelog fragments have been published in the
114
+ documentation -- by :user: `webknjaz `.
115
+
116
+
117
+ *Related issues and pull requests on GitHub: *
118
+ :issue: `564 `.
119
+
120
+
121
+ ----
122
+
123
+
17
124
1.4.0 (2023-07-12)
18
125
==================
19
126
0 commit comments