feat!: milliseconds on the axis, readouts on the recording, a date-only start, and the widened vocabularies - #30
Merged
Conversation
…ures and docs from it Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…t, and the widened vocabularies Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…t modules still said otherwise Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… §4's SHOULD Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ixtures and docs from it Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…rap two docstrings Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Implements the specification change in divejson/divejson#30, pinning
SPEC_REFat its squash and re-vendoringschema/,fixtures/anddocs/from it. The profile axis is milliseconds: every reader multiplies its source's seconds by a thousand before rounding (converter.milliseconds), so a fraction the source states keeps its place, and the UDDF writer writes<divetime>back as seconds with a fraction only where needed;.ssrf'sM:SSclock, which takes a second factor on the way to the axis, is held to the representability bound as a product. A device's readouts —surface_pressure,cns_start,cns_end,otu_start,otu_end— and FIT's salinity setting sit on the recording its file produced; a figure a source states once for the dive (UDDF<surfacepressure>, Subsurface@cns/@otu) goes to the primary recording, reportedresolvedwhere the dive has two, and a readout alone makes a recording. A dive whose source states a date and no time of day starts on the bare date rather than midnight, the validator accepts that on a dive'sstarted_atonly, and the UDDF writer writes the bare<datetime>(the suite's XSD pass widens that one element's spelling for itself).po2_limitisppo2_limit,notesis no longer cut, anddivejson validateno longer checks member order.Verified with
pytest(1150 passed),divejson conform fixtures --strict(77 cases) and the pin's byte and ancestor checks against the specification'smain; ruff and mypy unchanged frommain.🤖 Generated with Claude Code