| # Licensed to the Apache Software Foundation (ASF) under one |
| # or more contributor license agreements. See the NOTICE file |
| # distributed with this work for additional information |
| # regarding copyright ownership. The ASF licenses this file |
| # to you under the Apache License, Version 2.0 (the |
| # "License"); you may not use this file except in compliance |
| # with the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, |
| # software distributed under the License is distributed on an |
| # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| # KIND, either express or implied. See the License for the |
| # specific language governing permissions and limitations |
| # under the License. |
| |
| groups: |
| # these groups are just for convenience |
| # makes it easier to submit related tasks https://github.com/github/release-radar |
| |
| {############################# Packaging tasks ###############################} |
| |
| conan: |
| - conan-* |
| |
| wheel: |
| - wheel-* |
| - python-sdist |
| |
| homebrew: |
| - homebrew-* |
| |
| packaging: |
| - conan-* |
| - matlab |
| - python-sdist |
| - r-binary-packages |
| - wheel-* |
| - test-debian-*-docs |
| |
| {############################# Testing tasks #################################} |
| |
| test: |
| - test-* |
| |
| cpp: |
| - test-*cpp* |
| - example-*cpp* |
| |
| c-glib: |
| - test-*c-glib* |
| |
| python: |
| - test-*python* |
| - example-*python* |
| |
| r: |
| - test-r-* |
| - r-binary-packages |
| - r-recheck-most |
| |
| ruby: |
| - test-*ruby* |
| |
| vcpkg: |
| - test-*vcpkg* |
| - wheel-* |
| |
| integration: |
| - test-*dask* |
| - test-*hdfs* |
| - test-*pandas* |
| - test-*spark* |
| |
| example: |
| - example-* |
| |
| example-cpp: |
| - example-*cpp* |
| |
| example-python: |
| - example-*python* |
| |
| fuzz: |
| - test-*fuzz* |
| |
| verify-rc: |
| - verify-rc-* |
| |
| verify-rc-source: |
| - verify-rc-source-* |
| |
| verify-rc-source-macos: |
| - verify-rc-source-*-macos-* |
| |
| verify-rc-source-linux: |
| - verify-rc-source-*-linux-* |
| |
| {######################## Tasks to run regularly #############################} |
| |
| nightly: |
| - verify-rc-source-* |
| - conan-* |
| - homebrew-cpp |
| - test-* |
| - example-* |
| - wheel-* |
| - python-sdist |
| |
| nightly-tests: |
| - test-* |
| - example-* |
| |
| nightly-packaging: |
| - conan-* |
| - homebrew-cpp |
| - wheel-* |
| - python-sdist |
| - r-binary-packages |
| |
| nightly-release: |
| - verify-rc-source-* |
| |
| tasks: |
| # arbitrary_task_name: |
| # template: path of jinja2 templated yml |
| # params: optional extra parameters |
| # artifacts: list of regex patterns, each needs to match a single github |
| # release asset, version variable is replaced in the pattern |
| # e.g.: |
| # - pyarrow-{no_rc_version}-py38(h[a-z0-9]+)_0-linux-64.tar.bz2 |
| |
| ############################## Conan ################################## |
| |
| conan-minimum: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| image: conan |
| push: false |
| |
| conan-maximum: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| flags: >- |
| -e ARROW_CONAN_PARQUET=True |
| -e ARROW_CONAN_WITH_BROTLI=True |
| -e ARROW_CONAN_WITH_BZ2=True |
| -e ARROW_CONAN_WITH_FLIGHT_RPC=True |
| -e ARROW_CONAN_WITH_GLOG=True |
| -e ARROW_CONAN_WITH_JEMALLOC=True |
| -e ARROW_CONAN_WITH_JSON=True |
| -e ARROW_CONAN_WITH_LZ4=True |
| -e ARROW_CONAN_WITH_SNAPPY=True |
| -e ARROW_CONAN_WITH_ZSTD=True |
| image: conan |
| push: false |
| |
| ########################### Python Minimal ############################ |
| |
| {% for kind in ["fedora-conda", "ubuntu-venv"] %} |
| example-python-minimal-build-{{ kind }}: |
| ci: github |
| template: python-minimal-build/github.linux.yml |
| params: |
| type: minimal_build |
| image: minimal-{{ kind }} |
| {% endfor %} |
| |
| ########################### Python Wheels ############################ |
| |
| {% for python_version, python_tag, abi_tag in [("3.10", "cp310", "cp310"), |
| ("3.11", "cp311", "cp311"), |
| ("3.12", "cp312", "cp312"), |
| ("3.13", "cp313", "cp313"), |
| ("3.13", "cp313", "cp313t"), |
| ("3.14", "cp314", "cp314"), |
| ("3.14", "cp314", "cp314t")] %} |
| |
| {############################## Wheel Linux ##################################} |
| |
| {% for wheel_kind, arch, version, platform_tag in [("manylinux", "amd64", "2-28", "manylinux_2_28_x86_64"), |
| ("manylinux", "arm64", "2-28", "manylinux_2_28_aarch64"), |
| ("musllinux", "amd64", "1-2", "musllinux_1_2_x86_64"), |
| ("musllinux", "arm64", "1-2", "musllinux_1_2_aarch64")] %} |
| wheel-{{ wheel_kind }}-{{ version }}-{{ python_tag }}-{{ abi_tag }}-{{ arch }}: |
| ci: github |
| template: python-wheels/github.linux.yml |
| params: |
| arch: "{{ arch }}" |
| linux_wheel_kind: "{{ wheel_kind }}" |
| linux_wheel_version: "{{ version }}" |
| python_abi_tag: "{{ abi_tag }}" |
| python_version: "{{ python_version }}" |
| wheel_platform_tag: "{{ platform_tag }}" |
| artifacts: |
| - pyarrow-{no_rc_version}-{{ python_tag }}-{{ abi_tag }}-{{ platform_tag }}.whl |
| {% endfor %} |
| |
| {############################## Wheel macOS ####################################} |
| |
| wheel-macos-monterey-{{ python_tag }}-{{ abi_tag }}-amd64: |
| ci: github |
| template: python-wheels/github.osx.yml |
| params: |
| arch: "x86_64" |
| arrow_jemalloc: "ON" |
| python_version: "{{ python_version }}" |
| python_abi_tag: "{{ abi_tag }}" |
| macos_deployment_target: "12.0" |
| runs_on: "macos-15-intel" |
| vcpkg_arch: "amd64" |
| artifacts: |
| - pyarrow-{no_rc_version}-{{ python_tag }}-{{ abi_tag }}-macosx_12_0_x86_64.whl |
| |
| wheel-macos-monterey-{{ python_tag }}-{{ abi_tag }}-arm64: |
| ci: github |
| template: python-wheels/github.osx.yml |
| params: |
| arch: "arm64" |
| arrow_jemalloc: "OFF" |
| python_version: "{{ python_version }}" |
| python_abi_tag: "{{ abi_tag }}" |
| macos_deployment_target: "12.0" |
| runs_on: "macos-14" |
| vcpkg_arch: "arm64" |
| artifacts: |
| - pyarrow-{no_rc_version}-{{ python_tag }}-{{ abi_tag }}-macosx_12_0_arm64.whl |
| |
| {############################## Wheel Windows ################################} |
| |
| wheel-windows-{{ python_tag }}-{{ abi_tag }}-amd64: |
| ci: github |
| template: python-wheels/github.windows.yml |
| params: |
| python_version: "{{ python_version }}" |
| python_abi_tag: "{{ abi_tag }}" |
| artifacts: |
| - pyarrow-{no_rc_version}-{{ python_tag }}-{{ abi_tag }}-win_amd64.whl |
| |
| {% endfor %} |
| |
| {############################ Python sdist ####################################} |
| |
| python-sdist: |
| ci: github |
| template: python-sdist/github.yml |
| artifacts: |
| - pyarrow-{no_rc_version}.tar.gz |
| |
| ############################## Homebrew Tasks ################################ |
| |
| homebrew-cpp: |
| ci: github |
| template: homebrew-formulae/github.macos.yml |
| params: |
| formula: apache-arrow.rb |
| |
| ############################## MATLAB Packages ################################ |
| |
| matlab: |
| ci: github |
| template: matlab/github.yml |
| artifacts: |
| - matlab-arrow-{no_rc_no_dev_version}.mltbx |
| |
| ######################## R packages & binaries ############################## |
| r-binary-packages: |
| ci: github |
| template: r/github.packages.yml |
| params: |
| custom_version: Unset |
| artifacts: |
| - r-libarrow-windows-x86_64-{no_rc_r_version}\.zip |
| - r-libarrow-linux-x86_64-{no_rc_r_version}\.zip |
| - r-libarrow-darwin-arm64-{no_rc_r_version}\.zip |
| - r-libarrow-darwin-x86_64-{no_rc_r_version}\.zip |
| - r-pkg__bin__windows__contrib__4.5__arrow_{no_rc_r_version}\.zip |
| - r-pkg__bin__windows__contrib__4.4__arrow_{no_rc_r_version}\.zip |
| - r-pkg__bin__macosx__big-sur-x86_64__contrib__4.5__arrow_{no_rc_r_version}\.tgz |
| - r-pkg__bin__macosx__big-sur-x86_64__contrib__4.4__arrow_{no_rc_r_version}\.tgz |
| - r-pkg__bin__macosx__big-sur-arm64__contrib__4.5__arrow_{no_rc_r_version}\.tgz |
| - r-pkg__bin__macosx__big-sur-arm64__contrib__4.4__arrow_{no_rc_r_version}\.tgz |
| - r-pkg__src__contrib__arrow_{no_rc_r_version}\.tar\.gz |
| |
| {% for which in ["strong", "most"] %} |
| # strong and most used here are defined by ?tools::package_dependencies as: |
| # |
| # strong: Depends, Imports, LinkingTo |
| # most: Depends, Imports, LinkingTo, Suggests |
| # |
| # So the key difference between strong and most is whether you want to expand |
| # the reverse dependency checking to Suggests (most) or not. |
| r-recheck-{{which}}: |
| ci: github |
| template: r/github.recheck.yml |
| params: |
| which: {{which}} |
| {% endfor %} |
| |
| ########################### Release verification ############################ |
| |
| ######################## Linux verification ################################# |
| |
| {% for distribution, version in [("conda", "latest"), |
| ("almalinux", "10"), |
| ("ubuntu", "22.04"), |
| ("ubuntu", "24.04")] %} |
| {% for target in ["cpp", |
| "integration", |
| "python", |
| "ruby"] %} |
| verify-rc-source-{{ target }}-linux-{{ distribution }}-{{ version }}-amd64: |
| ci: github |
| template: verify-rc/github.linux.amd64.docker.yml |
| params: |
| env: |
| {{ distribution.upper() }}: "{{ version }}" |
| target: {{ target }} |
| distro: {{ distribution }} |
| {% endfor %} |
| |
| {% endfor %} |
| |
| ######################## macOS verification ################################ |
| |
| {% for target in ["cpp", "integration", "python"] %} |
| verify-rc-source-{{ target }}-macos-conda-amd64: |
| ci: github |
| template: verify-rc/github.macos.yml |
| params: |
| target: {{ target }} |
| use_conda: True |
| github_runner: "macos-15-intel" |
| {% endfor %} |
| |
| {% for target in ["cpp", |
| "integration", |
| "python", |
| "ruby"] %} |
| verify-rc-source-{{ target }}-macos-amd64: |
| ci: github |
| template: verify-rc/github.macos.yml |
| params: |
| target: {{ target }} |
| github_runner: "macos-15-intel" |
| {% endfor %} |
| |
| {% for target in ["cpp", |
| "integration", |
| "python", |
| "ruby"] %} |
| verify-rc-source-{{ target }}-macos-arm64: |
| ci: github |
| template: verify-rc/github.macos.yml |
| params: |
| env: |
| ARROW_FLIGHT: 0 |
| ARROW_GANDIVA: 0 |
| PYTEST_ADDOPTS: "-k 'not test_cancellation'" |
| target: {{ target }} |
| github_runner: "macos-14" |
| {% endfor %} |
| |
| ######################## Windows verification ############################## |
| |
| verify-rc-source-windows: |
| ci: github |
| template: verify-rc/github.win.yml |
| params: |
| env: |
| PYARROW_TEST_GDB: "OFF" |
| script: "verify-release-candidate.bat" |
| timeout: 120 |
| |
| ############################## Docker tests ################################## |
| |
| {% for image in ["conda-cpp", |
| "debian-c-glib", |
| "ubuntu-c-glib", |
| "debian-ruby", |
| "ubuntu-ruby"] %} |
| test-{{ image }}: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| UBUNTU: 22.04 |
| image: {{ image }} |
| {% endfor %} |
| |
| test-conda-cpp-valgrind: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| image: conda-cpp-valgrind |
| |
| test-ubuntu-22.04-cpp: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| UBUNTU: 22.04 |
| image: ubuntu-cpp |
| |
| test-ubuntu-22.04-cpp-bundled: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| UBUNTU: 22.04 |
| image: ubuntu-cpp-bundled |
| |
| test-ubuntu-24.04-cpp-bundled-offline: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| UBUNTU: 24.04 |
| image: ubuntu-cpp-bundled-offline |
| timeout: 120 |
| |
| test-ubuntu-24.04-cpp-gcc-13-bundled: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| UBUNTU: 24.04 |
| GCC: 13 |
| image: ubuntu-cpp-bundled |
| |
| test-ubuntu-24.04-cpp: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| UBUNTU: 24.04 |
| image: ubuntu-cpp |
| |
| test-ubuntu-24.04-cpp-gcc-14: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| GCC: 14 |
| UBUNTU: 24.04 |
| # rapidjson 1.1.0 has an error caught by gcc 14. |
| # https://github.com/Tencent/rapidjson/issues/718 |
| flags: -e CC=gcc-14 -e CXX=g++-14 -e RapidJSON_SOURCE=BUNDLED |
| image: ubuntu-cpp |
| |
| {% for debian_version in ["13"] %} |
| test-debian-{{ debian_version }}-cpp-amd64: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| ARCH: "amd64" |
| DEBIAN: "{{ debian_version }}" |
| image: debian-cpp |
| |
| test-debian-{{ debian_version }}-cpp-i386: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| ARCH: "i386" |
| DEBIAN: "{{ debian_version }}" |
| flags: "-e ARROW_AZURE=OFF -e ARROW_S3=OFF -e ARROW_GANDIVA=OFF" |
| image: debian-cpp |
| {% endfor %} |
| |
| test-debian-experimental-cpp-gcc-15: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| ARCH: "amd64" |
| DEBIAN: "experimental" |
| GCC: "15" |
| LLVM: "20" |
| image: debian-cpp |
| |
| test-fedora-42-cpp: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| FEDORA: 42 |
| image: fedora-cpp |
| |
| {% for cpp_standard in [20] %} |
| test-ubuntu-22.04-cpp-{{ cpp_standard }}: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| UBUNTU: 22.04 |
| flags: "-e CMAKE_CXX_STANDARD={{ cpp_standard }}" |
| image: ubuntu-cpp |
| {% endfor %} |
| |
| test-ubuntu-22.04-cpp-no-threading: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| UBUNTU: 22.04 |
| flags: "-e ARROW_ENABLE_THREADING=OFF" |
| image: ubuntu-cpp |
| |
| test-ubuntu-24.04-cpp-thread-sanitizer: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| # clang-tools and llvm version need to be synchronized so as |
| # to have the right llvm-symbolizer version |
| CLANG_TOOLS: 18 |
| LLVM: 18 |
| UBUNTU: 24.04 |
| image: ubuntu-cpp-thread-sanitizer |
| |
| test-ubuntu-24.04-cpp-minimal-with-formats: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| UBUNTU: 24.04 |
| flags: "-e ARROW_CSV=ON -e ARROW_PARQUET=ON" |
| image: ubuntu-cpp-minimal |
| |
| test-ubuntu-22.04-cpp-emscripten: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| UBUNTU: 22.04 |
| image: ubuntu-cpp-emscripten |
| |
| {% for python_version in ["3.10", "3.11", "3.12", "3.13", "3.14"] %} |
| test-conda-python-{{ python_version }}: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| PYTHON: "{{ python_version }}" |
| # Temporarily disable error on Warning: https://github.com/apache/arrow/issues/38239 |
| # PYTEST_ARGS: "-W error -W 'ignore:Setting custom ClientSession:DeprecationWarning'" |
| image: conda-python |
| {% endfor %} |
| |
| test-conda-python-3.12-cpython-debug: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| PYTHON: 3.12 |
| image: conda-python-cpython-debug |
| |
| test-conda-python-emscripten: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| UBUNTU: 22.04 |
| PYTHON: 3.12 |
| image: conda-python-emscripten |
| |
| test-conda-python-3.11-hypothesis: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| PYTHON: 3.11 |
| HYPOTHESIS_PROFILE: ci |
| PYARROW_TEST_HYPOTHESIS: ON |
| # limit to execute hypothesis tests only |
| PYTEST_ARGS: "-m hypothesis -W error" |
| image: conda-python-pandas |
| |
| test-ubuntu-22.04-python-313-freethreading: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| UBUNTU: 22.04 |
| image: ubuntu-python-313-freethreading |
| |
| {% for debian_version in ["13"] %} |
| test-debian-{{ debian_version }}-python-3-amd64: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| DEBIAN: "{{ debian_version }}" |
| image: debian-python |
| |
| test-debian-{{ debian_version }}-python-3-i386: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| ARCH: i386 |
| DEBIAN: "{{ debian_version }}" |
| flags: "-e ARROW_S3=OFF -e ARROW_GANDIVA=OFF" |
| image: debian-python |
| {% endfor %} |
| |
| test-ubuntu-22.04-python-3: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| UBUNTU: 22.04 |
| image: ubuntu-python |
| |
| test-ubuntu-24.04-python-3: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| UBUNTU: 24.04 |
| image: ubuntu-python |
| |
| test-fedora-42-python-3: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| FEDORA: 42 |
| image: fedora-python |
| |
| test-r-linux-valgrind: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| ARROW_R_DEV: "TRUE" |
| image: ubuntu-r-valgrind |
| timeout: 330 # 5.5 hours |
| |
| test-r-linux-rchk: |
| ci: github |
| template: r/github.linux.rchk.yml |
| |
| test-r-extra-packages: |
| ci: github |
| template: r/github.linux.extra.packages.yml |
| |
| test-r-linux-as-cran: |
| ci: github |
| template: r/github.linux.cran.yml |
| |
| test-r-alpine-linux-cran: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| image: alpine-linux-r |
| |
| test-r-fedora-clang: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| image: fedora-r-clang |
| # R-devel built from source with Clang, simulating CRAN's |
| # r-devel-linux-x86_64-fedora-clang environment |
| timeout: 180 # 3 hours - R-devel build from source takes time |
| |
| test-r-macos-as-cran: |
| ci: github |
| template: r/github.macos.cran.yml |
| |
| test-r-arrow-backwards-compatibility: |
| ci: github |
| template: r/github.linux.arrow.version.back.compat.yml |
| |
| test-r-versions: |
| ci: github |
| template: r/github.linux.versions.yml |
| params: |
| MATRIX: {{ "${{ matrix.r_version }}" }} |
| |
| test-r-install-local: |
| ci: github |
| template: r/github.macos-linux.local.yml |
| |
| test-r-install-local-minsizerel: |
| ci: github |
| template: r/github.macos-linux.local.yml |
| params: |
| env: |
| CMAKE_BUILD_TYPE: MinSizeRel |
| |
| test-r-devdocs: |
| ci: github |
| template: r/github.devdocs.yml |
| |
| test-r-depsource-system: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| flags: '-e ARROW_DEPENDENCY_SOURCE=SYSTEM -e ARROW_GCS=OFF -e xsimd_SOURCE=BUNDLED' |
| image: ubuntu-r-only-r |
| |
| test-r-dev-duckdb: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| R_DUCKDB_DEV: TRUE |
| image: ubuntu-r-only-r |
| |
| test-r-offline-maximal: |
| ci: github |
| template: r/github.linux.offline.build.yml |
| |
| # This one has -flto=auto |
| test-r-ubuntu-22.04: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| UBUNTU: 22.04 |
| R_PRUNE_DEPS: TRUE |
| image: ubuntu-r-only-r |
| |
| # This also has -flto=auto |
| test-r-gcc-11: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| UBUNTU: 22.04 |
| GCC: 11 |
| image: ubuntu-r-only-r |
| |
| # This also has -flto=auto |
| test-r-gcc-12: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| UBUNTU: 22.04 |
| GCC: 12 |
| image: ubuntu-r-only-r |
| |
| test-r-linux-sanitizers: |
| ci: github |
| template: r/github.linux.sanitizers.yml |
| params: |
| timeout: 240 # 4 hours |
| |
| test-r-m1-san: |
| ci: github |
| template: r/github.macos.m1san.yml |
| |
| # be sure to update binary-task.rb when upgrading Debian |
| test-debian-13-docs: |
| ci: github |
| template: docs/github.linux.yml |
| params: |
| env: |
| JDK: 17 |
| pr_number: Unset |
| image: debian-docs |
| publish: false |
| artifacts: |
| - docs.tar.gz |
| |
| ############################## Fuzz tests ################################# |
| |
| test-build-cpp-fuzz: |
| ci: github |
| template: fuzz-tests/github.oss-fuzz.yml |
| |
| ############################## vcpkg tests ################################## |
| |
| test-build-vcpkg-win: |
| ci: github |
| template: vcpkg-tests/github.windows.yml |
| |
| ############################## Integration tests ############################ |
| |
| {% for python_version, pandas_version, numpy_version, cache_leaf in [("3.10", "1.3.4", "1.21.2", True), |
| ("3.11", "latest", "latest", False), |
| ("3.12", "latest", "1.26", False), |
| ("3.12", "latest", "latest", False), |
| ("3.13", "nightly", "nightly", False), |
| ("3.13", "upstream_devel", "nightly", False)] %} |
| test-conda-python-{{ python_version }}-pandas-{{ pandas_version }}-numpy-{{ numpy_version }}: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| PYTHON: "{{ python_version }}" |
| PANDAS: "{{ pandas_version }}" |
| NUMPY: "{{ numpy_version }}" |
| {% if pandas_version == "latest" %} |
| # ensure we have at least one build with parquet encryption disabled |
| PARQUET_REQUIRE_ENCRYPTION: "OFF" |
| {% endif %} |
| {% if pandas_version == "nightly" %} |
| # TODO can be removed once this is enabled by default in pandas >= 3 |
| # This is to enable the Pandas feature. |
| # See: https://github.com/pandas-dev/pandas/pull/58459 |
| PANDAS_FUTURE_INFER_STRING: "1" |
| {% endif %} |
| {% if not cache_leaf %} |
| # use the latest pandas release, so prevent reusing any cached layers |
| flags: --no-leaf-cache |
| {% endif %} |
| image: conda-python-pandas |
| {% endfor %} |
| |
| {% for dask_version in ["latest", "upstream_devel"] %} |
| test-conda-python-3.11-dask-{{ dask_version }}: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| PYTHON: 3.11 |
| DASK: "{{ dask_version }}" |
| # use the latest dask release, so prevent reusing any cached layers |
| flags: --no-leaf-cache |
| image: conda-python-dask |
| {% endfor %} |
| |
| {% for hdfs_version in ["2.9.2", "3.2.1"] %} |
| test-conda-python-3.10-hdfs-{{ hdfs_version }}: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| HDFS: "{{ hdfs_version }}" |
| PYTHON: "3.10" |
| image: conda-python-hdfs |
| {% endfor %} |
| |
| {% for python_version, spark_version, test_pyarrow_only, numpy_version, jdk_version in [("3.11", "master", "false", "latest", "17")] %} |
| test-conda-python-{{ python_version }}-spark-{{ spark_version }}: |
| ci: github |
| template: docker-tests/github.linux.yml |
| params: |
| env: |
| PYTHON: "{{ python_version }}" |
| SPARK: "{{ spark_version }}" |
| TEST_PYARROW_ONLY: "{{ test_pyarrow_only }}" |
| NUMPY: "{{ numpy_version }}" |
| JDK: "{{ jdk_version }}" |
| fetch_depth: 0 |
| # use the branch-3.0 of spark, so prevent reusing any layers |
| flags: --no-leaf-cache |
| image: conda-python-spark |
| timeout: 90 |
| {% endfor %} |
| |
| {% for kind in ["static", "static-system-dependency"] %} |
| example-cpp-minimal-build-{{ kind }}: |
| ci: github |
| template: cpp-examples/github.linux.yml |
| params: |
| type: minimal_build |
| run: {{ kind }} |
| {% endfor %} |
| |
| example-cpp-tutorial: |
| ci: github |
| template: cpp-examples/github.linux.yml |
| params: |
| type: tutorial_examples |
| run: tutorial |
| |
| ############################## Utility tasks ############################ |
| preview-docs: |
| ci: github |
| template: docs/github.linux.yml |
| params: |
| env: |
| JDK: 17 |
| pr_number: Unset |
| image: debian-docs |
| publish: true |