1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
[]
# 1.9.2 is the floor, not 1.5: `license = "AGPL-3.0-only"` below is the PEP 639
# expression form, and maturin only emits it as core-metadata `License-Expression`
# from 1.9.2 on. 1.9.1 and older write the SPDX string into the deprecated `License`
# field instead (measured: 1.5.1 -> Metadata-Version 2.3 + License:, 1.8.7/1.9.0/1.9.1
# -> 2.4 + License:, 1.9.2/1.15.0 -> 2.4 + License-Expression:). A dual-licensed
# project cannot afford its licence landing in a deprecated free-text field.
= ["maturin>=1.9.2,<2"]
= "maturin"
[]
= "kshana"
= "Open hybrid quantum/classical PNT performance simulator"
= ">=3.9"
# Dual-licensed: AGPL-3.0-only for open use, or a commercial licence from
# Ashforde OÜ (contact@ashforde.org). See LICENSE and LICENSING.md.
= "AGPL-3.0-only"
= [{ = "Ashforde OÜ", = "contact@ashforde.org" }]
= "README.pypi.md"
= ["pnt", "navigation", "quantum", "gnss", "simulation"]
= [
"Programming Language :: Rust",
"Programming Language :: Python :: 3",
"Topic :: Scientific/Engineering",
"Intended Audience :: Science/Research",
]
= ["version"]
# numpy is a TEST-ONLY dependency. The extension has zero runtime NumPy need, so
# it is deliberately NOT in [project] dependencies (no false dependency claim);
# it lives only here under the `test` extra and in the CI install step.
[]
= ["pytest", "numpy"]
[]
= "https://kshana.dev"
= "https://github.com/ashfordeOU/kshana"
= "https://docs.rs/kshana"
[]
# Build the extension module from the `python` Cargo feature; abi3 wheels work
# across CPython >= 3.9. maturin sets the macOS `-undefined dynamic_lookup` link
# flag automatically.
= ["python"]
# No `include` for the type stub: maturin already detects the root kshana.pyi and
# installs it as kshana/__init__.pyi, and synthesizes kshana/py.typed, so mypy and
# pyright see the typed surface. Listing them here ALSO copied both to the wheel
# ROOT, which put a kshana.pyi and an unowned py.typed straight into site-packages
# (py.typed is a per-package marker: a copy at the root belongs to no distribution,
# and `pip uninstall kshana` would delete whichever package really owned it).