Skip to content

Bump version to 0.5.0#82

Merged
rhannequin merged 1 commit into
mainfrom
bump-v0.5.0
Jun 22, 2026
Merged

Bump version to 0.5.0#82
rhannequin merged 1 commit into
mainfrom
bump-v0.5.0

Conversation

@rhannequin

@rhannequin rhannequin commented Jun 22, 2026

Copy link
Copy Markdown
Owner

[0.5.0] - 2026-06-23

Features

  • Read binary PCK (DAF/PCK) orientation kernels via Ephem::PCK, exposing a
    body's Euler angles and rates over time (angles_at, orientation_at), the
    foundation for DE440-grade lunar libration (#76, #80)
  • Add Ephem::Core::Orientation (Euler angles + optional rates) and
    Ephem::Core::Rotation (kernel-agnostic rotation-matrix helpers), plus
    Orientation#to_matrix / OrientationSegment#matrix_at for the built-in
    3-1-3 (Z-X-Z) reference→body convention
  • Excerpt and the excerpt CLI now support binary PCK kernels, detecting the
    kernel kind automatically
  • Download binary PCK lunar orientation kernels from NAIF via Ephem::Download
  • Add #inspect and #to_s to State for easier debugging (#67)

Improvements

  • Route queries to the covering segment when a body/pair spans multiple
    time-split segments (SPK and PCK), with no overhead for single-segment keys
  • Share the type-2 Chebyshev machinery between SPK and PCK segments
  • Evaluate position and velocity in a single Chebyshev pass
    (ChebyshevPolynomial.evaluate_with_derivative), speeding up every state /
    orientation query (compute_and_differentiate, state_at, orientation_at)
    with bit-for-bit identical results
  • Correct the documented velocity unit to km/day (the actual, validated value)
  • Remove the numo-narray dependency (#65)
  • Skip derivative evaluation in Segment#compute (#57)
  • Hoist loop-invariant t2 computation in Chebyshev evaluation (#58)
  • Cache the RecordParser instance in SummaryManager (#63)
  • Eliminate a redundant read_record call in SummaryManager (#62)
  • Replace duplicated endianness format lookups with shared constants (#64)
  • Replace instance_variable_get with proper attr_readers in Excerpt
    (#66)
  • Use separate error margins for position and velocity validation (#61)
  • Add a comprehensive benchmark suite (#68)
  • Upgrade default Ruby to 4.0.5 (#81)
  • Match SPICE last-loaded-wins precedence for overlapping segments (#83)
  • Add a dedicated spec for the shared type-2 Chebyshev evaluation (#84)
  • Bump standard from 1.50.0 to 1.55.0 by @dependabot (#45, #46, #56,
    #78)
  • Bump actions/checkout from 4 to 7 by @dependabot (#44, #52, #79)
  • Bump rake from 13.3.0 to 13.4.2 by @dependabot (#48, #73)
  • Bump zlib from 3.2.1 to 3.2.3 by @dependabot (#49, #70)
  • Bump rspec from 3.13.1 to 3.13.2 by @dependabot (#47)
  • Bump parallel from 1.27.0 to 1.28.0 by @dependabot (#71)
  • Bump benchmark-ips from 2.14.0 to 2.15.1 by @dependabot (#75)
  • Bump json from 2.18.1 to 2.19.2 by @dependabot (#77)

Bug fixes

  • Fix compute_and_differentiate returning mismatched velocities for an array
    of times
  • Fix precision loss in time_to_seconds for dates far from J2000 (#60)

Full Changelog: v0.4.1...v0.5.0

@rhannequin rhannequin merged commit 8ca9b82 into main Jun 22, 2026
57 checks passed
@rhannequin rhannequin deleted the bump-v0.5.0 branch June 22, 2026 22:36
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