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

Release 1.1.0 🎉 #57

Merged
merged 27 commits into from
Nov 1, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
2d23493
feat: support Python 3.7+; drop Python 2.7,<3.7
uniqueg Feb 9, 2023
c30424c
feat: pass through json serialization options
uniqueg Feb 9, 2023
1abde51
docs: add advanced usage examples
uniqueg Feb 9, 2023
a90cd3e
Merge pull request #44 from uniqueg/upgrade-python
kellrott Feb 9, 2023
3ac3052
feat: spec-compliant routes, with legacy support
uniqueg Feb 10, 2023
5379b2a
Merge pull request #46 from ohsu-comp-bio/api-location
kellrott Feb 28, 2023
e67ab6e
fix: remove debug messages
uniqueg Oct 3, 2023
93ad675
test: increase unit test coverage (#52)
uniqueg Jan 8, 2024
a0683d8
docs: browsable API reference on GitHub Pages (#49)
uniqueg Jan 9, 2024
7913526
Minor release testing updates
lbeckman314 Jan 9, 2024
4d12b82
Update support for Service Info (#55)
lbeckman314 Feb 29, 2024
8a4d9d9
Add integration test with Funnel
lbeckman314 Feb 29, 2024
a69a458
Add initial TES integration test (Funnel)
lbeckman314 Mar 2, 2024
c3addbf
Add Tmate debug session
lbeckman314 Mar 2, 2024
a4c8c1f
Update Funnel installation
lbeckman314 Mar 2, 2024
065418a
Re-add all unit tests
lbeckman314 Mar 2, 2024
7426a19
Fix Funnel download issue with correct rc version
lbeckman314 Mar 2, 2024
eac93d0
Add latest stable Python to test matrix
lbeckman314 Mar 2, 2024
f4b14e5
Fix unit tests not reaching Funnel
lbeckman314 Mar 2, 2024
205053b
Increase test coverage
lbeckman314 Mar 2, 2024
d4fa6e5
Minor linting fix
lbeckman314 Mar 2, 2024
8178eab
Update raised exception for invalid server response
lbeckman314 Mar 2, 2024
23cd0fe
Update README
lbeckman314 Mar 2, 2024
1966876
Update README.md
lbeckman314 Mar 2, 2024
201f1d3
Exclude tests from packages (#58)
musicinmybrain May 14, 2024
37aeacf
Add in 3 fields missing in the models for tes.
vsmalladi Sep 30, 2024
1c228b9
Merge pull request #65 from vsmalladi/fix-models
lbeckman314 Oct 1, 2024
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
1 change: 0 additions & 1 deletion .coverage

This file was deleted.

36 changes: 36 additions & 0 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
name: Building & publishing docs

on:
push:
branches: [master,api-docs]

jobs:
docs:
runs-on: ubuntu-latest

steps:
- name: Check out code
uses: actions/checkout@v3

- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.11"

- name: Install requirements
run: pip install -r docs/requirements.txt

- name: Install app
run: pip install .

- name: Create markdown documents
run: |
lazydocs \
--output-path="./docs/docstrings" \
--overview-file="README.md" \
--src-base-url="https://github.com/ohsu-comp-bio/py-tes/blob/master/" \
--validate \
tes

- name: Build docs
run: mkdocs build
59 changes: 40 additions & 19 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
@@ -1,26 +1,47 @@
name: py-test_file
name: Linting and testing

on: [ pull_request ]
on: [pull_request]

jobs:

test:
runs-on: ubuntu-latest
steps:
- name: Check out code
uses: actions/checkout@v2

- name: Requirements
run: pip install -r requirements.txt

- name: Test Requirements
run: pip install -r tests/requirements.txt
strategy:
fail-fast: false
matrix:
version: ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"]

- name: Install
run: python setup.py install --user

- name: Flake
run: flake8 .

- name: Test
run: python -m nose tests --with-coverage --cover-package tes --cover-min-percentage 80
steps:
- name: Check out code
uses: actions/checkout@v3

- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.version }}

- name: Install requirements
run: |
pip install -r requirements.txt
pip install -r tests/requirements.txt

- name: Install app
run: pip install .

- name: Lint with Flake8
run: flake8 --max-line-length=120 .

- name: Run unit tests
run: |
pytest \
--cov=tes/ \
--cov-branch \
--cov-report=term-missing \
--cov-fail-under=99 \
--ignore=tests/integration

- name: Run integration tests
run: |
/bin/bash -c "$(curl -fsSL https://github.com/ohsu-comp-bio/funnel/releases/download/0.11.0-rc.5/install.sh)" -- 0.11.0-rc.5
funnel server --LocalStorage.AllowedDirs $HOME run &
pytest tests/integration
178 changes: 177 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -16,5 +16,181 @@ eggs/
\#*\#
.desktop

# Misc
test_tmp
*venv*
*venv*
docs/docstrings

# Created by https://www.toptal.com/developers/gitignore/api/python
# Edit at https://www.toptal.com/developers/gitignore?templates=python

### Python ###
# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
*$py.class

# C extensions
*.so

# Distribution / packaging
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST

# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec

# Installer logs
pip-log.txt
pip-delete-this-directory.txt

# Unit test / coverage reports
htmlcov/
.tox/
.nox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
*.py,cover
.hypothesis/
.pytest_cache/
cover/

# Translations
*.mo
*.pot

# Django stuff:
*.log
local_settings.py
db.sqlite3
db.sqlite3-journal

# Flask stuff:
instance/
.webassets-cache

# Scrapy stuff:
.scrapy

# Sphinx documentation
docs/_build/

# PyBuilder
.pybuilder/
target/

# Jupyter Notebook
.ipynb_checkpoints

# IPython
profile_default/
ipython_config.py

# pyenv
# For a library or package, you might want to ignore these files since the code is
# intended to run in multiple environments; otherwise, check them in:
# .python-version

# pipenv
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
# However, in case of collaboration, if having platform-specific dependencies or dependencies
# having no cross-platform support, pipenv may install dependencies that don't work, or not
# install all needed dependencies.
#Pipfile.lock

# poetry
# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
# This is especially recommended for binary packages to ensure reproducibility, and is more
# commonly ignored for libraries.
# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
#poetry.lock

# pdm
# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
#pdm.lock
# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
# in version control.
# https://pdm.fming.dev/#use-with-ide
.pdm.toml

# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
__pypackages__/

# Celery stuff
celerybeat-schedule
celerybeat.pid

# SageMath parsed files
*.sage.py

# Environments
.env
.venv
env/
venv/
ENV/
env.bak/
venv.bak/

# Spyder project settings
.spyderproject
.spyproject

# Rope project settings
.ropeproject

# mkdocs documentation
/site

# mypy
.mypy_cache/
.dmypy.json
dmypy.json

# Pyre type checker
.pyre/

# pytype static type analyzer
.pytype/

# Cython debug symbols
cython_debug/

# PyCharm
# JetBrains specific template is maintained in a separate JetBrains.gitignore that can
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
# and can be added to the global gitignore or merged into this file. For a more nuclear
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
#.idea/

### Python Patch ###
# Poetry local configuration file - https://python-poetry.org/docs/configuration/#local-configuration
poetry.toml

# ruff
.ruff_cache/

# End of https://www.toptal.com/developers/gitignore/api/python
22 changes: 0 additions & 22 deletions .travis.yml

This file was deleted.

Loading
Loading