Skip to main content

ANISE provides a toolkit and files for Attitude, Navigation, Instrument, Spacecraft, and Ephemeris data. It's a modern replacement of NAIF SPICE file.

Project description

ANISE (Attitude, Navigation, Instrument, Spacecraft, Ephemeris)

ANISE is a modern rewrite of the core functionalities of the NAIF SPICE toolkit with enhanced features and ease of use, leveraging Rust's safety and speed.

Introduction

In the realm of space exploration, navigation, and astrophysics, precise and efficient computation of spacecraft position, orientation, and time is critical. ANISE, standing for "Attitude, Navigation, Instrument, Spacecraft, Ephemeris," offers a Rust-native approach to these challenges. This toolkit provides a suite of functionalities including but not limited to:

  • Universal Loading: Seamlessly load SPK, BPC, PCK, FK, TPC, and the new LKA (Location Kernel Anise) files.
  • Rigid Body Physics: High-precision translations, rotations, and their combination (rigid body transformations).
  • Parallel Querying: Query SPICE files in parallel at incredible speeds (~ 125,000 queries per second) using the many keyword.
  • Declarative Analysis: Build complex mathematical vector and scalar expressions (e.g., angles, projections, orbital elements) and evaluate them efficiently over time series.
  • Event Finding: High-precision search for eclipses, AOS/LOS, and orbital events (periapsis/apoapsis).
  • Hifitime Integration: Comprehensive time system conversions using the hifitime library (TT, TAI, ET, TDB, UTC, GPS, etc.).
  • CCSDS OEM: ANISE supports reading, writing, and interpolating CCSDS OEM files, including their covariance, in the inertial, RIC, RCN, and VNC frames.

ANISE stands validated against the traditional SPICE toolkit, ensuring accuracy and reliability, with translations achieving machine precision (2e-16) and rotations presenting minimal error.

Why ANISE?

A quick comparison with the traditional CSPICE toolkit:

Feature CSPICE (Toolkit) ANISE
Thread Safety No (Global state/locks) Guaranteed (Rust ownership)
Performance Single-threaded Parallel (many queries)
Math Validation Runtime errors Type-safe Frame checks
API Style Procedural (Integer IDs) Object-Oriented / Pythonic
Serialization None S-Expressions (Cloud Native)

ANISE supports many SPICE kernels. Binary kernels are supported as-is, while text kernels must be transformed into their ANISE equivalent (usually .pca or .lka files).

Kernel Type Supported Note
BSP / SPK Supported as-is
BPC Supported as-is
TK (Text) 🔄 Supported after transformation
LSK 🔄 Supported after transformation
GM 🔄 Supported after transformation
CK Yet to be supported
SCLK Yet to be supported
DSK Yet to be supported
IK / EK Yet to be supported

Supported SPK Types

For more details on SPK types, refer to the NAIF SPK Required Reading. The following table summarizes the types supported by ANISE.

SPK Type Interpolation NAIF SPICE ANISE Typically used in
Type 1 Modified Differences NASA internal trajectory tools (e.g. DPTRAJ)
Type 2 Chebyshev Triplet Planetary ephemerides (e.g., JPL DE series)
Type 3 Chebyshev Sextuplet Planetary ephemerides (e.g., JPL DE series)
Type 5 Discrete states Two-body propagation
Type 8 Lagrange (Equal Step) 🧪 Uncommon spacecraft trajectories from numerical integration
Type 9 Lagrange (Unequal Step) Spacecraft trajectories from numerical integration
Type 10 Space Command TLE Please don't use TLEs, a punch-card format (no joke)
Type 12 Hermite (Equal Step) 🧪 Uncommon spacecraft trajectories from numerical integration
Type 13 Hermite (Unequal Step) Spacecraft trajectories from numerical integration
Type 14 Chebyshev Sextuplet (Unequal Step) Never seen in the wild, probably good for slow-moving objects
Type 15 Precessing Conic Propagation Precessing conic elements
Type 17 Equinoctial Elements NAIF docs
Type 18 ESOC/DDID Hermite/Lagrange Interpolation NAIF docs
Type 19 ESOC/DDID Piecewise Interpolation NAIF docs
Type 20 Chebyshev Triplet (velocity only) NAIF docs
Type 21 Extended Modified Difference Arrays NAIF docs

