Repository: CORE-GATECH-GROUP/serpent-tools (language: python)

Issue:
Drop support for python 3.5
Python 3.5 has reached it's end of life and will only be receiving security fixes starting end of September 2020 - https://www.python.org/downloads/release/python-3510/

I move that we drop support for python 3.5 in release 0.10.0, whenever that comes out.

It looks like the major linux distributions are at least on python 3.7, [debian and ubuntu at least](https://wiki.debian.org/Python), and MacOS ships with python 3.8.

As for API changes, I don't think we'll be hit with anything surprising. Some niceties we'll pick up will be better / full integration of the pathlib and typing libraries


Discussion / hints:

Fix patch:
diff --git a/.travis.yml b/.travis.yml
deleted file mode 100644
index f62076e3..00000000
--- a/.travis.yml
+++ /dev/null
@@ -1,38 +0,0 @@
-# Use ubuntu 16.04 with xvfb service
-# https://docs.travis-ci.com/user/gui-and-headless-browsers/#using-services
-dist: xenial
-services:
-  - xvfb
-
-language: python
-python:
-  - "3.6"
-  - "3.5"
-  - "3.7"
-  - "3.8"
-env:
-  global:
-      - SERPENT_TOOLS_DATA=data/
-  jobs:
-      - ST_INSTALL=setup
-      - ST_INSTALL=sdist
-      - ST_INSTALL=bdist_wheel
-      - ST_INSTALL=bdist_egg
-
-before_install:
-  - pip install -r requirements.txt -r requirements-test.txt
-  - rm -rf dist
-# install matrix
-# build some distributions (source and wheel) and install from those
-install:
-  - bash scripts/travis/install.sh
-
-# run
-script:
-  # Make data path absolute
-  - export SERPENT_TOOLS_DATA=$(pwd)/$SERPENT_TOOLS_DATA
-  - pytest --cov -v
-  - bash scripts/travis/testNotebooks.sh
-
-after_success:
-  - coverage report
diff --git a/requirements.txt b/requirements.txt
index 87214338..779cb5d3 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,3 +1,3 @@
 numpy>=1.16.0
-matplotlib>=2.2.3
+matplotlib>=2.2.3,<=3.3.4
 pyyaml>=5.1.1
diff --git a/scripts/travis/install.sh b/scripts/ci/install.sh
old mode 100644
new mode 100755
similarity index 71%
rename from scripts/travis/install.sh
rename to scripts/ci/install.sh
index aec5a585..f96eeca1
--- a/scripts/travis/install.sh
+++ b/scripts/ci/install.sh
@@ -24,15 +24,7 @@ case $ST_INSTALL in
         python setup.py sdist
         pip install dist/serpentTools-*.tar.gz
         ;;
-    'bdist_wheel')
-        python setup.py bdist_wheel
-        easy_install dist/serpentTools-*whl
-        ;;
-    'bdist_egg')
-        python setup.py bdist_egg
-        easy_install dist/serpentTools-*egg
-        ;;
     *)
-        echo No install option
+        echo No install option $ST_INSTALL
         exit 1
 esac
diff --git a/setup.cfg b/setup.cfg
index a01b88c4..38b3596b 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -26,7 +26,7 @@ classifiers =
 include_package_data=True
 install_requires = 
     numpy>=1.16.0
-    matplotlib>=2.2.3
+    matplotlib>=2.2.3,<=3.3.4
     pyyaml>=5.1.1
 packages = find:
 python_requires = >=3.5, <3.9


Test patch:
diff --git a/.github/workflows/testing.yaml b/.github/workflows/testing.yaml
new file mode 100644
index 00000000..2897adb8
--- /dev/null
+++ b/.github/workflows/testing.yaml
@@ -0,0 +1,64 @@
+name: CI
+on:
+  # Enable running actions from GH Actions tab
+  workflow_dispatch:
+
+  pull_request:
+    branches:
+      - develop
+      - master
+  push:
+    branches:
+      - develop
+      - master
+
+jobs:
+  main:
+    runs-on: ubuntu-18.04
+    strategy:
+      matrix:
+        python-version: [3.6, 3.7, 3.8]
+        installer: [setup,sdist]
+
+    name: 'Python ${{ matrix.python-version }} installer=${{ matrix.installer }}'
+
+    # Environment variables
+    env:
+      ST_INSTALL: ${{ matrix.installer }}
+
+    steps:
+      - 
+        uses: actions/checkout@v2
+
+      - 
+        name: Set up Python ${{ matrix.python-version }}
+        uses: actions/setup-python@v2
+        with:
+          python-version: ${{ matrix.python-version }}
+
+      -
+        name: Environment
+        shell: bash
+        run: |
+          echo "SERPENT_TOOLS_DATA=$GITHUB_WORKSPACE/data" >> $GITHUB_ENV
+        
+      -
+        name: install
+        shell: bash
+        run: |
+          pip install -r requirements.txt
+          pip install -r requirements-test.txt
+          $GITHUB_WORKSPACE/scripts/ci/install.sh
+
+      -
+        name: test
+        shell: bash
+        run: |
+          pytest --cov=serpentTools --cov-report= -v
+          $GITHUB_WORKSPACE/scripts/ci/testNotebooks.sh
+
+      -
+        name: after
+        shell: bash
+        run: |
+          coverage report
\ No newline at end of file
diff --git a/requirements-test.txt b/requirements-test.txt
index c357347d..09051f08 100644
--- a/requirements-test.txt
+++ b/requirements-test.txt
@@ -1,6 +1,6 @@
 ipython>=5.8.0,<=7.0.0
 flake8==3.5.0
-pandas==0.24.0
+pandas>=1,<=1.3
 jupyter==1.0.0
 coverage==4.5.1
 scipy==1.3.2
diff --git a/scripts/travis/testNotebooks.sh b/scripts/ci/testNotebooks.sh
similarity index 100%
rename from scripts/travis/testNotebooks.sh
rename to scripts/ci/testNotebooks.sh