Skip to content

Releases: tpn/perfecthash

v0.74.0

14 Mar 05:20
186aa3f

Choose a tag to compare

PerfectHash v0.74.0

Generated by ci/generate-release-notes.sh.

Curated Notes

Added

  • Release automation now builds bundled standalone Python wheels for the full
    profile and a matching source distribution on Linux x86_64.
  • Conda packaging now includes a perfecthash-python output, and the top-level
    perfecthash package now installs both the native full profile and the
    Python package.
  • Release automation now publishes bundled Python wheels to TestPyPI from the
    shared release.yml workflow before any real PyPI publish.

Changed

  • The supported Python package now resolves its version from the same tag/CI
    inputs as the native release path instead of using a hard-coded pre-release
    version string.
  • Linux branch CI now validates the root Python package, bundled-wheel build,
    and runtime smoke path on the linux-x86_64-py313 leg.
  • The published Python distribution name is now tpn-perfecthash, while the
    import package and CLI entry point remain perfecthash and ph.

Fixed

  • Tag-triggered conda publication now expands the built package artifact list before invoking the Anaconda CLI, avoiding literal ** glob failures in GitHub Actions.
  • Standalone bundled Python wheels now report the installed package version
    correctly outside a git checkout by preferring wheel metadata at runtime.
  • Python release publication now uses GitHub OIDC trusted publishing instead of
    long-lived index API tokens.

Docs

  • Release, packaging, CI, and Python docs now describe the root Python package,
    bundled-wheel release assets, and the legacy status of python/.
  • Release docs now cover the GitHub environment approvals and TestPyPI/PyPI
    trusted publisher setup for Python releases.

Commit Summary

  • Range: v0.73.0..v0.74.0

  • 186aa3f Update release metadata for v0.74.0 (Trent Nelson)

  • 6b5f0ca Add trusted publishing for Python releases (Trent Nelson)

v0.73.0

14 Mar 01:33
ceae34a

Choose a tag to compare

PerfectHash v0.73.0

Generated by ci/generate-release-notes.sh.

Curated Notes

Added

  • Release automation now builds bundled standalone Python wheels for the full
    profile and a matching source distribution on Linux x86_64.
  • Conda packaging now includes a perfecthash-python output, and the top-level
    perfecthash package now installs both the native full profile and the
    Python package.

Changed

  • The supported Python package now resolves its version from the same tag/CI
    inputs as the native release path instead of using a hard-coded pre-release
    version string.
  • Linux branch CI now validates the root Python package, bundled-wheel build,
    and runtime smoke path on the linux-x86_64-py313 leg.

Fixed

  • Tag-triggered conda publication now expands the built package artifact list before invoking the Anaconda CLI, avoiding literal ** glob failures in GitHub Actions.
  • Standalone bundled Python wheels now report the installed package version
    correctly outside a git checkout by preferring wheel metadata at runtime.

Docs

  • Release, packaging, CI, and Python docs now describe the root Python package,
    bundled-wheel release assets, and the legacy status of python/.

Commit Summary

  • Range: v0.72.2..v0.73.0

  • ceae34a ci: fetch tags for python package checks (Trent Nelson)

  • 91f6d21 packaging: add conda python output (Trent Nelson)

  • 7fc36b4 ci: release bundled python artifacts (Trent Nelson)

  • 07cf259 python: unify versioning and wheel bundling (Trent Nelson)

  • 3dee36b Relocate agent ledgers. (Trent Nelson)

  • 588bf8f python: fix source checkout discovery fallbacks (Trent Nelson)

  • 67d9114 python: add initial package, CLI, and runtime bindings (Trent Nelson)

  • 06972c3 Fix conda publish artifact expansion (Trent Nelson)

v0.72.2

09 Mar 07:15
786c974

Choose a tag to compare

PerfectHash v0.72.2

Generated by ci/generate-release-notes.sh.

Curated Notes

Added

  • No new additions yet.

Changed

  • No changes yet.

Fixed

  • No fixes yet.

Docs

  • No documentation-only updates yet.

Commit Summary

  • Range: v0.72.1..v0.72.2

  • 786c974 Normalize release notes for 0.72.x (Trent Nelson)

  • 93b56d7 Stabilize tag conda packaging NASM discovery (Trent Nelson)

v0.72.1

09 Mar 03:00
bce16e5