Note: 🧪 means the SPK type is supported but no public SPK of that type could be found to validate the implementation. Please provide one if you have one!

Features

  • High Precision: Matches SPICE to machine precision in translations and minimal errors in rotations.
  • Analysis Engine: A new declarative system to define engineering reports and events using S-Expressions, separating the definition of a calculation from its execution.
    • Cloud Native: S-Expressions are serializable, allowing you to define complex queries on a client and execute them safely on remote workers without arbitrary code execution risks.
  • Ground Station Management: First-class support for Location objects, terrain masks, and visibility calculations.
  • Rust Efficiency: Harnesses the speed and safety of Rust for space computations.
  • Multi-threaded: ANISE is designed for modern hardware. Forget about mutexes and race conditions; ANISE guarantees thread safety.
  • Frame Safety: ANISE checks that all frame translations or rotations are physically valid before performing any computation.

Architecture

graph TD
    Kernels[SPK / BPC / PCK / LKA Files] -->|Load| Almanac
    Almanac -->|Provide| Frames[Frame System]
    Almanac -->|Query| Ephemeris
    User -->|Define| Spec[Analysis Spec / Events]
    Spec -->|Evaluate| Almanac
    Almanac -->|Result| Report[Pandas/Polars DataFrame / Events]

Tutorials

Note: The tutorials can be viewed in read-only form on the Github repo.

Usage

ANISE is available on PyPI with pre-built wheels for Linux, macOS (Intel/Silicon), and Windows.

Start by adding anise to your project: pip install anise.

Note: for the very latest usage examples, refer to the Python tests.

1. Basic Navigation & Transformations

The core of ANISE is the Almanac, which manages frames and ephemerides.

from anise import Almanac
from anise.astro import Orbit
from anise.constants import Frames
from anise.time import Epoch
from pathlib import Path

# Load your kernels (BSP, PCK, etc.)
# Note: Almanac functions are immutable; they return a NEW Almanac instance.
data_path = Path("../data")
almanac = Almanac(str(data_path.joinpath("de440s.bsp")))
almanac = almanac.load(str(data_path.joinpath("pck08.pca")))

# Access Frame properties directly
eme2k = almanac.frame_info(Frames.EME2000)
print(f"Earth GM: {eme2k.mu_km3_s2()} km³/s²")

# Define an Orbit state
epoch = Epoch("2021-10-29 12:34:56 TDB")
orig_state = Orbit.from_keplerian(
    8_191.93,   # SMA (km)
    1e-6,       # Eccentricity
    12.85,      # Inclination (deg)
    306.614,    # RAAN (deg)
    314.19,     # Arg Peri (deg)
    99.887_7,   # True Anomaly (deg)
    epoch,
    eme2k,
)

# Transform to a new frame (e.g., Earth Fixed / ITRF)
# Note: If high-precision Earth orientation files (BPC) aren't loaded, 
# this uses the IAU approximation.
state_itrf93 = almanac.transform_to(orig_state, Frames.IAU_EARTH_FRAME)

print(f"Lat: {state_itrf93.latitude_deg():.4f} deg")
print(f"Lon: {state_itrf93.longitude_deg():.4f} deg")
print(f"Alt: {state_itrf93.height_km():.4f} km")

2. Analysis & Event Finding

ANISE allows you to build declarative expressions for scalars and vectors. These are optimized in Rust and can be used to generate reports or find events (like eclipses) efficiently. These calculations are 500x faster than Ansys STK.

import anise.analysis as analysis
from anise import Almanac
from anise.constants import Frames, Orientations
from anise.astro improt Frame
from anise.time import Epoch, Unit

# Define the state we want to analyze (e.g., LRO orbiting the Moon)
lro_state = analysis.StateSpec(
    target_frame=analysis.FrameSpec.Loaded(Frame(-85, Orientations.J2000)),  # -85 is the LRO ID
    observer_frame=analysis.FrameSpec.Loaded(Frames.MOON_J2000),
    ab_corr=None,
)

