-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
5 changed files
with
225 additions
and
81 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,158 @@ | ||
name: Run one test | ||
on: | ||
push: | ||
branches: ["*"] | ||
pull_request: | ||
branches: ["*"] | ||
|
||
jobs: | ||
run-all-tests: | ||
name: ${{ matrix.name }} | ||
runs-on: ${{ matrix.os }} | ||
defaults: | ||
run: | ||
shell: bash | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
include: | ||
- { name: linux-python3.8-minimum , requirements: minimum , python-ver: "3.8" , os: ubuntu-latest } | ||
|
||
steps: | ||
- name: Cancel non-latest runs | ||
uses: styfle/[email protected] | ||
with: | ||
all_but_latest: true | ||
access_token: ${{ github.token }} | ||
|
||
- uses: actions/checkout@v3 | ||
with: | ||
submodules: 'recursive' | ||
fetch-depth: 0 # fetch tags | ||
|
||
- name: Set up Python | ||
uses: actions/setup-python@v4 | ||
with: | ||
python-version: ${{ matrix.python-ver }} | ||
|
||
- name: Install build dependencies | ||
run: | | ||
python -m pip install --upgrade pip | ||
python -m pip list | ||
python -m pip check | ||
- name: Install run requirements (minimum) | ||
if: ${{ matrix.requirements == 'minimum' }} | ||
run: | | ||
python -m pip install -r requirements-min.txt -r requirements-dev.txt | ||
python -m pip install -e . | ||
- name: Install run requirements (pinned) | ||
if: ${{ matrix.requirements == 'pinned' }} | ||
run: | | ||
python -m pip install -r requirements-dev.txt | ||
python -m pip install -e . | ||
- name: Install run requirements (upgraded) | ||
if: ${{ matrix.requirements == 'upgraded' }} | ||
run: | | ||
python -m pip install -r requirements-dev.txt | ||
python -m pip install -U -e . | ||
- name: Run tests | ||
run: | | ||
pytest -v | ||
- name: Build wheel and source distribution | ||
run: | | ||
python -m pip install --upgrade build | ||
python -m build | ||
ls -1 dist | ||
- name: Test installation from a wheel (POSIX) | ||
if: ${{ matrix.os != 'windows-latest' }} | ||
run: | | ||
python -m venv test-wheel-env | ||
source test-wheel-env/bin/activate | ||
python -m pip install dist/*-none-any.whl | ||
python -c "import ndx_hed" | ||
- name: Test installation from a wheel (windows) | ||
if: ${{ matrix.os == 'windows-latest' }} | ||
run: | | ||
python -m venv test-wheel-env | ||
test-wheel-env/Scripts/activate.bat | ||
python -m pip install dist/*-none-any.whl | ||
python -c "import ndx_hed" | ||
run-all-tests-on-conda: | ||
name: ${{ matrix.name }} | ||
runs-on: ubuntu-latest | ||
defaults: | ||
run: | ||
shell: bash -l {0} # needed for conda environment to work | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
include: | ||
- { name: conda-linux-python3.8-minimum , requirements: minimum , python-ver: "3.8" , os: ubuntu-latest } | ||
steps: | ||
- name: Cancel any previous incomplete runs | ||
uses: styfle/[email protected] | ||
with: | ||
access_token: ${{ github.token }} | ||
|
||
- uses: actions/checkout@v3 | ||
with: | ||
submodules: 'recursive' | ||
fetch-depth: 0 # fetch tags | ||
|
||
- name: Set up Conda | ||
uses: conda-incubator/setup-miniconda@v2 | ||
with: | ||
auto-update-conda: true | ||
auto-activate-base: true | ||
activate-environment: true | ||
python-version: ${{ matrix.python-ver }} | ||
|
||
- name: Install build dependencies | ||
run: | | ||
conda config --set always_yes yes --set changeps1 no | ||
conda info | ||
conda config --show-sources | ||
conda list --show-channel-urls | ||
- name: Install run requirements (minimum) | ||
if: ${{ matrix.requirements == 'minimum' }} | ||
run: | | ||
python -m pip install -r requirements-min.txt -r requirements-dev.txt | ||
python -m pip install -e . | ||
- name: Install run requirements (pinned) | ||
if: ${{ matrix.requirements == 'pinned' }} | ||
run: | | ||
python -m pip install -r requirements-dev.txt | ||
python -m pip install -e . | ||
- name: Install run requirements (upgraded) | ||
if: ${{ matrix.requirements == 'upgraded' }} | ||
run: | | ||
python -m pip install -r requirements-dev.txt | ||
python -m pip install -U -e . | ||
- name: Run tests | ||
run: | | ||
pytest -v | ||
- name: Build wheel and source distribution | ||
run: | | ||
python -m pip install --upgrade build | ||
python -m build | ||
ls -1 dist | ||
- name: Test installation from a wheel (POSIX) | ||
run: | | ||
python -m venv test-wheel-env | ||
source test-wheel-env/bin/activate | ||
python -m pip install dist/*-none-any.whl | ||
python -c "import ndx_hed" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,64 +1,69 @@ | ||
# -*- coding: utf-8 -*- | ||
|
||
import os | ||
from setuptools import setup | ||
|
||
from setuptools import setup, find_packages | ||
from shutil import copy2 | ||
if __name__ == "__main__": | ||
setup() | ||
|
||
# load README.md/README.rst file | ||
try: | ||
if os.path.exists('README.md'): | ||
with open('README.md', 'r') as fp: | ||
readme = fp.read() | ||
readme_type = 'text/markdown; charset=UTF-8' | ||
elif os.path.exists('README.rst'): | ||
with open('README.rst', 'r') as fp: | ||
readme = fp.read() | ||
readme_type = 'text/x-rst; charset=UTF-8' | ||
else: | ||
readme = "" | ||
except Exception: | ||
readme = "" | ||
|
||
setup_args = { | ||
'name': 'ndx-hed', | ||
'version': '0.1.0', | ||
'description': 'NWB extension for storing HED annotations in VectorData format.', | ||
'long_description': readme, | ||
'long_description_content_type': readme_type, | ||
'author': 'Ryan Ly, Kay Robbins', | ||
'author_email': '[email protected], [email protected]', | ||
'url': 'https://github.com/hed-standard/ndx-hed', | ||
'license': 'BSD 3-Clause', | ||
'install_requires': [ | ||
'pynwb>=1.1.2' | ||
], | ||
'packages': find_packages('src/pynwb'), | ||
'package_dir': {'': 'src/pynwb'}, | ||
'package_data': {'ndx_hed': [ | ||
'spec/ndx-hed.namespace.yaml', | ||
'spec/ndx-hed.extensions.yaml', | ||
]}, | ||
'classifiers': [ | ||
"Intended Audience :: Developers", | ||
"Intended Audience :: Science/Research", | ||
], | ||
'zip_safe': False | ||
} | ||
|
||
|
||
def _copy_spec_files(project_dir): | ||
ns_path = os.path.join(project_dir, 'spec', 'ndx-hed.namespace.yaml') | ||
ext_path = os.path.join(project_dir, 'spec', 'ndx-hed.extensions.yaml') | ||
|
||
dst_dir = os.path.join(project_dir, 'src', 'pynwb', 'ndx_hed', 'spec') | ||
if not os.path.exists(dst_dir): | ||
os.mkdir(dst_dir) | ||
|
||
copy2(ns_path, dst_dir) | ||
copy2(ext_path, dst_dir) | ||
|
||
|
||
if __name__ == '__main__': | ||
_copy_spec_files(os.path.dirname(__file__)) | ||
setup(**setup_args) | ||
# import os | ||
# | ||
# from setuptools import setup, find_packages | ||
# from shutil import copy2 | ||
# | ||
# # load README.md/README.rst file | ||
# try: | ||
# if os.path.exists('README.md'): | ||
# with open('README.md', 'r') as fp: | ||
# readme = fp.read() | ||
# readme_type = 'text/markdown; charset=UTF-8' | ||
# elif os.path.exists('README.rst'): | ||
# with open('README.rst', 'r') as fp: | ||
# readme = fp.read() | ||
# readme_type = 'text/x-rst; charset=UTF-8' | ||
# else: | ||
# readme = "" | ||
# except Exception: | ||
# readme = "" | ||
# | ||
# setup_args = { | ||
# 'name': 'ndx-hed', | ||
# 'version': '0.1.0', | ||
# 'description': 'NWB extension for storing HED annotations in VectorData format.', | ||
# 'long_description': readme, | ||
# 'long_description_content_type': readme_type, | ||
# 'author': 'Ryan Ly, Kay Robbins', | ||
# 'author_email': '[email protected], [email protected]', | ||
# 'url': 'https://github.com/hed-standard/ndx-hed', | ||
# 'license': 'BSD 3-Clause', | ||
# 'install_requires': [ | ||
# 'pynwb>=1.1.2' | ||
# ], | ||
# 'packages': find_packages('src/pynwb'), | ||
# 'package_dir': {'': 'src/pynwb'}, | ||
# 'package_data': {'ndx_hed': [ | ||
# 'spec/ndx-hed.namespace.yaml', | ||
# 'spec/ndx-hed.extensions.yaml', | ||
# ]}, | ||
# 'classifiers': [ | ||
# "Intended Audience :: Developers", | ||
# "Intended Audience :: Science/Research", | ||
# ], | ||
# 'zip_safe': False | ||
# } | ||
# | ||
# | ||
# def _copy_spec_files(project_dir): | ||
# ns_path = os.path.join(project_dir, 'spec', 'ndx-hed.namespace.yaml') | ||
# ext_path = os.path.join(project_dir, 'spec', 'ndx-hed.extensions.yaml') | ||
# | ||
# dst_dir = os.path.join(project_dir, 'src', 'pynwb', 'ndx_hed', 'spec') | ||
# if not os.path.exists(dst_dir): | ||
# os.mkdir(dst_dir) | ||
# | ||
# copy2(ns_path, dst_dir) | ||
# copy2(ext_path, dst_dir) | ||
# | ||
# | ||
# if __name__ == '__main__': | ||
# _copy_spec_files(os.path.dirname(__file__)) | ||
# setup(**setup_args) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters