Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Signed-off-by: Anatoly Myachev <anatoly.myachev@intel.com>
  • Loading branch information
anmyachev authored and aregm committed Sep 16, 2020
1 parent e9964e4 commit 2fc06d3
Show file tree
Hide file tree
Showing 10 changed files with 410 additions and 157 deletions.
299 changes: 232 additions & 67 deletions .github/workflows/ci.yml

Large diffs are not rendered by default.

171 changes: 135 additions & 36 deletions .github/workflows/push.yml
Original file line number Diff line number Diff line change
@@ -1,103 +1,202 @@
name: master
on: push
jobs:
prepare-cache:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: ["ubuntu-latest", "windows-latest"]
python-version: ["3.6", "3.7", "3.8"]
steps:
- uses: actions/checkout@v2
with:
fetch-depth: 1
- name: Cache pip if Ubuntu
if: startsWith(runner.os, 'Linux')
uses: actions/cache@v1
with:
path: ~/.cache/pip
key: ${{ runner.os }}-python-${{ matrix.python-version }}-pip-${{ github.run_id }}-${{ hashFiles('environment.yml') }}
- name: Cache pip if Windows
if: startsWith(runner.os, 'Windows')
uses: actions/cache@v1
with:
path: ~\AppData\Local\pip\Cache
key: ${{ runner.os }}-python-${{ matrix.python-version }}-pip-${{ github.run_id }}-${{ hashFiles('environment.yml') }}
- uses: goanpeca/setup-miniconda@v1.6.0
with:
python-version: ${{matrix.python-version}}
channel-priority: strict
use-only-tar-bz2: true # IMPORTANT: This needs to be set for caching to work properly!
auto-update-conda: true
- shell: bash -l {0}
run: pip install ray==0.8.6
- name: Conda environment
shell: bash -l {0}
run: |
conda info
conda list
test-all:
needs: prepare-cache
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.6.x", "3.7.x"]
python-version: ["3.6", "3.7", "3.8"]
engine: ["python", "ray", "dask"]
part: ["Reduction_A", "Reduction_B", "Binary", "MapMetadata", "UDF", "Default", "Window", "Indexing", "Iter", "JoinSort", 3]
env:
MODIN_ENGINE: ${{matrix.engine}}
MODIN_MEMORY: 1000000000
name: test (${{matrix.engine}}, part ${{matrix.part}}, python ${{matrix.python-version}})
steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v2
with:
fetch-depth: 1
- uses: actions/setup-python@v1
- name: Cache pip
uses: actions/cache@v1
with:
path: ~/.cache/pip
key: ${{ runner.os }}-python-${{ matrix.python-version }}-pip-${{ github.run_id }}-${{ hashFiles('environment.yml') }}
- uses: goanpeca/setup-miniconda@v1.6.0
with:
activate-environment: modin
environment-file: environment.yml
python-version: ${{matrix.python-version}}
architecture: "x64"
channel-priority: strict
use-only-tar-bz2: true # IMPORTANT: This needs to be set for caching to work properly!
- name: Conda environment
shell: bash -l {0}
run: |
conda info
conda list
- name: Install HDF5
if: matrix.part == 3
run: sudo apt update && sudo apt install -y libhdf5-dev
- run: pip install -r requirements.txt
- run: bash run-tests.sh ${{matrix.engine}} -k "TestDataFrame${{matrix.part}}"
- shell: bash -l {0}
run: pytest modin/pandas/test/ -k "TestDataFrame${{matrix.part}}"
if: matrix.part != 3
- run: python -m pytest modin/pandas/test/test_series.py
- shell: bash -l {0}
run: python -m pytest modin/pandas/test/test_series.py
if: matrix.part == 3
- run: python -m pytest modin/pandas/test/test_rolling.py
- shell: bash -l {0}
run: python -m pytest modin/pandas/test/test_rolling.py
if: matrix.part == 3
- run: python -m pytest modin/pandas/test/test_concat.py
- shell: bash -l {0}
run: python -m pytest modin/pandas/test/test_concat.py
if: matrix.part == 3
- run: python -m pytest modin/pandas/test/test_groupby.py
- shell: bash -l {0}
run: python -m pytest modin/pandas/test/test_groupby.py
if: matrix.part == 3
- run: python -m pytest modin/pandas/test/test_reshape.py
- shell: bash -l {0}
run: python -m pytest modin/pandas/test/test_reshape.py
if: matrix.part == 3
- run: python -m pytest modin/pandas/test/test_general.py
- shell: bash -l {0}
run: python -m pytest modin/pandas/test/test_general.py
if: matrix.part == 3
- run: python -m pytest modin/pandas/test/test_io.py
- shell: bash -l {0}
run: python -m pytest modin/pandas/test/test_io.py
if: matrix.part == 3
- run: python -m pytest modin/experimental/pandas/test/test_io_exp.py
- shell: bash -l {0}
run: python -m pytest modin/experimental/pandas/test/test_io_exp.py
if: matrix.part == 3
- run: bash <(curl -s https://codecov.io/bash)
- shell: bash -l {0}
run: bash <(curl -s https://codecov.io/bash)

test-windows:
needs: prepare-cache
runs-on: windows-latest
strategy:
matrix:
python-version: ["3.6.x", "3.7.x"]
python-version: ["3.6", "3.7", "3.8"]
engine: ["ray", "dask"]
part: ["Reduction_A", "Reduction_B", "Binary", "MapMetadata", "UDF", "Default", "Window", "Indexing", "Iter", "JoinSort", 3]
env:
MODIN_ENGINE: ${{matrix.engine}}
MODIN_MEMORY: 1000000000
name: test-windows
steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v2
with:
fetch-depth: 1
- uses: actions/setup-python@v1
- name: Cache pip
uses: actions/cache@v1
with:
path: ~\AppData\Local\pip\Cache
key: ${{ runner.os }}-python-${{ matrix.python-version }}-pip-${{ github.run_id }}-${{ hashFiles('environment.yml') }}
- uses: goanpeca/setup-miniconda@v1.6.0
with:
activate-environment: modin
environment-file: environment.yml
python-version: ${{matrix.python-version}}
architecture: "x64"
- run: pip install -r requirements.txt
- run: python -m pytest modin/pandas/test/test_dataframe.py::TestDataFrame${{matrix.part}}
channel-priority: strict
use-only-tar-bz2: true # IMPORTANT: This needs to be set for caching to work properly!
auto-update-conda: true
- name: Conda environment
shell: bash -l {0}
run: |
conda info
conda list
- shell: bash -l {0}
run: python -m pytest modin/pandas/test/test_dataframe.py::TestDataFrame${{matrix.part}}
if: matrix.part != 3
- run: python -m pytest modin/pandas/test/test_series.py
- shell: bash -l {0}
run: python -m pytest modin/pandas/test/test_series.py
if: matrix.part == 3
- run: python -m pytest modin/pandas/test/test_rolling.py
- shell: bash -l {0}
run: python -m pytest modin/pandas/test/test_rolling.py
if: matrix.part == 3
- run: python -m pytest modin/pandas/test/test_concat.py
- shell: bash -l {0}
run: python -m pytest modin/pandas/test/test_concat.py
if: matrix.part == 3
- run: python -m pytest modin/pandas/test/test_groupby.py
- shell: bash -l {0}
run: python -m pytest modin/pandas/test/test_groupby.py
if: matrix.part == 3
- run: python -m pytest modin/pandas/test/test_reshape.py
- shell: bash -l {0}
run: python -m pytest modin/pandas/test/test_reshape.py
if: matrix.part == 3
- run: python -m pytest modin/pandas/test/test_general.py
- shell: bash -l {0}
run: python -m pytest modin/pandas/test/test_general.py
if: matrix.part == 3
- run: python -m pytest modin/pandas/test/test_io.py
- shell: bash -l {0}
run: python -m pytest modin/pandas/test/test_io.py
if: matrix.part == 3
- run: choco install codecov
- run: codecov -f .\coverage.xml -t ${{secrets.CODECOV_TOKEN}}
- shell: bash -l {0}
run: choco install codecov
- shell: bash -l {0}
run: codecov -f ./coverage.xml

test-pyarrow:
needs: prepare-cache
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.6.x", "3.7.x"]
python-version: ["3.6", "3.7", "3.8"]
env:
MODIN_BACKEND: pyarrow
MODIN_EXPERIMENTAL: "True"
name: test (pyarrow, python ${{matrix.python-version}})
steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v2
with:
fetch-depth: 1
- uses: actions/setup-python@v1
- name: Cache pip
uses: actions/cache@v1
with:
path: ~/.cache/pip
key: ${{ runner.os }}-python-${{ matrix.python-version }}-pip-${{ github.run_id }}-${{ hashFiles('environment.yml') }}
- uses: goanpeca/setup-miniconda@v1.6.0
with:
activate-environment: modin
environment-file: environment.yml
python-version: ${{matrix.python-version}}
architecture: "x64"
channel-priority: strict
use-only-tar-bz2: true # IMPORTANT: This needs to be set for caching to work properly!
- name: Conda environment
shell: bash -l {0}
run: |
conda info
conda list
- run: sudo apt update && sudo apt install -y libhdf5-dev
- run: pip install -r requirements.txt
- run: python -m pytest modin/pandas/test/test_io.py::test_from_csv
- shell: bash -l {0}
run: python -m pytest modin/pandas/test/test_io.py::test_from_csv
31 changes: 31 additions & 0 deletions environment.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: modin
channels:
- conda-forge
dependencies:
- pandas==1.0.5
- numpy
- pyarrow<0.17
- dask[complete]>=2.1.0,<=2.19.0
- distributed>=2.3.2,<=2.19.0
- xarray
- Jinja2
- pathlib
- scipy
- pip
- s3fs
- feather-format
- lxml
- openpyxl
- xlrd
- matplotlib<=3.2.2
- sqlalchemy
- pandas-gbq
- pytables
- msgpack-python
- psutil
- pytest
- pytest-cov
- pytest-xdist
- coverage<5.0
- pip:
- ray==0.8.6
6 changes: 6 additions & 0 deletions modin/pandas/test/test_dataframe.py
Original file line number Diff line number Diff line change
Expand Up @@ -2148,6 +2148,9 @@ def test_cov(self):
pandas_result = pandas.DataFrame(data).cov()
df_equals(modin_result, pandas_result)

@pytest.mark.skipif(
os.name == "nt", reason="AssertionError: numpy array are different",
)
@pytest.mark.parametrize("data", test_data_values, ids=test_data_keys)
def test_dot(self, data):
modin_df = pd.DataFrame(data)
Expand Down Expand Up @@ -2194,6 +2197,9 @@ def test_dot(self, data):
pandas_result = pandas.DataFrame([1]).dot(pandas_df.T)
df_equals(modin_result, pandas_result)

@pytest.mark.skipif(
os.name == "nt", reason="AssertionError: numpy array are different",
)
@pytest.mark.parametrize("data", test_data_values, ids=test_data_keys)
def test_matmul(self, data):
modin_df = pd.DataFrame(data)
Expand Down
2 changes: 0 additions & 2 deletions requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,6 @@ s3fs
pytest
coverage<5.0
pytest-cov
pytest-testmon
pytest-custom_exit_code
pytest-xdist
feather-format
lxml
Expand Down
1 change: 0 additions & 1 deletion requirements/df_test_requires.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ pandas==1.0.5
numpy
psutil==5.6.6
pytest
pytest-testmon
pytest-custom_exit_code
pytest-xdist
matplotlib
Expand Down
1 change: 0 additions & 1 deletion requirements/env_windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@ dependencies:
- pytest
- coverage<5.0
- pytest-cov
- pytest-testmon
- pytest-custom_exit_code
- pytest-xdist
- feather-format
Expand Down
1 change: 0 additions & 1 deletion requirements/windows_test_requires.txt
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@ s3fs
pytest
coverage<5.0
pytest-cov
pytest-testmon
pytest-custom_exit_code
pytest-xdist
feather-format
Expand Down
48 changes: 0 additions & 48 deletions run-tests.sh

This file was deleted.

Loading

0 comments on commit 2fc06d3

Please sign in to comment.