gapit 0.3.0__tar.gz → 0.3.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {gapit-0.3.0 → gapit-0.3.1}/CHANGELOG.md +7 -0
- {gapit-0.3.0 → gapit-0.3.1}/PKG-INFO +1 -1
- {gapit-0.3.0 → gapit-0.3.1}/docs/agents.md +1 -1
- {gapit-0.3.0 → gapit-0.3.1}/docs/databases.md +1 -1
- {gapit-0.3.0 → gapit-0.3.1}/docs/installation.md +2 -2
- {gapit-0.3.0 → gapit-0.3.1}/docs/mcp.md +4 -4
- {gapit-0.3.0 → gapit-0.3.1}/docs/outputs.md +3 -3
- {gapit-0.3.0 → gapit-0.3.1}/docs/quickstart.md +1 -1
- {gapit-0.3.0 → gapit-0.3.1}/docs/reads.md +6 -6
- {gapit-0.3.0 → gapit-0.3.1}/docs/screen.md +2 -2
- {gapit-0.3.0 → gapit-0.3.1}/docs/summary.md +2 -2
- {gapit-0.3.0 → gapit-0.3.1}/pixi.lock +2 -2
- {gapit-0.3.0 → gapit-0.3.1}/pixi.toml +1 -1
- {gapit-0.3.0 → gapit-0.3.1}/pyproject.toml +1 -1
- {gapit-0.3.0 → gapit-0.3.1}/recipe/meta.yaml +2 -2
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/__init__.py +1 -1
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/cli.py +2 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/golden/reads_tinyamr.json +1 -1
- {gapit-0.3.0 → gapit-0.3.1}/tests/golden/reads_tinyamr.md +1 -1
- {gapit-0.3.0 → gapit-0.3.1}/tests/golden/screen_multi.json +1 -1
- {gapit-0.3.0 → gapit-0.3.1}/tests/golden/screen_multi.md +1 -1
- {gapit-0.3.0 → gapit-0.3.1}/tests/golden/summary_multi.json +1 -1
- {gapit-0.3.0 → gapit-0.3.1}/tests/golden/summary_multi.md +1 -1
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_cli_completion.py +9 -0
- {gapit-0.3.0 → gapit-0.3.1}/.gitattributes +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/.github/workflows/ci.yml +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/.github/workflows/docs.yml +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/.github/workflows/release.yml +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/.github/workflows/snapshot-refresh.yml +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/.gitignore +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/AGENTS.md +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/LICENSE +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/PLAN.md +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/README.md +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/SPEC.md +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/docs/custom-db.md +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/docs/faq.md +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/docs/index.md +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/mkdocs.yml +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/blast.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/cmd_db.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/cmd_db_build.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/cmd_db_install.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/cmd_db_outdated.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/cmd_db_search.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/cmd_screen.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/cmd_summary.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/config.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/data/snapshots/card.tar.gz +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/data/snapshots/vfdb.tar.gz +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/db.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/db_build_ops.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/db_ops.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/db_query_ops.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/dbbuild.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/dbcodec.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/dispatch.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/errors.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/fasta.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/formats/__init__.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/formats/json.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/formats/md.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/formats/schemas.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/formats/summary.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/formats/tsv.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/hits.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/mcp.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/mcp_schemas.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/mcp_tools.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/minimap.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/minimap2_run.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/paf.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/proctools.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/providers/__init__.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/providers/argannot.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/providers/bacmet2.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/providers/card.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/providers/common.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/providers/ecoh.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/providers/ecoli_vf.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/providers/megares.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/providers/ncbi.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/providers/plasmidfinder.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/providers/resfinder.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/providers/snapshots.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/providers/upec_expec_vf.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/providers/vfdb.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/providers/victors.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/py.typed +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/reads.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/records.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/report.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/screening.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/screening_reads.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/seqconvert.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/src/gapit/summary.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/contigs/full.fa +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/contigs/gap.fa +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/contigs/none.fa +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/contigs/partial.fa +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/contigs/sort.fa +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/convert/sample.embl +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/convert/sample.embl.bz2 +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/convert/sample.fa +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/convert/sample.fa.gz +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/convert/sample.fq +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/convert/sample.gbk +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/convert/sample.gbk.gz +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/db/tinyamr/sequences +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/providers/argannot/ARG-ANNOT_NT_V6_July2019.txt +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/providers/bacmet2/BacMet2_EXP_database.fasta +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/providers/card/card.json +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/providers/ecoh/EcOH.fasta +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/providers/ecoli_vf/repaired_ecoli_vfs_shortnames.ffn +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/providers/megares/megares_drugs_demo.fasta +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/providers/ncbi/AMR_CDS.fa +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/providers/ncbi/ReferenceGeneCatalog.txt +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/providers/plasmidfinder/plasmids_a.fsa +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/providers/plasmidfinder/plasmids_b.fsa +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/providers/resfinder/aminoglycoside.fsa +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/providers/resfinder/beta-lactam.fsa +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/providers/resfinder/phenotypes.txt +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/providers/upec_expec_vf/UPEC_ExPEC_VF.tsv +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/providers/vfdb/VFDB_setA_nt.fas +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/providers/victors/gen_downloads.php +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/providers/victors/gen_downloads_protein.php +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/reads/bla_partial.fq +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/reads/junk.fq +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/reads/suly_partial.fq +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/reads/tetx_R1.fq +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/reads/tetx_R2.fq +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/reads/tetx_full.fq +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/reads/tetx_full.fq.gz +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/reads/tetx_lane1.fq +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/reads/tetx_lane2.fq +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/reads/tetx_pe1_R1.fq +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/reads/tetx_pe1_R2.fq +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/reads/tetx_pe2_R1.fq +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/reads/tetx_pe2_R2.fq +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/reads2/ont_homologs.fq +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/reads2/sr_homologs.fq +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/reads2_db/homologs/sequences +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/reads_db/tinyreads/sequences +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/summary/empty.tsv +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/summary/multi_sample.tsv +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/summary/sample_a.csv +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/summary/sample_a.tsv +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/summary/sample_b.csv +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/data/summary/sample_b.tsv +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/golden/summary_dutch.tsv +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/golden/summary_multi.csv +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/golden/summary_multi.tsv +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/golden/tinyamr_multi_nopath.csv +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/golden/tinyamr_multi_nopath.tsv +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/parity/corpus/01_exact_and_junk.fa +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/parity/corpus/02_mutated.fa +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/parity/corpus/03_truncated.fa +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/parity/make_corpus.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/parity/run_parity.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/parity/run_summary_parity.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_blast_parse.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_blast_pipeline.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_cli_aligner.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_cli_db_build.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_cli_db_fetch.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_cli_db_query.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_cli_reads.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_cli_reads2.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_cli_schema.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_cli_screen.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_cli_screen_jobs.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_cli_setupdb.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_cli_summary.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_config.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_db.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_db_fetch.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_db_headers.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_dbbuild.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_dbcodec.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_error_envelope.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_fasta.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_gapit_db_e2e.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_hits.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_json_format.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_mcp.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_mcp_db_tools.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_mcp_protocol.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_mcp_reads.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_md_format.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_minimap.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_mol_type.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_oversubscription.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_paf.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_paf_identity.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_provider_argannot.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_provider_bacmet2.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_provider_card.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_provider_ecoh.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_provider_ecoli_vf.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_provider_megares.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_provider_ncbi.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_provider_plasmidfinder.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_provider_resfinder.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_provider_upec_expec_vf.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_provider_vfdb.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_provider_victors.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_providers_common.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_reads2_homologs.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_reads2_model.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_reads_aggregate.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_reads_integration.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_reads_interval_union.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_reads_streaming.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_records.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_report.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_screen_integration.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_screening_reads_unit.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_seqconvert.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_seqconvert_differential.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_snapshots.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_summary.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_summary_formats.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_tsv.py +0 -0
- {gapit-0.3.0 → gapit-0.3.1}/tests/test_version.py +0 -0
|
@@ -5,6 +5,13 @@ All notable changes to gapit are documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this
|
|
6
6
|
project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [0.3.1] - 2026-09-28
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
|
|
12
|
+
- `-h` now works as an alias for `--help` on every command (root, subcommands,
|
|
13
|
+
and nested `db` sub-app).
|
|
14
|
+
|
|
8
15
|
## [0.3.0] - 2026-09-28
|
|
9
16
|
|
|
10
17
|
### Removed
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: gapit
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.1
|
|
4
4
|
Summary: Mass screening of contigs for antimicrobial resistance and virulence genes — agent-first Python reimplementation of abricate
|
|
5
5
|
Project-URL: Homepage, https://github.com/indexofire/gapit
|
|
6
6
|
Project-URL: Documentation, https://indexofire.github.io/gapit/
|
|
@@ -13,7 +13,7 @@ Version, as one JSON line:
|
|
|
13
13
|
|
|
14
14
|
```console
|
|
15
15
|
$ gapit --version --json
|
|
16
|
-
{"schema":"gapit.version/1","name":"gapit","version":"0.3.
|
|
16
|
+
{"schema":"gapit.version/1","name":"gapit","version":"0.3.1"}
|
|
17
17
|
```
|
|
18
18
|
|
|
19
19
|
Output schemas. Six documents are introspectable: `report`, `reads`,
|
|
@@ -345,7 +345,7 @@ versions. A real one, from the plasmidfinder database:
|
|
|
345
345
|
"upstream_version": "",
|
|
346
346
|
"tool": {
|
|
347
347
|
"name": "gapit",
|
|
348
|
-
"version": "0.3.
|
|
348
|
+
"version": "0.3.1"
|
|
349
349
|
},
|
|
350
350
|
"makeblastdb_version": "blastn: 2.17.0+",
|
|
351
351
|
"minimap2_version": "2.31-r1302"
|
|
@@ -44,9 +44,9 @@ gapit --version
|
|
|
44
44
|
|
|
45
45
|
```console
|
|
46
46
|
$ gapit --version
|
|
47
|
-
gapit 0.3.
|
|
47
|
+
gapit 0.3.1
|
|
48
48
|
$ gapit --version --json
|
|
49
|
-
{"schema":"gapit.version/1","name":"gapit","version":"0.3.
|
|
49
|
+
{"schema":"gapit.version/1","name":"gapit","version":"0.3.1"}
|
|
50
50
|
```
|
|
51
51
|
|
|
52
52
|
## External binaries
|
|
@@ -94,7 +94,7 @@ EOF
|
|
|
94
94
|
Response line 1, verbatim:
|
|
95
95
|
|
|
96
96
|
```text
|
|
97
|
-
{"jsonrpc":"2.0","id":1,"result":{"protocolVersion":"2025-06-18","capabilities":{"tools":{}},"serverInfo":{"name":"gapit","version":"0.3.
|
|
97
|
+
{"jsonrpc":"2.0","id":1,"result":{"protocolVersion":"2025-06-18","capabilities":{"tools":{}},"serverInfo":{"name":"gapit","version":"0.3.1"}}}
|
|
98
98
|
```
|
|
99
99
|
|
|
100
100
|
Response line 2 (real output, elided in the middle; each tool carries its full
|
|
@@ -117,7 +117,7 @@ the same run):
|
|
|
117
117
|
```json
|
|
118
118
|
{
|
|
119
119
|
"schema": "gapit.report/1",
|
|
120
|
-
"tool": {"name": "gapit", "version": "0.3.
|
|
120
|
+
"tool": {"name": "gapit", "version": "0.3.1"},
|
|
121
121
|
"created_at": "2026-09-19T01:15:44Z",
|
|
122
122
|
"params": {"db": "tinyamr", "minid": 80.0, "mincov": 80.0, "threads": 1},
|
|
123
123
|
"files": [
|
|
@@ -173,7 +173,7 @@ the same run):
|
|
|
173
173
|
```json
|
|
174
174
|
{
|
|
175
175
|
"schema": "gapit.reads/1",
|
|
176
|
-
"tool": {"name": "gapit", "version": "0.3.
|
|
176
|
+
"tool": {"name": "gapit", "version": "0.3.1"},
|
|
177
177
|
"created_at": "2026-09-22T00:07:35Z",
|
|
178
178
|
"params": {
|
|
179
179
|
"db": "tinyreads",
|
|
@@ -248,7 +248,7 @@ hit is the gene the agent just built the database from (real output):
|
|
|
248
248
|
```json
|
|
249
249
|
{
|
|
250
250
|
"schema": "gapit.report/1",
|
|
251
|
-
"tool": {"name": "gapit", "version": "0.3.
|
|
251
|
+
"tool": {"name": "gapit", "version": "0.3.1"},
|
|
252
252
|
"created_at": "2026-09-20T13:38:39Z",
|
|
253
253
|
"params": {"db": "myamr", "minid": 80.0, "mincov": 80.0, "threads": 1},
|
|
254
254
|
"files": [
|
|
@@ -115,7 +115,7 @@ Real document, same run as the TSV above:
|
|
|
115
115
|
"schema": "gapit.report/1",
|
|
116
116
|
"tool": {
|
|
117
117
|
"name": "gapit",
|
|
118
|
-
"version": "0.3.
|
|
118
|
+
"version": "0.3.1"
|
|
119
119
|
},
|
|
120
120
|
"created_at": "2026-09-19T01:12:20Z",
|
|
121
121
|
"params": {
|
|
@@ -246,7 +246,7 @@ summarizing two report files, one with a `tetA` hit and one with none:
|
|
|
246
246
|
"schema": "gapit.summary/1",
|
|
247
247
|
"tool": {
|
|
248
248
|
"name": "gapit",
|
|
249
|
-
"version": "0.3.
|
|
249
|
+
"version": "0.3.1"
|
|
250
250
|
},
|
|
251
251
|
"created_at": "2026-09-19T01:11:09Z",
|
|
252
252
|
"params": {
|
|
@@ -364,7 +364,7 @@ An agent can discover the whole contract from the binary alone.
|
|
|
364
364
|
|
|
365
365
|
```console
|
|
366
366
|
$ gapit --version --json
|
|
367
|
-
{"schema":"gapit.version/1","name":"gapit","version":"0.3.
|
|
367
|
+
{"schema":"gapit.version/1","name":"gapit","version":"0.3.1"}
|
|
368
368
|
```
|
|
369
369
|
|
|
370
370
|
`gapit schema <name>` prints the JSON Schema for each document. The six names: `report`,
|
|
@@ -28,7 +28,7 @@ gapit screen --r1 R1[,R1b,...] [--r2 R2[,R2b,...]] --db NAME [--read-type sr|map
|
|
|
28
28
|
## Options
|
|
29
29
|
|
|
30
30
|
Reads mode runs through the same `gapit screen` command; these are the flags that apply
|
|
31
|
-
(transcribed from `gapit screen --help`, gapit 0.3.
|
|
31
|
+
(transcribed from `gapit screen --help`, gapit 0.3.1). Contig-mode flags not listed here
|
|
32
32
|
(`--minid`, `--mincov`, `--jobs`, `--fofn`, `--noheader`, `--nopath`) do not apply.
|
|
33
33
|
|
|
34
34
|
| Flag | Type | Default | Description |
|
|
@@ -223,7 +223,7 @@ The short-read fixture behaves the same with one calibration: `sr` soft-clipping
|
|
|
223
223
|
$ gapit screen --r1 ont_homologs.fq --db homologs --read-type map-ont --min-identity 95 --format md --quiet
|
|
224
224
|
---
|
|
225
225
|
schema: gapit.reads/2
|
|
226
|
-
tool: gapit 0.3.
|
|
226
|
+
tool: gapit 0.3.1
|
|
227
227
|
created_at: 2026-09-20T14:23:33Z
|
|
228
228
|
db: homologs
|
|
229
229
|
read_type: map-ont
|
|
@@ -262,7 +262,7 @@ Detected 1 present genes in tetx_full.fq
|
|
|
262
262
|
"schema": "gapit.reads/1",
|
|
263
263
|
"tool": {
|
|
264
264
|
"name": "gapit",
|
|
265
|
-
"version": "0.3.
|
|
265
|
+
"version": "0.3.1"
|
|
266
266
|
},
|
|
267
267
|
"created_at": "2026-09-19T01:12:25Z",
|
|
268
268
|
"params": {
|
|
@@ -359,7 +359,7 @@ $ gapit screen --r1 tetx_lane1.fq,tetx_lane2.fq --db tinyreads --quiet
|
|
|
359
359
|
$ gapit screen --r1 tetx_full.fq --db tinyreads --format md
|
|
360
360
|
---
|
|
361
361
|
schema: gapit.reads/1
|
|
362
|
-
tool: gapit 0.3.
|
|
362
|
+
tool: gapit 0.3.1
|
|
363
363
|
created_at: 2026-09-19T01:12:25Z
|
|
364
364
|
db: tinyreads
|
|
365
365
|
read_type: sr
|
|
@@ -455,7 +455,7 @@ Detected 2 present genes in /tmp/gapit-demo/assembly.fa
|
|
|
455
455
|
"schema": "gapit.reads/1",
|
|
456
456
|
"tool": {
|
|
457
457
|
"name": "gapit",
|
|
458
|
-
"version": "0.3.
|
|
458
|
+
"version": "0.3.1"
|
|
459
459
|
},
|
|
460
460
|
"created_at": "2026-09-19T14:23:00Z",
|
|
461
461
|
"params": {
|
|
@@ -514,7 +514,7 @@ cost of allele-level precision. That trade suggests a two-stage workflow over ma
|
|
|
514
514
|
pipeline, which applies the identity and coverage floors at abricate parity.
|
|
515
515
|
|
|
516
516
|
Real numbers, one K. pneumoniae RefSeq assembly (GCF_000240185.1, 5.3 Mb, `--db ncbi`,
|
|
517
|
-
single-threaded, gapit 0.3.
|
|
517
|
+
single-threaded, gapit 0.3.1):
|
|
518
518
|
|
|
519
519
|
```console
|
|
520
520
|
$ # Stage 1: survey, ~0.9 s
|
|
@@ -9,7 +9,7 @@ Database setup is covered in [./databases.md](./databases.md); a full walk-throu
|
|
|
9
9
|
|
|
10
10
|
## Options
|
|
11
11
|
|
|
12
|
-
Transcribed from `gapit screen --help` (gapit 0.3.
|
|
12
|
+
Transcribed from `gapit screen --help` (gapit 0.3.1). Flags marked *reads mode* apply only when
|
|
13
13
|
you pass `--r1`/`--r2`; they are documented in [./reads.md](./reads.md).
|
|
14
14
|
|
|
15
15
|
| Flag | Type | Default | Description |
|
|
@@ -86,7 +86,7 @@ $ gapit screen tests/data/contigs/full.fa --db tinyamr --format json
|
|
|
86
86
|
"schema": "gapit.report/1",
|
|
87
87
|
"tool": {
|
|
88
88
|
"name": "gapit",
|
|
89
|
-
"version": "0.3.
|
|
89
|
+
"version": "0.3.1"
|
|
90
90
|
},
|
|
91
91
|
"created_at": "2026-09-19T01:12:04Z",
|
|
92
92
|
"params": {
|
|
@@ -10,7 +10,7 @@ exactly what `gapit screen` writes. See [./screen.md](./screen.md) for producing
|
|
|
10
10
|
|
|
11
11
|
## Options
|
|
12
12
|
|
|
13
|
-
Transcribed from `gapit summary --help` (gapit 0.3.
|
|
13
|
+
Transcribed from `gapit summary --help` (gapit 0.3.1):
|
|
14
14
|
|
|
15
15
|
| Flag | Type | Default | Description |
|
|
16
16
|
|---|---|---|---|
|
|
@@ -110,7 +110,7 @@ $ gapit summary tests/data/summary/sample_a.tsv tests/data/summary/sample_b.tsv
|
|
|
110
110
|
"schema": "gapit.summary/1",
|
|
111
111
|
"tool": {
|
|
112
112
|
"name": "gapit",
|
|
113
|
-
"version": "0.3.
|
|
113
|
+
"version": "0.3.1"
|
|
114
114
|
},
|
|
115
115
|
"created_at": "2026-09-19T01:12:48Z",
|
|
116
116
|
"params": {
|
|
@@ -1135,8 +1135,8 @@ packages:
|
|
|
1135
1135
|
timestamp: 1694615932610
|
|
1136
1136
|
- pypi: ./
|
|
1137
1137
|
name: gapit
|
|
1138
|
-
version: 0.3.
|
|
1139
|
-
sha256:
|
|
1138
|
+
version: 0.3.1
|
|
1139
|
+
sha256: db655bb2b9f4c9843304958d45db24f7e9fe0f0f9b15460f54d03b9d00968b1c
|
|
1140
1140
|
requires_dist:
|
|
1141
1141
|
- typer>=0.12
|
|
1142
1142
|
- pydantic>=2.7
|
|
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "gapit"
|
|
7
|
-
version = "0.3.
|
|
7
|
+
version = "0.3.1"
|
|
8
8
|
description = "Mass screening of contigs for antimicrobial resistance and virulence genes — agent-first Python reimplementation of abricate"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
authors = [{ name = "indexofire", email = "indexofire@gmail.com" }]
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
# version/license/python/deps mirror pyproject.toml exactly; the external
|
|
5
5
|
# binaries mirror pixi.toml's conda dependencies.
|
|
6
6
|
{% set name = "gapit" %}
|
|
7
|
-
{% set version = "0.3.
|
|
7
|
+
{% set version = "0.3.1" %}
|
|
8
8
|
|
|
9
9
|
package:
|
|
10
10
|
name: {{ name|lower }}
|
|
@@ -13,7 +13,7 @@ package:
|
|
|
13
13
|
source:
|
|
14
14
|
# gapit is not on PyPI yet. This is the standard noarch-python source URL;
|
|
15
15
|
# replace the sha256 with the PyPI sdist hash at submission time.
|
|
16
|
-
# The value below hashes the LOCAL hatchling sdist (dist/gapit-0.3.
|
|
16
|
+
# The value below hashes the LOCAL hatchling sdist (dist/gapit-0.3.1.tar.gz)
|
|
17
17
|
# — local and PyPI sdists are not byte-identical (gzip), do not trust it.
|
|
18
18
|
url: https://pypi.org/packages/source/{{ name[0] }}/{{ name }}/{{ name }}-{{ version }}.tar.gz
|
|
19
19
|
sha256: 24df143ed9647fc784fa29c776babfd880d3730d22004b997ed0aea3f105f5e3
|
|
@@ -21,6 +21,8 @@ app = typer.Typer(
|
|
|
21
21
|
help="Mass screening of contigs for antimicrobial resistance and virulence genes.",
|
|
22
22
|
no_args_is_help=True,
|
|
23
23
|
add_completion=True,
|
|
24
|
+
# -h alias for --help; click Context propagates this to all subcommands/sub-apps.
|
|
25
|
+
context_settings={"help_option_names": ["-h", "--help"]},
|
|
24
26
|
)
|
|
25
27
|
|
|
26
28
|
|
|
@@ -23,6 +23,15 @@ def test_root_help_lists_completion_options() -> None:
|
|
|
23
23
|
assert "--show-completion" in help_text
|
|
24
24
|
|
|
25
25
|
|
|
26
|
+
def test_short_help_alias_works_on_every_level() -> None:
|
|
27
|
+
"""Given -h instead of --help, When invoked on the root app, a
|
|
28
|
+
subcommand, and a nested sub-app, Then each prints its help and exits 0."""
|
|
29
|
+
for argv in (["-h"], ["screen", "-h"], ["db", "-h"], ["db", "fetch", "-h"]):
|
|
30
|
+
result = runner.invoke(app, argv, env={"COLUMNS": "100"})
|
|
31
|
+
assert result.exit_code == 0, argv
|
|
32
|
+
assert "Usage:" in ANSI_STYLE.sub("", result.stdout), argv
|
|
33
|
+
|
|
34
|
+
|
|
26
35
|
def test_show_completion_emits_shell_script() -> None:
|
|
27
36
|
"""Given --show-completion under a pinned SHELL, When run, Then a bash
|
|
28
37
|
completion script referencing the gapit completion env var is printed
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|