# 1. Define an Event: Find when the Sun sets (elevation < 0) as seen by LRO
sun_set_event = analysis.Event(
    analysis.ScalarExpr.SunAngle(observer_id=-85), # ID -85
    analysis.Condition.LessThan(90.0), # Angle > 90 deg means sun is behind horizon
    Unit.Second * 0.5, # Precision (Units handled automatically)
    ab_corr=None,
)

# 2. Define a Report: Calculate altitude and beta angle over time
report_spec = analysis.ReportScalars([
    (analysis.ScalarExpr.Norm(analysis.VectorExpr.Radius(lro_state)), "Dist (km)"),
    (analysis.ScalarExpr.BetaAngle(), "Beta (deg)"),
], lro_state)

# Load data and execute
almanac = Almanac("../data/de440s.bsp").load("../data/lro.bsp")
start = Epoch("2025-01-01 12:00:00 UTC")
end = start + Unit.Day * 1

# Find all sunset intervals
sunset_arcs = almanac.report_event_arcs(lro_state, sun_set_event, start, end)
print(f"Found {len(sunset_arcs)} sunset intervals.")

# Generate data for the report
from anise.time import TimeSeries
series = TimeSeries(start, end, Unit.Minute * 10, inclusive=True)
data = almanac.report_scalars(report_spec, series)
# 'data' is a dictionary keyed by epoch strings, ready for pandas/plotting

3. Ground Stations

You can create and save Location Kernels (.lka) containing ground station coordinates and terrain masks.

from anise.astro import Location, TerrainMask, FrameUid

# Define a station with a visibility mask
mask = [TerrainMask(0.0, 5.0), TerrainMask(35.0, 10.0)] # Azimuth, Min Elevation
dss65 = Location(
    40.427, 4.250, 0.834, # Lat, Lon, Height (km)
    FrameUid(399, 399),   # On Earth
    mask,
    terrain_mask_ignored=False
)

# Calculate visibility
# (See tutorials for full implementation of visibility arcs)

Development

  1. Install maturin, e.g. via pipx as pipx install maturin
  2. Create a virtual environment: cd anise/anise-py && python3 -m venv .venv
  3. Jump into the virtual environment and install patchelf for faster builds: pip install patchelf, and pytest for the test suite: pip install pytest
  4. Run maturin develop to build the development package and install it in the virtual environment
  5. Finally, run the tests python -m pytest

To run the development version of ANISE in a Jupyter Notebook, install ipykernels in your virtual environment.

  1. pip install ipykernel
  2. Now, build the local kernel: python -m ipykernel install --user --name=.venv
  3. Then, start jupyter notebook: jupyter notebook
  4. Open the notebook, click on the top right and make sure to choose the environment you created just a few steps above.

Generating the pyi type hints

Type hints are extremely useful for Python users. Building them is a bit of manual work.

  1. maturin develop to build the latest library
  2. python generate_stubs.py anise anise.pyi builds the top level type hints
  3. Repeat for all submodules: utils, time, astro, astro.constants, rotation, analysis writing to a new file each time:
    1. python generate_stubs.py anise.astro anise.astro.pyi
    2. python generate_stubs.py anise.time anise.time.pyi
    3. python generate_stubs.py anise.astro.constants anise.astro.constants.pyi
    4. python generate_stubs.py anise.utils anise.utils.pyi
    5. python generate_stubs.py anise.rotation anise.rotation.pyi
    6. python generate_stubs.py anise.analysis anise.analysis.pyi
  4. Final, concat all of these new files back to anise.pyi since that's the only one used by maturin.

Citation

If you use ANISE in your research, please cite it as follows:

