Skip to content

Release v0.18.0 (#439) #652

Release v0.18.0 (#439)

Release v0.18.0 (#439) #652

Workflow file for this run

# This workflow will install Python dependencies, run tests and lint with a variety of Python versions
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
name: Test package
on:
push:
branches: [develop, main]
pull_request:
branches: [develop, main]
permissions:
contents: read
jobs:
lint-and-format:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.10"
- name: Install dependencies
run: python -m pip install .[qa]
- name: Linting by ruff
run: ruff check
- name: Formatting by ruff
run: ruff format --check
test-spark-install:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version: ["3.10", "3.11"]
spark-version: [3.4.4, 3.5.6]
pandas-version: [2.3.1, 1.5.3]
numpy-version: [2.3.2, 1.26.4]
exclude:
- pandas-version: 1.5.3
numpy-version: 2.3.2
env:
PYTHON_VERSION: ${{ matrix.python-version }}
SPARK_VERSION: ${{ matrix.spark-version }}
PANDAS_VERSION: ${{ matrix.pandas-version }}
NUMPY_VERSION: ${{ matrix.numpy-version }}
steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Setup Java JDK
uses: actions/setup-java@v3
with:
java-version: "8"
distribution: "adopt"
- name: Install Spark, Pandas, and Numpy
run: |
python -m pip install pyspark[connect]==${{ matrix.spark-version }}
python -m pip install pandas==${{ matrix.pandas-version }}
- name: Install numpy<=2.2.6 if Python 3.10 and matrix.numpy-version == 2.3.2
if: ${{ matrix.python-version == '3.10' && matrix.numpy-version == '2.3.2' }}
run: |
python -m pip install numpy==2.2.6
- name: Install numpy if Python 3.11 or (3.10 and matrix.numpy-version == 1.26.4)
if: ${{ (matrix.python-version == '3.11') || ( matrix.python-version == '3.10' && matrix.numpy-version == '1.26.4' ) }}
run: |
python -m pip install numpy==${{ matrix.numpy-version }}
- name: Install datacompy
run: |
python -m pip install .[spark,tests-spark]
- name: Test with pytest
run: |
python -m pytest tests/test_spark
test-bare-install:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version: ["3.10", "3.11", "3.12"]
env:
PYTHON_VERSION: ${{ matrix.python-version }}
steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install datacompy
run: |
python -m pip install --upgrade pip
python -m pip install .[tests]
- name: Test with pytest
run: |
python -m pytest tests/ --ignore=tests/test_snowflake.py
test-fugue-install-no-spark:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version: ["3.10", "3.11"]
env:
PYTHON_VERSION: ${{ matrix.python-version }}
steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install datacompy
run: |
python -m pip install --upgrade pip
python -m pip install .[tests,fugue]
- name: Test with pytest
run: |
python -m pytest tests/ --ignore=tests/test_snowflake.py