307beeca02
Prepare the first public 1.0.0 release and finish the remaining CI hardening work. Highlights: - align Python, Rust, WASM, Conda, API, MCP, and docs version metadata to 1.0.0 - promote package metadata to Production/Stable and update stability/versioning docs for the stable series - move the accumulated Unreleased notes into a dated 1.0.0 changelog section and keep a fresh top-level Unreleased block - strengthen the changelog checker so it validates a single top-level Unreleased section - fix the CI/package support mismatch by declaring Python >=3.10 consistently and gating pandas-ta extras to Python 3.12+ - restore Sphinx autodoc compatibility for documented ferro_ta.<module> imports by registering module aliases - make the TA-Lib benchmark guardrail less flaky by checking median and tail-percentile speedups instead of failing on a single mild outlier - switch PyPI publishing to OIDC-only trusted publishing and wire the changelog check into the required CI gate - apply the Ruff-driven cleanup across the Python and test tree and refresh uv/cargo lockfiles Validated locally: - python3 scripts/check_changelog.py - uv run --with ruff ruff check python tests - uv run --with ruff ruff format --check python tests - uv lock --check - sphinx-build -b html docs docs/_build -W --keep-going - build/install the ferro_ta 1.0.0 wheel successfully
38 lines
744 B
TOML
38 lines
744 B
TOML
[workspace]
|
|
members = [".", "crates/ferro_ta_core"]
|
|
exclude = ["fuzz"]
|
|
resolver = "2"
|
|
|
|
[package]
|
|
name = "ferro_ta"
|
|
version = "1.0.0"
|
|
edition = "2021"
|
|
license = "MIT"
|
|
publish = false
|
|
|
|
[lib]
|
|
name = "ferro_ta"
|
|
crate-type = ["cdylib"]
|
|
|
|
[dependencies]
|
|
pyo3 = { version = "0.25", features = ["extension-module"] }
|
|
ta = "0.5.0"
|
|
numpy = "0.25"
|
|
# Must be < 0.17 while numpy 0.25 is used (numpy's IntoPyArray is for its own ndarray only).
|
|
ndarray = "0.16"
|
|
rayon = "1.10"
|
|
log = "0.4"
|
|
pyo3-log = "0.12"
|
|
ferro_ta_core = { path = "crates/ferro_ta_core", version = "1.0.0" }
|
|
|
|
[dev-dependencies]
|
|
criterion = { version = "0.8", features = ["html_reports"] }
|
|
|
|
[profile.release]
|
|
lto = true
|
|
codegen-units = 1
|
|
|
|
[features]
|
|
default = []
|
|
simd = ["ferro_ta_core/simd"]
|