From 236c66d629ed26dac7d2c380b31871e9eaf1d07a Mon Sep 17 00:00:00 2001 From: JeanMainguy Date: Wed, 4 Feb 2026 16:06:48 +0100 Subject: [PATCH 01/13] output tsv as stdout by default --- pangbank_cli/main.py | 35 +++++++++++++++++++++++------------ 1 file changed, 23 insertions(+), 12 deletions(-) diff --git a/pangbank_cli/main.py b/pangbank_cli/main.py index 6f84cd4..c9d23d1 100644 --- a/pangbank_cli/main.py +++ b/pangbank_cli/main.py @@ -234,17 +234,24 @@ def search_pangenomes( rich_help_panel="Output and downloads", ), ] = False, + table: Annotated[ + bool, + typer.Option( + help="Output a TSV table summarizing the matching pangenomes to stdout.", + rich_help_panel="Output and downloads", + ), + ] = True, table_path: Annotated[ - Path, + Optional[Path], typer.Option( - "--table", + "--table-path", help=( - "Save a TSV table summarizing the matching pangenomes. " - "Use '-' to print the table to stdout." + "Save TSV table to a file instead of stdout (e.g., pangenomes_information.tsv). " + "Implies --table." ), rich_help_panel="Output and downloads", ), - ] = Path("pangenomes_information.tsv"), + ] = None, # Execution settings api_url: HttpUrl = ApiUrlOption, verbose: bool = Verbose, @@ -282,14 +289,18 @@ def search_pangenomes( df = format_pangenomes_to_dataframe(pangenomes) - if str(table_path) == "-": - logger.info("Printing pangenomes information as TSV table to stdout") - output_handle: TextIO | Path = sys.stdout - else: - logger.info(f"Saving pangenomes information as TSV table to file: {table_path}") - output_handle: TextIO | Path = table_path + # Output table if enabled + if table or table_path is not None: + if table_path is not None: + logger.info( + f"Saving pangenomes information as TSV table to file: {table_path}" + ) + output_handle: TextIO | Path = table_path + else: + logger.info("Printing pangenomes information as TSV table to stdout") + output_handle: TextIO | Path = sys.stdout - df.to_csv(output_handle, index=False, sep="\t") + df.to_csv(output_handle, index=False, sep="\t") if details: display_pangenome_summary_by_collection(pangenomes, True) From 981da8413269e49da02853f4a3fdceff1a0d3013 Mon Sep 17 00:00:00 2001 From: JeanMainguy Date: Wed, 4 Feb 2026 16:12:05 +0100 Subject: [PATCH 02/13] update changelog and readme [screenshot] --- CHANGELOG.md | 7 +++++++ README.md | 4 ++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 037c0e0..05a4225 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Mash sketch files are now validated using MD5 checksum to ensure integrity +- Added `--table-path` option to save TSV output to a file +- Added `--no-table` flag to disable table output completely + +### Changed + +- Table output now defaults to stdout instead of a file (previous default was `pangenomes_information.tsv`) +- Renamed `--table` option to `--table-path` for clarity ## [0.1.1] - 2025-11-09 diff --git a/README.md b/README.md index 0a62f04..fddc309 100644 --- a/README.md +++ b/README.md @@ -119,9 +119,9 @@ pangbank search-pangenomes --taxon "g__Escherichia" ``` Searches PanGBank for pangenomes matching the given taxon. -Results are saved as a **TSV file** named 'pangenomes_information.tsv' by default containing summary metrics for the matching pangenomes. +Results are printed to **stdout** as a TSV table by default. Use `--table-path ` to save to a file instead (e.g., `--table-path pangenomes_information.tsv`), or `--no-table` to disable table output. -![`pangbank search-pangenomes --taxon "g__Escherichia" --no-progress`](docs/img/pangbank-search-pangenomes_taxon_Escherichia.svg) +![`pangbank search-pangenomes --taxon "g__Escherichia" --no-progress --table-path pangenome_information.tsv`](docs/img/pangbank-search-pangenomes_taxon_Escherichia.svg) ### Download pangenomes From f0cce0affd1aff46c1694db67fd284d0a0fc3699 Mon Sep 17 00:00:00 2001 From: JeanMainguy Date: Wed, 4 Feb 2026 16:13:11 +0100 Subject: [PATCH 03/13] [screenshots] --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index fddc309..4d568cd 100644 --- a/README.md +++ b/README.md @@ -121,6 +121,7 @@ pangbank search-pangenomes --taxon "g__Escherichia" Searches PanGBank for pangenomes matching the given taxon. Results are printed to **stdout** as a TSV table by default. Use `--table-path ` to save to a file instead (e.g., `--table-path pangenomes_information.tsv`), or `--no-table` to disable table output. + ![`pangbank search-pangenomes --taxon "g__Escherichia" --no-progress --table-path pangenome_information.tsv`](docs/img/pangbank-search-pangenomes_taxon_Escherichia.svg) ### Download pangenomes From 78e3fb683bc4aa92c7238e08d288ae4258ff41b1 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Wed, 4 Feb 2026 15:14:18 +0000 Subject: [PATCH 04/13] Generate new screengrabs with rich-codex --- docs/img/pangbank-list-collections.svg | 96 +++---- docs/img/pangbank-search-pangenomes_help.svg | 234 +++++++++--------- ...ch-pangenomes_taxon_Chlamydia_download.svg | 90 +++---- ...nk-search-pangenomes_taxon_Escherichia.svg | 92 +++---- 4 files changed, 264 insertions(+), 248 deletions(-) diff --git a/docs/img/pangbank-list-collections.svg b/docs/img/pangbank-list-collections.svg index a393007..3080099 100644 --- a/docs/img/pangbank-list-collections.svg +++ b/docs/img/pangbank-list-collections.svg @@ -19,82 +19,82 @@ font-weight: 700; } - .terminal-1860904486-matrix { + .terminal-2687182361-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-1860904486-title { + .terminal-2687182361-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-1860904486-r1 { fill: #4e707b } -.terminal-1860904486-r2 { fill: #608ab1 } -.terminal-1860904486-r3 { fill: #c5c8c6 } -.terminal-1860904486-r4 { fill: #68a0b3;font-weight: bold } -.terminal-1860904486-r5 { fill: #868887 } -.terminal-1860904486-r6 { fill: #c5c8c6;font-style: italic; } -.terminal-1860904486-r7 { fill: #98729f;font-weight: bold } -.terminal-1860904486-r8 { fill: #68a0b3 } + .terminal-2687182361-r1 { fill: #4e707b } +.terminal-2687182361-r2 { fill: #608ab1 } +.terminal-2687182361-r3 { fill: #c5c8c6 } +.terminal-2687182361-r4 { fill: #68a0b3;font-weight: bold } +.terminal-2687182361-r5 { fill: #868887 } +.terminal-2687182361-r6 { fill: #c5c8c6;font-style: italic; } +.terminal-2687182361-r7 { fill: #98729f;font-weight: bold } +.terminal-2687182361-r8 { fill: #68a0b3 } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -106,27 +106,27 @@ - + - - [13:45:39]INFO     Found 2 collections in PanGBank.                 main.py:174 - -Available collections of PanGBank:                                                                             -┏━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┓ -Collection Description               Latest releaseRelease dateTaxonomy     Pangenome Count -┡━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━┩ -GTDB_refseqA collection of pangenomes1.0.0         10 Jul 2025 GTDB:10-RS2261770            -built from GTDB species,   -each represented by at     -least 15 genomes from      -RefSeq.                    -├─────────────┼────────────────────────────┼────────────────┼──────────────┼───────────────┼─────────────────┤ -GTDB_all   A collection of pangenomes1.0.0         05 Aug 2025 GTDB:10-RS2264351            -built from GTDB species,   -each represented by at     -least 15 genomes from      -RefSeq or GenBank.         -└─────────────┴────────────────────────────┴────────────────┴──────────────┴───────────────┴─────────────────┘ + + [15:14:10]INFO     Found 2 collections in PanGBank.                 main.py:174 + +Available collections of PanGBank:                                                                             +┏━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┓ +Collection Description               Latest releaseRelease dateTaxonomy     Pangenome Count +┡━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━┩ +GTDB_refseqA collection of pangenomes1.0.0         10 Jul 2025 GTDB:10-RS2261770            +built from GTDB species,   +each represented by at     +least 15 genomes from      +RefSeq.                    +├─────────────┼────────────────────────────┼────────────────┼──────────────┼───────────────┼─────────────────┤ +GTDB_all   A collection of pangenomes1.0.0         05 Aug 2025 GTDB:10-RS2264351            +built from GTDB species,   +each represented by at     +least 15 genomes from      +RefSeq or GenBank.         +└─────────────┴────────────────────────────┴────────────────┴──────────────┴───────────────┴─────────────────┘ diff --git a/docs/img/pangbank-search-pangenomes_help.svg b/docs/img/pangbank-search-pangenomes_help.svg index d9deade..767be94 100644 --- a/docs/img/pangbank-search-pangenomes_help.svg +++ b/docs/img/pangbank-search-pangenomes_help.svg @@ -1,4 +1,4 @@ - + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + + + + + + + + + + - + - + - - $ pangbank search-pangenomes --help - -Usage: pangbank search-pangenomes [OPTIONS] - - Search for pangenomes.                                                          - -╭─ Options ────────────────────────────────────────────────────────────────────╮ ---help-h        Show this message and exit.                                 -╰──────────────────────────────────────────────────────────────────────────────╯ -╭─ Search filters ─────────────────────────────────────────────────────────────╮ ---collection-cTEXT  Filter pangenomes by collection  -                                              name (e.g. 'GTDB_refseq').       ---taxon-tTEXT  Filter pangenomes by taxon name  -                                              (e.g. 'Escherichia').            ---genome-gTEXT  Filter pangenomes by genome      -                                              assembly identifier (e.g.        -                                              'GCF_000354175.2').              ---exact-match--no-exact-match  Use exact string matching        -                                              instead of partial matches.      -[default: no-exact-match]       -╰──────────────────────────────────────────────────────────────────────────────╯ -╭─ Output and downloads ───────────────────────────────────────────────────────╮ ---download--no-download  Download HDF5 pangenome files.           -[default: no-download]         ---outdirPATH  Output directory for downloaded          -                                      pangenomes.                              -[default: pangbank]                     ---details--no-details  Display summary information for each     -                                      matching pangenome.                      -[default: no-details]                   ---tablePATH  Save a TSV table summarizing the         -                                      matching pangenomes. Use '-' to print    -                                      the table to stdout.                     -[default: pangenomes_information.tsv]   -╰──────────────────────────────────────────────────────────────────────────────╯ -╭─ Execution settings ─────────────────────────────────────────────────────────╮ ---api-urlVALIDATE_API_URL  URL of the PanGBank API.     -[env var: PANGBANK_API_URL] -[default:                   -https://pangbank-api.genos… ---verbose  Enable verbose logging.      ---progress--no-progress  Show progress bar while      -                                                  fetching pangenomes          -                                                  (disable with                ---no-progress).              -[default: progress]         -╰──────────────────────────────────────────────────────────────────────────────╯ - + + $ pangbank search-pangenomes --help + +Usage: pangbank search-pangenomes [OPTIONS] + + Search for pangenomes.                                                          + +╭─ Options ────────────────────────────────────────────────────────────────────╮ +--help-h        Show this message and exit.                                 +╰──────────────────────────────────────────────────────────────────────────────╯ +╭─ Search filters ─────────────────────────────────────────────────────────────╮ +--collection-cTEXT  Filter pangenomes by collection  +                                              name (e.g. 'GTDB_refseq').       +--taxon-tTEXT  Filter pangenomes by taxon name  +                                              (e.g. 'Escherichia').            +--genome-gTEXT  Filter pangenomes by genome      +                                              assembly identifier (e.g.        +                                              'GCF_000354175.2').              +--exact-match--no-exact-match  Use exact string matching        +                                              instead of partial matches.      +[default: no-exact-match]       +╰──────────────────────────────────────────────────────────────────────────────╯ +╭─ Output and downloads ───────────────────────────────────────────────────────╮ +--download--no-download  Download HDF5 pangenome files.         +[default: no-download]         +--outdirPATH  Output directory for downloaded        +                                        pangenomes.                            +[default: pangbank]                   +--details--no-details  Display summary information for each   +                                        matching pangenome.                    +[default: no-details]                 +--table--no-table  Output a TSV table summarizing the     +                                        matching pangenomes to stdout.         +[default: table]                      +--table-pathPATH  Save TSV table to a file instead of    +                                        stdout (e.g.,                          +                                        pangenomes_information.tsv). Implies   +--table.                               +╰──────────────────────────────────────────────────────────────────────────────╯ +╭─ Execution settings ─────────────────────────────────────────────────────────╮ +--api-urlVALIDATE_API_URL  URL of the PanGBank API.     +[env var: PANGBANK_API_URL] +[default:                   +https://pangbank-api.genos… +--verbose  Enable verbose logging.      +--progress--no-progress  Show progress bar while      +                                                  fetching pangenomes          +                                                  (disable with                +--no-progress).              +[default: progress]         +╰──────────────────────────────────────────────────────────────────────────────╯ + diff --git a/docs/img/pangbank-search-pangenomes_taxon_Chlamydia_download.svg b/docs/img/pangbank-search-pangenomes_taxon_Chlamydia_download.svg index 6824f1d..8e18134 100644 --- a/docs/img/pangbank-search-pangenomes_taxon_Chlamydia_download.svg +++ b/docs/img/pangbank-search-pangenomes_taxon_Chlamydia_download.svg @@ -19,77 +19,77 @@ font-weight: 700; } - .terminal-4280735415-matrix { + .terminal-1817628473-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-4280735415-title { + .terminal-1817628473-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-4280735415-r1 { fill: #c5c8c6 } -.terminal-4280735415-r2 { fill: #4e707b } -.terminal-4280735415-r3 { fill: #608ab1 } -.terminal-4280735415-r4 { fill: #868887 } -.terminal-4280735415-r5 { fill: #d0b344 } -.terminal-4280735415-r6 { fill: #98729f } -.terminal-4280735415-r7 { fill: #00823d;font-style: italic; } -.terminal-4280735415-r8 { fill: #68a0b3;font-weight: bold } -.terminal-4280735415-r9 { fill: #98a84b } + .terminal-1817628473-r1 { fill: #c5c8c6 } +.terminal-1817628473-r2 { fill: #4e707b } +.terminal-1817628473-r3 { fill: #608ab1 } +.terminal-1817628473-r4 { fill: #868887 } +.terminal-1817628473-r5 { fill: #d0b344 } +.terminal-1817628473-r6 { fill: #98729f } +.terminal-1817628473-r7 { fill: #00823d;font-style: italic; } +.terminal-1817628473-r8 { fill: #68a0b3;font-weight: bold } +.terminal-1817628473-r9 { fill: #98a84b } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -101,25 +101,25 @@ - + - - $ pangbank search-pangenomes --taxon "g__Chlamydia" --collection GTDB_refseq  ---outdir Chlamydia_pangenomes/ --download --no-progress -[13:45:44]INFO     Counting pangenomes for                    pangenomes.py:103 -taxon_name=g__Chlamydia &                   -substring_taxon_match=True &                -only_latest_release=True &                  -collection_name=GTDB_refseq -[13:45:45]INFO     Found 3 pangenomes matching search         pangenomes.py:112 -         criteria.                                   -INFO     Fetching information for the 3 pangenomes. pangenomes.py:114 -[13:45:46]INFO     The 3 pangenomes matching search criteria  pangenomes.py:152 -         are from 1 collection : 'GTDB_refseq' -INFO     Saving pangenomes information as TSV table to    main.py:289 -         file: pangenomes_information.tsv                  -INFO     Downloading 3 pangenome files to           pangenomes.py:480 -'Chlamydia_pangenomes/' + + $ pangbank search-pangenomes --taxon "g__Chlamydia" --collection GTDB_refseq  +--outdir Chlamydia_pangenomes/ --download --no-progress +[15:14:14]INFO     Counting pangenomes for                    pangenomes.py:103 +taxon_name=g__Chlamydia &                   +substring_taxon_match=True &                +only_latest_release=True &                  +collection_name=GTDB_refseq +INFO     Found 3 pangenomes matching search         pangenomes.py:112 +         criteria.                                   +INFO     Fetching information for the 3 pangenomes. pangenomes.py:114 +[15:14:15]INFO     The 3 pangenomes matching search criteria  pangenomes.py:152 +         are from 1 collection : 'GTDB_refseq' +INFO     Printing pangenomes information as TSV table to  main.py:300 +         stdout                                            +INFO     Downloading 3 pangenome files to           pangenomes.py:480 +'Chlamydia_pangenomes/' diff --git a/docs/img/pangbank-search-pangenomes_taxon_Escherichia.svg b/docs/img/pangbank-search-pangenomes_taxon_Escherichia.svg index b112f52..b2181a8 100644 --- a/docs/img/pangbank-search-pangenomes_taxon_Escherichia.svg +++ b/docs/img/pangbank-search-pangenomes_taxon_Escherichia.svg @@ -1,4 +1,4 @@ - + - - + + - + - + - + - + - + - + - + - + - + - + - + - + - + + + + - + - + - - $ pangbank search-pangenomes --taxon "g__Escherichia" --no-progress -[13:45:41]INFO     Counting pangenomes for                    pangenomes.py:103 -taxon_name=g__Escherichia &                 -substring_taxon_match=True &                -only_latest_release=True -[13:45:42]INFO     Found 14 pangenomes matching search        pangenomes.py:112 -         criteria.                                   -INFO     Fetching information for the 14pangenomes.py:114 -         pangenomes.                                 -[13:45:43]INFO     The 14 pangenomes matching search criteria pangenomes.py:152 -         are from 2 collections : 'GTDB_refseq',     -'GTDB_all' -INFO     Saving pangenomes information as TSV table to    main.py:289 -         file: pangenomes_information.tsv                  + + $ pangbank search-pangenomes --taxon "g__Escherichia" --no-progress --table-path +pangenome_information.tsv +[15:14:11]INFO     Counting pangenomes for                    pangenomes.py:103 +taxon_name=g__Escherichia &                 +substring_taxon_match=True &                +only_latest_release=True +[15:14:12]INFO     Found 14 pangenomes matching search        pangenomes.py:112 +         criteria.                                   +INFO     Fetching information for the 14pangenomes.py:114 +         pangenomes.                                 +[15:14:13]INFO     The 14 pangenomes matching search criteria pangenomes.py:152 +         are from 2 collections : 'GTDB_all',        +'GTDB_refseq' +INFO     Saving pangenomes information as TSV table to    main.py:295 +         file: pangenome_information.tsv                   From 37e887ce198d12b9b63d4f01600708dadf7f1333 Mon Sep 17 00:00:00 2001 From: JeanMainguy Date: Wed, 4 Feb 2026 16:27:02 +0100 Subject: [PATCH 05/13] try global width [screenshots] --- .github/workflows/rich_codex.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/rich_codex.yml b/.github/workflows/rich_codex.yml index 3686def..6684620 100644 --- a/.github/workflows/rich_codex.yml +++ b/.github/workflows/rich_codex.yml @@ -14,6 +14,8 @@ jobs: runs-on: ubuntu-latest env: FORCE_COLOR: "true" + TERMINAL_WIDTH: 110 + steps: - name: Check out the repo uses: actions/checkout@v3 From d1d73f7be90c48cac15dca690e3080a340681d36 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Wed, 4 Feb 2026 15:28:19 +0000 Subject: [PATCH 06/13] Generate new screengrabs with rich-codex --- docs/img/pangbank-list-collections.svg | 96 +++++++++---------- ...ch-pangenomes_taxon_Chlamydia_download.svg | 90 ++++++++--------- ...nk-search-pangenomes_taxon_Escherichia.svg | 86 ++++++++--------- 3 files changed, 136 insertions(+), 136 deletions(-) diff --git a/docs/img/pangbank-list-collections.svg b/docs/img/pangbank-list-collections.svg index 3080099..0e6b24f 100644 --- a/docs/img/pangbank-list-collections.svg +++ b/docs/img/pangbank-list-collections.svg @@ -19,82 +19,82 @@ font-weight: 700; } - .terminal-2687182361-matrix { + .terminal-3958253087-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-2687182361-title { + .terminal-3958253087-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-2687182361-r1 { fill: #4e707b } -.terminal-2687182361-r2 { fill: #608ab1 } -.terminal-2687182361-r3 { fill: #c5c8c6 } -.terminal-2687182361-r4 { fill: #68a0b3;font-weight: bold } -.terminal-2687182361-r5 { fill: #868887 } -.terminal-2687182361-r6 { fill: #c5c8c6;font-style: italic; } -.terminal-2687182361-r7 { fill: #98729f;font-weight: bold } -.terminal-2687182361-r8 { fill: #68a0b3 } + .terminal-3958253087-r1 { fill: #4e707b } +.terminal-3958253087-r2 { fill: #608ab1 } +.terminal-3958253087-r3 { fill: #c5c8c6 } +.terminal-3958253087-r4 { fill: #68a0b3;font-weight: bold } +.terminal-3958253087-r5 { fill: #868887 } +.terminal-3958253087-r6 { fill: #c5c8c6;font-style: italic; } +.terminal-3958253087-r7 { fill: #98729f;font-weight: bold } +.terminal-3958253087-r8 { fill: #68a0b3 } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -106,27 +106,27 @@ - + - - [15:14:10]INFO     Found 2 collections in PanGBank.                 main.py:174 - -Available collections of PanGBank:                                                                             -┏━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┓ -Collection Description               Latest releaseRelease dateTaxonomy     Pangenome Count -┡━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━┩ -GTDB_refseqA collection of pangenomes1.0.0         10 Jul 2025 GTDB:10-RS2261770            -built from GTDB species,   -each represented by at     -least 15 genomes from      -RefSeq.                    -├─────────────┼────────────────────────────┼────────────────┼──────────────┼───────────────┼─────────────────┤ -GTDB_all   A collection of pangenomes1.0.0         05 Aug 2025 GTDB:10-RS2264351            -built from GTDB species,   -each represented by at     -least 15 genomes from      -RefSeq or GenBank.         -└─────────────┴────────────────────────────┴────────────────┴──────────────┴───────────────┴─────────────────┘ + + [15:28:11]INFO     Found 2 collections in PanGBank.                 main.py:174 + +Available collections of PanGBank:                                                                             +┏━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┓ +Collection Description               Latest releaseRelease dateTaxonomy     Pangenome Count +┡━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━┩ +GTDB_refseqA collection of pangenomes1.0.0         10 Jul 2025 GTDB:10-RS2261770            +built from GTDB species,   +each represented by at     +least 15 genomes from      +RefSeq.                    +├─────────────┼────────────────────────────┼────────────────┼──────────────┼───────────────┼─────────────────┤ +GTDB_all   A collection of pangenomes1.0.0         05 Aug 2025 GTDB:10-RS2264351            +built from GTDB species,   +each represented by at     +least 15 genomes from      +RefSeq or GenBank.         +└─────────────┴────────────────────────────┴────────────────┴──────────────┴───────────────┴─────────────────┘ diff --git a/docs/img/pangbank-search-pangenomes_taxon_Chlamydia_download.svg b/docs/img/pangbank-search-pangenomes_taxon_Chlamydia_download.svg index 8e18134..a755d60 100644 --- a/docs/img/pangbank-search-pangenomes_taxon_Chlamydia_download.svg +++ b/docs/img/pangbank-search-pangenomes_taxon_Chlamydia_download.svg @@ -19,77 +19,77 @@ font-weight: 700; } - .terminal-1817628473-matrix { + .terminal-3355889477-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-1817628473-title { + .terminal-3355889477-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-1817628473-r1 { fill: #c5c8c6 } -.terminal-1817628473-r2 { fill: #4e707b } -.terminal-1817628473-r3 { fill: #608ab1 } -.terminal-1817628473-r4 { fill: #868887 } -.terminal-1817628473-r5 { fill: #d0b344 } -.terminal-1817628473-r6 { fill: #98729f } -.terminal-1817628473-r7 { fill: #00823d;font-style: italic; } -.terminal-1817628473-r8 { fill: #68a0b3;font-weight: bold } -.terminal-1817628473-r9 { fill: #98a84b } + .terminal-3355889477-r1 { fill: #c5c8c6 } +.terminal-3355889477-r2 { fill: #4e707b } +.terminal-3355889477-r3 { fill: #608ab1 } +.terminal-3355889477-r4 { fill: #868887 } +.terminal-3355889477-r5 { fill: #d0b344 } +.terminal-3355889477-r6 { fill: #98729f } +.terminal-3355889477-r7 { fill: #00823d;font-style: italic; } +.terminal-3355889477-r8 { fill: #68a0b3;font-weight: bold } +.terminal-3355889477-r9 { fill: #98a84b } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -101,25 +101,25 @@ - + - - $ pangbank search-pangenomes --taxon "g__Chlamydia" --collection GTDB_refseq  ---outdir Chlamydia_pangenomes/ --download --no-progress -[15:14:14]INFO     Counting pangenomes for                    pangenomes.py:103 -taxon_name=g__Chlamydia &                   -substring_taxon_match=True &                -only_latest_release=True &                  -collection_name=GTDB_refseq -INFO     Found 3 pangenomes matching search         pangenomes.py:112 -         criteria.                                   -INFO     Fetching information for the 3 pangenomes. pangenomes.py:114 -[15:14:15]INFO     The 3 pangenomes matching search criteria  pangenomes.py:152 -         are from 1 collection : 'GTDB_refseq' -INFO     Printing pangenomes information as TSV table to  main.py:300 -         stdout                                            -INFO     Downloading 3 pangenome files to           pangenomes.py:480 -'Chlamydia_pangenomes/' + + $ pangbank search-pangenomes --taxon "g__Chlamydia" --collection GTDB_refseq  +--outdir Chlamydia_pangenomes/ --download --no-progress +[15:28:15]INFO     Counting pangenomes for                    pangenomes.py:103 +taxon_name=g__Chlamydia &                   +substring_taxon_match=True &                +only_latest_release=True &                  +collection_name=GTDB_refseq +[15:28:16]INFO     Found 3 pangenomes matching search         pangenomes.py:112 +         criteria.                                   +INFO     Fetching information for the 3 pangenomes. pangenomes.py:114 +INFO     The 3 pangenomes matching search criteria  pangenomes.py:152 +         are from 1 collection : 'GTDB_refseq' +INFO     Printing pangenomes information as TSV table to  main.py:300 +         stdout                                            +INFO     Downloading 3 pangenome files to           pangenomes.py:480 +'Chlamydia_pangenomes/' diff --git a/docs/img/pangbank-search-pangenomes_taxon_Escherichia.svg b/docs/img/pangbank-search-pangenomes_taxon_Escherichia.svg index b2181a8..51f59ef 100644 --- a/docs/img/pangbank-search-pangenomes_taxon_Escherichia.svg +++ b/docs/img/pangbank-search-pangenomes_taxon_Escherichia.svg @@ -19,74 +19,74 @@ font-weight: 700; } - .terminal-2891619263-matrix { + .terminal-2474678962-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-2891619263-title { + .terminal-2474678962-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-2891619263-r1 { fill: #c5c8c6 } -.terminal-2891619263-r2 { fill: #4e707b } -.terminal-2891619263-r3 { fill: #608ab1 } -.terminal-2891619263-r4 { fill: #868887 } -.terminal-2891619263-r5 { fill: #d0b344 } -.terminal-2891619263-r6 { fill: #98729f } -.terminal-2891619263-r7 { fill: #00823d;font-style: italic; } -.terminal-2891619263-r8 { fill: #68a0b3;font-weight: bold } -.terminal-2891619263-r9 { fill: #98a84b } + .terminal-2474678962-r1 { fill: #c5c8c6 } +.terminal-2474678962-r2 { fill: #4e707b } +.terminal-2474678962-r3 { fill: #608ab1 } +.terminal-2474678962-r4 { fill: #868887 } +.terminal-2474678962-r5 { fill: #d0b344 } +.terminal-2474678962-r6 { fill: #98729f } +.terminal-2474678962-r7 { fill: #00823d;font-style: italic; } +.terminal-2474678962-r8 { fill: #68a0b3;font-weight: bold } +.terminal-2474678962-r9 { fill: #98a84b } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -98,24 +98,24 @@ - + - - $ pangbank search-pangenomes --taxon "g__Escherichia" --no-progress --table-path -pangenome_information.tsv -[15:14:11]INFO     Counting pangenomes for                    pangenomes.py:103 -taxon_name=g__Escherichia &                 -substring_taxon_match=True &                -only_latest_release=True -[15:14:12]INFO     Found 14 pangenomes matching search        pangenomes.py:112 -         criteria.                                   -INFO     Fetching information for the 14pangenomes.py:114 -         pangenomes.                                 -[15:14:13]INFO     The 14 pangenomes matching search criteria pangenomes.py:152 -         are from 2 collections : 'GTDB_all',        -'GTDB_refseq' -INFO     Saving pangenomes information as TSV table to    main.py:295 -         file: pangenome_information.tsv                   + + $ pangbank search-pangenomes --taxon "g__Escherichia" --no-progress --table-path +pangenome_information.tsv +[15:28:13]INFO     Counting pangenomes for                    pangenomes.py:103 +taxon_name=g__Escherichia &                 +substring_taxon_match=True &                +only_latest_release=True +INFO     Found 14 pangenomes matching search        pangenomes.py:112 +         criteria.                                   +INFO     Fetching information for the 14pangenomes.py:114 +         pangenomes.                                 +[15:28:14]INFO     The 14 pangenomes matching search criteria pangenomes.py:152 +         are from 2 collections : 'GTDB_refseq',     +'GTDB_all' +INFO     Saving pangenomes information as TSV table to    main.py:295 +         file: pangenome_information.tsv                   From 85e0be101fe12dc769b08a69d69c8af8ac962e68 Mon Sep 17 00:00:00 2001 From: JeanMainguy Date: Wed, 4 Feb 2026 17:03:23 +0100 Subject: [PATCH 07/13] update changelog and readme --- CHANGELOG.md | 8 ++++---- README.md | 6 ++++-- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 05a4225..6e0f0ea 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,13 +11,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Mash sketch files are now validated using MD5 checksum to ensure integrity -- Added `--table-path` option to save TSV output to a file -- Added `--no-table` flag to disable table output completely +- Added `--table-path` option to `search-pangenomes` to save TSV output to a file +- Added `--no-table` flag to disable table output in `search-pangenomes` +- `list-collections` now automatically detects terminal vs redirected output: displays formatted table in interactive terminals, plain TSV when redirected to files or pipes ### Changed -- Table output now defaults to stdout instead of a file (previous default was `pangenomes_information.tsv`) -- Renamed `--table` option to `--table-path` for clarity +- `search-pangenomes` table output now defaults to stdout instead of a file (previous default was `pangenomes_information.tsv`) ## [0.1.1] - 2025-11-09 diff --git a/README.md b/README.md index 4d568cd..7a1e9e6 100644 --- a/README.md +++ b/README.md @@ -107,7 +107,9 @@ pangbank search-pangenomes --help pangbank list-collections ``` -Displays all pangenome collections available in PanGBank, along with their description and the number of pangenomes they contain. +Displays the list all pangenome collections available in PanGBank, along with their description and the number of pangenomes they contain. + +Output is formatted as a rich table in the terminal, or as plain TSV when redirected (e.g., `pangbank list-collections > collections.tsv`). ![`TERMINAL_WIDTH=110 pangbank list-collections`](docs/img/pangbank-list-collections.svg) @@ -119,7 +121,7 @@ pangbank search-pangenomes --taxon "g__Escherichia" ``` Searches PanGBank for pangenomes matching the given taxon. -Results are printed to **stdout** as a TSV table by default. Use `--table-path ` to save to a file instead (e.g., `--table-path pangenomes_information.tsv`), or `--no-table` to disable table output. +Results are printed to **stdout** as plain TSV by default (suitable for piping or redirection). Use `--table-path ` to save directly to a file (e.g., `--table-path pangenomes_information.tsv`), or `--no-table` to disable table output. ![`pangbank search-pangenomes --taxon "g__Escherichia" --no-progress --table-path pangenome_information.tsv`](docs/img/pangbank-search-pangenomes_taxon_Escherichia.svg) From c2a9455f35778957d12bcb47257308df1bd9be34 Mon Sep 17 00:00:00 2001 From: JeanMainguy Date: Wed, 4 Feb 2026 17:03:40 +0100 Subject: [PATCH 08/13] list collection goes to stdout and output plain TSV when redirected --- pangbank_cli/main.py | 8 +++++++- pangbank_cli/utils.py | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/pangbank_cli/main.py b/pangbank_cli/main.py index c9d23d1..582eb74 100644 --- a/pangbank_cli/main.py +++ b/pangbank_cli/main.py @@ -174,7 +174,13 @@ def list_collections( logger.info(f"Found {len(collections)} collections in PanGBank.") df = format_collections_to_dataframe(collections) - print_dataframe_as_rich_table(df, title="Available collections of PanGBank:") + + # Use rich formatting if interactive terminal, plain TSV if redirected + if sys.stdout.isatty(): + print_dataframe_as_rich_table(df, title="Available collections of PanGBank:") + else: + df.to_csv(sys.stdout, index=False, sep="\t") + print_yaml = False if print_yaml: yaml_collections = format_collections_to_yaml(collections) diff --git a/pangbank_cli/utils.py b/pangbank_cli/utils.py index 1f63d35..9935787 100644 --- a/pangbank_cli/utils.py +++ b/pangbank_cli/utils.py @@ -28,7 +28,7 @@ def print_dataframe_as_rich_table(df: pd.DataFrame, title: Optional[str] = None) except ValueError: pass # If not a valid integer, keep None - console = Console(stderr=True, width=terminal_width) + console = Console(width=terminal_width) table = Table( title=title, show_header=True, From 4a3a5654dd606c3d0f571791862156fb6de8b7f5 Mon Sep 17 00:00:00 2001 From: JeanMainguy Date: Wed, 4 Feb 2026 17:05:19 +0100 Subject: [PATCH 09/13] [screenshots] From f88afe72c4a7cde3ba311f53d4445a35e59ecc37 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Wed, 4 Feb 2026 16:06:39 +0000 Subject: [PATCH 10/13] Generate new screengrabs with rich-codex --- docs/img/pangbank-list-collections.svg | 109 +++++------------- ...ch-pangenomes_taxon_Chlamydia_download.svg | 90 +++++++-------- ...nk-search-pangenomes_taxon_Escherichia.svg | 86 +++++++------- 3 files changed, 117 insertions(+), 168 deletions(-) diff --git a/docs/img/pangbank-list-collections.svg b/docs/img/pangbank-list-collections.svg index 0e6b24f..6c653d7 100644 --- a/docs/img/pangbank-list-collections.svg +++ b/docs/img/pangbank-list-collections.svg @@ -1,4 +1,4 @@ - + - - + + - - + + - - + + - - + + - - + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + - + - - [15:28:11]INFO     Found 2 collections in PanGBank.                 main.py:174 - -Available collections of PanGBank:                                                                             -┏━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┓ -Collection Description               Latest releaseRelease dateTaxonomy     Pangenome Count -┡━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━┩ -GTDB_refseqA collection of pangenomes1.0.0         10 Jul 2025 GTDB:10-RS2261770            -built from GTDB species,   -each represented by at     -least 15 genomes from      -RefSeq.                    -├─────────────┼────────────────────────────┼────────────────┼──────────────┼───────────────┼─────────────────┤ -GTDB_all   A collection of pangenomes1.0.0         05 Aug 2025 GTDB:10-RS2264351            -built from GTDB species,   -each represented by at     -least 15 genomes from      -RefSeq or GenBank.         -└─────────────┴────────────────────────────┴────────────────┴──────────────┴───────────────┴─────────────────┘ + + [16:06:31]INFO     Found 2 collections in PanGBank.                 main.py:174 +Collection      Description     Latest release  Release date    Taxonomy        Pangenome Count +GTDB_refseq     A collection of pangenomes built from GTDB species, each represented by at least 15 genomes from RefSeq.        1.0.0   10 Jul 2025      +GTDB:10-RS226   1770 +GTDB_all        A collection of pangenomes built from GTDB species, each represented by at least 15 genomes from RefSeq or GenBank.     1.0.0   05 Aug 2025      +GTDB:10-RS226   4351 diff --git a/docs/img/pangbank-search-pangenomes_taxon_Chlamydia_download.svg b/docs/img/pangbank-search-pangenomes_taxon_Chlamydia_download.svg index a755d60..b071a93 100644 --- a/docs/img/pangbank-search-pangenomes_taxon_Chlamydia_download.svg +++ b/docs/img/pangbank-search-pangenomes_taxon_Chlamydia_download.svg @@ -19,77 +19,77 @@ font-weight: 700; } - .terminal-3355889477-matrix { + .terminal-937873522-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-3355889477-title { + .terminal-937873522-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-3355889477-r1 { fill: #c5c8c6 } -.terminal-3355889477-r2 { fill: #4e707b } -.terminal-3355889477-r3 { fill: #608ab1 } -.terminal-3355889477-r4 { fill: #868887 } -.terminal-3355889477-r5 { fill: #d0b344 } -.terminal-3355889477-r6 { fill: #98729f } -.terminal-3355889477-r7 { fill: #00823d;font-style: italic; } -.terminal-3355889477-r8 { fill: #68a0b3;font-weight: bold } -.terminal-3355889477-r9 { fill: #98a84b } + .terminal-937873522-r1 { fill: #c5c8c6 } +.terminal-937873522-r2 { fill: #4e707b } +.terminal-937873522-r3 { fill: #608ab1 } +.terminal-937873522-r4 { fill: #868887 } +.terminal-937873522-r5 { fill: #d0b344 } +.terminal-937873522-r6 { fill: #98729f } +.terminal-937873522-r7 { fill: #00823d;font-style: italic; } +.terminal-937873522-r8 { fill: #68a0b3;font-weight: bold } +.terminal-937873522-r9 { fill: #98a84b } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -101,25 +101,25 @@ - + - - $ pangbank search-pangenomes --taxon "g__Chlamydia" --collection GTDB_refseq  ---outdir Chlamydia_pangenomes/ --download --no-progress -[15:28:15]INFO     Counting pangenomes for                    pangenomes.py:103 -taxon_name=g__Chlamydia &                   -substring_taxon_match=True &                -only_latest_release=True &                  -collection_name=GTDB_refseq -[15:28:16]INFO     Found 3 pangenomes matching search         pangenomes.py:112 -         criteria.                                   -INFO     Fetching information for the 3 pangenomes. pangenomes.py:114 -INFO     The 3 pangenomes matching search criteria  pangenomes.py:152 -         are from 1 collection : 'GTDB_refseq' -INFO     Printing pangenomes information as TSV table to  main.py:300 -         stdout                                            -INFO     Downloading 3 pangenome files to           pangenomes.py:480 -'Chlamydia_pangenomes/' + + $ pangbank search-pangenomes --taxon "g__Chlamydia" --collection GTDB_refseq  +--outdir Chlamydia_pangenomes/ --download --no-progress +[16:06:35]INFO     Counting pangenomes for                    pangenomes.py:103 +taxon_name=g__Chlamydia &                   +substring_taxon_match=True &                +only_latest_release=True &                  +collection_name=GTDB_refseq +[16:06:36]INFO     Found 3 pangenomes matching search         pangenomes.py:112 +         criteria.                                   +INFO     Fetching information for the 3 pangenomes. pangenomes.py:114 +[16:06:37]INFO     The 3 pangenomes matching search criteria  pangenomes.py:152 +         are from 1 collection : 'GTDB_refseq' +INFO     Printing pangenomes information as TSV table to  main.py:306 +         stdout                                            +INFO     Downloading 3 pangenome files to           pangenomes.py:480 +'Chlamydia_pangenomes/' diff --git a/docs/img/pangbank-search-pangenomes_taxon_Escherichia.svg b/docs/img/pangbank-search-pangenomes_taxon_Escherichia.svg index 51f59ef..2a80a16 100644 --- a/docs/img/pangbank-search-pangenomes_taxon_Escherichia.svg +++ b/docs/img/pangbank-search-pangenomes_taxon_Escherichia.svg @@ -19,74 +19,74 @@ font-weight: 700; } - .terminal-2474678962-matrix { + .terminal-2241239990-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-2474678962-title { + .terminal-2241239990-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-2474678962-r1 { fill: #c5c8c6 } -.terminal-2474678962-r2 { fill: #4e707b } -.terminal-2474678962-r3 { fill: #608ab1 } -.terminal-2474678962-r4 { fill: #868887 } -.terminal-2474678962-r5 { fill: #d0b344 } -.terminal-2474678962-r6 { fill: #98729f } -.terminal-2474678962-r7 { fill: #00823d;font-style: italic; } -.terminal-2474678962-r8 { fill: #68a0b3;font-weight: bold } -.terminal-2474678962-r9 { fill: #98a84b } + .terminal-2241239990-r1 { fill: #c5c8c6 } +.terminal-2241239990-r2 { fill: #4e707b } +.terminal-2241239990-r3 { fill: #608ab1 } +.terminal-2241239990-r4 { fill: #868887 } +.terminal-2241239990-r5 { fill: #d0b344 } +.terminal-2241239990-r6 { fill: #98729f } +.terminal-2241239990-r7 { fill: #00823d;font-style: italic; } +.terminal-2241239990-r8 { fill: #68a0b3;font-weight: bold } +.terminal-2241239990-r9 { fill: #98a84b } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + @@ -98,24 +98,24 @@ - + - - $ pangbank search-pangenomes --taxon "g__Escherichia" --no-progress --table-path -pangenome_information.tsv -[15:28:13]INFO     Counting pangenomes for                    pangenomes.py:103 -taxon_name=g__Escherichia &                 -substring_taxon_match=True &                -only_latest_release=True -INFO     Found 14 pangenomes matching search        pangenomes.py:112 -         criteria.                                   -INFO     Fetching information for the 14pangenomes.py:114 -         pangenomes.                                 -[15:28:14]INFO     The 14 pangenomes matching search criteria pangenomes.py:152 -         are from 2 collections : 'GTDB_refseq',     -'GTDB_all' -INFO     Saving pangenomes information as TSV table to    main.py:295 -         file: pangenome_information.tsv                   + + $ pangbank search-pangenomes --taxon "g__Escherichia" --no-progress --table-path +pangenome_information.tsv +[16:06:32]INFO     Counting pangenomes for                    pangenomes.py:103 +taxon_name=g__Escherichia &                 +substring_taxon_match=True &                +only_latest_release=True +[16:06:33]INFO     Found 14 pangenomes matching search        pangenomes.py:112 +         criteria.                                   +INFO     Fetching information for the 14pangenomes.py:114 +         pangenomes.                                 +[16:06:34]INFO     The 14 pangenomes matching search criteria pangenomes.py:152 +         are from 2 collections : 'GTDB_all',        +'GTDB_refseq' +INFO     Saving pangenomes information as TSV table to    main.py:301 +         file: pangenome_information.tsv                   From ac5d6626532c576d280daca4dd554d82b9925e92 Mon Sep 17 00:00:00 2001 From: JeanMainguy Date: Wed, 4 Feb 2026 17:10:48 +0100 Subject: [PATCH 11/13] remove list collection screenshot --- README.md | 2 - docs/img/pangbank-list-collections.svg | 82 -------------------------- 2 files changed, 84 deletions(-) delete mode 100644 docs/img/pangbank-list-collections.svg diff --git a/README.md b/README.md index 7a1e9e6..e5044d7 100644 --- a/README.md +++ b/README.md @@ -111,8 +111,6 @@ Displays the list all pangenome collections available in PanGBank, along with th Output is formatted as a rich table in the terminal, or as plain TSV when redirected (e.g., `pangbank list-collections > collections.tsv`). - -![`TERMINAL_WIDTH=110 pangbank list-collections`](docs/img/pangbank-list-collections.svg) ### Search for pangenomes diff --git a/docs/img/pangbank-list-collections.svg b/docs/img/pangbank-list-collections.svg deleted file mode 100644 index 6c653d7..0000000 --- a/docs/img/pangbank-list-collections.svg +++ /dev/null @@ -1,82 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [16:06:31]INFO     Found 2 collections in PanGBank.                 main.py:174 -Collection      Description     Latest release  Release date    Taxonomy        Pangenome Count -GTDB_refseq     A collection of pangenomes built from GTDB species, each represented by at least 15 genomes from RefSeq.        1.0.0   10 Jul 2025      -GTDB:10-RS226   1770 -GTDB_all        A collection of pangenomes built from GTDB species, each represented by at least 15 genomes from RefSeq or GenBank.     1.0.0   05 Aug 2025      -GTDB:10-RS226   4351 - - - - From b64cd6a1dee4d883d6427a9d2677a77e93c622dc Mon Sep 17 00:00:00 2001 From: JeanMainguy Date: Thu, 5 Feb 2026 09:45:14 +0100 Subject: [PATCH 12/13] reorganise readme --- README.md | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index e5044d7..1ec84af 100644 --- a/README.md +++ b/README.md @@ -118,11 +118,12 @@ Output is formatted as a rich table in the terminal, or as plain TSV when redire pangbank search-pangenomes --taxon "g__Escherichia" ``` -Searches PanGBank for pangenomes matching the given taxon. -Results are printed to **stdout** as plain TSV by default (suitable for piping or redirection). Use `--table-path ` to save directly to a file (e.g., `--table-path pangenomes_information.tsv`), or `--no-table` to disable table output. +![`pangbank search-pangenomes --taxon "g__Escherichia" --no-progress --table-path pangenome_information.tsv`](docs/img/pangbank-search-pangenomes_taxon_Escherichia.svg) -![`pangbank search-pangenomes --taxon "g__Escherichia" --no-progress --table-path pangenome_information.tsv`](docs/img/pangbank-search-pangenomes_taxon_Escherichia.svg) +This command searches PanGBank for pangenomes matching the given taxon. +Results are printed to **stdout** as plain TSV by default (suitable for piping or redirection). Use `--table-path ` to save directly to a file (e.g., `--table-path pangenomes_information.tsv`), or `--no-table` to disable table output. + ### Download pangenomes @@ -133,10 +134,11 @@ pangbank search-pangenomes --taxon "g__Chlamydia" \ --download ``` -Searches for **Chlamydia** pangenomes in the `GTDB_refseq` collection, then downloads the corresponding pangenome files into `Chlamydia_pangenomes/`. - ![`pangbank search-pangenomes --taxon "g__Chlamydia" --collection GTDB_refseq --outdir Chlamydia_pangenomes/ --download --no-progress`](docs/img/pangbank-search-pangenomes_taxon_Chlamydia_download.svg) +This command searches for **Chlamydia** pangenomes in the `GTDB_refseq` collection, then downloads the corresponding pangenome files into `Chlamydia_pangenomes/`. + + ### Match a genome to an existing pangenome ```bash From cfac4a87b7c67a5f2c4e5db6e4de0ac1c7bc5c66 Mon Sep 17 00:00:00 2001 From: JeanMainguy Date: Thu, 5 Feb 2026 09:45:36 +0100 Subject: [PATCH 13/13] simplify rich codex wf --- .github/workflows/rich_codex.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/rich_codex.yml b/.github/workflows/rich_codex.yml index 6684620..ad75db9 100644 --- a/.github/workflows/rich_codex.yml +++ b/.github/workflows/rich_codex.yml @@ -14,7 +14,6 @@ jobs: runs-on: ubuntu-latest env: FORCE_COLOR: "true" - TERMINAL_WIDTH: 110 steps: - name: Check out the repo