Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Getting ready for 1.0.0rc1 #58

Merged
merged 26 commits into from
Apr 28, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
1057bcb
fix sphinx warning causing error
weaverba137 Apr 21, 2020
d91f215
try older pytest-mock version
weaverba137 Apr 21, 2020
b285dff
update .travis.yml to match latest template
weaverba137 Apr 21, 2020
79fcb02
careful path manipulation
weaverba137 Apr 21, 2020
f8fdda7
separate words in dependencies
weaverba137 Apr 22, 2020
a1058a3
more joins
weaverba137 Apr 22, 2020
403ddfb
fix astropy20
weaverba137 Apr 22, 2020
dfde935
try readlines
weaverba137 Apr 22, 2020
f169b3e
strip all lines
weaverba137 Apr 22, 2020
7e1ed09
remove test extras
weaverba137 Apr 22, 2020
85ab21b
let's see where we are
weaverba137 Apr 22, 2020
5feeda3
basic tests working again
weaverba137 Apr 22, 2020
e0ca1b2
restore astropy2 extras
weaverba137 Apr 22, 2020
810298f
tox env in travis
weaverba137 Apr 22, 2020
ea0e8e9
update other top-level files, docs
weaverba137 Apr 24, 2020
ecb3c56
update make.bat
weaverba137 Apr 24, 2020
c91c824
remove docs/_templates
weaverba137 Apr 24, 2020
dd5fbce
update package-internal files
weaverba137 Apr 24, 2020
7bb74f8
add check for coverage run
weaverba137 Apr 24, 2020
5dcadd5
see where we are
weaverba137 Apr 24, 2020
9df6aa2
fix some broken links
weaverba137 Apr 25, 2020
dd38665
allow astropy 2 failures until tox config problem is debugged
weaverba137 Apr 28, 2020
2d53c3e
fix duplicate failure section
weaverba137 Apr 28, 2020
cbdae85
now we have to debug coveralls
weaverba137 Apr 28, 2020
d200fb7
copy .coverage file to Travis checkout
weaverba137 Apr 28, 2020
b514105
replace debug with verbose
weaverba137 Apr 28, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 2 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,18 +12,16 @@ __pycache__
# Other generated files
*/version.py
*/cython_version.py
pydl/pydl.cfg
htmlcov
.coverage
.coverage.subprocess
MANIFEST
.ipynb_checkpoints
.pytest_cache
pydl/pydl.cfg

# Sphinx
docs/api
docs/_build
docs/docs

# Eclipse editor project files
.project
Expand Down Expand Up @@ -51,7 +49,6 @@ sdist
develop-eggs
.installed.cfg
distribute-*.tar.gz
pip-wheel-metadata

# Other
.cache
Expand All @@ -62,6 +59,7 @@ pip-wheel-metadata
.project
.pydevproject
.settings
pip-wheel-metadata/

# Mac OSX
.DS_Store
238 changes: 86 additions & 152 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,16 +1,12 @@
# We set the language to c because python isn't supported on the MacOS X nodes
# on Travis. However, the language ends up being irrelevant anyway, since we
# install Python ourselves using conda.
language: c
language: python

os:
- linux

# Disable cloning with --depth=50 (the default). This should grab the tags
# needed for setuptools_scm to work.
# We need a full clone to make sure setuptools_scm works properly
git:
depth: false

os:
- linux

# The apt packages below are needed for sphinx builds. A full list of packages
# that can be included can be found here:
#
Expand All @@ -20,10 +16,7 @@ addons:
apt:
packages:
- graphviz
- tzdata


stage: Comprehensive tests

stages:
# Do the style check and a single test job, don't proceed if it fails
Expand All @@ -37,200 +30,141 @@ stages:

env:
global:

# The following versions are the 'default' for tests, unless
# overridden underneath. They are defined here in order to save having
# to repeat them for all configurations.
# - PYTHON_VERSION=3.7
# - NUMPY_VERSION=stable
# - ASTROPY_VERSION=stable
# - MAIN_CMD='python setup.py'
# - SETUP_CMD='test'
# - EVENT_TYPE='pull_request push'
- TOXENV=''
- TOXARGS=''

# The following three variables are for tox. TOXENV is a standard
# variable that tox uses to determine the environment to run,
# TOXARGS are arguments passed to tox, and TOXPOSARGS are arguments
# that tox passes through to the {posargs} indicator in tox.ini.
# The latter can be used for example to pass arguments to pytest.
- TOXENV='test'
- TOXARGS='-v'
- TOXPOSARGS=''

# For this package-template, we include examples of Cython modules,
# so Cython is required for testing. If your package does not include
# Cython code, you can set CONDA_DEPENDENCIES=''
# - CONDA_DEPENDENCIES='tox setuptools_scm scipy matplotlib pytest-mock'
# - CONDA_DEPENDENCIES_DOC='tox setuptools_scm scipy matplotlib sphinx-astropy'

# List other runtime dependencies for the package that are available as
# pip packages here.
# - PIP_DEPENDENCIES=''