Choose a tag to compare

PerfectHash v0.72.1

Generated by ci/generate-release-notes.sh.

Curated Notes

Added

  • Repo-local release-engineering and conda-packaging skills now capture the maintainer workflows used to cut releases, validate conda packages, and publish org-channel artifacts.

Changed

  • Installed public headers now live under include/PerfectHash/, and public consumers use <PerfectHash/...> include paths instead of polluting the flat include directory.
  • Conda packaging now propagates the package version into CMake/binaries via PERFECTHASH_VERSION_OVERRIDE, so org-channel builds report the shipped version instead of the latest git tag.

Fixed

  • Windows RawDog MASM header generation now resolves the new public include root correctly after the header-layout refactor.
  • Conda profile variants now declare solver-level mutual exclusion, preventing co-install of conflicting profile packages.

Docs

  • Added docs/packaging.md and refreshed release/CI notes to reflect the current conda workflow, org-channel publishing, and release-versioning policy.

Commit Summary

  • Range: v0.72.0..v0.72.1

  • bce16e5 Use build-env NASM for tag conda packaging (Trent Nelson)

v0.72.0

07 Mar 17:21
cf1d6c5

Choose a tag to compare

PerfectHash v0.72.0

Generated by ci/generate-release-notes.sh.

Curated Notes

Added

  • Repo-local release-engineering and conda-packaging skills now capture the maintainer workflows used to cut releases, validate conda packages, and publish org-channel artifacts.

Changed

  • Installed public headers now live under include/PerfectHash/, and public consumers use <PerfectHash/...> include paths instead of polluting the flat include directory.
  • Conda packaging now propagates the package version into CMake/binaries via PERFECTHASH_VERSION_OVERRIDE, so org-channel builds report the shipped version instead of the latest git tag.

Fixed

  • Windows RawDog MASM header generation now resolves the new public include root correctly after the header-layout refactor.
  • Conda profile variants now declare solver-level mutual exclusion, preventing co-install of conflicting profile packages.

Docs

  • Added docs/packaging.md and refreshed release/CI notes to reflect the current conda workflow, org-channel publishing, and release-versioning policy.

Commit Summary

  • Range: v0.71.0..v0.72.0

  • cf1d6c5 Document release versioning policy for 0.72.0 (Trent Nelson)

  • 67bff63 Fix Windows RawDog MASM includes after header move (Trent Nelson)

  • 2032de2 Refactor public include layout and harden conda packaging (Trent Nelson)

v0.71.0

01 Mar 01:27
5a15ccf

Choose a tag to compare

PerfectHash v0.71.0

Generated by ci/generate-release-notes.sh.

Curated Notes

Added

  • No new additions yet.

Changed

  • Online build profiles now default to raw PH_* HRESULT/status/info behavior without embedding human-readable message payload tables.

Fixed

  • Restored RawDog JIT header generation in online RawDog profiles when embedded error strings are disabled.

Docs

  • No documentation-only updates yet.

Commit Summary

  • Range: v0.70.7..v0.71.0

  • 5a15ccf hash: restrict curated online set to supported functions (Trent Nelson)

  • 01533a5 ci/tests: stabilize assigned16 coverage and fix windows rawdog configure (Trent Nelson)

  • 864a2a3 tests: stabilize assigned16 boundary CLI case across architectures (Trent Nelson)

  • 04dd77d Expose OnlineJit Index32x4/x8/x16 batch APIs (Trent Nelson)

  • d011158 Finalize release profile migration and GitHub-backed consumer flows (Trent Nelson)

  • 540dd9f tests: harden assigned16 boundary coverage with pseudo-random keys (Trent Nelson)

  • a32b8bf Slim online error payloads and fix RawDog generation gating (Trent Nelson)

  • 4a76248 Fix LLVM data layout call in ChmOnline01 JIT path (Trent Nelson)

  • 52799ca Fix assigned16 overflow at 32768-key boundary (Trent Nelson)

  • 08ab7d1 Roll release notes forward for v0.70.7 (Trent Nelson)

v0.70.7

28 Feb 07:47
4dd53ce

Choose a tag to compare

PerfectHash v0.70.7

Generated by ci/generate-release-notes.sh.

Curated Notes

Added

  • No new additions yet.

