diff --git a/.github/actions/build_pandas/action.yml b/.github/actions/build_pandas/action.yml index 2d208cb38725a..786ad5895ac5a 100644 --- a/.github/actions/build_pandas/action.yml +++ b/.github/actions/build_pandas/action.yml @@ -4,9 +4,6 @@ inputs: editable: description: Whether to build pandas in editable mode (default true) default: true - werror: - description: Enable werror flag for build - default: true runs: using: composite steps: @@ -28,10 +25,9 @@ runs: - name: Build Pandas run: | if [[ ${{ inputs.editable }} == "true" ]]; then - pip install -e . --no-build-isolation -v --no-deps \ - ${{ inputs.werror == 'true' && '-Csetup-args="--werror"' || '' }} + EDITABLE="-e" else - pip install . --no-build-isolation -v --no-deps \ - ${{ inputs.werror == 'true' && '-Csetup-args="--werror"' || '' }} + EDITABLE="" fi + pip install $EDITABLE . --no-build-isolation -v --no-deps -Csetup-args="--werror" shell: bash -el {0} diff --git a/.github/workflows/unit-tests.yml b/.github/workflows/unit-tests.yml index 46490fa324009..16cf06a98c9ae 100644 --- a/.github/workflows/unit-tests.yml +++ b/.github/workflows/unit-tests.yml @@ -160,9 +160,6 @@ jobs: - name: Build Pandas id: build uses: ./.github/actions/build_pandas - with: - # xref https://github.com/cython/cython/issues/6870 - werror: ${{ matrix.name != 'Freethreading' }} - name: Test (not single_cpu) uses: ./.github/actions/run-tests diff --git a/ci/deps/actions-311-minimum_versions.yaml b/ci/deps/actions-311-minimum_versions.yaml index 3ff7601f0c6b3..f6a58e9e82fd6 100644 --- a/ci/deps/actions-311-minimum_versions.yaml +++ b/ci/deps/actions-311-minimum_versions.yaml @@ -8,9 +8,9 @@ dependencies: # build dependencies - versioneer - - cython<4.0.0a0 - - meson=1.2.1 - - meson-python=0.13.1 + - cython>=3.1,<4.0.0a0 + - meson>=1.2.1,<2 + - meson-python>=0.17.1,<1 # test dependencies - pytest>=7.3.2 diff --git a/ci/deps/actions-311.yaml b/ci/deps/actions-311.yaml index f1a16bfc97656..82d2911f52bd5 100644 --- a/ci/deps/actions-311.yaml +++ b/ci/deps/actions-311.yaml @@ -6,9 +6,9 @@ dependencies: # build dependencies - versioneer - - cython<4.0.0a0 - - meson=1.2.1 - - meson-python=0.13.1 + - cython>=3.1,<4.0.0a0 + - meson>=1.2.1,<2 + - meson-python>=0.17.1,<1 # test dependencies - pytest>=7.3.2 diff --git a/ci/deps/actions-312.yaml b/ci/deps/actions-312.yaml index 3222f372182ac..adf93733906bc 100644 --- a/ci/deps/actions-312.yaml +++ b/ci/deps/actions-312.yaml @@ -6,9 +6,9 @@ dependencies: # build dependencies - versioneer - - cython<4.0.0a0 - - meson=1.2.1 - - meson-python=0.13.1 + - cython>=3.1,<4.0.0a0 + - meson>=1.2.1,<2 + - meson-python>=0.17.1,<1 # test dependencies - pytest>=7.3.2 diff --git a/ci/deps/actions-313-downstream_compat.yaml b/ci/deps/actions-313-downstream_compat.yaml index 663d98020b942..8fa5b03b65c95 100644 --- a/ci/deps/actions-313-downstream_compat.yaml +++ b/ci/deps/actions-313-downstream_compat.yaml @@ -7,9 +7,9 @@ dependencies: # build dependencies - versioneer - - cython<4.0.0a0 - - meson=1.2.1 - - meson-python=0.13.1 + - cython>=3.1,<4.0.0a0 + - meson>=1.2.1,<2 + - meson-python>=0.17.1,<1 # test dependencies - pytest>=7.3.2 diff --git a/ci/deps/actions-313-freethreading.yaml b/ci/deps/actions-313-freethreading.yaml index e118080bc4c40..4639135ef284e 100644 --- a/ci/deps/actions-313-freethreading.yaml +++ b/ci/deps/actions-313-freethreading.yaml @@ -7,7 +7,7 @@ dependencies: # build dependencies - setuptools - versioneer - - cython<4.0.0a0 + - cython>=3.1,<4.0.0a0 - meson=1.8.0 - meson-python=0.18.0 diff --git a/ci/deps/actions-313-numpydev.yaml b/ci/deps/actions-313-numpydev.yaml index a1474d70c9487..99034c827beee 100644 --- a/ci/deps/actions-313-numpydev.yaml +++ b/ci/deps/actions-313-numpydev.yaml @@ -6,9 +6,9 @@ dependencies: # build dependencies - versioneer - - meson=1.2.1 - - meson-python=0.13.1 - - cython<4.0.0a0 + - meson>=1.2.1,<2 + - meson-python>=0.17.1,<1 + - cython>=3.1,<4.0.0a0 # test dependencies - pytest>=7.3.2 diff --git a/ci/deps/actions-313-pyarrownightly.yaml b/ci/deps/actions-313-pyarrownightly.yaml index e56813cffb901..b8728c13626f5 100644 --- a/ci/deps/actions-313-pyarrownightly.yaml +++ b/ci/deps/actions-313-pyarrownightly.yaml @@ -6,9 +6,9 @@ dependencies: # build dependencies - versioneer - - meson=1.2.1 - - cython<4.0.0a0 - - meson-python=0.13.1 + - meson>=1.2.1,<2 + - cython>=3.1,<4.0.0a0 + - meson-python>=0.17.1,<1 # test dependencies - pytest>=7.3.2 diff --git a/ci/deps/actions-313.yaml b/ci/deps/actions-313.yaml index 050d71cbfe45e..fe9a573741b70 100644 --- a/ci/deps/actions-313.yaml +++ b/ci/deps/actions-313.yaml @@ -6,9 +6,9 @@ dependencies: # build dependencies - versioneer - - cython<4.0.0a0 - - meson=1.2.1 - - meson-python=0.13.1 + - cython>=3.1,<4.0.0a0 + - meson>=1.2.1,<2 + - meson-python>=0.17.1,<1 # test dependencies - pytest>=7.3.2 diff --git a/environment.yml b/environment.yml index 29ce9e8a03446..9a4e662a51851 100644 --- a/environment.yml +++ b/environment.yml @@ -8,9 +8,9 @@ dependencies: # build dependencies - versioneer - - cython<4.0.0a0 - - meson=1.2.1 - - meson-python=0.13.1 + - cython>=3.1,<4.0.0a0 + - meson>=1.2.1,<2 + - meson-python>=0.17.1,<1 # test dependencies - pytest>=7.3.2 diff --git a/meson.build b/meson.build index 6a00e52481108..d607d9dcf7041 100644 --- a/meson.build +++ b/meson.build @@ -44,6 +44,14 @@ else meson.add_dist_script(py, versioneer, '-o', '_version_meson.py') endif +cc = meson.get_compiler('c') +add_project_arguments( +# https://github.com/cython/cython/issues/6870 + cc.get_supported_arguments( + ['-Wno-error=unused-parameter', '-Wno-error=unused-function'], + ), + language: 'c', +) cy = meson.get_compiler('cython') if cy.version().version_compare('>=3.1.0') add_project_arguments('-Xfreethreading_compatible=true', language: 'cython') diff --git a/pandas/io/formats/templates/__init__.py b/pandas/io/formats/templates/__init__.py new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/pyproject.toml b/pyproject.toml index 450fd06232d8c..16462daf84c13 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -2,10 +2,10 @@ # Minimum requirements for the build system to execute. # See https://github.com/scipy/scipy/pull/12940 for the AIX issue. requires = [ - "meson-python>=0.13.1", + "meson-python>=0.17.1,<1", "meson>=1.2.1,<2", "wheel", - "Cython<4.0.0a0", # Note: sync with setup.py, environment.yml and asv.conf.json + "Cython>=3.1,<4.0.0a0", # Note: sync with setup.py, environment.yml and asv.conf.json # Force numpy higher than 2.0rc1, so that built wheels are compatible # with both numpy 1 and 2 "numpy>=2.0.0rc1", diff --git a/requirements-dev.txt b/requirements-dev.txt index ce0ff91b2c8b3..e6802353ed291 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -3,9 +3,9 @@ pip versioneer[toml] -cython<4.0.0a0 -meson[ninja]==1.2.1 -meson-python==0.13.1 +cython>=3.1,<4.0.0a0 +meson[ninja]>=1.2.1,<2 +meson-python>=0.17.1,<1 pytest>=7.3.2 pytest-cov pytest-xdist>=3.4.0