Skip to content

Release v0.0.2#10

Merged
rhannequin merged 2 commits into
mainfrom
release-v0.0.2
Jul 14, 2026
Merged

Release v0.0.2#10
rhannequin merged 2 commits into
mainfrom
release-v0.0.2

Conversation

@rhannequin

@rhannequin rhannequin commented Jul 13, 2026

Copy link
Copy Markdown
Owner

0.0.2 - 2026-07-14

The first functional release. It ships the numeric core and the two value
objects the rest of the library is built on: Instant and Duration. The
scale conversions are not here yet, so an instant is built directly from a
TAI Julian Date for now.

Features

  • Add Numeric::TwoPartFloat, a number kept as a high and a low Float for
    about twice the precision of one, with Shewchuk error-free arithmetic
  • Add Numeric::Exact, a value kept as an exact Rational, with no rounding
  • Add the precision contract: every value carries a precision, :standard or
    :exact, set when it is built and never changed. Mixing the two promotes
    the result to :exact instead of dropping to :standard
  • Add Horologium.configure for the set-once default precision, and
    Horologium.with_precision for a scoped, per-fiber override
  • Add Instant, a frozen point on the TAI timeline, built with
    Instant.from_tai_julian_date
  • Add Duration, a frozen span in SI seconds, built with Duration.seconds,
    Duration.days, and Duration.nanoseconds
  • Add instant and duration arithmetic: shift an instant by a duration, and
    subtract two instants to measure the duration between them
  • Add Instant#equal_within? for comparison inside a tolerance
  • Guard against meaningless operations: adding two instants raises
    DimensionalError

Full Changelog: v0.0.1...v0.0.2

This adds documentation for the first proper version of the gem.
Base automatically changed from prepare-v0.0.2 to main July 14, 2026 20:18
@rhannequin
rhannequin merged commit ef64af8 into main Jul 14, 2026
44 checks passed
@rhannequin
rhannequin deleted the release-v0.0.2 branch July 14, 2026 20:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant