From 5844ec2fd2feb381d30e6cd8f1dc64a95d4e9ae9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mark=20Karpel=C3=A8s?= Date: Mon, 13 Jul 2026 17:14:23 +0900 Subject: [PATCH] chore: release v0.2.0 --- CHANGELOG.md | 36 ++++++++++++++++++++++++++++++++++++ Cargo.toml | 2 +- 2 files changed, 37 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e4558e0..34cfd62 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,42 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [0.2.0](https://github.com/KarpelesLab/anydcode/compare/v0.1.1...v0.2.0) - 2026-07-13 + +### Fixed + +- live decode starved by runaway QR fallbacks on cluttered crops +- *(demo)* unify decode path + cache-bust wasm so the demo actually decodes +- *(ean)* consensus floor on edge decode to reject phantom barcodes +- *(detect)* isolate 1D barcodes from busy scenes via per-tile labelling + +### Other + +- keep the live demo's main thread cheap; bridge linear region seams +- gate scene texture out of the locator and stop fragmenting codes +- parallel full-frame 2D worker so QR works without the locator +- bound QR and 1D scans; split scan_2d/scan_1d; add decode2d +- capture now records what the HUD shows (tracked codes + composited overlay) +- track located candidates to kill acquiring-reticle noise +- track decoded codes across frames via the locate pass +- persist decoded codes with a hold window to stop lock flicker +- robust EAN/UPC edge-width decode for real camera captures +- add scan1ddebug tool + curved-bottle EAN fixture +- add locdebug example + real EAN-13 scene fixture +- Fix capture freeze: reuse live detection state instead of synchronous re-decode +- Merge impl/full-generator: all 51 symbologies + options in the web generator +- Web generator: support every implemented symbology with all its options +- add SizeStrategy (Balanced/MinHeight/MaxHeight) for shape control +- add capture button (saves native frame PNG + detection JSON) and request 1080p +- Add gated degrade example for realistic jsQR-parity benchmarking +- QR read_format: cross-validate both format copies, keep higher-confidence one +- QR sampler: timing-anchored dewarp + per-module majority midpoint sampling +- Add sharp real-world QR fixture + gated qrdebug example (diagnosis: timing-pitch drift → per-module errors) +- Add multi-anchor non-planar (TPS) dewarping to the QR sampler +- Merge impl/qr-realworld: real-world robustness for QR/DataMatrix/PDF417 samplers +- Harden QR image sampler for real-world photos (adaptive binarization + local sampling) +- Add real-world QR photo regression fixture (curved bottle, blurred) + ## [0.1.1](https://github.com/KarpelesLab/anydcode/compare/v0.1.0...v0.1.1) - 2026-07-11 ### Other diff --git a/Cargo.toml b/Cargo.toml index 0e50028..eea52e5 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "anyd" -version = "0.1.1" +version = "0.2.0" edition = "2024" rust-version = "1.89" license = "MIT"