# Conda packages for affiliated packages are hosted in channel
# "astropy" while builds for astropy LTS with recent numpy versions
# are in astropy-ci-extras. If your package uses either of these,
# add the channels to CONDA_CHANNELS along with any other channels
# you want to use.
- CONDA_CHANNELS='astropy'

# If there are matplotlib or other GUI tests, uncomment the following
# line to use the X virtual framebuffer.
# The following is needed to avoid issues if e.g. Matplotlib tries
# to open a GUI window.
# - SETUP_XVFB=True

# If you want to ignore certain flake8 errors, you can list them
# in FLAKE8_OPT, for example:
# - FLAKE8_OPT='--ignore=E501'
# - FLAKE8_OPT=''

matrix:

# Don't wait for allowed failures
fast_finish: true

include:
- os: linux
language: python
stage: Initial tests
python: 3.8
env: TOXENV='test'

# Make sure that egg_info works without dependencies
# - stage: Initial tests
# env: PYTHON_VERSION=3.7 SETUP_CMD='egg_info'

# Try MacOS X, usually enough only to run from cron as hardly there are
# issues that are not picked up by a linux worker
# issues that are not picked up by a linux worker. We set language to
# 'c' since 'python' doesn't work on non-Linux platforms.
- os: osx
language: c
name: Python 3.7 with required dependencies
stage: Cron tests
python: 3.7
env: TOXENV='test'

- os: windows
stage: Cron tests
python: 3.7
env: TOXENV='test'
env: PYTHON_VERSION=3.7 TOXENV=py37-test

# Do a coverage test.
# Do a regular build on Linux with Python 3.8, with cov
# For Linux we use language: python to avoid using conda.
- os: linux
language: python
python: 3.8
name: Python 3.8 with required dependencies and measure coverage
stage: Initial tests
python: 3.7
env: TOXENV='coverage'
env: TOXENV=py38-test-cov

# Check for sphinx doc build warnings - we do this first because it
# may run for a long time
# Check for sphinx doc build warnings
- os: linux
language: python
python: 3.7
env: TOXENV='build_docs'
python: 3.8
name: Documentation build
stage: Comprehensive tests
env: TOXENV=build_docs

# Now try Astropy dev with the latest Python and LTS with and 3.x.
# - os: linux
# env: ASTROPY_VERSION=development
# EVENT_TYPE='pull_request push cron'
# Now try Astropy dev with the latest Python
- os: linux
language: python
python: 3.7
env: TOXENV='test-dev'
EVENT_TYPE='pull_request push cron'
python: 3.8
name: Python 3.8 with developer version of astropy
stage: Comprehensive tests
env: TOXENV=py38-test-devdeps

# And with an older Python, Astropy LTS, and the oldest supported Numpy
- os: linux
language: python
python: 3.6
env: TOXENV='astropy2'
# - os: linux
# env: PYTHON_VERSION=3.6 ASTROPY_VERSION=2.0.16 NUMPY_VERSION=1.14 PYTEST_VERSION='<3.7'
name: Python 3.6 astropy LTS and Numpy 1.16
stage: Comprehensive tests
env: TOXENV=py36-test-astropylts-numpy116

# Add a job that runs from cron only and tests against astropy dev and
# numpy dev to give a change for early discovery of issues and feedback
# for both developer teams.
# - os: linux
# stage: Cron tests
# env: ASTROPY_VERSION=development NUMPY_VERSION=development
# EVENT_TYPE='cron'

- os: linux
language: python
python: 3.8
name: Python 3.8 latest developer version of key dependencies
stage: Cron tests
python: 3.7
env: TOXENV='test-all-dev'
EVENT_TYPE='cron'
env: TOXENV=py38-test-devdeps

# Try all python versions and Numpy versions. Since we can assume that
# Try on Windows.
- os: windows
language: c
name: Python 3.8 with required dependencies
stage: Comprehensive tests
env: PYTHON_VERSION=3.8 TOXENV=py38-test

# Try other python versions and Numpy versions. Since we can assume that
# the Numpy developers have taken care of testing Numpy with different
# versions of Python, we can vary Python and Numpy versions at the same
# time.

# - os: linux
# env: PYTHON_VERSION=3.6 NUMPY_VERSION=1.16
# - os: linux
# env: NUMPY_VERSION=1.16

- os: linux
language: python
python: 3.5
env: TOXENV='test-numpy116'

- os: linux
language: python
python: 3.6
env: TOXENV='test-numpy116'

- os: linux
language: python
python: 3.7
env: TOXENV='test-numpy117'
name: Python 3.7 with astropy 3.0 and Numpy 1.17
stage: Comprehensive tests
env: TOXENV=py37-test-astropy30-numpy117

# Do a code style check
- os: linux
language: python
python: 3.7
env: TOXENV='test-numpy118'
python: 3.8
name: Code style checks
stage: Initial tests
env: TOXENV=codestyle

# Do a PEP8 test with flake8
- os: linux
language: python
stage: Initial tests
python: 3.7
env: TOXENV='codestyle'
python: 3.6
name: Legacy Astropy 2 test
stage: Comprehensive tests
env: TOXENV=astropy20

