• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

openvax / pyensembl / 25816687834
85%
master: 83%

Build:
Build:
LAST BUILD BRANCH: main
DEFAULT BRANCH: master
Ran 13 May 2026 05:57PM UTC
Jobs 4
Files 22
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

13 May 2026 05:53PM UTC coverage: 85.426% (+0.5%) from 84.971%
25816687834

push

github

web-flow
Preserve FASTA-header versions in SequenceData (closes #351) (#355)

* Preserve FASTA-header versions in SequenceData (#351)

`_parse_header_id` no longer strips ENS .N version suffixes — the
versioned form is preserved as the canonical FASTA identifier, with
the version treated as authoritative source-of-truth for the
sequence's identity. Also added pipe-delimited (GENCODE) header
handling: the leading field before `|` is now the identifier rather
than the whole pipe-packed blob with everything-after-the-first-dot
silently dropped.

`SequenceData` now maintains:
  - `_fasta_dictionary` keyed on whichever form the header carried
    (versioned when available, bare otherwise)
  - `_stripped_index: bare_ens_id -> versioned_id`, so bare-ID
    lookups still resolve against a versioned FASTA (GENCODE case)
  - `_versions: id -> int`, exposed via the new `fasta_version(id)`
    accessor for downstream sanity-checking of FASTA / GTF alignment

`lookup_sequence_with_version_fallback` resolves both directions —
versioned caller against bare FASTA (existing Ensembl path) and
bare caller against versioned FASTA (new GENCODE path) — without
the runtime `.rsplit` on every miss the old helper did. Defensive
fallback for callers that hold a `SequenceData` without the new
attributes (e.g. unpickled old object).

Bumped the on-disk pickle filename to `<fasta>.v2.pickle` so stale
caches from the previous bare-key layout get ignored instead of
loaded.

Closes #351. Companion to gtfparse#67 (attribute_aliases +
cast_version_columns), which together close out the GENCODE
compatibility regression originally reported in #335.

* Address PR #355 review: drop pickle schema bump, surface fasta_version

* Reverted FASTA_PICKLE_SCHEMA_VERSION + the .v2.pickle filename suffix.
  v1 (bare-keyed) pickles load cleanly under the new code path - the
  rebuilt _stripped_index stays empty, but lookups still resolve via
  the version-stripped retry path so Ensembl-style callers see no
 ... (continued)

60 of 61 new or added lines in 5 files covered. (98.36%)

1653 of 1935 relevant lines covered (85.43%)

3.42 hits per line

Uncovered Changes

Lines Coverage ∆ File
1
86.78
5.88% pyensembl/sequence_data.py
Jobs
ID Job ID Ran Files Coverage
1 python-3.9 - 25816687834.1 13 May 2026 05:59PM UTC 22
85.43
GitHub Action Run
2 python-3.12 - 25816687834.2 13 May 2026 05:58PM UTC 22
85.43
GitHub Action Run
3 python-3.10 - 25816687834.3 13 May 2026 05:58PM UTC 22
85.43
GitHub Action Run
4 python-3.11 - 25816687834.4 13 May 2026 05:57PM UTC 22
85.43
GitHub Action Run
Source Files on build 25816687834
  • Tree
  • List 22
  • Changed 6
  • Source Changed 6
  • Coverage Changed 5
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #25816687834
  • d25332bf on github
  • Prev Build on main (#25810734911)
  • Next Build on main (#25818956626)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc