From df944c85905e97db4bc524d7492c1c197fa55b26 Mon Sep 17 00:00:00 2001 From: Erik Welch Date: Mon, 24 Jul 2023 13:01:09 -0500 Subject: [PATCH 01/11] Test with Cython 0.29 and 3.0 --- .github/workflows/test.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 615ec99..dda0253 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -13,7 +13,7 @@ jobs: strategy: fail-fast: false matrix: - os: ["ubuntu-latest"] + os: ["ubuntu-latest", "macos-latest", "windows-latest"] python-version: - "3.7" - "3.8" @@ -25,6 +25,9 @@ jobs: - "pypy3.8" # - "pypy3.9" # - "pypy3.10" + cython-version: + - "0.29" + - "3.0" steps: - name: Checkout uses: actions/checkout@v3 @@ -35,7 +38,7 @@ jobs: - name: Install dependencies run: | python -m pip install --upgrade pip setuptools wheel - pip install cython pytest + pip install cython==${{ cython-version }} pytest pip install git+https://github.com/pytoolz/toolz.git python setup.py build_ext --inplace --with-cython pip install -e . From 1df7ef8362f3ffdd72c243fc12e9755c6ce4616c Mon Sep 17 00:00:00 2001 From: Erik Welch Date: Mon, 24 Jul 2023 13:09:19 -0500 Subject: [PATCH 02/11] Try this --- .github/workflows/test.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index dda0253..451a5c9 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -14,6 +14,7 @@ jobs: fail-fast: false matrix: os: ["ubuntu-latest", "macos-latest", "windows-latest"] + cython-version: ["0.29", "3.0"] python-version: - "3.7" - "3.8" @@ -25,9 +26,6 @@ jobs: - "pypy3.8" # - "pypy3.9" # - "pypy3.10" - cython-version: - - "0.29" - - "3.0" steps: - name: Checkout uses: actions/checkout@v3 From 8382af072199a6c4f07d7f6b86638b4511f882c4 Mon Sep 17 00:00:00 2001 From: Erik Welch Date: Mon, 24 Jul 2023 13:11:48 -0500 Subject: [PATCH 03/11] oops --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 451a5c9..f7eb59c 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -36,7 +36,7 @@ jobs: - name: Install dependencies run: | python -m pip install --upgrade pip setuptools wheel - pip install cython==${{ cython-version }} pytest + pip install cython==${{ matrix.cython-version }} pytest pip install git+https://github.com/pytoolz/toolz.git python setup.py build_ext --inplace --with-cython pip install -e . From 8f30d5f6774b3010840fe362be16ceb47ff53941 Mon Sep 17 00:00:00 2001 From: Erik Welch Date: Mon, 24 Jul 2023 13:15:04 -0500 Subject: [PATCH 04/11] Use Cython version 0.29.36, not 0.29 (be more specific) --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index f7eb59c..2c17667 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -14,7 +14,7 @@ jobs: fail-fast: false matrix: os: ["ubuntu-latest", "macos-latest", "windows-latest"] - cython-version: ["0.29", "3.0"] + cython-version: ["0.29.36", "3.0"] python-version: - "3.7" - "3.8" From f3299d590a6eb3cb7a4c4172b1d3bab34801ce95 Mon Sep 17 00:00:00 2001 From: Erik Welch Date: Mon, 24 Jul 2023 13:21:57 -0500 Subject: [PATCH 05/11] Drop pypy3.6 (b/c support for Python 3.6 was dropped) --- .github/workflows/test.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 2c17667..eaf58dd 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -21,7 +21,6 @@ jobs: - "3.9" - "3.10" - "3.11" - - "pypy3.6" - "pypy3.7" - "pypy3.8" # - "pypy3.9" From b0d1b074310a7db44a44d3c72bfcff6c7d1be34d Mon Sep 17 00:00:00 2001 From: Erik Welch Date: Tue, 23 Jan 2024 14:21:51 -0600 Subject: [PATCH 06/11] Test against Python 3.12 --- .github/workflows/test.yml | 7 ++++--- setup.py | 4 ++-- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index eaf58dd..975adc7 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -14,17 +14,18 @@ jobs: fail-fast: false matrix: os: ["ubuntu-latest", "macos-latest", "windows-latest"] - cython-version: ["0.29.36", "3.0"] + cython-version: ["0.29", "3.0"] python-version: - "3.7" - "3.8" - "3.9" - "3.10" - "3.11" + - "3.12" - "pypy3.7" - "pypy3.8" - # - "pypy3.9" - # - "pypy3.10" + - "pypy3.9" + - "pypy3.10" steps: - name: Checkout uses: actions/checkout@v3 diff --git a/setup.py b/setup.py index 91ed45b..490861c 100644 --- a/setup.py +++ b/setup.py @@ -115,12 +115,12 @@ 'Programming Language :: Cython', 'Programming Language :: Python', 'Programming Language :: Python :: 3', - 'Programming Language :: Python :: 3.6', 'Programming Language :: Python :: 3.7', 'Programming Language :: Python :: 3.8', 'Programming Language :: Python :: 3.9', 'Programming Language :: Python :: 3.10', 'Programming Language :: Python :: 3.11', + 'Programming Language :: Python :: 3.12', 'Programming Language :: Python :: Implementation :: CPython', 'Programming Language :: Python :: Implementation :: PyPy', 'Topic :: Scientific/Engineering', @@ -132,6 +132,6 @@ ], install_requires=['toolz >= 0.8.0'], extras_require={'cython': ['cython']}, - python_requires=">=3.6", + python_requires=">=3.7", zip_safe=False, ) From 870cb7245089e7dfb245ea4c24ec9e943da4d327 Mon Sep 17 00:00:00 2001 From: Erik Welch Date: Tue, 23 Jan 2024 14:36:16 -0600 Subject: [PATCH 07/11] update and test building wheels too --- .github/workflows/test.yml | 4 +-- .github/workflows/wheels.yml | 64 ++++++++++++++++++------------------ 2 files changed, 34 insertions(+), 34 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 975adc7..773d3a9 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -28,9 +28,9 @@ jobs: - "pypy3.10" steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Set up Python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - name: Install dependencies diff --git a/.github/workflows/wheels.yml b/.github/workflows/wheels.yml index a622d9d..e884545 100644 --- a/.github/workflows/wheels.yml +++ b/.github/workflows/wheels.yml @@ -1,7 +1,7 @@ name: Build wheels on: - # pull_request: # Uncomment to debug wheel building in a PR + pull_request: # Uncomment to debug wheel building in a PR push: branches: - master @@ -27,8 +27,8 @@ jobs: # # PyPy may have issues. Intermittent failures have been seen on: # # pp37-manylinux_aarch64 pp38-win_amd64 # - # pys = ['cp36', 'cp37', 'cp38', 'cp39', 'cp310', 'cp311'] - # pys_arm = ['cp38', 'cp39', 'cp310', 'cp311'] + # pys = ['cp37', 'cp38', 'cp39', 'cp310', 'cp311', 'cp312'] + # pys_arm = ['cp38', 'cp39', 'cp310', 'cp311', 'cp312'] # pypys = ['pp37', 'pp38', 'pp39', 'pp310'] # SKIP = set() # {"pp37-manylinux_aarch64", "pp38-win_amd64"} # combos = [] @@ -60,10 +60,9 @@ jobs: # combos.append(('windows', f'{py}-win_amd64', 'AMD64')) # # # Sort, filter, and print combinations - # for os, build, arch in sorted(combos, key=lambda x: (x[0], x[1].replace('310', '390').replace('311', '391'), x[2])): + # for os, build, arch in sorted(combos, key=lambda x: (x[0], x[1].replace('310', '390').replace('311', '391').replace('312', '392'), x[2])): # skip = "# " if build in SKIP else "" # print(f' {skip}- {{"os": "{os}", "build": "{build}", "arch": "{arch}"}}') - - {"os": "macos", "build": "cp36-macosx_x86_64", "arch": "x86_64"} - {"os": "macos", "build": "cp37-macosx_x86_64", "arch": "x86_64"} - {"os": "macos", "build": "cp38-macosx_arm64", "arch": "arm64"} - {"os": "macos", "build": "cp38-macosx_x86_64", "arch": "x86_64"} @@ -73,20 +72,12 @@ jobs: - {"os": "macos", "build": "cp310-macosx_x86_64", "arch": "x86_64"} - {"os": "macos", "build": "cp311-macosx_arm64", "arch": "arm64"} - {"os": "macos", "build": "cp311-macosx_x86_64", "arch": "x86_64"} + - {"os": "macos", "build": "cp312-macosx_arm64", "arch": "arm64"} + - {"os": "macos", "build": "cp312-macosx_x86_64", "arch": "x86_64"} - {"os": "macos", "build": "pp37-macosx_x86_64", "arch": "x86_64"} - {"os": "macos", "build": "pp38-macosx_x86_64", "arch": "x86_64"} - # - {"os": "macos", "build": "pp39-macosx_x86_64", "arch": "x86_64"} - # - {"os": "macos", "build": "pp310-macosx_x86_64", "arch": "x86_64"} - - {"os": "ubuntu", "build": "cp36-manylinux_aarch64", "arch": "aarch64"} - - {"os": "ubuntu", "build": "cp36-manylinux_i686", "arch": "i686"} - - {"os": "ubuntu", "build": "cp36-manylinux_ppc64le", "arch": "ppc64le"} - - {"os": "ubuntu", "build": "cp36-manylinux_s390x", "arch": "s390x"} - - {"os": "ubuntu", "build": "cp36-manylinux_x86_64", "arch": "x86_64"} - - {"os": "ubuntu", "build": "cp36-musllinux_aarch64", "arch": "aarch64"} - - {"os": "ubuntu", "build": "cp36-musllinux_i686", "arch": "i686"} - - {"os": "ubuntu", "build": "cp36-musllinux_ppc64le", "arch": "ppc64le"} - - {"os": "ubuntu", "build": "cp36-musllinux_s390x", "arch": "s390x"} - - {"os": "ubuntu", "build": "cp36-musllinux_x86_64", "arch": "x86_64"} + - {"os": "macos", "build": "pp39-macosx_x86_64", "arch": "x86_64"} + - {"os": "macos", "build": "pp310-macosx_x86_64", "arch": "x86_64"} - {"os": "ubuntu", "build": "cp37-manylinux_aarch64", "arch": "aarch64"} - {"os": "ubuntu", "build": "cp37-manylinux_i686", "arch": "i686"} - {"os": "ubuntu", "build": "cp37-manylinux_ppc64le", "arch": "ppc64le"} @@ -137,21 +128,28 @@ jobs: - {"os": "ubuntu", "build": "cp311-musllinux_ppc64le", "arch": "ppc64le"} - {"os": "ubuntu", "build": "cp311-musllinux_s390x", "arch": "s390x"} - {"os": "ubuntu", "build": "cp311-musllinux_x86_64", "arch": "x86_64"} - # Intermittent segfault on pp37-manylinux_aarch64 in test_dicttoolz.py:test_merge_with + - {"os": "ubuntu", "build": "cp312-manylinux_aarch64", "arch": "aarch64"} + - {"os": "ubuntu", "build": "cp312-manylinux_i686", "arch": "i686"} + - {"os": "ubuntu", "build": "cp312-manylinux_ppc64le", "arch": "ppc64le"} + - {"os": "ubuntu", "build": "cp312-manylinux_s390x", "arch": "s390x"} + - {"os": "ubuntu", "build": "cp312-manylinux_x86_64", "arch": "x86_64"} + - {"os": "ubuntu", "build": "cp312-musllinux_aarch64", "arch": "aarch64"} + - {"os": "ubuntu", "build": "cp312-musllinux_i686", "arch": "i686"} + - {"os": "ubuntu", "build": "cp312-musllinux_ppc64le", "arch": "ppc64le"} + - {"os": "ubuntu", "build": "cp312-musllinux_s390x", "arch": "s390x"} + - {"os": "ubuntu", "build": "cp312-musllinux_x86_64", "arch": "x86_64"} - {"os": "ubuntu", "build": "pp37-manylinux_aarch64", "arch": "aarch64"} - {"os": "ubuntu", "build": "pp37-manylinux_i686", "arch": "i686"} - {"os": "ubuntu", "build": "pp37-manylinux_x86_64", "arch": "x86_64"} - {"os": "ubuntu", "build": "pp38-manylinux_aarch64", "arch": "aarch64"} - {"os": "ubuntu", "build": "pp38-manylinux_i686", "arch": "i686"} - {"os": "ubuntu", "build": "pp38-manylinux_x86_64", "arch": "x86_64"} - # - {"os": "ubuntu", "build": "pp39-manylinux_aarch64", "arch": "aarch64"} - # - {"os": "ubuntu", "build": "pp310-manylinux_aarch64", "arch": "aarch64"} - # - {"os": "ubuntu", "build": "pp39-manylinux_i686", "arch": "i686"} - # - {"os": "ubuntu", "build": "pp310-manylinux_i686", "arch": "i686"} - # - {"os": "ubuntu", "build": "pp39-manylinux_x86_64", "arch": "x86_64"} - # - {"os": "ubuntu", "build": "pp310-manylinux_x86_64", "arch": "x86_64"} - - {"os": "windows", "build": "cp36-win32", "arch": "x86"} - - {"os": "windows", "build": "cp36-win_amd64", "arch": "AMD64"} + - {"os": "ubuntu", "build": "pp39-manylinux_aarch64", "arch": "aarch64"} + - {"os": "ubuntu", "build": "pp39-manylinux_i686", "arch": "i686"} + - {"os": "ubuntu", "build": "pp39-manylinux_x86_64", "arch": "x86_64"} + - {"os": "ubuntu", "build": "pp310-manylinux_aarch64", "arch": "aarch64"} + - {"os": "ubuntu", "build": "pp310-manylinux_i686", "arch": "i686"} + - {"os": "ubuntu", "build": "pp310-manylinux_x86_64", "arch": "x86_64"} - {"os": "windows", "build": "cp37-win32", "arch": "x86"} - {"os": "windows", "build": "cp37-win_amd64", "arch": "AMD64"} - {"os": "windows", "build": "cp38-win32", "arch": "x86"} @@ -162,10 +160,12 @@ jobs: - {"os": "windows", "build": "cp310-win_amd64", "arch": "AMD64"} - {"os": "windows", "build": "cp311-win32", "arch": "x86"} - {"os": "windows", "build": "cp311-win_amd64", "arch": "AMD64"} + - {"os": "windows", "build": "cp312-win32", "arch": "x86"} + - {"os": "windows", "build": "cp312-win_amd64", "arch": "AMD64"} - {"os": "windows", "build": "pp37-win_amd64", "arch": "AMD64"} - {"os": "windows", "build": "pp38-win_amd64", "arch": "AMD64"} - # - {"os": "windows", "build": "pp39-win_amd64", "arch": "AMD64"} - # - {"os": "windows", "build": "pp310-win_amd64", "arch": "AMD64"} + - {"os": "windows", "build": "pp39-win_amd64", "arch": "AMD64"} + - {"os": "windows", "build": "pp310-win_amd64", "arch": "AMD64"} steps: - name: Setup QEMU @@ -174,11 +174,11 @@ jobs: with: platforms: all - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: fetch-depth: 0 - name: Set up Python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: "3.x" - name: Build wheels @@ -204,11 +204,11 @@ jobs: shell: bash -l {0} steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: fetch-depth: 0 - name: Set up Python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: "3.8" - name: Install build dependencies From 6eed9f1c4f00b87ea122051922d6f9388434d9d2 Mon Sep 17 00:00:00 2001 From: Erik Welch Date: Tue, 23 Jan 2024 14:42:52 -0600 Subject: [PATCH 08/11] More explicit Cython versions --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 773d3a9..114877f 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -14,7 +14,7 @@ jobs: fail-fast: false matrix: os: ["ubuntu-latest", "macos-latest", "windows-latest"] - cython-version: ["0.29", "3.0"] + cython-version: ["0.29.37", "3.0.7"] python-version: - "3.7" - "3.8" From 4e2736f49ecbd7870116d6d29b884498e56d8e25 Mon Sep 17 00:00:00 2001 From: Erik Welch Date: Tue, 23 Jan 2024 15:28:17 -0600 Subject: [PATCH 09/11] PyPy >=3.9 doesn't like `__doc__` properties; skip these tests --- .github/workflows/wheels.yml | 6 +++--- cytoolz/tests/test_functoolz.py | 30 +++++++++++++++++++++--------- cytoolz/tests/test_itertoolz.py | 25 +++++++++++++++++++++++++ 3 files changed, 49 insertions(+), 12 deletions(-) diff --git a/.github/workflows/wheels.yml b/.github/workflows/wheels.yml index e884545..5e82960 100644 --- a/.github/workflows/wheels.yml +++ b/.github/workflows/wheels.yml @@ -170,7 +170,7 @@ jobs: steps: - name: Setup QEMU if: ${{ matrix.os == 'ubuntu' }} - uses: docker/setup-qemu-action@v2 + uses: docker/setup-qemu-action@v3 with: platforms: all - name: Checkout @@ -182,7 +182,7 @@ jobs: with: python-version: "3.x" - name: Build wheels - uses: pypa/cibuildwheel@v2.14.1 + uses: pypa/cibuildwheel@v2.16.2 env: CIBW_BUILD: ${{ matrix.build }} CIBW_ARCHS: ${{ matrix.arch }} @@ -237,7 +237,7 @@ jobs: run: | ls -al dist/ - name: Publish to PyPI - uses: pypa/gh-action-pypi-publish@v1.8.8 + uses: pypa/gh-action-pypi-publish@v1.8.11 if: startsWith(github.ref, 'refs/tags/') with: user: __token__ diff --git a/cytoolz/tests/test_functoolz.py b/cytoolz/tests/test_functoolz.py index 47484f6..a459dad 100644 --- a/cytoolz/tests/test_functoolz.py +++ b/cytoolz/tests/test_functoolz.py @@ -1,4 +1,5 @@ import inspect +import sys import cytoolz from cytoolz.functoolz import (thread_first, thread_last, memoize, curry, compose, compose_left, pipe, complement, do, juxt, @@ -7,6 +8,12 @@ from cytoolz.utils import raises from functools import partial +IS_PYPY_GE_39 = ( + sys.implementation.name == "pypy" + and sys.version_info.major == 3 + and sys.version_info.minor >= 9 +) + def iseven(x): return x % 2 == 0 @@ -253,7 +260,8 @@ def f(x, y): return x g = curry(f) - assert g.__doc__ == f.__doc__ + if not IS_PYPY_GE_39: # pypy >=3.9 doesn't like __doc__ property + assert g.__doc__ == f.__doc__ assert str(g) == str(f) assert f(1, 2) == g(1, 2) @@ -582,14 +590,16 @@ def g(a): composed = compose(f, g) assert composed.__name__ == 'f_of_g' - assert composed.__doc__ == 'lambda *args, **kwargs: f(g(*args, **kwargs))' + if not IS_PYPY_GE_39: # pypy >=3.9 doesn't like __doc__ property + assert composed.__doc__ == 'lambda *args, **kwargs: f(g(*args, **kwargs))' # Create an object with no __name__. h = object() composed = compose(f, h) assert composed.__name__ == 'Compose' - assert composed.__doc__ == 'A composition of functions' + if not IS_PYPY_GE_39: # pypy >=3.9 doesn't like __doc__ property + assert composed.__doc__ == 'A composition of functions' assert repr(composed) == 'Compose({!r}, {!r})'.format(f, h) @@ -760,9 +770,10 @@ def handler(e): assert excepting(3) == -1 assert excepting.__name__ == 'idx_excepting_ValueError' - assert 'idx docstring' in excepting.__doc__ - assert 'ValueError' in excepting.__doc__ - assert 'handler docstring' in excepting.__doc__ + if not IS_PYPY_GE_39: # pypy >=3.9 doesn't like __doc__ property + assert 'idx docstring' in excepting.__doc__ + assert 'ValueError' in excepting.__doc__ + assert 'handler docstring' in excepting.__doc__ def getzero(a): """getzero docstring @@ -776,9 +787,10 @@ def getzero(a): assert excepting({0: 1}) == 1 assert excepting.__name__ == 'getzero_excepting_IndexError_or_KeyError' - assert 'getzero docstring' in excepting.__doc__ - assert 'return_none' in excepting.__doc__ - assert 'Returns None' in excepting.__doc__ + if not IS_PYPY_GE_39: # pypy >=3.9 doesn't like __doc__ property + assert 'getzero docstring' in excepting.__doc__ + assert 'return_none' in excepting.__doc__ + assert 'Returns None' in excepting.__doc__ def raise_(a): """A function that raises an instance of the exception type given. diff --git a/cytoolz/tests/test_itertoolz.py b/cytoolz/tests/test_itertoolz.py index a9d87e1..2a41487 100644 --- a/cytoolz/tests/test_itertoolz.py +++ b/cytoolz/tests/test_itertoolz.py @@ -106,9 +106,34 @@ def test_unique(): def test_isiterable(): + # objects that have a __iter__() or __getitem__() method are iterable + # https://docs.python.org/3/library/functions.html#iter + class IterIterable: + def __iter__(self): + return iter(["a", "b", "c"]) + + class GetItemIterable: + def __getitem__(self, item): + return ["a", "b", "c"][item] + + # "if a class sets __iter__() to None, the class is not iterable" + # https://docs.python.org/3/reference/datamodel.html#special-method-names + class NotIterable: + __iter__ = None + + class NotIterableEvenWithGetItem: + __iter__ = None + + def __getitem__(self, item): + return ["a", "b", "c"][item] + assert isiterable([1, 2, 3]) is True assert isiterable('abc') is True + assert isiterable(IterIterable()) is True + assert isiterable(GetItemIterable()) is True assert isiterable(5) is False + assert isiterable(NotIterable()) is False + assert isiterable(NotIterableEvenWithGetItem()) is False def test_isdistinct(): From 12a55982d0fd2957f1ddd9fbac1b586355cf6f7a Mon Sep 17 00:00:00 2001 From: Erik Welch Date: Tue, 23 Jan 2024 22:12:34 -0600 Subject: [PATCH 10/11] Revert. Don't always build wheels in PRs --- .github/workflows/wheels.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/wheels.yml b/.github/workflows/wheels.yml index 5e82960..43ae5fc 100644 --- a/.github/workflows/wheels.yml +++ b/.github/workflows/wheels.yml @@ -1,7 +1,7 @@ name: Build wheels on: - pull_request: # Uncomment to debug wheel building in a PR + # pull_request: # Uncomment to debug wheel building in a PR push: branches: - master From 7caa6eebec67992fa3c1a28056598826d22385b7 Mon Sep 17 00:00:00 2001 From: Erik Welch Date: Tue, 23 Jan 2024 22:17:40 -0600 Subject: [PATCH 11/11] Update README --- README.rst | 6 +++--- cytoolz/__init__.py | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/README.rst b/README.rst index c585dcd..6442545 100644 --- a/README.rst +++ b/README.rst @@ -48,7 +48,7 @@ Install Dependencies ------------ -``cytoolz`` supports Python 3.6+ with a common codebase. +``cytoolz`` supports Python 3.7+ with a common codebase. It is developed in Cython, but requires no dependecies other than CPython and a C compiler. Like ``toolz``, it is a light weight dependency. @@ -72,7 +72,7 @@ Community See our `mailing list `__. We're friendly. -.. |Build Status| image:: https://travis-ci.org/pytoolz/cytoolz.svg?branch=master - :target: https://travis-ci.org/pytoolz/cytoolz +.. |Build Status| image:: https://github.com/pytoolz/cytoolz/actions/workflows/test.yml/badge.svg?branch=master + :target: https://github.com/pytoolz/cytoolz/actions .. |Version Status| image:: https://badge.fury.io/py/cytoolz.svg :target: http://badge.fury.io/py/cytoolz diff --git a/cytoolz/__init__.py b/cytoolz/__init__.py index a45c165..70377e9 100644 --- a/cytoolz/__init__.py +++ b/cytoolz/__init__.py @@ -24,7 +24,7 @@ functoolz._sigs.update_signature_registry() # What version of toolz does cytoolz implement? -__toolz_version__ = '0.12.0' +__toolz_version__ = '0.12.1' from ._version import get_versions