Skip to content

Migrate CI and install docs to uv - #219

Merged
gomezzz merged 0 commit into
fix/advance-time-reentrancyfrom
ci/uv-migration
Jul 24, 2026
Merged

Migrate CI and install docs to uv#219
gomezzz merged 0 commit into
fix/advance-time-reentrancyfrom
ci/uv-migration

Conversation

@gomezzz

@gomezzz gomezzz commented Jul 24, 2026

Copy link
Copy Markdown
Collaborator

Summary

Switches CI and install docs to uv (Python 3.8 — the only Python with pip wheels for pykep 2.6, the 2.x API PASEOS depends on). conda/environment.yml is kept as the cross-platform + newer-Python path.

  • CI + docs → uv: rewrite run_tests.yml to astral-sh/setup-uv on Python 3.8, replacing the deprecated provision-with-micromamba@main that had CI failing; README build instructions lead with uv. A [tool.uv] override drops pykep's broken sklearn shim dependency; MPLBACKEND=Agg keeps the headless visualization test from blocking; pytest-timeout added as a safety net.
  • Thermal test robustness: test_thermal runs in real-time mode; a 200x multiplier made slow/loaded runners spiral into unbounded catch-up. Lowered to 20x with a generous heated-up assertion window.

Result: 36/36 tests pass on the uv/Python 3.8 runner (~4 min), lint + format green.

Test plan

  • CI Running tests green — 36 passed
  • CI Ruff Lint and Format Check green

⚠️ Top of the stack. Merge order: #217 (pyproject) → #218 (ruff) → #220 (advance_time fix) → #219 (this).

Note: the required advance_time engine fix now lives in its own PR (#220), on which this is based.

@github-actions

github-actions Bot commented Jul 24, 2026

Copy link
Copy Markdown

Overall Coverage

Coverage Report
FileStmtsMissCoverMissing
__init__.py33197%48
paseos.py1441292%67–68, 145–146, 203, 218, 236, 245, 263, 294, 302, 305
activities
   activity_manager.py43393%46, 74, 156
   activity_processor.py570100% 
   activity_runner.py621084%80–81, 84, 104, 108–109, 112–113, 122, 125
actors
   actor_builder.py1853283%24–25, 27, 30, 33, 223–225, 256–258, 312, 316–317, 320–321, 342, 344–345, 348–349, 488, 545, 573, 585–586, 588–589, 596–597, 604–605
   base_actor.py1281886%82, 104, 120, 167, 207–209, 230, 239, 256, 277, 283–286, 292, 307, 362
   ground_station_actor.py15380%47, 51, 53
   spacecraft_actor.py60198%122
central_body
   central_body.py65592%68, 177–178, 186–187
   is_in_line_of_sight.py581279%107–108, 110, 112–117, 124, 168, 188
   mesh_between_points.py35294%64, 72
   sphere_between_points.py26869%35, 37–38, 48, 50–51, 63–64
communication
   find_next_window.py200100% 
   get_communication_window.py23291%38, 64
geometric_model
   geometric_model.py281643%32, 34–38, 47, 49, 61, 76, 78–79, 92–93, 101–102
power
   charge_model.py16194%50
   discharge_model.py7186%34
   power_device_type.py40100% 
radiation
   radiation_model.py320100% 
tests
   activity_test.py56395%92, 95–96
   actor_builder_test.py630100% 
   communication_window_test.py48198%177
   custom_propagator_test.py250100% 
   custom_property_test.py230100% 
   default_cfg_test.py90100% 
   eclipse_test.py10190%20
   event_based_test.py230100% 
   import_test.py6183%13
   init_test.py8188%16
   line_of_sight_test.py62494%143–146
   mesh_test.py119397%119, 137, 145
   multiple_instance_test.py120100% 
   operations_monitor_test.py310100% 
   power_test.py290100% 
   radiation_test.py590100% 
   test_utils.py170100% 
   thermal_model_test.py30197%70
   time_multiplier_test.py260100% 
   visualization_test.py18194%30
thermal
   thermal_model.py750100% 
utils
   check_cfg.py611870%31, 40, 46, 60–62, 67, 70–72, 75–77, 80–82, 98, 103
   load_default_cfg.py90100% 
   operations_monitor.py71396%127–128, 130
   reference_frame.py40100% 
   set_log_level.py60100% 
visualization
   animation.py18667%28–31, 36, 45
   plot.py9367%29–30, 32
   space_animation.py2152389%109–110, 125, 148–149, 183, 207, 214, 220, 330, 353–355, 360, 369–370, 374, 410, 416–417, 448, 462, 473
TOTAL218319691% 

Tests Skipped Failures Errors Time
36 0 💤 0 ❌ 0 🔥 3m 59s ⏱️

@gomezzz
gomezzz changed the base branch from ci/ruff-lint-format to fix/advance-time-reentrancy July 24, 2026 09:09
@gomezzz
gomezzz merged commit 9020a25 into fix/advance-time-reentrancy Jul 24, 2026
1 check passed
@gomezzz
gomezzz force-pushed the fix/advance-time-reentrancy branch from 5e48f0f to f9fc9df Compare July 24, 2026 09:33
@gomezzz gomezzz mentioned this pull request Jul 24, 2026
2 tasks
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