Skip to content

Commit

Permalink
Drop py36 support, update CI, reqs, tests for rc/2.0.0 (#1377)
Browse files Browse the repository at this point in the history
  • Loading branch information
rly authored Jul 7, 2021
1 parent 066ef8d commit 16cae9d
Show file tree
Hide file tree
Showing 23 changed files with 193 additions and 235 deletions.
142 changes: 52 additions & 90 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,13 +38,6 @@ references:
username: hdmf
password: $DOCKERHUB_PASSWORD

py36: &py36
docker:
- image: circleci/python:3.6.13-buster
auth:
username: hdmf
password: $DOCKERHUB_PASSWORD

conda-image: &conda-image
docker:
- image: continuumio/miniconda3:4.9.2
Expand Down Expand Up @@ -161,14 +154,6 @@ jobs:
- run:
<<: *run-style-check

python36:
<<: *py36
environment:
- TEST_TOX_ENV: "py36"
- BUILD_TOX_ENV: "build-py36"
- TEST_WHEELINSTALL_ENV: "wheelinstall"
<<: *ci-steps

python37:
<<: *py37
environment:
Expand All @@ -183,7 +168,6 @@ jobs:
- TEST_TOX_ENV: "py38"
- BUILD_TOX_ENV: "build-py38"
- TEST_WHEELINSTALL_ENV: "wheelinstall"
- UPLOAD_WHEELS: "true"
<<: *ci-steps

python39:
Expand All @@ -192,41 +176,33 @@ jobs:
- TEST_TOX_ENV: "py39"
- BUILD_TOX_ENV: "build-py39"
- TEST_WHEELINSTALL_ENV: "wheelinstall"
- UPLOAD_WHEELS: "true" # upload distributions from only this job to pypi
<<: *ci-steps

python38-upgrade-dev:
<<: *py38
python39-upgrade-dev:
<<: *py39
environment:
- TEST_TOX_ENV: "py38-upgrade-dev"
- BUILD_TOX_ENV: "build-py38-upgrade-dev"
- TEST_TOX_ENV: "py39-upgrade-dev"
- BUILD_TOX_ENV: "build-py39-upgrade-dev"
- TEST_WHEELINSTALL_ENV: "wheelinstall"
<<: *ci-steps

python38-upgrade-dev-pre:
<<: *py38
python39-upgrade-dev-pre:
<<: *py39
environment:
- TEST_TOX_ENV: "py38-upgrade-dev-pre"
- BUILD_TOX_ENV: "build-py38-upgrade-dev-pre"
- TEST_TOX_ENV: "py39-upgrade-dev-pre"
- BUILD_TOX_ENV: "build-py39-upgrade-dev-pre"
- TEST_WHEELINSTALL_ENV: "wheelinstall"
<<: *ci-steps

python36-min-req:
<<: *py36
python37-min-req:
<<: *py37
environment:
- TEST_TOX_ENV: "py36-min-req"
- BUILD_TOX_ENV: "build-py36-min-req"
- TEST_TOX_ENV: "py37-min-req"
- BUILD_TOX_ENV: "build-py37-min-req"
- TEST_WHEELINSTALL_ENV: "wheelinstall"
<<: *ci-steps

miniconda36:
<<: *conda-image
environment:
- CONDA_PYTHON_VER: "3.6.*=*_cpython" # avoid using pypy compiler
- TEST_TOX_ENV: "py36"
- BUILD_TOX_ENV: "build-py36"
- TEST_WHEELINSTALL_ENV: "wheelinstall"
<<: *conda-steps

miniconda37:
<<: *conda-image
environment:
Expand Down Expand Up @@ -254,12 +230,6 @@ jobs:
- TEST_WHEELINSTALL_ENV: "wheelinstall"
<<: *conda-steps

gallery36:
<<: *py36
environment:
- TEST_TOX_ENV: "gallery-py36"
<<: *gallery-steps

gallery37:
<<: *py37
environment:
Expand All @@ -278,26 +248,26 @@ jobs:
- TEST_TOX_ENV: "gallery-py39"
<<: *gallery-steps

gallery38-upgrade-dev:
<<: *py38
gallery39-upgrade-dev:
<<: *py39
environment:
- TEST_TOX_ENV: "gallery-py38-upgrade-dev"
- TEST_TOX_ENV: "gallery-py39-upgrade-dev"
<<: *gallery-steps

gallery38-upgrade-dev-pre:
<<: *py38
gallery39-upgrade-dev-pre:
<<: *py39
environment:
- TEST_TOX_ENV: "gallery-py38-upgrade-dev-pre"
- TEST_TOX_ENV: "gallery-py39-upgrade-dev-pre"
<<: *gallery-steps

gallery36-min-req:
<<: *py36
gallery37-min-req:
<<: *py37
environment:
- TEST_TOX_ENV: "gallery-py36-min-req"
- TEST_TOX_ENV: "gallery-py37-min-req"
<<: *gallery-steps

test-validation:
<<: *py38
<<: *py39
steps:
- checkout
- run: git submodule sync
Expand All @@ -309,13 +279,13 @@ jobs:
command: |
. ../venv/bin/activate
pip install tox
tox -e validation-py38
tox -e validation-py39
# Install is expected to be quick. Increase timeout in case there are some network issues.
# While pip installing tox does not output by default. Circle thinks task is dead after 10 min.
no_output_timeout: 30m

deploy-dev:
<<: *py38
<<: *py39
steps:
- checkout
- attach_workspace:
Expand All @@ -336,7 +306,7 @@ jobs:
--exit-success-if-missing-token
deploy-release:
<<: *py38
<<: *py39
steps:
- attach_workspace:
at: ./
Expand Down Expand Up @@ -366,27 +336,27 @@ workflows:
jobs:
- flake8:
<<: *no_filters
- python38:
- python37-min-req:
<<: *no_filters
- python36-min-req:
- python39:
<<: *no_filters
- miniconda36:
- miniconda37:
<<: *no_filters
- miniconda38:
- miniconda39:
<<: *no_filters
- gallery38:
- gallery37-min-req:
<<: *no_filters
- gallery36-min-req:
- gallery38: # TODO replace with gallery39 after allensdk support py39
<<: *no_filters
- deploy-dev:
requires:
- flake8
- python38
- python36-min-req
- miniconda36
- miniconda38
- gallery38
- gallery36-min-req
- python37-min-req
- python39
- miniconda37
- miniconda39
- gallery37-min-req
- gallery38 # gallery39
filters:
tags:
ignore:
Expand All @@ -400,12 +370,12 @@ workflows:
- deploy-release:
requires:
- flake8
- python38
- python36-min-req
- miniconda36
- miniconda38
- gallery38
- gallery36-min-req
- python37-min-req
- python39
- miniconda37
- miniconda39
- gallery37-min-req
- gallery38 # gallery39
filters:
tags:
only: /^[0-9]+(\.[0-9]+)*(\.post[0-9]+)?$/
Expand All @@ -424,41 +394,33 @@ workflows:
jobs:
- flake8:
<<: *no_filters
- python36:
<<: *no_filters
- python37:
<<: *no_filters
- python37-min-req:
<<: *no_filters
- python38:
<<: *no_filters
- python39:
<<: *no_filters
- python38-upgrade-dev:
<<: *no_filters
- python36-min-req:
- python39-upgrade-dev:
<<: *no_filters
- miniconda36:
- python39-upgrade-dev-pre:
<<: *no_filters
- miniconda37:
<<: *no_filters
- miniconda38:
<<: *no_filters
- miniconda39:
<<: *no_filters
- gallery36:
<<: *no_filters
- gallery37:
<<: *no_filters
- gallery37-min-req:
<<: *no_filters
- gallery38:
<<: *no_filters
- gallery39:
<<: *no_filters
- gallery38-upgrade-dev:
<<: *no_filters
- gallery36-min-req:
<<: *no_filters
- python38-upgrade-dev-pre:
<<: *no_filters
- gallery38-upgrade-dev-pre:
- gallery39-upgrade-dev:
<<: *no_filters
- test-validation:
- gallery39-upgrade-dev-pre:
<<: *no_filters
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ assignees: ''
<!--Please describe your environment according to the following bullet points.-->

Python Executable: Conda or Python
Python Version: Python 3.6, 3.7, or 3.8
Python Version: Python 3.7, 3.8, or 3.9
Operating System: Windows, macOS or Linux
HDMF Version:
PyNWB Version:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/workflow.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
os: [ubuntu-latest, macos-latest, windows-latest]
env:
OS: ${{ matrix.os }}
PYTHON: '3.8'
PYTHON: '3.9'
steps:
- name: Cancel Workflow Action
uses: styfle/[email protected]
Expand All @@ -27,7 +27,7 @@ jobs:
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: 3.8
python-version: 3.9
- name: Install dependencies
run: |
python -m pip install --upgrade pip
Expand Down
4 changes: 3 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,12 @@
-
-
-
-
- Drop Python 3.6 support, add Python 3.9 support. @rly (#1377)
- Update requirements to allow compatibility with HDMF 3 and h5py 3. @rly (#1377)

### Minor new features:
- Add RRID for citing PyNWB to the docs. @oruebel (#1372)
- Update CI and tests to handle deprecations in libraries. @rly (#1377)

### Bug fixes:
- Enforce electrode ID uniqueness during insertion into table. @CodyCBakerPhD (#1344)
Expand Down
Loading

0 comments on commit 16cae9d

Please sign in to comment.