nyx-space / nyx

Nyx is a high fidelity, fast, reliable and validated astrodynamics toolkit library written in Rust and available in Python
https://nyxspace.com
GNU Affero General Public License v3.0
159 stars 18 forks source link

Refactor Nyx in Python #311

Open ChristopherRabotin opened 3 months ago

ChristopherRabotin commented 3 months ago

High level description

The first part of this work will include creating, refactoring, and re-enabling the Python interface in Nyx, which was removed in #305 for the sake of time.

Nyx is currently one (giant) library. I've learned on ANISE that it's very useful to separate out the code in a workspace. Nyx-Insight may eventually be an additional package to Nyx in the future.

Requirements

Basically, make it a pleasure to use, just like it's a pleasure to use ANISE in Python and in Rust.

Test plans

Reenable all of the test plans currently in the code, but disabled in CI.

ChristopherRabotin commented 2 months ago

This should be the last task for version 2.0.0 to ensure that other changes in that milestone don't require additional rewrites.