spline-trajectory
Python bindings for SplineTrajectory — a fast C++ library for smooth N-dimensional trajectory optimization based on MINCO-family splines (Cubic / Quintic / Septic).
[Python Docs] | C++ Library | 中文
Installation
pip install spline-trajectory # basic (numpy only)
pip install "spline-trajectory[optimize]" # with scipy for optimize()
Requires Python ≥ 3.9. Pre-built wheels are provided for Linux, macOS, and Windows (x86-64 and arm64).
Spline types
| Class | Order | Minimizes | MINCO equiv |
|---|---|---|---|
CubicSplineND |
3 | Acceleration | S2 |
QuinticSplineND |
5 | Jerk | S3 |
SepticSplineND |
7 | Snap | S4 |
All three families are available for spatial dimensions 1–6.
Default aliases (CubicSpline, QuinticSpline, SepticSpline) point to the 3D variants.
Quick Start
import numpy as np
from spline_trajectory import CubicSpline3D, BoundaryConditions3D, Deriv
waypoints = np.array([[0, 0, 0],
[1, 0, 0],
[2, 1, 0]], dtype=float)
bc = BoundaryConditions3D(
start_velocity=[0.5, 0, 0],
end_velocity=[0, -0.5, 0],
)
spline = CubicSpline3D([0.0, 1.0, 2.0], waypoints, bc)
print(spline.evaluate(1.0, Deriv.Pos)) # position at t=1 → shape (3,)
print(spline.evaluate(1.0, Deriv.Vel)) # velocity at t=1
# Batch evaluation → shape (N, 3)
ts = np.linspace(0, 2, 200)
positions = spline.evaluate_batch(ts.tolist(), Deriv.Pos)
Trajectory Optimization
1. Optimize time segments, fix all waypoints
The simplest use case: waypoints are hard constraints, only the duration of each segment is optimized to minimize total time + jerk energy.
import numpy as np
from spline_trajectory import (
QuinticOptimizer3D, BoundaryConditions3D,
OptimizationMask, Deriv, optimize,
)
waypoints = np.array([[0, 0, 0],
[2, 1, 1],
[4, 0, 2],
[6, 2, 0]], dtype=float)
n_seg = len(waypoints) - 1
# Fix all waypoints, free all time segments
mask = OptimizationMask()
mask.waypoints = [0] * len(waypoints) # 0 = fixed
mask.time = [1] * n_seg # 1 = optimize
opt = QuinticOptimizer3D()
opt.set_config(rho_energy=1.0) # weight for jerk-energy regularization
ctx = opt.prepare_context(
time_segments=[1.0] * n_seg,
waypoints=waypoints,
bc=BoundaryConditions3D(),
mask=mask,
)
def time_cost(times):
"""Minimise total duration."""
return float(np.sum(times)), np.ones_like(times)
result = optimize(opt, ctx, time_cost=time_cost, max_iter=300)
print(result.message)
spline = opt.get_working_spline(ctx)
print(f"Optimized duration: {spline.duration:.3f} s")
2. Optimize waypoints, fix time segments
Let the optimizer relocate intermediate waypoints while keeping durations fixed. Useful when the rough path shape matters more than timing.
import numpy as np
from spline_trajectory import (
QuinticOptimizer3D, BoundaryConditions3D,
OptimizationMask, optimize,
)
waypoints = np.array([[0, 0, 0],
[1, 1, 0], # ← will be optimized
[3, 0, 0], # ← will be optimized
[4, 0, 0]], dtype=float)
n_seg = len(waypoints) - 1
mask = OptimizationMask()
mask.waypoints = [0, 1, 1, 0] # fix start/end, free middle points
mask.time = [0] * n_seg # fix all durations
opt = QuinticOptimizer3D()
opt.set_config(rho_energy=1.0)
ctx = opt.prepare_context(
time_segments=[1.0] * n_seg,
waypoints=waypoints,
bc=BoundaryConditions3D(),
mask=mask,
)
# Energy-only cost (no custom time/integral cost needed)
def zero_time(t): return 0.0, np.zeros_like(t)
def zero_integral(t, tg, seg, step, p, v, a, j, s):
z = np.zeros_like(p); return 0.0, z, z, z, z, z, 0.0
result = optimize(opt, ctx, time_cost=zero_time, integral_cost=zero_integral)
spline = opt.get_working_spline(ctx)
3. Optimize both time segments and waypoints
Free everything — let the optimizer jointly tune timing and path shape.
import numpy as np
from spline_trajectory import (
QuinticOptimizer3D, BoundaryConditions3D,
OptimizationMask, optimize,
)
waypoints = np.array([[0, 0, 0],
[1, 2, 0],
[3, 1, 1],
[5, 0, 0]], dtype=float)
n_seg = len(waypoints) - 1
mask = OptimizationMask()
mask.waypoints = [0, 1, 1, 0] # fix only start/end positions
mask.time = [1] * n_seg # all durations free
opt = QuinticOptimizer3D()
opt.set_config(rho_energy=1.0)
ctx = opt.prepare_context(
time_segments=[1.0] * n_seg,
waypoints=waypoints,
bc=BoundaryConditions3D(),
mask=mask,
)
def time_cost(times):
return float(np.sum(times)), np.ones_like(times)
result = optimize(opt, ctx, time_cost=time_cost)
spline = opt.get_working_spline(ctx)
print(f"Duration: {spline.duration:.3f} s, Energy: {spline.energy:.4f}")
4. Custom integral cost (e.g. penalise high velocity)
integral_cost is called at every integration sample along the trajectory.
It receives the local state (p, v, a, j, s) and must return the cost and
its gradients w.r.t. each quantity.
import numpy as np
from spline_trajectory import QuinticOptimizer3D, BoundaryConditions3D, optimize
waypoints = np.array([[0, 0, 0], [2, 1, 0], [4, 0, 0]], dtype=float)
opt = QuinticOptimizer3D()
opt.set_config(rho_energy=0.5, integral_num_steps=64)
ctx = opt.prepare_context(
time_segments=[1.0, 1.0],
waypoints=waypoints,
bc=BoundaryConditions3D(),
)
V_MAX = 2.0 # m/s — soft speed limit
def vel_penalty(t, t_global, seg, step, p, v, a, j, s):
"""Soft penalty for |v| > V_MAX."""
excess = np.maximum(np.linalg.norm(v) - V_MAX, 0.0)
cost = 0.5 * excess ** 2
gv = excess * v / (np.linalg.norm(v) + 1e-9) if excess > 0 else np.zeros_like(v)
z = np.zeros_like(p)
return cost, z, gv, z, z, z, 0.0
def zero_time(t): return 0.0, np.zeros_like(t)
result = optimize(opt, ctx, time_cost=zero_time, integral_cost=vel_penalty)
spline = opt.get_working_spline(ctx)
5. Closed-loop trajectory (drone racing / periodic motion)
optimize_closed_loop closes the position loop and jointly optimizes the
boundary derivatives (velocity, acceleration) so that the trajectory is
C² continuous at the junction — the drone can lap indefinitely.
import numpy as np
from spline_trajectory import QuinticOptimizer3D, optimize_closed_loop, Deriv
# Gates arranged roughly in a circle
gates = np.array([
[7.0, 3.5, 1.5],
[6.0, 7.0, 1.2],
[2.0, 7.0, 0.8],
[0.0, 4.5, 1.0],
[2.5, 1.0, 1.8],
[5.0, 1.0, 1.2],
], dtype=float)
time_segs = [1.2] * len(gates) # one segment per gate (loop is closed automatically)
opt = QuinticOptimizer3D()
result, ctx = optimize_closed_loop(
opt,
waypoints=gates,
time_segments=time_segs,
closure_weight=5000.0, # penalty weight for BC continuity at junction
rho_energy=0.5,
max_iter=500,
)
print(result.message)
spline = opt.get_working_spline(ctx)
# Verify continuity at the junction
t0, tf = spline.start_time, spline.end_time
dv = np.linalg.norm(spline.evaluate(tf, Deriv.Vel) - spline.evaluate(t0, Deriv.Vel))
da = np.linalg.norm(spline.evaluate(tf, Deriv.Acc) - spline.evaluate(t0, Deriv.Acc))
print(f"Duration: {spline.duration:.2f} s")
print(f"BC closure ‖Δv‖ = {dv:.2e}, ‖Δa‖ = {da:.2e}") # should be ~1e-4 or less
# Sample the full lap
ts = np.linspace(t0, tf, 500)
pos = spline.evaluate_batch(ts.tolist(), Deriv.Pos) # shape (500, 3)
vel = spline.evaluate_batch(ts.tolist(), Deriv.Vel)
6. Soft constraints via integral_cost
Every call to optimize() or optimize_closed_loop() accepts an integral_cost function
that is evaluated at every integration sample. Return a scalar penalty and its gradients
w.r.t. (p, v, a, j, s) and local time t to impose soft constraints.
General pattern
def my_constraint(t, t_global, seg, step, p, v, a, j, s):
# Compute penalty and gradients
cost = ...
gp = np.zeros_like(p) # ∂cost/∂p
gv = np.zeros_like(v) # ∂cost/∂v
ga = np.zeros_like(a) # ∂cost/∂a
gj = np.zeros_like(j) # ∂cost/∂j
gs = np.zeros_like(s) # ∂cost/∂s
gt = 0.0 # ∂cost/∂t (non-zero only when optimising time)
return cost, gp, gv, ga, gj, gs, gt
Quadrotor: thrust + body-rate constraints (demo_quadrotor.py)
Uses SepticOptimizer3D (7th-order, S4-MINCO) so that jerk is a boundary-condition
variable. Setting start_jerk = end_jerk = [0,0,0] hard-constrains body rate to
zero at take-off and landing (hover condition).
Under the differential-flatness model (zero drag, yaw=0, mass=1 kg):
| Physical quantity | Expression |
|---|---|
| Thrust vector | f_vec = a + g·ẑ |
| Collective thrust | f = ‖f_vec‖ |
| Body-axis unit vector | z_b = f_vec / f |
| Body-rate vector | ω — exact flatness map (Zhepei Wang, GCOPTER) |
The integral_cost function implements the exact forward/backward pass of the
flatness map so that gradients w.r.t. (a, j) are analytically correct.
Comparison — before (fixed 0.8 s/segment) vs. after (time optimized):
Row 1 (grey dashed): trajectory executed in 3.2 s — 537/600 thrust violations, ω_max = 29.4 rad/s.
Row 2 (red solid): optimizer extends to 9.5 s — f ∈ [6.5, 14.2] m/s², ω_max = 0.92 rad/s — all constraints satisfied.
See examples/python/demo_quadrotor.py for the full implementation including
the FlatnessMap forward/backward class.
Common constraint recipes
| Constraint | Cost term | Non-zero gradient |
|---|---|---|
Speed limit ‖v‖ ≤ v_max |
max(‖v‖−v_max, 0)² |
gv |
Acceleration limit ‖a‖ ≤ a_max |
max(‖a‖−a_max, 0)² |
ga |
| Collective thrust bounds | max(F_MIN−f,0)² + max(f−F_MAX,0)² |
ga |
| Body-rate limit | max(ω−ω_max, 0)² |
ga, gj |
Spherical keep-out zone (centre c, radius r) |
max(r−‖p−c‖, 0)² |
gp |
Min altitude p_z ≥ h |
max(h−p_z, 0)² |
gp |
Tip — penalty weight tuning:
Start with a small weight (e.g.10) to let the optimizer find a feasible region first, then increase toward100–1000until the constraint is well-satisfied. Checkintegral_num_steps(default 64) — increase to 128 for stricter enforcement.
API Reference
Spline classes
All spline classes share the same interface.
CubicSpline3D(time_points, waypoints, bc=BoundaryConditions3D())
QuinticSpline3D(time_points, waypoints, bc=BoundaryConditions3D())
SepticSpline3D(time_points, waypoints, bc=BoundaryConditions3D())
# also: *1D, *2D, *4D, *5D, *6D variants
| Parameter | Type | Description |
|---|---|---|
time_points |
list[float] |
Absolute time at each waypoint, length N |
waypoints |
ndarray (N, DIM) |
Waypoint positions |
bc |
BoundaryConditionsND |
Boundary conditions (default: all zero) |
Properties: start_time, end_time, duration, num_segments, energy, is_initialized
Methods:
spline.evaluate(t, deriv=Deriv.Pos) # → ndarray (DIM,)
spline.evaluate_batch(times, deriv=Deriv.Pos) # → ndarray (N, DIM)
Deriv values: Pos, Vel, Acc, Jerk, Snap, Crackle, Pop
BoundaryConditions
bc = BoundaryConditions3D() # all zero
bc = BoundaryConditions3D(start_velocity, end_velocity)
bc = BoundaryConditions3D(start_velocity, start_acceleration,
end_velocity, end_acceleration)
bc = BoundaryConditions3D(start_velocity, start_acceleration, start_jerk,
end_velocity, end_acceleration, end_jerk)
All vector arguments accept list, tuple, or ndarray of shape (DIM,).
Properties: start_velocity, start_acceleration, start_jerk, end_velocity, end_acceleration, end_jerk
Optimizers
opt = QuinticOptimizer3D() # also Cubic*, Septic*, *1D–*6D
opt.set_config(
rho_energy=1.0, # weight for built-in energy regularization
integral_num_steps=64, # trapezoidal integration steps per segment
)
ctx = opt.prepare_context(
time_segments, # list[float], length N_seg
waypoints, # ndarray (N_seg+1, DIM)
bc=BoundaryConditions3D(),
mask=None, # OptimizationMask or None (optimize everything)
)
x0 = opt.generate_initial_guess(ctx) # → ndarray (D,)
cost, grad = opt.evaluate(ctx, x, time_cost, integral_cost)
spline = opt.get_working_spline(ctx) # → QuinticSpline3D (copy)
OptimizationMask
Controls which variables are free vs. fixed.
mask = OptimizationMask()
mask.time = [1, 0, 1] # per-segment: 1=optimize, 0=fix
mask.waypoints = [0, 1, 1, 0] # per-waypoint: 0=fix, 1=optimize
mask.start.v = True # optimize start velocity BC
mask.start.a = True # optimize start acceleration BC
mask.end.v = True
mask.end.a = True
optimize()
from spline_trajectory import optimize
result = optimize(
optimizer, ctx,
time_cost=None, # callable(times) → (float, ndarray) or None
integral_cost=None, # callable(t, t_global, seg, step, p,v,a,j,s)
# → (cost, gp, gv, ga, gj, gs, gt) or None
max_iter=200,
ftol=1e-9,
gtol=1e-6,
)
# result is scipy.optimize.OptimizeResult
time_cost signature:
def time_cost(times: np.ndarray) -> tuple[float, np.ndarray]:
# times: shape (N_seg,) — decoded segment durations
# returns: scalar cost, gradient of shape (N_seg,)
return float(np.sum(times)), np.ones_like(times)
integral_cost signature:
def integral_cost(t, t_global, seg, step, p, v, a, j, s):
# t : local time within segment
# t_global : global time
# seg : segment index
# step : integration step index
# p,v,a,j,s: ndarray (DIM,) — pos, vel, acc, jerk, snap
# returns : (cost, gp, gv, ga, gj, gs, gt)
z = np.zeros_like(p)
return 0.0, z, z, z, z, z, 0.0
optimize_closed_loop()
from spline_trajectory import optimize_closed_loop
result, ctx = optimize_closed_loop(
optimizer,
waypoints, # ndarray (N, DIM) — last row is overwritten with first
time_segments, # list[float], length N (one per gate)
closure_weight=5000.0, # penalty weight for BC continuity at junction
rho_energy=0.5,
integral_num_steps=64,
optimize_times=True,
time_cost=None,
integral_cost=None,
max_iter=300,
)
spline = optimizer.get_working_spline(ctx)
The function:
- Closes the position loop (
waypoints[-1] ← waypoints[0]) - Frees start/end boundary derivatives as decision variables
- Adds
closure_weight * ‖start_BC − end_BC‖²to the objective
A closure_weight of 1000–10000 typically achieves ‖Δv‖ < 1e-4.
Supported dimensions
| Suffix | DIM |
|---|---|
1D |
1 |
2D |
2 |
3D |
3 (default alias) |
4D |
4 |
5D |
5 |
6D |
6 (e.g. 6-DOF robot joints) |
from spline_trajectory import (
QuinticSpline6D, BoundaryConditions6D,
QuinticOptimizer6D,
)
C++ Library
For the header-only C++ library, performance benchmarks, and the SplineOptimizer C++ API, see README_cpp.md.
License
MIT License. See LICENSE for details.
Metadata
Release files for spline-trajectory 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| spline_trajectory-0.1.0.tar.gz | 3.3 MB | Details |
Built distributions (wheels)
Total release size: 46.2 MB
Release files / spline_trajectory-0.1.0.tar.gz
| Download URL | spline_trajectory-0.1.0.tar.gz |
|---|---|
| Size | 3.3 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0c4a16257bd72d7e2d16d38e9cd599e1c428770b2b09c07b4d9b95a31e7fd78f
|
|
BLAKE2b-256 checksum How to use checksums |
d5fa7d80ac74ca3d33acbe94e9f8820a007cf9f373fdd5ce793c8b27827845d0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp312-cp312-win_amd64.whl
| Download URL | spline_trajectory-0.1.0-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 737.8 kB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
d5d2bc5aff06384eb1a2dcfa5f059ff36f2e03a741a5f2c50fb7317d4a681838
|
|
BLAKE2b-256 checksum How to use checksums |
61b98352cd7c605e04055f0eff149dd9520252a74c1aceee83425cc245f93ec8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp312-cp312-musllinux_1_2_x86_64.whl
| Download URL | spline_trajectory-0.1.0-cp312-cp312-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 2.1 MB |
| Tags | CPython 3.12 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
49fca4524a8b9710e8e9bf24afe40a0767d24c420c9c13ab66137fbbea8c332f
|
|
BLAKE2b-256 checksum How to use checksums |
a8cf5b78603b59ac8343ff06b2f71b03efbaebe1460a07cfdf959c52a13349e1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp312-cp312-musllinux_1_2_aarch64.whl
| Download URL | spline_trajectory-0.1.0-cp312-cp312-musllinux_1_2_aarch64.whl |
|---|---|
| Size | 1.9 MB |
| Tags | CPython 3.12 Linux musl 1.2+ ARM64 |
|
SHA-256 checksum How to use checksums |
5bd5d0cc6d2e5ec40d860f97f6e75bde3d827b554ef481d599dbecf68fdf2d1f
|
|
BLAKE2b-256 checksum How to use checksums |
bf6135d93c96986a27299713405fc40b0069c163d2f5776153b33e3302c0afe8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | spline_trajectory-0.1.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 1.1 MB |
| Tags | CPython 3.12 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
d5a6d4b30d3bfd4bc0a2fb2c571af1b5bfc50f9188b418b25ed6a56a0f27dbb3
|
|
BLAKE2b-256 checksum How to use checksums |
8161467e74aedfe4a56988ed1b62a51af069b7de6174d55e5e3ed0a7c71d63f2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | spline_trajectory-0.1.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 1.0 MB |
| Tags | CPython 3.12 Linux glibc 2.17+ ARM64 |
|
SHA-256 checksum How to use checksums |
d3db986392286356d70feb194108e72ca331af4c360b87823a1cc24fc5a3fae9
|
|
BLAKE2b-256 checksum How to use checksums |
ab20766541f58e390a647129f35f699fe918334797c4c032eefe590ac7a31d8b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | spline_trajectory-0.1.0-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 925.9 kB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
a97d477d2a0cd4f06ad1111d8c646acb7672b8a9e0e3144a29a526db2815622d
|
|
BLAKE2b-256 checksum How to use checksums |
eee98bba0527440e102626a95be73aedc8bd2b3fe5dbebc55765040d60b08d41
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp312-cp312-macosx_10_9_x86_64.whl
| Download URL | spline_trajectory-0.1.0-cp312-cp312-macosx_10_9_x86_64.whl |
|---|---|
| Size | 1.1 MB |
| Tags | CPython 3.12 macOS 10.9+ x86-64 |
|
SHA-256 checksum How to use checksums |
0462d8035cc809295c25da0821a03322bb01c08d5d6b65ab0cdacee77fda334b
|
|
BLAKE2b-256 checksum How to use checksums |
e30001962de7ea755413999e31b229c1a5031f0c86d5d37e190d989357a4f084
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp311-cp311-win_amd64.whl
| Download URL | spline_trajectory-0.1.0-cp311-cp311-win_amd64.whl |
|---|---|
| Size | 736.5 kB |
| Tags | CPython 3.11 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
56cf611802151675bebb8a7acf2a730c919505dc862fb89a5b6cfaee504abda1
|
|
BLAKE2b-256 checksum How to use checksums |
d7be02ca969d340a3637186b6f267e8e5092900d1beb431d39617236a9a404a6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp311-cp311-musllinux_1_2_x86_64.whl
| Download URL | spline_trajectory-0.1.0-cp311-cp311-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 2.1 MB |
| Tags | CPython 3.11 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
8c776e209848043fdc31d32651c8e7651670322a11be3501d3100b2e49928742
|
|
BLAKE2b-256 checksum How to use checksums |
f17122b9a40a0980b5757c28326d4cf6126218589cf2bcc2ad298778265f8a58
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp311-cp311-musllinux_1_2_aarch64.whl
| Download URL | spline_trajectory-0.1.0-cp311-cp311-musllinux_1_2_aarch64.whl |
|---|---|
| Size | 1.9 MB |
| Tags | CPython 3.11 Linux musl 1.2+ ARM64 |
|
SHA-256 checksum How to use checksums |
f8952be996d00b6278e6746da2b8594aac224254421a1b00143ba89e55d0c299
|
|
BLAKE2b-256 checksum How to use checksums |
fef8c723cc5df3b9b243eaa14f3e3af335cc23a923f56b39abbacc7b9de70edb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | spline_trajectory-0.1.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 1.1 MB |
| Tags | CPython 3.11 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
12965cf9745058b60158fa1ac637fbe92ed946b2ee05513710a503cb881c2fc4
|
|
BLAKE2b-256 checksum How to use checksums |
d3570dec30b474a48a984d34ef8f6ce82be3dcb4d9a469623bb93eb6b86ce945
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | spline_trajectory-0.1.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 1.0 MB |
| Tags | CPython 3.11 Linux glibc 2.17+ ARM64 |
|
SHA-256 checksum How to use checksums |
5d8d948d7aada3df50d420de0e745f126144bc590b396a89bcaf4f0d0d12c191
|
|
BLAKE2b-256 checksum How to use checksums |
57f676f44c0dbae1dd7be98e2d486b60a39b83db2f33ff9ef727297104d69526
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp311-cp311-macosx_11_0_arm64.whl
| Download URL | spline_trajectory-0.1.0-cp311-cp311-macosx_11_0_arm64.whl |
|---|---|
| Size | 920.7 kB |
| Tags | CPython 3.11 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
932487c2107cfe8db339c97f6a476f5a2ed020ed01f682494fe2c845ead09266
|
|
BLAKE2b-256 checksum How to use checksums |
083c5766fcd2c2809cfebe8481b515cfd9b20351fc3a5ff70d5d09e5d66aaf7f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp311-cp311-macosx_10_9_x86_64.whl
| Download URL | spline_trajectory-0.1.0-cp311-cp311-macosx_10_9_x86_64.whl |
|---|---|
| Size | 1.0 MB |
| Tags | CPython 3.11 macOS 10.9+ x86-64 |
|
SHA-256 checksum How to use checksums |
bd239ec3d765f67dbcdb51cb8345380f423410ad286ac595e4ebdaad85ea71e9
|
|
BLAKE2b-256 checksum How to use checksums |
d9e45a58f553804be707090ed827acc8ae15d1f9d0c4beadad64a7815dfcc2c6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp310-cp310-win_amd64.whl
| Download URL | spline_trajectory-0.1.0-cp310-cp310-win_amd64.whl |
|---|---|
| Size | 735.7 kB |
| Tags | CPython 3.10 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
6ac1ad447dbacfc2de5f2df34e8f6fa8972883928143ab292867bef522f2ba52
|
|
BLAKE2b-256 checksum How to use checksums |
88b8654a71a83f759fc2c8f146490e42f02f77d507074635e2bf6c353a9b0b65
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp310-cp310-musllinux_1_2_x86_64.whl
| Download URL | spline_trajectory-0.1.0-cp310-cp310-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 2.0 MB |
| Tags | CPython 3.10 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
a609f343ec9b889cb1f4616a2c297298c62103523c68aecc9e15153822a6aa15
|
|
BLAKE2b-256 checksum How to use checksums |
cbdb00366d6b5e77a95361ca5c7b9383c20a946933136a72ff003171d1563901
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp310-cp310-musllinux_1_2_aarch64.whl
| Download URL | spline_trajectory-0.1.0-cp310-cp310-musllinux_1_2_aarch64.whl |
|---|---|
| Size | 1.9 MB |
| Tags | CPython 3.10 Linux musl 1.2+ ARM64 |
|
SHA-256 checksum How to use checksums |
359a1e759479b378032830db4d72a475cf806e4293482bc865bebeaa47598cf9
|
|
BLAKE2b-256 checksum How to use checksums |
8690642a39e4c0afde84fde70bcbbf33214f9e52da9e8ee506c4e585857f4f6f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | spline_trajectory-0.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 1.1 MB |
| Tags | CPython 3.10 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
d60b04febfd4f7453a9751a660534346ee54d5127ca01a1d58e540964cb2f4ce
|
|
BLAKE2b-256 checksum How to use checksums |
e0183c3227cd59e671dd22f9850026fbca4e19635e8856e0d6ca10e3ed9bd7f0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | spline_trajectory-0.1.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 1.0 MB |
| Tags | CPython 3.10 Linux glibc 2.17+ ARM64 |
|
SHA-256 checksum How to use checksums |
c26318fbace710004d4cbe9032929095b7e8a6a7c86342e15eb1c5dc0d755dc4
|
|
BLAKE2b-256 checksum How to use checksums |
dba5751ee7e62c517a492d8036bff0a3833c357f1543ccf39325ec455ea3dbea
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp310-cp310-macosx_11_0_arm64.whl
| Download URL | spline_trajectory-0.1.0-cp310-cp310-macosx_11_0_arm64.whl |
|---|---|
| Size | 919.2 kB |
| Tags | CPython 3.10 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
6a6a6d33cee77d68494e4e8c2c8a0e1fb9decb34e753f23071e67220db0f7bd3
|
|
BLAKE2b-256 checksum How to use checksums |
e35623f8f06b44872f9ffc65357918e1acc1c486ddf783b9feec0c74a3b62cf6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl
| Download URL | spline_trajectory-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl |
|---|---|
| Size | 1.0 MB |
| Tags | CPython 3.10 macOS 10.9+ x86-64 |
|
SHA-256 checksum How to use checksums |
c2a20981f7159b4f1b8b5bc0618aff3eeddc9dab156cb5384b4771cfaa9be680
|
|
BLAKE2b-256 checksum How to use checksums |
69be03538e3800eaf423c00eb990f203b95c8a57f300e5b37c27babfc4f0e0be
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp39-cp39-win_amd64.whl
| Download URL | spline_trajectory-0.1.0-cp39-cp39-win_amd64.whl |
|---|---|
| Size | 2.7 MB |
| Tags | CPython 3.9 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
24e20eacd16b1ebe40a51675225dc8836957f3b4b64d40277fca4feb08f42f2a
|
|
BLAKE2b-256 checksum How to use checksums |
73b77502f2c64fa245b890dad98e6593bda6a3dc2ae06f78b608d46deec4eaf8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp39-cp39-musllinux_1_2_x86_64.whl
| Download URL | spline_trajectory-0.1.0-cp39-cp39-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 3.9 MB |
| Tags | CPython 3.9 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
c876661bcb8b98eb0cffe27656d5bb817c25c930472ad2864801a2cfe822f8a0
|
|
BLAKE2b-256 checksum How to use checksums |
60edcf2ee30043a8990ef8c50a306f25a789e40a21493473748f9fa9ab081518
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp39-cp39-musllinux_1_2_aarch64.whl
| Download URL | spline_trajectory-0.1.0-cp39-cp39-musllinux_1_2_aarch64.whl |
|---|---|
| Size | 3.8 MB |
| Tags | CPython 3.9 Linux musl 1.2+ ARM64 |
|
SHA-256 checksum How to use checksums |
82f3ea9f645436f6c0ec95122d86ee1781a2753246da26056980eae60762036f
|
|
BLAKE2b-256 checksum How to use checksums |
4321539bd2d1a9171ab42828381066212609746c38592b1fd0667da93a7675ec
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | spline_trajectory-0.1.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 1.1 MB |
| Tags | CPython 3.9 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
e969defbd15e3f39e051ac41214090994980070424b3dbb25d85ed83a53ca68c
|
|
BLAKE2b-256 checksum How to use checksums |
0895ae496f13336182203d3ebfd8a33ba5deaf08c8fbf0d697112d3e61ba6a63
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | spline_trajectory-0.1.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 2.9 MB |
| Tags | CPython 3.9 Linux glibc 2.17+ ARM64 |
|
SHA-256 checksum How to use checksums |
03f41e24ac594dd25ce7f1b358cba67b552a89827df47b2aaf4e99b9198ed550
|
|
BLAKE2b-256 checksum How to use checksums |
0da8195ff707a91b266d662c332d15a606f5e327b7f895152d94c89ceb308d86
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp39-cp39-macosx_11_0_arm64.whl
| Download URL | spline_trajectory-0.1.0-cp39-cp39-macosx_11_0_arm64.whl |
|---|---|
| Size | 919.2 kB |
| Tags | CPython 3.9 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
9c8a987b244961151b780ff13bb091e7012c3d857b138df7643cb7d01913f574
|
|
BLAKE2b-256 checksum How to use checksums |
d6779cfb70c394d64cae1623c49670fe9d3a65d666d43c3969a24fb664ae2f9d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency logRelease files / spline_trajectory-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl
| Download URL | spline_trajectory-0.1.0-cp39-cp39-macosx_10_9_x86_64.whl |
|---|---|
| Size | 1.0 MB |
| Tags | CPython 3.9 macOS 10.9+ x86-64 |
|
SHA-256 checksum How to use checksums |
696f83f0eef7f0090613441a4220e803679b878b6d67a0623e5a3b4e1a0302d1
|
|
BLAKE2b-256 checksum How to use checksums |
5f95bd612cf1aa8a59c0bad9d6a56a75b1dfaba83f29c774e901c223fdd86270
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 2, 2026.
Transparency log