Skip to content

COMPATIBILITY_NOTES_6.8.0

TheDaniel166 edited this page Oct 15, 2026 · 3 revisions

Compatibility Notes - Moira 6.8.0

Additive small-body orbital classification and nullable open-conic fields

Moira 6.8.0 preserves existing public Python function signatures and REST schemas while adding SBDB osculating asteroid classification and admitting small bodies to heliocentric orbital element routes.

Python surface

  • orbit_class and orbit_classes_at are added to the public API under moira.orbits, moira.predictive, and moira.facade.
  • Asteroids and small bodies are admitted to orbit_class. Non-small bodies (major planets, the Sun, the Moon, and barycenters) explicitly raise OrbitalBodyNotSupportedError.
  • osculating_elements continues to evaluate small bodies and planets identically.

REST surface

  • POST /v1/orbits/elements: Existing consumers of the 9 historical planets receive unchanged, non-null response payloads. When small bodies with parabolic or hyperbolic orbits ($e \ge 1.0$) are requested, the open-conic fields semi_major_axis_au, aphelion_distance_au, orbital_period_days, mean_anomaly_deg, and mean_motion_deg_per_day serialize as null.
  • POST /v1/orbits/distance-extremes: Admits small bodies. If an open conic lacks an apocenter or an extremum lies outside the evaluated search interval, the route returns HTTP 422 with category orbital_event_availability.
  • New endpoints POST /v1/orbits/class and POST /v1/orbits/class/batch are registered under the orbits OpenAPI tag.

Clone this wiki locally