Skip to content

Migrating to toolkit#113

Merged
SuperdoerTrav merged 7 commits intomainfrom
migrating_to_toolkit
May 6, 2026
Merged

Migrating to toolkit#113
SuperdoerTrav merged 7 commits intomainfrom
migrating_to_toolkit

Conversation

@SuperdoerTrav
Copy link
Copy Markdown
Collaborator

This update refactors SSAPy toward a leaner core package and aligns higher-level utilities with SSAPy-Toolkit.
Summary of changes

Removed plotting-focused tests and reduced plotting exposure in core SSAPy
Removed higher-level compute utilities that are now maintained in SSAPy-Toolkit
Updated top-level and docs README content to reference SSAPy-Toolkit
Added new symplectic propagators:
LeapfrogPropagator
Leapfrog4Propagator
Updated tests to reflect the reduced core surface area
Updated packaging and project metadata (pyproject.toml, requirements, docs text, etc.)
Removed the obsolete simple.py module and associated test
Adjusted tests that depend on unavailable Git LFS data so they skip only when required assets are missing
Removed core dependency declarations for:
matplotlib
hdf5-related support
pandas
imageio
Compute / API cleanup

The core ssapy.compute module was reduced to keep orbit propagation and observation geometry functionality in SSAPy while leaving higher-level utilities to the toolkit. Tests were updated accordingly.
Plotting / toolkit split

README and documentation text now point users to the companion project:

SSAPy-Toolkit https://github.com/llnl/SSAPy-Toolkit
for:

plotting tools
higher-level utilities
convenience workflows
additional coordinate conversion helpers
Lambertian brightness / magnitude utilities
New propagators

Added fixed-step symplectic propagators for conservative dynamics workflows:

LeapfrogPropagator
Leapfrog4Propagator
These are intended primarily for conservative force models and long-term orbital integrations.
Dependency cleanup

To better separate the SSAPy core package from higher-level visualization and auxiliary workflows, the following dependency categories were removed from core SSAPy requirements where applicable:

matplotlib
pandas
imageio
hdf5-related support
This keeps the core package lighter and shifts plotting / auxiliary workflow dependencies away from the base install.
Packaging / metadata

Updated package metadata and dependency declarations to better reflect the current core package structure, including updates to:

pyproject.toml
requirements.txt
README / docs text
Test updates

Removed obsolete tests for deleted or toolkit-moved functionality
Removed tests/test_simple.py
Updated compute and orbit tests
Added tests for the new leapfrog propagators

@SuperdoerTrav SuperdoerTrav merged commit 690d5d8 into main May 6, 2026
@codecov-commenter
Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 94.33962% with 6 lines in your changes missing coverage. Please review.
✅ Project coverage is 59.18%. Comparing base (8a22691) to head (4262a59).
⚠️ Report is 1 commits behind head on main.

Files with missing lines Patch % Lines
ssapy/propagator.py 94.00% 6 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #113      +/-   ##
==========================================
- Coverage   64.06%   59.18%   -4.87%     
==========================================
  Files          18       17       -1     
  Lines        6992     5569    -1423     
==========================================
- Hits         4479     3296    -1183     
+ Misses       2513     2273     -240     
Flag Coverage Δ
unittests 59.18% <94.34%> (-4.87%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
ssapy/__init__.py 100.00% <ø> (ø)
ssapy/compute.py 57.25% <100.00%> (-29.82%) ⬇️
ssapy/io.py 65.13% <100.00%> (+27.98%) ⬆️
ssapy/plotUtils.py 16.36% <100.00%> (-51.07%) ⬇️
ssapy/utils.py 52.87% <100.00%> (-2.47%) ⬇️
ssapy/propagator.py 85.98% <94.00%> (-4.29%) ⬇️

... and 4 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

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.

2 participants