allow_failures:
# Do a PEP8 test with flake8
# (do allow to fail unless your code completely compliant)
# The astropy 2 test is failing due to obscure tox configuration problems,
# not due to actual problems with the code.
- os: linux
language: python
stage: Initial tests
python: 3.7
env: TOXENV='codestyle'
python: 3.6
name: Legacy Astropy 2 test
stage: Comprehensive tests
env: TOXENV=astropy20

install:

# We now use the ci-helpers package to set up our testing environment.
# This is done by using Miniconda and then using conda and pip to install
# dependencies. Which dependencies are installed using conda and pip is
# determined by the CONDA_DEPENDENCIES and PIP_DEPENDENCIES variables,
# which should be space-delimited lists of package names. See the README
# in https://github.com/astropy/ci-helpers for information about the full
# list of environment variables that can be used to customize your
# environment. In some cases, ci-helpers may not offer enough flexibility
# in how to install a package, in which case you can have additional
# commands in the install: section below.

- if [[ ${TRAVIS_OS_NAME} == 'osx' || ${TRAVIS_OS_NAME} == 'windows' ]]; then
# We now use the ci-helpers package to set up our Python environment
# on Windows and MacOS X but we don't set up any other dependencies,
# instead using tox to do this. See https://github.com/astropy/ci-helpers
# for more information about ci-helpers.

- if [[ $TRAVIS_OS_NAME != linux ]]; then
git clone --depth 1 git://github.com/astropy/ci-helpers.git;
source ci-helpers/travis/setup_conda.sh;
fi

- pip install --upgrade pip
- pip install --upgrade tox
- if [[ ${TOXENV} == 'coverage' ]]; then pip install coveralls; fi

# As described above, using ci-helpers, you should be able to set up an
# environment with dependencies installed using conda and pip, but in some
# cases this may not provide enough flexibility in how to install a
# specific dependency (and it will not be able to install non-Python
# dependencies). Therefore, you can also include commands below (as
# well as at the start of the install section or in the before_install
# section if they are needed before setting up conda) to install any
# other dependencies.

script:
- tox -e ${TOXENV} ${TOXARGS} -- ${TOXPOSARGS}
- pip install tox
- tox $TOXARGS -- $TOXPOSARGS

after_success:
# If coveralls.io is set up for this package, uncomment the line below.
# The coveragerc file may be customized as needed for your package.
- if [[ ${TOXENV} == 'coverage' ]]; then coveralls --rcfile='pydl/tests/coveragerc'; fi
# If coveralls.io is set up for this package, uncomment the two lines below.
- if [[ ${TOXENV} == *-cov ]]; then
if [[ -f .tmp/${TOXENV}/.coverage ]]; then cp -p .tmp/${TOXENV}/.coverage .; fi;
pip install coveralls;
coveralls --verbose --rcfile=setup.cfg;
fi
# If codecov is set up for this package, uncomment the two lines below
# pip install codecov
# codecov
6 changes: 2 additions & 4 deletions MANIFEST.in
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
include README.rst
include LICENSE.rst
# include CHANGES.rst

include pyproject.toml
include setup.cfg
include pydl/tests/coveragerc
include LICENSE.rst
include pyproject.toml

# recursive-include pydl *.pyx *.c *.pxd
recursive-include docs *
Expand Down
12 changes: 6 additions & 6 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -70,11 +70,11 @@ Legal

* IDL is a registered trademark of `Harris Geospatial Solutions`_.

.. _Python: http://python.org
.. _`IDL®`: http://www.harrisgeospatial.com/SoftwareTechnology/IDL.aspx
.. _idlutils: https://www.sdss.org/dr14/software/idlutils/
.. _Python: https://www.python.org
.. _`IDL®`: https://www.harrisgeospatial.com/Software-Technology/IDL
.. _idlutils: https://www.sdss.org/dr16/software/idlutils/
.. _SDSS: https://www.sdss.org
.. _`Goddard utilities`: http://idlastro.gsfc.nasa.gov/
.. _`Goddard utilities`: https://idlastro.gsfc.nasa.gov/
.. _idlspec2d: https://svn.sdss.org/public/repo/eboss/idlspec2d/trunk/
.. _BOSS: https://www.sdss.org/surveys/boss/
.. _eBOSS: https://www.sdss.org/surveys/eboss/
Expand All @@ -83,6 +83,6 @@ Legal
.. _PyPI: https://pypi.python.org/pypi/pydl/
.. _`PyDL on Read the Docs`: https://pydl.readthedocs.io/en/latest/
.. _SDSS-III: http://www.sdss3.org
.. _`svn repository`: https://www.sdss.org/dr14/software/products/
.. _`svn repository`: https://www.sdss.org/dr16/software/products/
.. _GitHub: https://github.com
.. _`Harris Geospatial Solutions`: http://www.harrisgeospatial.com/
.. _`Harris Geospatial Solutions`: https://www.harrisgeospatial.com/
2 changes: 0 additions & 2 deletions docs/_templates/autosummary/base.rst

This file was deleted.

2 changes: 0 additions & 2 deletions docs/_templates/autosummary/class.rst

This file was deleted.

Loading