COSMICA v0.6.0 is a breaking cleanup and maintenance release. It removes legacy APIs that had been deprecated in previous releases, drops Python 3.12 support, and continues the migration toward the newer typed model layer. It also adds gateway-network helpers and includes several CI, packaging, and security hardening updates.
Breaking Changes
Remove the experimental packet-routing module
The experimental_packet_routing module has been removed. This module was experimental and is no longer part of the public package surface.
by @shunichironomura in #113
Remove deprecated classes, functions, and TOML loaders
Deprecated compatibility APIs have been removed across cosmica.dynamics, cosmica.models, cosmica.topology, and cosmica.visualization.
Notable removals include the old orbit and constellation classes/functions from cosmica.dynamics, TOML-based object loading helpers, and old topology-builder support for the previous constellation model. Users should migrate to the newer model-layer APIs such as cosmica.models.SatelliteOrbitModel, cosmica.models.CircularSatelliteOrbitModel, cosmica.models.EllipticalSatelliteOrbitModel, cosmica.models.Constellation, and cosmica.models.build_walker_delta_constellation.
by @shunichironomura in #106
Drop Python 3.12 support
COSMICA now requires Python 3.13 or newer.
by @shunichironomura in #122
Add optional generic type parameters to satellite and constellation classes
Satellite and constellation classes now accept optional generic type parameters for their identifier types. This improves static typing of constellation models, but may require updates in downstream code that uses explicit type annotations.
by @shunichironomura in #124
Features and Improvements
Add gateway network building methods
A new gateway-network helper was added for constructing a default gateway network, making it easier to set up scenarios that include gateway nodes.
by @viniciusfnery in #94
Better cooldown handling
Add cooldown settings to Renovate config to be robust against supply chain security risks.
by @shunichironomura in #140
Fixes
- Fix the return type hint of
preserve_tick_paramsin visualization utilities. (by @shunichironomura in #123)
Packaging, CI, and Security
- Remove deprecated license classifiers and rely on modern license metadata. (by @shunichironomura in #119)
- Pin GitHub Actions versions by commit SHA for supply-chain hardening. (by @shunichironomura in #134)
- Adopt Renovate best-practice configuration and add
exclude-newerconfiguration for uv. (by @shunichironomura in #135, #137) - Use uv 0.11.x in CI and update
uv_buildto>=0.11,<0.12. (by @shunichironomura and @renovate in #133, #128) - Introduce
zizmorfor GitHub Actions workflow linting/security checks. (by @shunichironomura in #160) - Update
importlinteranddeptrylinter configuration. (by @shunichironomura in #159) - Update GitHub Actions such as
codecov/codecov-action,sigstore/gh-action-sigstore-python,astral-sh/setup-uv,pypa/gh-action-pypi-publish, andactions/upload-artifact. (by @renovate in #129, #130, #136, #143, #144, #147, #156) - Routine pre-commit hook and lock-file maintenance. (by @pre-commit-ci and @renovate)
- Bump version to v0.6.0. (by @shunichironomura in #161)
Full Changelog: v0.5.0...v0.6.0