File tree Expand file tree Collapse file tree 4 files changed +10
-3
lines changed
Expand file tree Collapse file tree 4 files changed +10
-3
lines changed Original file line number Diff line number Diff line change 3131 run : python -m cibuildwheel --output-dir wheelhouse
3232 # Options (https://cibuildwheel.readthedocs.io/en/stable/options/)
3333 env :
34- # Build for CPython 3.9+ and PyPy 3.11
35- CIBW_BUILD : cp39-* cp310-* cp311-* cp312-* cp313-* cp314-* pp311-*
34+ # Build abi3 wheel for CPython 3.9+ (one wheel for all versions)
35+ # Build version-specific wheel for PyPy (which doesn't support abi3)
36+ CIBW_BUILD : cp39-* pp311-*
3637 CIBW_SKIP : " *musllinux*"
3738 CIBW_ENABLE : pypy
3839 CIBW_PROJECT_REQUIRES_PYTHON : " >=3.9"
Original file line number Diff line number Diff line change @@ -371,6 +371,7 @@ python -m pytest
371371
372372## Changelog
373373
374+ * Version 1.1.6: Added abi3 wheel support for smaller release size. (2025-12-12)
374375* Version 1.1.5: Fixed PEP 561 compliance (py.typed). Fixed ruff linting in CI. (2025-12-12)
375376* Version 1.1.4: Added support for Python 3.14 and Windows. Improved CI with PyPI trusted publishing. (2025-12-12)
376377* Version 1.1.3: Minor tweaks. Support for Python 3.13. Now requires Python 3.9+. (2024-08-27)
Original file line number Diff line number Diff line change @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
44
55[project ]
66name = " icegrams"
7- version = " 1.1.5 "
7+ version = " 1.1.6 "
88description = " Trigram statistics for Icelandic"
99authors = [{ name = " Miðeind ehf." , email = " mideind@mideind.is" }]
1010maintainers = [{ name = " Miðeind ehf." , email = " mideind@mideind.is" }]
Original file line number Diff line number Diff line change 112112if IMPLEMENTATION == "PyPy" :
113113 os .environ ["LDCXXSHARED" ] = "c++ -shared"
114114
115+ # Use the Python stable ABI (abi3) for CPython, allowing a single wheel
116+ # to work across multiple Python versions (3.9+). PyPy doesn't support abi3.
117+ py_limited_api = "cp39" if IMPLEMENTATION == "CPython" else False
118+
115119ffibuilder .set_source (
116120 "icegrams._trie" ,
117121 # trie.cpp is written in C++ but must export a pure C interface.
120124 source_extension = ".cpp" ,
121125 sources = ["src/icegrams/trie.cpp" ],
122126 extra_compile_args = extra_compile_args ,
127+ py_limited_api = py_limited_api ,
123128)
124129
125130ffibuilder .cdef (declarations )
You can’t perform that action at this time.
0 commit comments