From 3ee3fb67eccb7fcd92fa362b9c6a20a9ddc20970 Mon Sep 17 00:00:00 2001 From: kingchenc Date: Wed, 10 Jun 2026 03:55:39 +0200 Subject: [PATCH] release: bump 0.8.2 -> 0.8.3 (#249) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Version bump 0.8.2 → 0.8.3, releasing the per-binding throughput benchmark work (merged in #246). Bumped via `ScriptHelpers/bump_version.py` across all manual touchpoints — `Cargo.toml`, `pyproject.toml`, the Node `package.json` + 6 platform packages + both lockfiles, the Java `pom.xml`s + README, the C# `.csproj`, the R `DESCRIPTION` — plus `Cargo.lock` (via `cargo build`) and the `CHANGELOG.md` `[0.8.3]` section and compare URLs. CHANGELOG `[0.8.3]`: - Per-binding throughput benchmarks for all 9 targets (BENCHMARKS.md §3). - C ABI archetype test (`examples/c/archetypes.c`). `cargo fmt`, `cargo test --workspace --all-features` (all green) and `cargo clippy --workspace --all-targets --all-features -D warnings` pass. The docs/webpage version strings are bumped by `sync-about.yml` on the `v*` tag — not touched here. --- CHANGELOG.md | 8 +++- Cargo.lock | 18 ++++----- Cargo.toml | 4 +- bindings/csharp/Wickra/Wickra.csproj | 2 +- bindings/java/README.md | 4 +- bindings/java/pom.xml | 2 +- bindings/node/npm/darwin-arm64/package.json | 2 +- bindings/node/npm/darwin-x64/package.json | 2 +- .../node/npm/linux-arm64-gnu/package.json | 2 +- bindings/node/npm/linux-x64-gnu/package.json | 2 +- .../node/npm/win32-arm64-msvc/package.json | 2 +- bindings/node/npm/win32-x64-msvc/package.json | 2 +- bindings/node/package-lock.json | 40 +++++++++---------- bindings/node/package.json | 14 +++---- bindings/python/pyproject.toml | 2 +- bindings/r/DESCRIPTION | 2 +- examples/java/pom.xml | 4 +- examples/node/package-lock.json | 14 +++---- 18 files changed, 65 insertions(+), 61 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ddecd0f9..6c291980 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,7 @@ All notable changes to Wickra are documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## [Unreleased] +## [0.8.3] - 2026-06-10 ### Added - **Per-binding throughput benchmarks** — every target now ships a `throughput` benchmark mirroring the Node `throughput.js`: streaming and batch @@ -18,6 +18,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 each binding's FFI overhead — the same Rust core runs underneath all of them — and are documented in [BENCHMARKS.md](BENCHMARKS.md) §3, not a cross-library speed claim. +- **C ABI archetype test** — `examples/c/archetypes.c` exercises one indicator + per FFI archetype (scalar, multi-output, bars, profile, array input) through + the C boundary, matching the Go/R/Java suites. ## [0.8.2] - 2026-06-10 ### Fixed @@ -1508,7 +1511,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 optional Binance live feed. - Bindings for Python, Node.js, and WebAssembly. -[Unreleased]: https://github.com/wickra-lib/wickra/compare/v0.8.2...HEAD +[Unreleased]: https://github.com/wickra-lib/wickra/compare/v0.8.3...HEAD +[0.8.3]: https://github.com/wickra-lib/wickra/compare/v0.8.2...v0.8.3 [0.8.2]: https://github.com/wickra-lib/wickra/compare/v0.8.1...v0.8.2 [0.8.1]: https://github.com/wickra-lib/wickra/compare/v0.8.0...v0.8.1 [0.8.0]: https://github.com/wickra-lib/wickra/compare/v0.7.9...v0.8.0 diff --git a/Cargo.lock b/Cargo.lock index 3c0154e9..99b96418 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1944,7 +1944,7 @@ dependencies = [ [[package]] name = "wickra" -version = "0.8.2" +version = "0.8.3" dependencies = [ "approx", "criterion", @@ -1955,7 +1955,7 @@ dependencies = [ [[package]] name = "wickra-bench" -version = "0.8.2" +version = "0.8.3" dependencies = [ "criterion", "kand", @@ -1967,14 +1967,14 @@ dependencies = [ [[package]] name = "wickra-c" -version = "0.8.2" +version = "0.8.3" dependencies = [ "wickra-core", ] [[package]] name = "wickra-core" -version = "0.8.2" +version = "0.8.3" dependencies = [ "approx", "proptest", @@ -1984,7 +1984,7 @@ dependencies = [ [[package]] name = "wickra-data" -version = "0.8.2" +version = "0.8.3" dependencies = [ "approx", "csv", @@ -2001,7 +2001,7 @@ dependencies = [ [[package]] name = "wickra-examples" -version = "0.8.2" +version = "0.8.3" dependencies = [ "serde_json", "tokio", @@ -2011,7 +2011,7 @@ dependencies = [ [[package]] name = "wickra-node" -version = "0.8.2" +version = "0.8.3" dependencies = [ "napi", "napi-build", @@ -2021,7 +2021,7 @@ dependencies = [ [[package]] name = "wickra-python" -version = "0.8.2" +version = "0.8.3" dependencies = [ "numpy", "pyo3", @@ -2030,7 +2030,7 @@ dependencies = [ [[package]] name = "wickra-wasm" -version = "0.8.2" +version = "0.8.3" dependencies = [ "console_error_panic_hook", "js-sys", diff --git a/Cargo.toml b/Cargo.toml index 4dbb7dfb..3d1b4ddf 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -14,7 +14,7 @@ members = [ exclude = ["fuzz"] [workspace.package] -version = "0.8.2" +version = "0.8.3" authors = ["kingchenc "] edition = "2021" rust-version = "1.86" @@ -26,7 +26,7 @@ keywords = ["finance", "trading", "indicators", "technical-analysis", "ta"] categories = ["finance", "mathematics", "science"] [workspace.dependencies] -wickra-core = { path = "crates/wickra-core", version = "0.8.2" } +wickra-core = { path = "crates/wickra-core", version = "0.8.3" } thiserror = "2" rayon = "1.10" diff --git a/bindings/csharp/Wickra/Wickra.csproj b/bindings/csharp/Wickra/Wickra.csproj index ffee5619..afff8ac3 100644 --- a/bindings/csharp/Wickra/Wickra.csproj +++ b/bindings/csharp/Wickra/Wickra.csproj @@ -11,7 +11,7 @@ Wickra - 0.8.2 + 0.8.3 kingchenc High-performance streaming technical-analysis indicators (514 indicators) for .NET, backed by the native Rust core via the Wickra C ABI. MIT OR Apache-2.0 diff --git a/bindings/java/README.md b/bindings/java/README.md index 62dae269..e167ff65 100644 --- a/bindings/java/README.md +++ b/bindings/java/README.md @@ -30,14 +30,14 @@ Maven: org.wickra wickra - 0.8.2 + 0.8.3 ``` Gradle: ```kotlin -implementation("org.wickra:wickra:0.8.2") +implementation("org.wickra:wickra:0.8.3") ``` The native library ships prebuilt per platform (Linux, macOS, Windows — x64 and diff --git a/bindings/java/pom.xml b/bindings/java/pom.xml index 42c84454..f3b3ae83 100644 --- a/bindings/java/pom.xml +++ b/bindings/java/pom.xml @@ -6,7 +6,7 @@ org.wickra wickra - 0.8.2 + 0.8.3 jar Wickra diff --git a/bindings/node/npm/darwin-arm64/package.json b/bindings/node/npm/darwin-arm64/package.json index 46212407..bce33911 100644 --- a/bindings/node/npm/darwin-arm64/package.json +++ b/bindings/node/npm/darwin-arm64/package.json @@ -1,6 +1,6 @@ { "name": "wickra-darwin-arm64", - "version": "0.8.2", + "version": "0.8.3", "description": "Native binding for wickra (macOS Apple Silicon). Installed automatically as an optional dependency of wickra on matching platforms.", "main": "wickra.darwin-arm64.node", "files": [ diff --git a/bindings/node/npm/darwin-x64/package.json b/bindings/node/npm/darwin-x64/package.json index 2cc0fea8..ab69ed81 100644 --- a/bindings/node/npm/darwin-x64/package.json +++ b/bindings/node/npm/darwin-x64/package.json @@ -1,6 +1,6 @@ { "name": "wickra-darwin-x64", - "version": "0.8.2", + "version": "0.8.3", "description": "Native binding for wickra (macOS Intel). Installed automatically as an optional dependency of wickra on matching platforms.", "main": "wickra.darwin-x64.node", "files": [ diff --git a/bindings/node/npm/linux-arm64-gnu/package.json b/bindings/node/npm/linux-arm64-gnu/package.json index d8a20f66..3ce27099 100644 --- a/bindings/node/npm/linux-arm64-gnu/package.json +++ b/bindings/node/npm/linux-arm64-gnu/package.json @@ -1,6 +1,6 @@ { "name": "wickra-linux-arm64-gnu", - "version": "0.8.2", + "version": "0.8.3", "description": "Native binding for wickra (linux arm64 GNU). Installed automatically as an optional dependency of wickra on matching platforms.", "main": "wickra.linux-arm64-gnu.node", "files": [ diff --git a/bindings/node/npm/linux-x64-gnu/package.json b/bindings/node/npm/linux-x64-gnu/package.json index f8b231a2..426273a3 100644 --- a/bindings/node/npm/linux-x64-gnu/package.json +++ b/bindings/node/npm/linux-x64-gnu/package.json @@ -1,6 +1,6 @@ { "name": "wickra-linux-x64-gnu", - "version": "0.8.2", + "version": "0.8.3", "description": "Native binding for wickra (linux x64 GNU). Installed automatically as an optional dependency of wickra on matching platforms.", "main": "wickra.linux-x64-gnu.node", "files": [ diff --git a/bindings/node/npm/win32-arm64-msvc/package.json b/bindings/node/npm/win32-arm64-msvc/package.json index 41cc53f8..b9d82bb2 100644 --- a/bindings/node/npm/win32-arm64-msvc/package.json +++ b/bindings/node/npm/win32-arm64-msvc/package.json @@ -1,6 +1,6 @@ { "name": "wickra-win32-arm64-msvc", - "version": "0.8.2", + "version": "0.8.3", "description": "Native binding for wickra (Windows arm64 MSVC). Installed automatically as an optional dependency of wickra on matching platforms.", "main": "wickra.win32-arm64-msvc.node", "files": [ diff --git a/bindings/node/npm/win32-x64-msvc/package.json b/bindings/node/npm/win32-x64-msvc/package.json index e96f265a..10d2f92c 100644 --- a/bindings/node/npm/win32-x64-msvc/package.json +++ b/bindings/node/npm/win32-x64-msvc/package.json @@ -1,6 +1,6 @@ { "name": "wickra-win32-x64-msvc", - "version": "0.8.2", + "version": "0.8.3", "description": "Native binding for wickra (Windows x64 MSVC). Installed automatically as an optional dependency of wickra on matching platforms.", "main": "wickra.win32-x64-msvc.node", "files": [ diff --git a/bindings/node/package-lock.json b/bindings/node/package-lock.json index e114ef8e..c441c79e 100644 --- a/bindings/node/package-lock.json +++ b/bindings/node/package-lock.json @@ -1,12 +1,12 @@ { "name": "wickra", - "version": "0.8.2", + "version": "0.8.3", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "wickra", - "version": "0.8.2", + "version": "0.8.3", "license": "MIT OR Apache-2.0", "devDependencies": { "@napi-rs/cli": "^2.18.0" @@ -15,12 +15,12 @@ "node": ">= 18" }, "optionalDependencies": { - "wickra-darwin-arm64": "0.8.2", - "wickra-darwin-x64": "0.8.2", - "wickra-linux-arm64-gnu": "0.8.2", - "wickra-linux-x64-gnu": "0.8.2", - "wickra-win32-arm64-msvc": "0.8.2", - "wickra-win32-x64-msvc": "0.8.2" + "wickra-darwin-arm64": "0.8.3", + "wickra-darwin-x64": "0.8.3", + "wickra-linux-arm64-gnu": "0.8.3", + "wickra-linux-x64-gnu": "0.8.3", + "wickra-win32-arm64-msvc": "0.8.3", + "wickra-win32-x64-msvc": "0.8.3" } }, "node_modules/@napi-rs/cli": { @@ -41,8 +41,8 @@ } }, "node_modules/wickra-darwin-arm64": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/wickra-darwin-arm64/-/wickra-darwin-arm64-0.8.2.tgz", + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/wickra-darwin-arm64/-/wickra-darwin-arm64-0.8.3.tgz", "integrity": "sha512-4eZiBR/yGUdr4nzhEUFy2i69XgNx64iI2ax/LPamsThgylC0KpHOZKK19QzJ2d9KbK4C8nMjME5FLuR+4GNEwQ==", "cpu": [ "arm64" @@ -57,8 +57,8 @@ } }, "node_modules/wickra-darwin-x64": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/wickra-darwin-x64/-/wickra-darwin-x64-0.8.2.tgz", + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/wickra-darwin-x64/-/wickra-darwin-x64-0.8.3.tgz", "integrity": "sha512-6hf8zI3QPjTFp4zCpmgUwDvNtu6jHqNUHKD5e55POo0CgA52HkpyxSPtVm8TGTIZDI7kPjlbOdBM8CJ76mmXwA==", "cpu": [ "x64" @@ -73,8 +73,8 @@ } }, "node_modules/wickra-linux-arm64-gnu": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/wickra-linux-arm64-gnu/-/wickra-linux-arm64-gnu-0.8.2.tgz", + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/wickra-linux-arm64-gnu/-/wickra-linux-arm64-gnu-0.8.3.tgz", "integrity": "sha512-kSe6y0xBMSiqdPLXNjwop5WZdHtvdBNKSEBCwZ4hFq33p4apW25/wrlzv9/oDuyD4kuPabJEhCCnFOplh58CUg==", "cpu": [ "arm64" @@ -89,8 +89,8 @@ } }, "node_modules/wickra-linux-x64-gnu": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/wickra-linux-x64-gnu/-/wickra-linux-x64-gnu-0.8.2.tgz", + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/wickra-linux-x64-gnu/-/wickra-linux-x64-gnu-0.8.3.tgz", "integrity": "sha512-tWBWS4qz7hxM4xnpFb59bhf6TaLwXq0Z3jEa/2l7r8PiHA94g8r8S53NRMiT+4yiL5hSWe/nUiC/YXdRrhEZ4g==", "cpu": [ "x64" @@ -105,8 +105,8 @@ } }, "node_modules/wickra-win32-arm64-msvc": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/wickra-win32-arm64-msvc/-/wickra-win32-arm64-msvc-0.8.2.tgz", + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/wickra-win32-arm64-msvc/-/wickra-win32-arm64-msvc-0.8.3.tgz", "integrity": "sha512-EXIckHxAtF75PUGDKRzXyqMe9ldP0JjSdu68WFN6iJfp+McYrGu6h40TEJlQ/oUEIoPqiZB/xhVyo/el5Lg7zw==", "cpu": [ "arm64" @@ -121,8 +121,8 @@ } }, "node_modules/wickra-win32-x64-msvc": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/wickra-win32-x64-msvc/-/wickra-win32-x64-msvc-0.8.2.tgz", + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/wickra-win32-x64-msvc/-/wickra-win32-x64-msvc-0.8.3.tgz", "integrity": "sha512-Yfsqq1Xwp6hdxMyLze411vNdo7BDwI6+lPSe7A9XdqyPecNDbtKwYLpsal2r8EHbNzqM+R8XnuRtUaEQS5VlUQ==", "cpu": [ "x64" diff --git a/bindings/node/package.json b/bindings/node/package.json index 70289959..bdeac976 100644 --- a/bindings/node/package.json +++ b/bindings/node/package.json @@ -1,6 +1,6 @@ { "name": "wickra", - "version": "0.8.2", + "version": "0.8.3", "description": "Streaming-first technical indicators: incremental, fast, install-free. Node bindings powered by Rust.", "author": "kingchenc ", "main": "index.js", @@ -47,12 +47,12 @@ "node": ">= 18" }, "optionalDependencies": { - "wickra-linux-x64-gnu": "0.8.2", - "wickra-linux-arm64-gnu": "0.8.2", - "wickra-darwin-x64": "0.8.2", - "wickra-darwin-arm64": "0.8.2", - "wickra-win32-x64-msvc": "0.8.2", - "wickra-win32-arm64-msvc": "0.8.2" + "wickra-linux-x64-gnu": "0.8.3", + "wickra-linux-arm64-gnu": "0.8.3", + "wickra-darwin-x64": "0.8.3", + "wickra-darwin-arm64": "0.8.3", + "wickra-win32-x64-msvc": "0.8.3", + "wickra-win32-arm64-msvc": "0.8.3" }, "scripts": { "build": "napi build --platform --release", diff --git a/bindings/python/pyproject.toml b/bindings/python/pyproject.toml index 7e8bdb87..8868d4e3 100644 --- a/bindings/python/pyproject.toml +++ b/bindings/python/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "maturin" [project] name = "wickra" -version = "0.8.2" +version = "0.8.3" description = "Streaming-first technical indicators: incremental, fast, install-free." readme = "README.md" license = "MIT OR Apache-2.0" diff --git a/bindings/r/DESCRIPTION b/bindings/r/DESCRIPTION index afc06234..a6195222 100644 --- a/bindings/r/DESCRIPTION +++ b/bindings/r/DESCRIPTION @@ -1,7 +1,7 @@ Package: wickra Type: Package Title: Streaming-First Technical Indicators -Version: 0.8.2 +Version: 0.8.3 Authors@R: person("Wickra contributors", role = c("aut", "cre"), email = "support@wickra.org") Description: R bindings for the Wickra technical-analysis library over its C ABI hub. Exposes 514 indicators, each an O(1) streaming state machine shared with diff --git a/examples/java/pom.xml b/examples/java/pom.xml index a3120f6e..2d86ebc2 100644 --- a/examples/java/pom.xml +++ b/examples/java/pom.xml @@ -6,7 +6,7 @@ org.wickra.examples wickra-examples - 0.8.2 + 0.8.3 jar Wickra Java examples @@ -21,7 +21,7 @@ org.wickra wickra - 0.8.2 + 0.8.3 diff --git a/examples/node/package-lock.json b/examples/node/package-lock.json index e99da297..92908ed5 100644 --- a/examples/node/package-lock.json +++ b/examples/node/package-lock.json @@ -17,7 +17,7 @@ }, "../../bindings/node": { "name": "wickra", - "version": "0.8.2", + "version": "0.8.3", "license": "MIT OR Apache-2.0", "devDependencies": { "@napi-rs/cli": "^2.18.0" @@ -26,12 +26,12 @@ "node": ">= 18" }, "optionalDependencies": { - "wickra-darwin-arm64": "0.8.2", - "wickra-darwin-x64": "0.8.2", - "wickra-linux-arm64-gnu": "0.8.2", - "wickra-linux-x64-gnu": "0.8.2", - "wickra-win32-arm64-msvc": "0.8.2", - "wickra-win32-x64-msvc": "0.8.2" + "wickra-darwin-arm64": "0.8.3", + "wickra-darwin-x64": "0.8.3", + "wickra-linux-arm64-gnu": "0.8.3", + "wickra-linux-x64-gnu": "0.8.3", + "wickra-win32-arm64-msvc": "0.8.3", + "wickra-win32-x64-msvc": "0.8.3" } }, "node_modules/wickra": {