diff --git a/.github/workflows/config.yml b/.github/workflows/config.yml new file mode 100644 index 000000000..347edb097 --- /dev/null +++ b/.github/workflows/config.yml @@ -0,0 +1,56 @@ +name: CI + +on: [push, pull_request] + +jobs: + build: + + runs-on: ${{ matrix.os }} + strategy: + max-parallel: 4 + matrix: + os: [ubuntu-latest, windows-latest] + python-version: [3.6, 3.7] + + steps: + - uses: actions/checkout@v1 + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v1 + with: + python-version: ${{ matrix.python-version }} + - name: Install dependencies + run: | + python -m pip install --upgrade pip + python -m pip install -r requirements.txt + - name: Check that documentation builds + run: | + python -m pip install sphinx + python -m pip install sphinx_rtd_theme + python -m pip install docutils==0.12 + python -m pip install mock + cd docs; make clean; make html; cd ..; + - name: Install testing dependencies + run: | + python -m pip install coverage + python -m pip install hypothesis==3.2 + python -m pip install mypy + - name: Run tests + run: | + coverage run --source=axelrod -m unittest discover + - name: Report coverage + run: | + coverage report -m --fail-under=100 + - name: Run doctest + run: | + python doctests.py + - name: Run static type checker + run: | + python run_mypy.py + - name: Check that all strategies are indexed + run: | + python run_strategy_indexer.py + - name: Check that installs + run: | + python setup.py install + cd .. + python -c "import axelrod" diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 4374c83e1..000000000 --- a/.travis.yml +++ /dev/null @@ -1,38 +0,0 @@ -dist: xenial -services: - - xvfb -language: python -python: - - 3.7 - - 3.6 -cache: - directories: - - $TRAVIS_BUILD_DIR/.hypothesis -install: - - pip install -r requirements.txt - - pip install sphinx - - pip install sphinx_rtd_theme - - pip install docutils==0.12 - - pip install coverage - - pip install coveralls - - pip install mypy -script: - # Build the documentation - - cd docs; make clean; make html - # Run the test suit with coverage - - cd .. - - travis_wait 60 coverage run --source=axelrod -m unittest discover - - coverage report -m - # Run the doctests - - python doctests.py - # Run the type checker - - python run_mypy.py - # Check that all strategies are in the index - - python run_strategy_indexer.py -after_success: - - coveralls -notifications: - webhooks: - urls: - - https://webhooks.gitter.im/e/3cc093037c0df458209d - diff --git a/MANIFEST.in b/MANIFEST.in index bb4c1be0a..d42cd9a37 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -1,3 +1,3 @@ include *.txt recursive-include docs *.rst -recursive-include axelrod/data *.csv +recursive-include axelrod/data * diff --git a/README.rst b/README.rst index 1b925160f..c104b3811 100644 --- a/README.rst +++ b/README.rst @@ -1,15 +1,12 @@ -.. image:: https://coveralls.io/repos/github/Axelrod-Python/Axelrod/badge.svg?branch=master - :target: https://coveralls.io/github/Axelrod-Python/Axelrod?branch=master - .. image:: https://img.shields.io/pypi/v/Axelrod.svg :target: https://pypi.python.org/pypi/Axelrod -.. image:: https://travis-ci.org/Axelrod-Python/Axelrod.svg?branch=packaging - :target: https://travis-ci.org/Axelrod-Python/Axelrod - .. image:: https://zenodo.org/badge/19509/Axelrod-Python/Axelrod.svg :target: https://zenodo.org/badge/latestdoi/19509/Axelrod-Python/Axelrod +.. image:: https://github.com/Axelrod-Python/Axelrod/workflows/CI/badge.svg + :target: https://github.com/Axelrod-Python/Axelrod/actions + |Join the chat at https://gitter.im/Axelrod-Python/Axelrod| Axelrod @@ -74,7 +71,7 @@ a peer reviewed paper introducing the library (22 authors). Installation ------------ -The library requires Python 3.5 or greater. +The library requires Python 3.6 or greater. The simplest way to install is:: diff --git a/appveyor.yml b/appveyor.yml index 30632d49d..c182913ae 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -5,6 +5,7 @@ environment: install: - "%PYTHON%\\python.exe --version" - "%PYTHON%\\python.exe -m pip install -r requirements.txt" + - "%PYTHON%\\python.exe -m pip install hypothesis==3.2" build: off test_script: - "%PYTHON%\\python.exe -m unittest discover" diff --git a/requirements.txt b/requirements.txt index e76cd9f40..5c0d22cab 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,7 +1,6 @@ cloudpickle>=0.2.1 fsspec>=0.4.3 dask>=2.3.0 -hypothesis==3.2 matplotlib>=2.0.0 numpy>=1.9.2 pandas>=0.18.1 diff --git a/setup.py b/setup.py index c49ed695c..0ff23e654 100644 --- a/setup.py +++ b/setup.py @@ -27,11 +27,11 @@ long_description=long_description, long_description_content_type="text/x-rst", include_package_data=True, - package_data={"": ["axelrod/data/*.csv"]}, + package_data={"": ["axelrod/data/*"]}, classifiers=[ "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3 :: Only", ], - python_requires=">=3.5", + python_requires=">=3.6", )