Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
42 changes: 42 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,48 @@

All notable changes to this project will be documented in this file.

## [0.8.0] - 2026-09-02

### ⚙️ Miscellaneous Tasks

- *(ci)* Pin stable toolchain and allow the new chunks_exact_to_as_chunks lint

### ⚡ Performance

- *(imgproc)* SIMD-accelerate compare_hist
- *(imgproc)* SIMD-accelerate compare_hist
- *(ci)* Run the sequential (non-parallel) test suite in CI

### 🐛 Bug Fixes

- *(imgproc)* Address review comments for histogram module
- *(imgproc)* Guard calc_back_project against zero-width images
- *(imgproc)* Address Qodo review comments for SIMD compare_hist
- *(wasm)* Address Qodo review findings on histogram bindings
- Address Qodo review findings on histogram examples

### 📚 Documentation

- Record the release workflow and merge policy in CLAUDE.md
- Add histogram/CLAHE examples (Rust + WASM) and update READMEs

### 🕸️ WebAssembly & Emscripten

- *(wasm)* Expose histogram module bindings

### 🚀 Features

- *(imgproc)* Add histogram module
- *(imgproc)* Add parallel support to histogram module

### 🚜 Refactor

- *(imgproc)* Use as_chunks instead of allowing the new clippy lint

### 🧪 Testing

- *(imgproc)* Move histogram module tests into src/imgproc/tests.rs

## [0.7.1] - 2026-08-10

### ⚙️ Miscellaneous Tasks
Expand Down
4 changes: 2 additions & 2 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "purecv"
version = "0.7.1"
version = "0.8.0"
authors = ["Walter Perdan <https://github.com/kalwalt>"]
edition = "2021"
rust-version = "1.88"
Expand Down Expand Up @@ -86,7 +86,7 @@ members = ["crates/wasm"]
exclude = ["crates/no-std-smoke"]

[workspace.package]
version = "0.7.1"
version = "0.8.0"
authors = ["Walter Perdan <https://github.com/kalwalt>"]
edition = "2021"
description = "A pure Rust, high-performance computer vision library focused on safety and portability."
Expand Down
6 changes: 5 additions & 1 deletion MAINTAINERS.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,11 @@ Publishing a new version requires a mix of manual changelog curation and automat
2. Verify that all CI checks (Formatting, Clippy, Tests for `parallel` and `simd`) are passing on the latest commit.

### Step 2: Bump the Version
Update the version number in the `Cargo.toml` file of the workspace in [package] and [workspace.package] sections.
Update the version number in the `Cargo.toml` file of the workspace in [package] and [workspace.package] sections, and in the root `package.json`.

Also check `README.md` and `crates/wasm/README.md` for hardcoded version strings in
installation snippets (e.g. `purecv = "0.6"`) — these don't update automatically and
are easy to miss. Search for the old version number across both files before moving on.

### Step 3: Generate the Local Changelog
We use `git-cliff` to parse the conventional commits and update the historical changelog. Run the following command in the root directory:
Expand Down
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ Add the following to your `Cargo.toml`:

```toml
[dependencies]
purecv = "0.6"
purecv = "0.8"
```

PureCV's minimum supported Rust version (MSRV) is **1.88**.
Expand All @@ -105,7 +105,7 @@ PureCV's minimum supported Rust version (MSRV) is **1.88**.
### `no_std` / embedded support

Build with `--no-default-features` to run on bare-metal targets such as the
ESP32 (`purecv = { version = "0.6", default-features = false }`). Only `core`
ESP32 (`purecv = { version = "0.8", default-features = false }`). Only `core`
and `alloc` are required (an allocator must be provided by the target).

| Module | `no_std` | Notes |
Expand All @@ -121,7 +121,7 @@ features gives the scalar, single-threaded code paths.

```toml
[dependencies]
purecv = { version = "0.6", default-features = false }
purecv = { version = "0.8", default-features = false }
```

```rust
Expand Down Expand Up @@ -150,14 +150,14 @@ To enable the `ndarray` feature:

```toml
[dependencies]
purecv = { version = "0.6", features = ["ndarray"] }
purecv = { version = "0.8", features = ["ndarray"] }
```

To enable SIMD + Parallel for maximum performance:

```toml
[dependencies]
purecv = { version = "0.6", features = ["parallel", "simd"] }
purecv = { version = "0.8", features = ["parallel", "simd"] }
```

### Usage Example
Expand Down
2 changes: 1 addition & 1 deletion crates/wasm/pkg/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
"Walter Perdan \u003chttps://github.com/kalwalt\u003e"
],
"description": "A pure Rust, high-performance computer vision library focused on safety and portability.",
"version": "0.7.1",
"version": "0.8.0",
"license": "LGPL-2.1-or-later",
"repository": {
"type": "git",
Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "purecv",
"version": "0.7.1",
"version": "0.8.0",
"description": "A pure Rust, high-performance computer vision library focused on safety and portability.",
"private": true,
"scripts": {
Expand Down