@software{nyx_space_anise_2025,
  author = {Christopher Rabotin},
  title = {ANISE: Attitude, Navigation, Instrument, Spacecraft, Ephemeris},
  year = {2025},
  publisher = {Nyx Space},
  url = {https://github.com/nyx-space/anise}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

anise-0.9.4.tar.gz (2.3 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

anise-0.9.4-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.5 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ x86-64

anise-0.9.4-pp311-pypy311_pp73-manylinux_2_17_i686.manylinux2014_i686.whl (4.7 MB view details)

Uploaded PyPymanylinux: glibc 2.17+ i686

anise-0.9.4-cp314-cp314-win_amd64.whl (4.2 MB view details)

Uploaded CPython 3.14Windows x86-64

anise-0.9.4-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

anise-0.9.4-cp314-cp314-manylinux_2_17_i686.manylinux2014_i686.whl (4.7 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ i686

anise-0.9.4-cp313-cp313-win_amd64.whl (4.2 MB view details)

Uploaded CPython 3.13Windows x86-64

anise-0.9.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

anise-0.9.4-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl (4.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ i686

anise-0.9.4-cp312-cp312-win_amd64.whl (4.2 MB view details)

Uploaded CPython 3.12Windows x86-64

anise-0.9.4-cp312-cp312-win32.whl (3.7 MB view details)

Uploaded CPython 3.12Windows x86

anise-0.9.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

anise-0.9.4-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl (4.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ i686

anise-0.9.4-cp311-cp311-win_amd64.whl (4.2 MB view details)

Uploaded CPython 3.11Windows x86-64

anise-0.9.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

anise-0.9.4-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl (4.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ i686

anise-0.9.4-cp310-cp310-win_amd64.whl (4.2 MB view details)

Uploaded CPython 3.10Windows x86-64

anise-0.9.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.5 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

anise-0.9.4-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl (4.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ i686

anise-0.9.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.6 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

anise-0.9.4-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl (4.7 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ i686

File details

Details for the file anise-0.9.4.tar.gz.

File metadata

  • Download URL: anise-0.9.4.tar.gz
  • Upload date:
  • Size: 2.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for anise-0.9.4.tar.gz
Algorithm Hash digest
SHA256 e6269363b8fb3414af5991b8d1057abff44d33cfff0eb1662f8418378c197ac0
MD5 bf6e58e6fc3f9701ecaee77a89e97963
BLAKE2b-256 77934a1b9822683ea5bb327227ad3c029be12132d2abe16b86bea50bcac9d669

See more details on using hashes here.

File details

Details for the file anise-0.9.4-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: anise-0.9.4-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 4.5 MB
  • Tags: PyPy, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for anise-0.9.4-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a0304a4283b6b45146aaf2ab1eed8db9847d8a29477a4289cfd29da606290328
MD5 64521da9584ad609a491d1ea5cf2aa70
BLAKE2b-256 9f796ceabe116fa64b6bc55f226938515fc661c8d04a8898cecc4e3b34c83634

See more details on using hashes here.

File details

Details for the file anise-0.9.4-pp311-pypy311_pp73-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

  • Download URL: anise-0.9.4-pp311-pypy311_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
  • Upload date:
  • Size: 4.7 MB
  • Tags: PyPy, manylinux: glibc 2.17+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for anise-0.9.4-pp311-pypy311_pp73-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 4c2e7377d42a8e716e075fcc0a116065f1b5d1d9bd5cef5398c38a93319614dc
MD5 96e52d830ab09e449dc6c72879571e05
BLAKE2b-256 6bfa70f1afffe3ccaff8ab7f87cf991da7fcda788b222317dc81dbccd65503bf

See more details on using hashes here.

File details

Details for the file anise-0.9.4-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: anise-0.9.4-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 4.2 MB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for anise-0.9.4-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 1c5a5d14c55b45e73dc6e2db75c8c1c98c8896de51321c399869c287747af021
MD5 052067efe9b08ba465dc03fe39201536
BLAKE2b-256 2fccd71db6813a4ad22649a4d68de8d00f5c99d51900c7ae8ea0a0ef6ec155c6

See more details on using hashes here.

File details

Details for the file anise-0.9.4-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: anise-0.9.4-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 4.6 MB
  • Tags: CPython 3.14, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for anise-0.9.4-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b3b7d4b9e889e87f9a7efc470d783b4e6f1547219b145607baa23ae90888c898
MD5 271b3d540c5f199fde8adc84ac8b5974
BLAKE2b-256 1a0e97f257648a8d5a565aad91215d02fb1f455866ed686fda1fa7dfd9fd4d6c

See more details on using hashes here.

File details

Details for the file anise-0.9.4-cp314-cp314-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

  • Download URL: anise-0.9.4-cp314-cp314-manylinux_2_17_i686.manylinux2014_i686.whl
  • Upload date:
  • Size: 4.7 MB
  • Tags: CPython 3.14, manylinux: glibc 2.17+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for anise-0.9.4-cp314-cp314-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 a461d664ed65dd41882683fa61fce96263db092777bc1b958fc58ae4eb10fe4b
MD5 efe51dcd275b35c4ceb435a00737bf75
BLAKE2b-256 eaedda880e7e43007c28237e889ea9c14ed8d9dc6de02485d797ce6ff422f2fd

See more details on using hashes here.

File details

Details for the file anise-0.9.4-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: anise-0.9.4-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 4.2 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for anise-0.9.4-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 d1283672b4153761463d5a73f9e7af434d5baa4832d7b01aa795fa8e4b63bea0
MD5 58b994dcb5a28fb687a22c3e8706698c
BLAKE2b-256 e7824e9e2f7390af89163efa4c694c28f13a8aa0bfeb79ee79848b352c7b6ffc

See more details on using hashes here.

File details

Details for the file anise-0.9.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: anise-0.9.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 4.6 MB
  • Tags: CPython 3.13, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for anise-0.9.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bf3fd2209f5df6834f419b63a36d3afed42c66221a9ed3155988a159b10af540
MD5 f65d595b799bddb6bec8f7ed27d12fc0
BLAKE2b-256 cbaf726fabe7c0fb50a8f19f4b70f1debff673f24b3cde7c237be000ac4584d1

See more details on using hashes here.

File details

Details for the file anise-0.9.4-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

  • Download URL: anise-0.9.4-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl
  • Upload date:
  • Size: 4.7 MB
  • Tags: CPython 3.13, manylinux: glibc 2.17+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for anise-0.9.4-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 1d4080071144ead4bef5dbbef5bee61ba3cd6d0e8eb77db6556df5bbe739c199
MD5 04e4c49dfad99775e8ab7cbc7633dfec
BLAKE2b-256 4987ebfb3dba2197b086c01525b7d2cab4361e6dd438b95c30bc63b3db3f1326

See more details on using hashes here.

File details

Details for the file anise-0.9.4-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: anise-0.9.4-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 4.2 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for anise-0.9.4-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 bcf3091c993c96f9b810b75efe35a6f8f140965a38c557dcd8d8972e90118850
MD5 f7f6fca7875bfb6d6e9528dfa88264bd
BLAKE2b-256 3623fc4c2806c08b0bd158eb1e5e5b8e8e186885789220b3b70a024d0b53fa32

See more details on using hashes here.

File details

Details for the file anise-0.9.4-cp312-cp312-win32.whl.

File metadata

  • Download URL: anise-0.9.4-cp312-cp312-win32.whl
  • Upload date:
  • Size: 3.7 MB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for anise-0.9.4-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 898617f0d6a883706f4f82135ec54669ffbb74da47aaf5a174f7111c76191956
MD5 a7d293f2225b5fdc53718f6a5d3eef6d
BLAKE2b-256 dc4956a375ec9a84eb6716369037c0baf9007e9f8530081457ac1d598b8851c5

See more details on using hashes here.

File details

Details for the file anise-0.9.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: anise-0.9.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 4.6 MB
  • Tags: CPython 3.12, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for anise-0.9.4-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 8d0610f6782efb9cb32d7c092cc928831d9e79c6e66777b77dd47f028119c503
MD5 1e0c8fa46f97c6d82f71d1ed388a6dde
BLAKE2b-256 d36f8e6b3f008835da68fda023ad4fc19367a6fd4c31770fe04f16bfae8bc373

See more details on using hashes here.

File details

Details for the file anise-0.9.4-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

  • Download URL: anise-0.9.4-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl
  • Upload date:
  • Size: 4.7 MB
  • Tags: CPython 3.12, manylinux: glibc 2.17+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for anise-0.9.4-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 d655b363f035c7fe256df8a0545fc5b3e29ba13e0de7149daf7162c8dc4eef2f
MD5 804c58f2a4f08b520d917dcc46b2f1e9
BLAKE2b-256 58dfce41a19fc9167cc83d4cbefd772d783bbcbb69a2c6ea4dbb26802b0a0912

See more details on using hashes here.

File details

Details for the file anise-0.9.4-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: anise-0.9.4-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 4.2 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for anise-0.9.4-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 dde674d8c7cf16b8d09ba55ae626caf6f292c53ecfd04cbaff5e10d561d2c7c5
MD5 c2aaf67556e0bcd2bf1d82c1c5167cea
BLAKE2b-256 f3d10c4d91232f83d12cf0b47747646144a699207513f61e94f8257fa1c68da2

See more details on using hashes here.

File details

Details for the file anise-0.9.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: anise-0.9.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 4.5 MB
  • Tags: CPython 3.11, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for anise-0.9.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 07393e07e4ec3493e96246b1343fbf7a664b1b6c5fb69cf475fac6ae96567cdb
MD5 c494bfb2acc0643e184376bdabb4de58
BLAKE2b-256 6938fe24dd43096837d36aa12f944da0a3c8c7d199b6207cdb65658a3235d477

See more details on using hashes here.

File details

Details for the file anise-0.9.4-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

  • Download URL: anise-0.9.4-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
  • Upload date:
  • Size: 4.7 MB
  • Tags: CPython 3.11, manylinux: glibc 2.17+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for anise-0.9.4-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 e644693ba8cca5ec96399555249d40e61ddd2cc40dff6da8d88dd2166bc17314
MD5 ba9dcd8e26d47e3444263cd5d0b8c2ab
BLAKE2b-256 d419fa781897fb0ae15bfe292026ce64e1c7a647bd1e8a66811b2f7021152d77

See more details on using hashes here.

File details

Details for the file anise-0.9.4-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: anise-0.9.4-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 4.2 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for anise-0.9.4-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 e7c66921704cf010cbbbe7d80d29a21f7130fa588821efd3880e40fdcac67da5
MD5 e3e4de18567854c751c36a6144bd5011
BLAKE2b-256 81afc0bfbfbf3f781b59074e7da2657fc62a55840619df0320823c59227f4e79

See more details on using hashes here.

File details

Details for the file anise-0.9.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: anise-0.9.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 4.5 MB
  • Tags: CPython 3.10, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for anise-0.9.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 9ec5514db006857588ce1106dd50a9a6c58d0bbeb1e2eb71da4f419d7bbcd1a0
MD5 1abd53e054faf636165d8ba36797eb09
BLAKE2b-256 6d8bfbfdf0a6912385287a85feea7d6a5fac53a6b19ebb166a0531159053d0e4

See more details on using hashes here.

File details

Details for the file anise-0.9.4-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

  • Download URL: anise-0.9.4-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
  • Upload date:
  • Size: 4.7 MB
  • Tags: CPython 3.10, manylinux: glibc 2.17+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for anise-0.9.4-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 da4737574d448842d8c2ca97f46b1faf1d1c2c4f0b16b7807c2cfe08d2e622a1
MD5 45154dd523246b8d1c80539f50facc37
BLAKE2b-256 3e0e7426571f5b5e865fbc6b1f63a78125eb9fd07ded51cd9173ec3f2d6135ed

See more details on using hashes here.

File details

Details for the file anise-0.9.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: anise-0.9.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 4.6 MB
  • Tags: CPython 3.9, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for anise-0.9.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fd5797d3d451a1e85c3916c16f3aa4d5efb4c47ac3029cf36bf77263d0f53268
MD5 7f6873bd96bfaac8dfa6ec49179aaa1e
BLAKE2b-256 14eea259f786f22f0f8137afa56d01a11fe9d9b03e529125d3304f2252b73e08

See more details on using hashes here.

File details

Details for the file anise-0.9.4-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

  • Download URL: anise-0.9.4-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
  • Upload date:
  • Size: 4.7 MB
  • Tags: CPython 3.9, manylinux: glibc 2.17+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for anise-0.9.4-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 7e4d87e5f135e9cbdb0bc46b00991229476d31f56d2c7173ed57319f2f420abe
MD5 304201df06fdfd501e38112414a46a6c
BLAKE2b-256 724c5e498c8b8b8aa31e96d3affba476aaf9f30c0d6a12901858649d48d94240

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page