diff --git a/.github/workflows/posix.yml b/.github/workflows/posix.yml index 86c25642f4b2a..135ca0703de8b 100644 --- a/.github/workflows/posix.yml +++ b/.github/workflows/posix.yml @@ -33,9 +33,11 @@ jobs: [actions-38.yaml, "not slow and not clipboard", "", "", "", "", ""], [actions-38.yaml, "slow", "", "", "", "", ""], [actions-pypy-38.yaml, "not slow and not clipboard", "", "", "", "", "--max-worker-restart 0"], - [actions-39-numpydev.yaml, "not slow and not network", "xsel", "", "", "deprecate", "-W error"], [actions-39.yaml, "slow", "", "", "", "", ""], - [actions-39.yaml, "not slow and not clipboard", "", "", "", "", ""] + [actions-39.yaml, "not slow and not clipboard", "", "", "", "", ""], + [actions-310-numpydev.yaml, "not slow and not network", "xclip", "", "", "deprecate", "-W error"], + [actions-310.yaml, "not slow and not clipboard", "", "", "", "", ""], + [actions-310.yaml, "slow", "", "", "", "", ""], ] fail-fast: false env: diff --git a/.github/workflows/python-dev.yml b/.github/workflows/python-dev.yml index 37d8b8474d962..fa1eee2db6fc3 100644 --- a/.github/workflows/python-dev.yml +++ b/.github/workflows/python-dev.yml @@ -1,3 +1,11 @@ +# This file is purposely frozen(does not run). DO NOT DELETE IT +# Unfreeze(by commentingthe if: false() condition) once the +# next Python Dev version has released beta 1 and both Cython and numpy support it +# After that Python has released, migrate the workflows to the +# posix GHA workflows/Azure pipelines and "freeze" this file by +# uncommenting the if: false() condition +# Feel free to modify this comment as necessary. + name: Python Dev on: @@ -21,13 +29,14 @@ env: jobs: build: + if: false # Comment this line out to "unfreeze" runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: os: [ubuntu-latest, macOS-latest, windows-latest] - name: actions-310-dev + name: actions-311-dev timeout-minutes: 80 concurrency: @@ -43,7 +52,7 @@ jobs: - name: Set up Python Dev Version uses: actions/setup-python@v2 with: - python-version: '3.10-dev' + python-version: '3.11-dev' # TODO: GH#44980 https://github.com/pypa/setuptools/issues/2941 - name: Install dependencies diff --git a/ci/azure/posix.yml b/ci/azure/posix.yml index b7c36bb87353b..02a4a9ad44865 100644 --- a/ci/azure/posix.yml +++ b/ci/azure/posix.yml @@ -18,6 +18,26 @@ jobs: CONDA_PY: "38" PATTERN: "not slow" PYTEST_TARGET: "pandas/tests/[i-z]*" + py39_macos_1: + ENV_FILE: ci/deps/azure-macos-39.yaml + CONDA_PY: "39" + PATTERN: "not slow" + PYTEST_TARGET: "pandas/tests/[a-h]*" + py39_macos_2: + ENV_FILE: ci/deps/azure-macos-39.yaml + CONDA_PY: "39" + PATTERN: "not slow" + PYTEST_TARGET: "pandas/tests/[i-z]*" + py310_macos_1: + ENV_FILE: ci/deps/azure-macos-310.yaml + CONDA_PY: "310" + PATTERN: "not slow" + PYTEST_TARGET: "pandas/tests/[a-h]*" + py310_macos_2: + ENV_FILE: ci/deps/azure-macos-310.yaml + CONDA_PY: "310" + PATTERN: "not slow" + PYTEST_TARGET: "pandas/tests/[i-z]*" steps: - script: echo '##vso[task.prependpath]$(HOME)/miniconda3/bin' diff --git a/ci/azure/windows.yml b/ci/azure/windows.yml index 7f3efb5a4dbf3..7061a266f28c7 100644 --- a/ci/azure/windows.yml +++ b/ci/azure/windows.yml @@ -36,6 +36,20 @@ jobs: PYTEST_WORKERS: 2 # GH-42236 PYTEST_TARGET: "pandas/tests/[i-z]*" + py310_1: + ENV_FILE: ci/deps/azure-windows-310.yaml + CONDA_PY: "310" + PATTERN: "not slow and not high_memory" + PYTEST_WORKERS: 2 # GH-42236 + PYTEST_TARGET: "pandas/tests/[a-h]*" + + py310_2: + ENV_FILE: ci/deps/azure-windows-310.yaml + CONDA_PY: "310" + PATTERN: "not slow and not high_memory" + PYTEST_WORKERS: 2 # GH-42236 + PYTEST_TARGET: "pandas/tests/[i-z]*" + steps: - powershell: | Write-Host "##vso[task.prependpath]$env:CONDA\Scripts" diff --git a/ci/deps/actions-39-numpydev.yaml b/ci/deps/actions-310-numpydev.yaml similarity index 95% rename from ci/deps/actions-39-numpydev.yaml rename to ci/deps/actions-310-numpydev.yaml index 4a6acf55e265f..3e32665d5433f 100644 --- a/ci/deps/actions-39-numpydev.yaml +++ b/ci/deps/actions-310-numpydev.yaml @@ -2,7 +2,7 @@ name: pandas-dev channels: - defaults dependencies: - - python=3.9 + - python=3.10 # tools - pytest>=6.0 diff --git a/ci/deps/actions-310.yaml b/ci/deps/actions-310.yaml new file mode 100644 index 0000000000000..9829380620f86 --- /dev/null +++ b/ci/deps/actions-310.yaml @@ -0,0 +1,51 @@ +name: pandas-dev +channels: + - conda-forge +dependencies: + - python=3.9 + + # test dependencies + - cython=0.29.24 + - pytest>=6.0 + - pytest-cov + - pytest-xdist>=1.31 + - hypothesis>=5.5.3 + - psutil + + # required dependencies + - python-dateutil + - numpy + - pytz + + # optional dependencies + - beautifulsoup4 + - blosc + - bottleneck + - fastparquet + - fsspec + - html5lib + - gcsfs + - jinja2 + - lxml + - matplotlib + # TODO: uncomment after numba supports py310 + #- numba + - numexpr + - openpyxl + - odfpy + - pandas-gbq + - psycopg2 + - pymysql + - pytables + - pyarrow + - pyreadstat + - pyxlsb + - s3fs + - scipy + - sqlalchemy + - tabulate + - xarray + - xlrd + - xlsxwriter + - xlwt + - zstandard diff --git a/ci/deps/azure-macos-310.yaml b/ci/deps/azure-macos-310.yaml new file mode 100644 index 0000000000000..312fac8091db6 --- /dev/null +++ b/ci/deps/azure-macos-310.yaml @@ -0,0 +1,36 @@ +name: pandas-dev +channels: + - defaults + - conda-forge +dependencies: + - python=3.10 + + # tools + - cython>=0.29.24 + - pytest>=6.0 + - pytest-xdist>=1.31 + - hypothesis>=5.5.3 + - pytest-azurepipelines + + # pandas dependencies + - beautifulsoup4 + - bottleneck + - html5lib + - jinja2 + - lxml + - matplotlib + - nomkl + - numexpr + - numpy + - openpyxl + - pyarrow + - pyreadstat + - pytables + - python-dateutil==2.8.1 + - pytz + - pyxlsb + - xarray + - xlrd + - xlsxwriter + - xlwt + - zstandard diff --git a/ci/deps/azure-macos-38.yaml b/ci/deps/azure-macos-38.yaml index 472dc8754d13e..422aa86c57fc7 100644 --- a/ci/deps/azure-macos-38.yaml +++ b/ci/deps/azure-macos-38.yaml @@ -6,6 +6,7 @@ dependencies: - python=3.8 # tools + - cython>=0.29.24 - pytest>=6.0 - pytest-xdist>=1.31 - hypothesis>=5.5.3 @@ -33,6 +34,3 @@ dependencies: - xlsxwriter - xlwt - zstandard - - pip - - pip: - - cython>=0.29.24 diff --git a/ci/deps/azure-macos-39.yaml b/ci/deps/azure-macos-39.yaml new file mode 100644 index 0000000000000..a0860ef536953 --- /dev/null +++ b/ci/deps/azure-macos-39.yaml @@ -0,0 +1,36 @@ +name: pandas-dev +channels: + - defaults + - conda-forge +dependencies: + - python=3.9 + + # tools + - cython>=0.29.24 + - pytest>=6.0 + - pytest-xdist>=1.31 + - hypothesis>=5.5.3 + - pytest-azurepipelines + + # pandas dependencies + - beautifulsoup4 + - bottleneck + - html5lib + - jinja2 + - lxml + - matplotlib=3.3.2 + - nomkl + - numexpr + - numpy=1.21.3 + - openpyxl + - pyarrow=1.0.1 + - pyreadstat + - pytables + - python-dateutil==2.8.1 + - pytz + - pyxlsb + - xarray + - xlrd + - xlsxwriter + - xlwt + - zstandard diff --git a/ci/deps/azure-windows-310.yaml b/ci/deps/azure-windows-310.yaml new file mode 100644 index 0000000000000..8e6f4deef6057 --- /dev/null +++ b/ci/deps/azure-windows-310.yaml @@ -0,0 +1,41 @@ +name: pandas-dev +channels: + - conda-forge + - defaults +dependencies: + - python=3.10 + + # tools + - cython>=0.29.24 + - pytest>=6.0 + - pytest-xdist>=1.31 + - hypothesis>=5.5.3 + - pytest-azurepipelines + + # pandas dependencies + - beautifulsoup4 + - bottleneck + - fsspec>=0.8.0 + - gcsfs + - html5lib + - jinja2 + - lxml + - matplotlib + # TODO: uncomment after numba supports py310 + #- numba + - numexpr + - numpy + - openpyxl + - pyarrow + - pytables + - python-dateutil + - pytz + - s3fs>=0.4.2 + - scipy + - sqlalchemy + - xlrd + - xlsxwriter + - xlwt + - pyreadstat + - pyxlsb + - zstandard diff --git a/pandas/tests/plotting/frame/test_frame.py b/pandas/tests/plotting/frame/test_frame.py index 6c07366e402d6..ff247349ff4d5 100644 --- a/pandas/tests/plotting/frame/test_frame.py +++ b/pandas/tests/plotting/frame/test_frame.py @@ -682,7 +682,7 @@ def test_raise_error_on_datetime_time_data(self): # GH 8113, datetime.time type is not supported by matplotlib in scatter df = DataFrame(np.random.randn(10), columns=["a"]) df["dtime"] = date_range(start="2014-01-01", freq="h", periods=10).time - msg = "must be a string or a number, not 'datetime.time'" + msg = "must be a string or a (real )?number, not 'datetime.time'" with pytest.raises(TypeError, match=msg): df.plot(kind="scatter", x="dtime", y="a")