Skip to content

Commit f402d74

Browse files
authored
Merge pull request #199 from eriknw/cython3
Update to work with Cython 3.0
2 parents 6fd41d2 + d092fc0 commit f402d74

5 files changed

Lines changed: 37 additions & 17 deletions

File tree

.github/workflows/test.yml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,11 @@ jobs:
2020
- "3.9"
2121
- "3.10"
2222
- "3.11"
23-
- "pypy-3.6"
24-
- "pypy-3.7"
25-
- "pypy-3.8"
26-
- "pypy-3.9"
23+
- "pypy3.6"
24+
- "pypy3.7"
25+
- "pypy3.8"
26+
# - "pypy3.9"
27+
# - "pypy3.10"
2728
steps:
2829
- name: Checkout
2930
uses: actions/checkout@v3

.github/workflows/wheels.yml

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ jobs:
2929
#
3030
# pys = ['cp36', 'cp37', 'cp38', 'cp39', 'cp310', 'cp311']
3131
# pys_arm = ['cp38', 'cp39', 'cp310', 'cp311']
32-
# pypys = ['pp37', 'pp38', 'pp39']
32+
# pypys = ['pp37', 'pp38', 'pp39', 'pp310']
3333
# SKIP = set() # {"pp37-manylinux_aarch64", "pp38-win_amd64"}
3434
# combos = []
3535
#
@@ -75,7 +75,8 @@ jobs:
7575
- {"os": "macos", "build": "cp311-macosx_x86_64", "arch": "x86_64"}
7676
- {"os": "macos", "build": "pp37-macosx_x86_64", "arch": "x86_64"}
7777
- {"os": "macos", "build": "pp38-macosx_x86_64", "arch": "x86_64"}
78-
- {"os": "macos", "build": "pp39-macosx_x86_64", "arch": "x86_64"}
78+
# - {"os": "macos", "build": "pp39-macosx_x86_64", "arch": "x86_64"}
79+
# - {"os": "macos", "build": "pp310-macosx_x86_64", "arch": "x86_64"}
7980
- {"os": "ubuntu", "build": "cp36-manylinux_aarch64", "arch": "aarch64"}
8081
- {"os": "ubuntu", "build": "cp36-manylinux_i686", "arch": "i686"}
8182
- {"os": "ubuntu", "build": "cp36-manylinux_ppc64le", "arch": "ppc64le"}
@@ -143,9 +144,12 @@ jobs:
143144
- {"os": "ubuntu", "build": "pp38-manylinux_aarch64", "arch": "aarch64"}
144145
- {"os": "ubuntu", "build": "pp38-manylinux_i686", "arch": "i686"}
145146
- {"os": "ubuntu", "build": "pp38-manylinux_x86_64", "arch": "x86_64"}
146-
- {"os": "ubuntu", "build": "pp39-manylinux_aarch64", "arch": "aarch64"}
147-
- {"os": "ubuntu", "build": "pp39-manylinux_i686", "arch": "i686"}
148-
- {"os": "ubuntu", "build": "pp39-manylinux_x86_64", "arch": "x86_64"}
147+
# - {"os": "ubuntu", "build": "pp39-manylinux_aarch64", "arch": "aarch64"}
148+
# - {"os": "ubuntu", "build": "pp310-manylinux_aarch64", "arch": "aarch64"}
149+
# - {"os": "ubuntu", "build": "pp39-manylinux_i686", "arch": "i686"}
150+
# - {"os": "ubuntu", "build": "pp310-manylinux_i686", "arch": "i686"}
151+
# - {"os": "ubuntu", "build": "pp39-manylinux_x86_64", "arch": "x86_64"}
152+
# - {"os": "ubuntu", "build": "pp310-manylinux_x86_64", "arch": "x86_64"}
149153
- {"os": "windows", "build": "cp36-win32", "arch": "x86"}
150154
- {"os": "windows", "build": "cp36-win_amd64", "arch": "AMD64"}
151155
- {"os": "windows", "build": "cp37-win32", "arch": "x86"}
@@ -160,7 +164,8 @@ jobs:
160164
- {"os": "windows", "build": "cp311-win_amd64", "arch": "AMD64"}
161165
- {"os": "windows", "build": "pp37-win_amd64", "arch": "AMD64"}
162166
- {"os": "windows", "build": "pp38-win_amd64", "arch": "AMD64"}
163-
- {"os": "windows", "build": "pp39-win_amd64", "arch": "AMD64"}
167+
# - {"os": "windows", "build": "pp39-win_amd64", "arch": "AMD64"}
168+
# - {"os": "windows", "build": "pp310-win_amd64", "arch": "AMD64"}
164169

165170
steps:
166171
- name: Setup QEMU
@@ -177,7 +182,7 @@ jobs:
177182
with:
178183
python-version: "3.x"
179184
- name: Build wheels
180-
uses: pypa/cibuildwheel@v2.11.2
185+
uses: pypa/cibuildwheel@v2.14.1
181186
env:
182187
CIBW_BUILD: ${{ matrix.build }}
183188
CIBW_ARCHS: ${{ matrix.arch }}
@@ -232,7 +237,7 @@ jobs:
232237
run: |
233238
ls -al dist/
234239
- name: Publish to PyPI
235-
uses: pypa/gh-action-pypi-publish@v1.6.4
240+
uses: pypa/gh-action-pypi-publish@v1.8.8
236241
if: startsWith(github.ref, 'refs/tags/')
237242
with:
238243
user: __token__

Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ test: inplace
1313

1414
clean:
1515
rm -f cytoolz/*.c cytoolz/*.so cytoolz/*/*.c cytoolz/*/*.so
16-
rm -rf build/ cytoolz/__pycache__/ cytoolz/*/__pycache__/
16+
rm -rf build/ __pycache__/ cytoolz/__pycache__/ cytoolz/*/__pycache__/
1717

1818
curried:
1919
sed -e 's/toolz/cytoolz/g' -e 's/itercytoolz/itertoolz/' \

cytoolz/functoolz.pxd

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,8 @@ cdef class curry:
1515
cdef readonly dict keywords
1616
cdef public object __doc__
1717
cdef public object __name__
18-
cdef public object __module__
19-
cdef public object __qualname__
18+
cdef object _module
19+
cdef object _qualname
2020

2121

2222
cpdef object memoize(object func, object cache=*, object key=*)

cytoolz/functoolz.pyx

Lines changed: 16 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -211,11 +211,25 @@ cdef class curry:
211211
self.keywords = kwargs if kwargs else _empty_kwargs()
212212
self.__doc__ = getattr(func, '__doc__', None)
213213
self.__name__ = getattr(func, '__name__', '<curry>')
214-
self.__module__ = getattr(func, '__module__', None)
215-
self.__qualname__ = getattr(func, '__qualname__', None)
214+
self._module = getattr(func, '__module__', None)
215+
self._qualname = getattr(func, '__qualname__', None)
216216
self._sigspec = None
217217
self._has_unknown_args = None
218218

219+
property __module__:
220+
def __get__(self):
221+
return self._module
222+
223+
def __set__(self, val):
224+
self._module = val
225+
226+
property __qualname__:
227+
def __get__(self):
228+
return self._qualname
229+
230+
def __set__(self, val):
231+
self._qualname = val
232+
219233
def __str__(self):
220234
return str(self.func)
221235

0 commit comments

Comments
 (0)