Skip to content

Added argument to gff3_to_fasta that allows user to determine what at… #83

Added argument to gff3_to_fasta that allows user to determine what at…

Added argument to gff3_to_fasta that allows user to determine what at… #83

Workflow file for this run

name: build
on:
push:
pull_request:
workflow_dispatch:
permissions:
contents: read
id-token: write
env:
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true
PIP_NO_CACHE_DIR: "1"
jobs:
build1-Calculating-coverage:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v5
- name: Set up Python 3.9
uses: actions/setup-python@v6
with:
python-version: "3.9"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install coveralls coverage wheel
python -m pip install .
if [ -f requirements.txt ]; then python -m pip install -r requirements.txt; fi
- name: Test with coverage
run: |
coverage erase
coverage run -a "$(command -v gff3_QC)" -g example_file/example.gff3 -f example_file/reference.fa -o error.txt
coverage run -a "$(command -v gff3_fix)" -qc_r error.txt -g example_file/example.gff3 -og corrected.gff3
coverage run -a "$(command -v gff3_merge)" -g1 example_file/new_models.gff3 -g2 example_file/reference.gff3 -f example_file/reference.fa -og merged.gff -r merged_report.txt
coverage run -a "$(command -v gff3_merge)" -g1 example_file/new_models.gff3 -g2 example_file/reference.gff3 -f example_file/reference.fa -og merged.gff -u1 example_file/u1.txt -u2 example_file/u2.txt -r merged_report.txt
coverage run -a "$(command -v gff3_merge)" -g1 example_file/new_models.gff3 -g2 example_file/reference.gff3 -f example_file/reference.fa -og merged.gff -u1 example_file/u1.txt -r merged_report.txt
coverage run -a "$(command -v gff3_merge)" -g1 example_file/new_models.gff3 -g2 example_file/reference.gff3 -f example_file/reference.fa -og merged.gff -u2 example_file/u2.txt -r merged_report.txt
coverage run -a "$(command -v gff3_merge)" -g1 example_file/new_models_w_replace.gff3 -g2 example_file/reference.gff3 -f example_file/reference.fa -og merged.gff -r merged_report.txt -noAuto
coverage run -a "$(command -v gff3_sort)" -g example_file/example.gff3 -og example-sorted.gff3
coverage run -a "$(command -v gff3_to_fasta)" -g example_file/example.gff3 -f example_file/reference.fa -st all -d simple -o test_sequences
coverage run -a -m unittest discover -s tests/unit -p "test_*.py"
- name: Report coverage summary
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
coverage report --fail-under=22 -m
coverage xml -o coverage.xml
coveralls --service=github
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v6
with:
files: coverage.xml
use_oidc: true
fail_ci_if_error: false
verbose: true
build2-Checking-links:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v5
- name: Set up Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: "3.0"
bundler-cache: true # runs 'bundle install' and caches installed gems automatically
- name: Install dependencies
run: gem install awesome_bot
- name: Checking links
run: awesome_bot --allow-redirect --allow-dupe README.md docs/*.md
build3-Testing-functions:
strategy:
fail-fast: false
matrix:
os: ['ubuntu-24.04', 'windows-latest', 'macos-latest']
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v5
- name: Set up Python 3.9
uses: actions/setup-python@v6
with:
python-version: "3.9"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install wheel
python -m pip install .
- name: Run smoke tests
run: python tests.py
build4-Packaging-check:
strategy:
fail-fast: false
matrix:
os: ['ubuntu-24.04', 'windows-latest', 'macos-latest']
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v5
- name: Set up Python 3.9
uses: actions/setup-python@v6
with:
python-version: "3.9"
- name: Build distribution artifacts
run: |
python -m pip install --upgrade pip
python -m pip install build wheel
python -m build
- name: Install wheel and verify CLI entry points
run: |
python -c "import glob,subprocess,sys; wheels=glob.glob('dist/*.whl'); assert wheels, 'No wheel built'; subprocess.check_call([sys.executable, '-m', 'pip', 'install', wheels[0]])"
gff3_sort -h
python -c "import shutil,sys; sys.exit(0 if shutil.which('gff3_sort') else 1)"
build5-Docs-build:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v5
- name: Set up Python 3.14
uses: actions/setup-python@v6
with:
python-version: "3.14"
- name: Install docs dependencies
run: |
python -m pip install --upgrade pip
python -m pip install -r docs/requirements.txt
- name: Build docs (warnings as errors)
run: |
python -m sphinx -W -b html docs docs/_build/html
build6-Python-314-runtime:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v5
- name: Set up Python 3.14
uses: actions/setup-python@v6
with:
python-version: "3.14"
- name: Install runtime dependencies
run: |
python -m pip install --upgrade pip
python -m pip install wheel
python -m pip install .
- name: Run smoke and unit tests on Python 3.14
run: |
python tests.py
python -m unittest discover -s tests/unit -p "test_*.py"