v3.7.1
Fixed
- ci(homebrew): drop the Intel-macOS
sonomabottle from the publish matrix. The formula intentionally has nox86_64-apple-darwinurl (Apple-Silicon only), but the bottle matrix still built asonoma(Intel) bottle, which failed withformula requires at least a URL. Becauserelease-finalizegates onpublish-homebrew-bottleswithif: !contains(needs.*.result, 'failure'), that one chronic failure silently skipped release-finalize for three releases (v3.6.20, v3.6.21, v3.7.0) — and with it thepackages/go/vX.Y.ZGo module tag, leavinggo get …/packages/go/v3@vX.Y.Zunresolvable. Removing the Intel bottle restores release-finalize (and the Go tag) for every future release. (.github/workflows/publish.yaml) - ci(e2e, C# on Windows): keep
cargoon PATH in the test before-hook. The "Run E2E tests (Windows)" step overrodePATHviaenv:with${{ env.PATH }}, which omits cargo's$GITHUB_PATHadditions under Git Bash, so thecargo build … html-to-markdown-ffibefore-hook failed withcargo: command not found. Prepend the target dirs to the live$PATHat runtime instead. (.github/workflows/ci-e2e.yaml) - ci(e2e/docs, Elixir): force the NIF to build from source. Under
MIX_ENV=testtheforce_build: … or Mix.env() in [:dev]clause does not apply, somix testtried to download a precompiled NIF for the current (unreleased) version and failed withthe precompiled NIF file does not exist in the checksum file. SetRUSTLER_PRECOMPILED_FORCE_BUILD_ALL=1so the test/doc compile builds the NIF locally. (scripts/ci/elixir/run-tests.sh) - ci(e2e, Swift): build the FFI crate the generated
Package.swiftlinks. The swift e2e before-hook built onlyhtml-to-markdown-rs-swift, but the generated manifest linkshtml_to_markdown_ffi, soswift testfailed withlibrary 'html_to_markdown_ffi' not found. Buildhtml-to-markdown-ffiin the before-hook too (matching Go/C#/C). (alef.toml) - ci(e2e, PHP): drop
--lockedfrom the PHP test before-hook. The PHP e2e job's extension build rewrites the native package deps to the published registry version and runscargo update, mutating the workspaceCargo.lock; the subsequentcargo build --locked -p html-to-markdown-phpthen failed withcannot update the lock file … --locked. (alef.toml) - ci(node/wasm): use
--no-frozen-lockfilefor the NAPI binding install.build-node-napiran a frozenpnpm install, but the napi platform packages inoptionalDependenciesare pinned to the unpublished release version and can never be inpnpm-lock.yaml, so the install failed withERR_PNPM_OUTDATED_LOCKFILEacross every Node build/e2e. (sharedkreuzberg-dev/actions/build-node-napi,alef.toml) - docs(php): recommend
pie installovercomposer require. The PHP package is a nativeext-php-rsextension thatcomposer requirecannot load (the cause of #420); every PHP install snippet now leads withpie install kreuzberg-dev/html-to-markdown. (docs/,readme_templates/)
Changed
- ci(publish): require all 16 PHP PIE cells by explicit per-cell pattern in
verify-release-assets. A dropped cell now fails the release instead of silently shipping a partial PIE matrix (#333). (.github/workflows/publish.yaml) - chore(deps): re-pin
alef.toml.alef_versionto 0.26.5 and regenerate every binding, e2e suite, README, and API doc. (alef 0.26.5)
Zig
Add to your build.zig.zon:
.dependencies = .{
.html-to-markdown-rs-zig = .{\n .url = \"https://github.com/kreuzberg-dev/html-to-markdown/releases/download/v3.7.1/html-to-markdown-rs-zig-v3.7.1.tar.gz\",\n .hash = \"html_to_markdown_rs-3.7.1-QtXyWxU3AQC5VboClItxYGlHr9zwZbNiB_JuxgFAXM5z\",\n },\n},\n```\n