Tags: sentomk/patternia
Tags
chore(release): prepare v0.9.2 metadata Problem - any/all combinators are stabilized with full test coverage. - Need to bump version metadata and publish the changelog. Implementation - Bumped VERSION to 0.9.2 in CMakeLists.txt. - Updated FetchContent GIT_TAG in README.md. - Updated vcpkg port version in packaging/vcpkg/vcpkg.json. - Added docs/changelog/v0.9.2.md with full release note. - Added v0.9.2 entry to docs/changelog/releases.md. - Moved any/all from WIP to FINISHED in docs/roadmap.md. Notes - No source code changes in this commit. - 139 tests pass.
build(vcpkg): bump local port metadata to 0.9.1 Problem - The upstream packaging metadata still reports Patternia 0.9.0. - The 0.9.1 release should publish matching local vcpkg version metadata. Implementation - Updated packaging/vcpkg/vcpkg.json from 0.9.0 to 0.9.1. Tests - Build verification was not run in this turn. Notes - The portfile SHA512 is updated separately against the final published source archive. - This keeps the version metadata aligned without guessing a checksum.
refactor(pattern): remove ds<> and as<T> APIs in favor of $(has<>()) … …and $(is<>()) Problem - ds<> and as<T> APIs were introduced as convenience shortcuts - They hide the binding operation, violating the "explicit binding" design principle - Users should explicitly use $() to indicate binding intent Implementation - Removed as_factory struct and as<T> variable template from include/ptn/pattern/type.hpp - Removed ds and as exports from include/ptn/patternia.hpp - Replaced all ds<>() usage with $(has<>()) across codebase - Replaced all as<T>() usage with $(is<T>()) across codebase - Updated documentation to reflect API changes Tests - Updated tests/tests_destructure.cpp: replaced ds<> with $(has<>()) - Updated tests/tests_unified_match.cpp: replaced as<T> with $(is<T>()) - Updated tests/tests_type_pattern.cpp: replaced as<T> with $(is<T>()) - Updated tests/tests_match_flow.cpp: replaced as<T> with $(is<T>()) - Updated benchmarks and samples to use new syntax - All tests pass (95/95) Notes - Breaking change: ds<> and as<T> are no longer available - Migration path: ds<>() → $(has<>()), as<T>() → $(is<T>()) - Improves API consistency: all binding now explicitly uses $() - Zero performance impact: same underlying implementation
fix(docs): restore v0.8.2 performance note Problem\nThe v0.8.2 performance note was incorrectly folded into the changelog flow, which left the performance index pointing at v0.8.0 as the current version.\n\nImplementation\nRestore docs/performance/v0.8.2.md as a standalone performance note, update the performance index to mark v0.8.2 as current, and add the page back to the MkDocs performance navigation alongside the v0.8.2 release note.\n\nTests\npython -m mkdocs build --clean\n\nNotes\nThe changelog v0.8.2 release note remains separate from the performance note by design.
chore(release): finalize 0.8.0 version metadata Problem - Release metadata remained unstaged after docs commit. - Project version and changelog dates needed to match 0.8.0 release state. Implementation - Bumped project version in CMakeLists.txt from 0.7.6 to 0.8.0. - Updated v0.8.0 release date in changelog index and release note to February 27, 2026. Tests - Not run (metadata-only change).
release: prepare v0.7.6 metadata and notes Problem - The repository still referenced v0.7.5 in project metadata and README release text. - v0.7.6 release notes and release index entry were missing. Implementation - Bumped project version in CMake to 0.7.6. - Added docs/changelog/v0.7.6.md with consolidated release highlights. - Updated docs/changelog/releases.md with the v0.7.6 entry. - Updated README update banner and benchmarking section text to v0.7.6 context. Tests - Not run (docs/metadata-only release preparation changes). Notes - This commit packages already-landed runtime/benchmark/script changes into release metadata.
PreviousNext