siderust 0.6.0

High-precision astronomy and satellite mechanics in Rust.
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
name = "siderust"
version = "0.6.0"
authors = ["VPRamon <vallespuigramon@gmail.com>"]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "High-precision astronomy and satellite mechanics in Rust."
homepage = "https://github.com/Siderust/siderust"
readme = "README.md"
keywords = [
    "astronomy",
    "satellite",
    "orbital-mechanics",
    "vsop87",
    "rust",
]
categories = [
    "science",
    "aerospace",
    "simulation",
]
license = "AGPL-3.0"
repository = "https://github.com/Siderust/siderust"

[features]
de440 = []
default = []
regen-data = ["dep:reqwest"]
runtime-data = [
    "dep:ureq",
    "dep:sha2",
]
serde = [
    "dep:serde",
    "qtty/serde",
    "affn/serde",
    "tempoch/serde",
]

[lib]
name = "siderust"
path = "src/lib.rs"

[[example]]
name = "01_basic_coordinates"
path = "examples/01_basic_coordinates.rs"

[[example]]
name = "02_coordinate_transformations"
path = "examples/02_coordinate_transformations.rs"

[[example]]
name = "03_all_frames_conversions"
path = "examples/03_all_frames_conversions.rs"

[[example]]
name = "04_all_center_conversions"
path = "examples/04_all_center_conversions.rs"

[[example]]
name = "05_target_tracking"
path = "examples/05_target_tracking.rs"

[[example]]
name = "06_night_events"
path = "examples/06_night_events.rs"

[[example]]
name = "07_moon_properties"
path = "examples/07_moon_properties.rs"

[[example]]
name = "08_solar_system"
path = "examples/08_solar_system.rs"

[[example]]
name = "09_star_observability"
path = "examples/09_star_observability.rs"

[[example]]
name = "10_time_periods"
path = "examples/10_time_periods.rs"

[[example]]
name = "11_serde_serialization"
path = "examples/11_serde_serialization.rs"

[[example]]
name = "12_runtime_ephemeris"
path = "examples/12_runtime_ephemeris.rs"

[[example]]
name = "13_coordinate_operations"
path = "examples/13_coordinate_operations.rs"

[[test]]
name = "test_additional_coverage"
path = "tests/test_additional_coverage.rs"

[[test]]
name = "test_altitude_api"
path = "tests/test_altitude_api.rs"

[[test]]
name = "test_altitude_provider"
path = "tests/test_altitude_provider.rs"

[[test]]
name = "test_asteroid"
path = "tests/test_asteroid.rs"

[[test]]
name = "test_astro_nights_roque_2026"
path = "tests/test_astro_nights_roque_2026.rs"

[[test]]
name = "test_azimuth_api"
path = "tests/test_azimuth_api.rs"

[[test]]
name = "test_bodies"
path = "tests/test_bodies.rs"

[[test]]
name = "test_cartesian"
path = "tests/test_cartesian.rs"

[[test]]
name = "test_cartesian_direction"
path = "tests/test_cartesian_direction.rs"

[[test]]
name = "test_cartesian_vector"
path = "tests/test_cartesian_vector.rs"

[[test]]
name = "test_coordinates"
path = "tests/test_coordinates.rs"

[[test]]
name = "test_domain_b"
path = "tests/test_domain_b.rs"

[[test]]
name = "test_ellipsoidal_geodesy"
path = "tests/test_ellipsoidal_geodesy.rs"

[[test]]
name = "test_ephemeris"
path = "tests/test_ephemeris.rs"

[[test]]
name = "test_high_precision_earth_rotation_regression"
path = "tests/test_high_precision_earth_rotation_regression.rs"

[[test]]
name = "test_iau_compliance"
path = "tests/test_iau_compliance.rs"

[[test]]
name = "test_jpl_real_backend"
path = "tests/test_jpl_real_backend.rs"

[[test]]
name = "test_moon_phase"
path = "tests/test_moon_phase.rs"

[[test]]
name = "test_new_coordinate_systems"
path = "tests/test_new_coordinate_systems.rs"

[[test]]
name = "test_planets"
path = "tests/test_planets.rs"

[[test]]
name = "test_root_finding"
path = "tests/test_root_finding.rs"

[[test]]
name = "test_satelite"
path = "tests/test_satelite.rs"

[[test]]
name = "test_serde"
path = "tests/test_serde.rs"

[[test]]
name = "test_spherical_frames"
path = "tests/test_spherical_frames.rs"

[[test]]
name = "test_stars"
path = "tests/test_stars.rs"

[[test]]
name = "test_stellar"
path = "tests/test_stellar.rs"

[[test]]
name = "test_target_transform"
path = "tests/test_target_transform.rs"

[[test]]
name = "test_units"
path = "tests/test_units.rs"

[[test]]
name = "test_vsop87e_vel"
path = "tests/test_vsop87e_vel.rs"

[[test]]
name = "test_wgs84_regression"
path = "tests/test_wgs84_regression.rs"

[[bench]]
name = "altitude_comparison"
path = "benches/altitude_comparison.rs"
harness = false

[[bench]]
name = "converters"
path = "benches/converters.rs"
harness = false

[[bench]]
name = "de441"
path = "benches/de441.rs"

[[bench]]
name = "elp2000"
path = "benches/elp2000.rs"
harness = false

[[bench]]
name = "ephemeris_comparison"
path = "benches/ephemeris_comparison.rs"
harness = false

[[bench]]
name = "moon_altitude"
path = "benches/moon_altitude.rs"
harness = false

[[bench]]
name = "solar_altitude"
path = "benches/solar_altitude.rs"
harness = false

[[bench]]
name = "star_altitude"
path = "benches/star_altitude.rs"
harness = false

[[bench]]
name = "vsop87"
path = "benches/vsop87.rs"
harness = false

[dependencies.affn]
version = "0.4.1"
features = ["astro"]

[dependencies.approx]
version = "0.5"

[dependencies.cheby]
version = "0.1.0"

[dependencies.chrono]
version = "0.4.44"

[dependencies.nalgebra]
version = "0.34.1"

[dependencies.paste]
version = "1.0"

[dependencies.qtty]
version = "0.4.1"

[dependencies.serde]
version = "1.0"
features = ["derive"]
optional = true

[dependencies.sha2]
version = "0.10"
optional = true

[dependencies.tempoch]
version = "0.4"

[dependencies.ureq]
version = "3.2.0"
optional = true
default-features = false

[dependencies.wide]
version = "1.1.1"

[dev-dependencies.criterion]
version = "0.8.1"

[dev-dependencies.rstest]
version = "0.26"

[dev-dependencies.serde_json]
version = "1.0"

[build-dependencies.anyhow]
version = "1.0.102"

[build-dependencies.regex]
version = "1.12.2"

[build-dependencies.reqwest]
version = "0.13.2"
features = [
    "blocking",
    "rustls",
]
optional = true
default-features = false

[build-dependencies.walkdir]
version = "2"