Skip to content

Brute force method to find the optimal number of harmonics for WaveX, DMWaveX, and CMWaveX #4738

Brute force method to find the optimal number of harmonics for WaveX, DMWaveX, and CMWaveX

Brute force method to find the optimal number of harmonics for WaveX, DMWaveX, and CMWaveX #4738

Workflow file for this run

name: CI Tests
on:
push:
# branches:
# - master
pull_request:
schedule:
# run every Monday at 6am UTC
- cron: '0 6 * * 1'
env:
SETUP_XVFB: True # avoid issues if mpl tries to open a GUI window
TOXARGS: '-v'
HYPOTHESIS_PROFILE: 'ci'
jobs:
ci-tests:
name: ${{ matrix.os }}, ${{ matrix.tox_env }}
runs-on: ${{ matrix.os }}
if: "!(contains(github.event.head_commit.message, '[skip ci]') || contains(github.event.head_commit.message, '[ci skip]'))"
strategy:
fail-fast: false
matrix:
include:
- os: ubuntu-latest
python: '3.13'
tox_env: 'ephemeris_connection'
- os: ubuntu-latest
python: '3.13'
tox_env: 'black'
- os: ubuntu-latest
python: '3.13'
tox_env: 'py313-test-cov'
- os: ubuntu-latest
python: '3.13'
tox_env: 'notebooks'
# - os: ubuntu-latest
# python: '3.8'
# tox_env: 'docs'
# - os: ubuntu-latest
# python: '3.10'
# tox_env: 'py310-test-alldeps-cov'
# - os: macos-12
# python: '3.13'
# tox_env: 'py313-test'
# - os: windows-latest
# python: '3.8'
# tox_env: 'py38-test'
- os: ubuntu-latest
python: '3.9'
tox_env: 'oldestdeps'
# - os: ubuntu-latest
# python: '3.8'
# tox_env: 'codestyle'
# uncomment this if needed to run a single test quickly
# can specify OS and python versions
# - os: macos-12
# python: '3.12'
# tox_env: 'singletest'
steps:
- name: Check out repository
uses: actions/checkout@v2
- name: Set up Python ${{ matrix.python }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python }}
- name: Install base dependencies
run: |
python -m pip install --upgrade pip
python -m pip install tox
- name: Install graphviz dependency
if: "endsWith(matrix.tox_env, 'build_docs')"
run: sudo apt-get -y install graphviz
- name: Install pandoc dependency
if: "endsWith(matrix.tox_env, 'docs')"
run: sudo apt-get -y install pandoc
- name: Print Python, pip, and tox versions
run: |
python -c "import sys; print(f'Python {sys.version}')"
python -c "import pip; print(f'pip {pip.__version__}')"
python -c "import tox; print(f'tox {tox.__version__}')"
- name: Run tests
run: tox -e ${{ matrix.tox_env }}
- name: Upload coverage to codecov
if: "endsWith(matrix.tox_env, '-cov')"
uses: codecov/codecov-action@v2
with:
files: coverage.xml
# - name: Publish docs as an artifact
# if: "endsWith(matrix.tox_env, 'docs')"
# uses: actions/upload-artifact@v2
# with:
# name: documentation
# path: .tox/docs_out/
macos-latest-py313:
runs-on: macos-latest
steps:
- uses: actions/checkout@v4
- name: Set-Up Python Env
uses: mamba-org/setup-micromamba@v1
with:
init-shell: bash
environment-name: pint
cache-environment: true
cache-downloads: true
create-args: >-
--platform osx-64
-c conda-forge
python=3.13
astropy
git
- name: Install base dependencies
shell: bash -el {0}
run: |
python -m pip install --upgrade pip
python -m pip install tox pytest hypothesis numdifftools pathos setuptools
- name: Print OS, machine info
shell: bash -el {0}
run: |
python -c "import os; print(f'os {os.uname()}')"
python -c "import platform; print(f'processor {platform.processor()}')"
python -c "import numpy as np; print(f'eps: {np.finfo(np.longdouble).eps}')"
- name: Print Python, pip, and tox versions
shell: bash -el {0}
run: |
python -c "import sys; print(f'Python {sys.version}')"
python -c "import pip; print(f'pip {pip.__version__}')"
python -c "import tox; print(f'tox {tox.__version__}')"
- name: Install PINT and requirements
shell: bash -el {0}
run: |
python -m pip install -r requirements.txt
python -m pip install -r requirements_dev.txt
python -m pip install --force-reinstall --no-deps .
- name: Run tests
shell: bash -el {0}
run: pytest -v --pyargs tests --reruns 5