Files
Pratik Bhadane 4f70778255 chore(release): 1.2.0 (#30)
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.
2026-06-29 18:31:08 +05:30

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"]