Changed

  • Dependency-mode defaults now disable PERFECTHASH_BUILD_EXES and PERFECTHASH_ENABLE_TESTS when PerfectHash is consumed as a subproject.

Fixed

  • FetchContent consumer ALL builds now avoid multi-target RawDog header generation races for online-rawdog-llvm and full profiles.

Docs

  • No documentation-only updates yet.

Commit Summary

  • Range: v0.70.6..v0.70.7

  • 4dd53ce Record FetchContent profile-matrix validation (Trent Nelson)

  • 6b7e2e6 Harden FetchContent dependency builds across profiles (Trent Nelson)

  • 1c80fbd Roll release notes forward for v0.70.6 (Trent Nelson)

v0.70.6

28 Feb 07:13
0df2a01

Choose a tag to compare

PerfectHash v0.70.6

Generated by ci/generate-release-notes.sh.

Curated Notes

Added

  • No new additions yet.

Changed

  • Conda recipe now relies on canonical build.sh behavior without duplicate build.script declaration.
  • Conda recipe build requirements now include nasm for Linux/macOS assembly builds.

Fixed

  • Windows release packaging now uses strict error handling and consistent stage/package naming so .zip artifacts are generated reliably.

Docs

  • No documentation-only updates yet.

Commit Summary

  • Range: v0.70.5..v0.70.6

  • 0df2a01 Fix Windows release packaging and update release ledgers (Trent Nelson)

v0.70.5

28 Feb 06:54
885ad60

Choose a tag to compare

PerfectHash v0.70.5

Generated by ci/generate-release-notes.sh.

Curated Notes

Added

  • Tag-derived CMake version resolution with optional explicit override for release automation.
  • CMake package export/config support for downstream find_package(PerfectHash CONFIG REQUIRED) usage.
  • Build profiles: full, online-rawdog, and online-rawdog-llvm.
  • New consumer example at examples/cmake-fetchcontent-consumer covering FetchContent and installed-package flows.
  • Auto-generated release note script (ci/generate-release-notes.sh) for commit summaries since prior tag.
  • New tag-cut helper ci/cut-release.sh with preflight checks and optional tag push.

Changed

  • Release scripts now resolve version from git tags before file-based fallbacks.
  • Release scripts and GitHub release workflow now support profile-aware builds and profile-tagged artifact names.
  • Release workflow now generates release body content from repository history plus curated notes.
  • Release docs now direct maintainers to use ci/cut-release.sh for cutting tags.

Fixed

  • Installed CMake package now exports only profile-relevant targets, enabling slim-profile install + consume flows.

Docs

  • Release engineering ledgers added under agents/RELEASE-ENGINEERING-*.
  • Removed references to the legacy manual version-bump flow.

Commit Summary

  • Range: v0.70.4..v0.70.5

  • 885ad60 Add nasm to conda build requirements (Trent Nelson)

  • b0b516d Fix conda recipe script duplication (Trent Nelson)

  • aa157aa Avoid slim-profile ALL-build races in FetchContent consumers (Trent Nelson)

v0.70.4

28 Feb 06:03
6e57a68

Choose a tag to compare

PerfectHash v0.70.4

Generated by ci/generate-release-notes.sh.

Curated Notes

Added

  • Tag-derived CMake version resolution with optional explicit override for release automation.
  • CMake package export/config support for downstream find_package(PerfectHash CONFIG REQUIRED) usage.
  • Build profiles: full, online-rawdog, and online-rawdog-llvm.
  • New consumer example at examples/cmake-fetchcontent-consumer covering FetchContent and installed-package flows.
  • Auto-generated release note script (ci/generate-release-notes.sh) for commit summaries since prior tag.
  • New tag-cut helper ci/cut-release.sh with preflight checks and optional tag push.

Changed

  • Release scripts now resolve version from git tags before file-based fallbacks.
  • Release scripts and GitHub release workflow now support profile-aware builds and profile-tagged artifact names.
  • Release workflow now generates release body content from repository history plus curated notes.
  • Release docs now direct maintainers to use ci/cut-release.sh for cutting tags.

Fixed

  • Installed CMake package now exports only profile-relevant targets, enabling slim-profile install + consume flows.

Docs

  • Release engineering ledgers added under agents/RELEASE-ENGINEERING-*.
  • Removed references to the legacy manual version-bump flow.

Commit Summary

  • Range: v0.70.3..v0.70.4

  • No commits found in range.