feat: Add coordinate_system_zero_based parameter to all table providers #36
+1,138
−111
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
coordinate_system_zero_based: boolparameter to all TableProvider constructors (VCF, GFF, BAM, BED, CRAM)true(default), positions are converted from noodles' internal 1-based system to 0-based coordinatesbio.coordinate_system_zero_basedDetails
This change supports the polars-bio initiative (issue #259) to switch the default coordinate system from 1-based to 0-based for consistency with common bioinformatics tools and conventions.
Implementation
COORDINATE_SYSTEM_METADATA_KEYconstant in bio-format-corephysical_exec.rsnow converts positions when reading records:start = noodles_position.get() - 1whencoordinate_system_zero_based=trueFiles Changed
Test plan
🤖 Generated with Claude Code