4f70778255
Bump 1.1.4 -> 1.2.0 across all release files (Cargo, pyproject, wasm, conda, docs) and roll the CHANGELOG [Unreleased] section into [1.2.0]. Highlights: runtime CPU-feature dispatch (multiversion), broader wheel coverage (linux aarch64 + musllinux + windows arm64), abi3 wheels, Dynamic Time Warping, and indicator-specific exception types.
53 lines
1.8 KiB
TOML
53 lines
1.8 KiB
TOML
[workspace]
|
|
members = [".", "crates/ferro_ta_core"]
|
|
exclude = ["fuzz"]
|
|
resolver = "2"
|
|
|
|
[package]
|
|
name = "ferro_ta"
|
|
version = "1.2.0"
|
|
edition = "2021"
|
|
description = "Rust-powered Python technical analysis library with a TA-Lib-compatible API"
|
|
license = "MIT"
|
|
readme = "README.md"
|
|
repository = "https://github.com/pratikbhadane24/ferro-ta"
|
|
homepage = "https://github.com/pratikbhadane24/ferro-ta#readme"
|
|
documentation = "https://pratikbhadane24.github.io/ferro-ta/"
|
|
keywords = ["technical-analysis", "trading", "indicators", "finance", "ta-lib"]
|
|
categories = ["finance", "mathematics"]
|
|
publish = false
|
|
|
|
[lib]
|
|
name = "ferro_ta"
|
|
crate-type = ["cdylib"]
|
|
|
|
[dependencies]
|
|
# abi3-py310: build a single stable-ABI wheel that runs on CPython 3.10+
|
|
# (including future 3.14+), instead of one wheel per minor version.
|
|
pyo3 = { version = "0.25", features = ["extension-module", "abi3-py310"] }
|
|
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"
|
|
# default-features = false so the `simd` toggle is forwarded explicitly via
|
|
# this crate's own `simd` feature (below). Without this, core's default `simd`
|
|
# would always be on and `--no-default-features` could never produce a true
|
|
# pure-scalar build (used by the SIMD benchmark baseline).
|
|
ferro_ta_core = { path = "crates/ferro_ta_core", version = "1.2.0", default-features = false, features = ["serde"] }
|
|
|
|
[dev-dependencies]
|
|
criterion = { version = "0.8", features = ["html_reports"] }
|
|
|
|
[profile.release]
|
|
lto = true
|
|
codegen-units = 1
|
|
|
|
[features]
|
|
# SIMD runtime dispatch ON by default → published wheels ship the adaptive
|
|
# fast path with no extra flags. `--no-default-features` yields pure scalar.
|
|
default = ["simd"]
|
|
simd = ["ferro_ta_core/simd"]
|