Skip to content

Commit 4fa1f8b

Browse files
committed
chore: release prep for v3.5.0-rc.1
Bump every workspace manifest to 3.5.0-rc.1 via `alef sync-versions --set`, refresh per-language dependency trees via `alef update --latest`, and regenerate all bindings, READMEs, docs reference pages, and e2e suites against alef 0.18.1.
1 parent c640dd5 commit 4fa1f8b

78 files changed

Lines changed: 215 additions & 193 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

CHANGELOG.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
## [3.5.0-rc.1] - 2026-05-24
11+
1012
### Changed
1113

14+
- **release: cut v3.5.0-rc.1 release candidate.** Aligned every workspace manifest (Cargo + npm + PyPI + Maven + Composer + Gemfile + Hex + pub.dev + Zig + R + Cocoa + nuget + Cargo.lock entries) on `3.5.0-rc.1` via `alef sync-versions --set`. Refreshed every per-language dependency tree to its current upstream pin (`alef update --latest`) and re-generated all bindings, READMEs, docs reference pages, and e2e suites against alef 0.18.1 so the regen artefacts on disk match the version pin baked into every binding manifest.
15+
1216
- **bindings: regenerated with alef 0.18.1.** Picks up the v0.18.0 → v0.18.1 sweep: Java Builder `#[serde(default)]` non-optional fields use boxed nullable types so omitted JSON keys survive Jackson round-trip; PHP enum-variant accessor paths skipped before field validation; Python pyproject TOML arrays normalised to canonical `pyproject-fmt` shape; the Windows e2e runner no longer clobbers the inherited `Path` (case-insensitive env-key collision on `std::process::Command::env`); Ruby scaffold emits a `Steepfile` that ignores `lib/<gem>/native.rb` so Steep stops tripping on the Sorbet sigs the magnus backend deliberately emits; `alef readme` markdown normalisation matches `rumdl-fmt` MD012 (one blank max) so cold-regen READMEs no longer diverge from the `alef all` output; rubocop double-quote / `%w[...]` defaults emitted directly; Kotlin Android `.gitkeep` is empty (matches `end-of-file-fixer`); WASM optionalised non-Duration fields preserve core `Default` via the if-let wrapper; `Box<str>` round-trips through binding `String` via the new `CoreWrapper::Box` classifier; bare `str` resolves to `TypeRef::String` instead of falling through `sanitize_type_ref`; Zig test preamble installs `SIG_IGN` on `SIGABRT` so C++ destructor `abort()`s don't break the test-runner IPC; Java sealed-interface tagged-enum field defaults emit `new EnumName.Variant()` (records can't be statically referenced); PHP binding structs with custom core `Default` suppress the auto `#[derive(Default)]` and emit a delegating `impl Default`; doc-test import paths use the published crate name `alef` (post workspace-collapse); kotlin-android snapshot updated for vanniktech 0.36 (`SourcesJar.Sources()`, no-arg `publishToMavenCentral()`); Java e2e resolves per-fixture mock URLs from system properties; Java `Vec<T>`/`Map<K,V>` marshaling uses `MAPPER.writerFor(constructCollectionType(...))` to preserve `@JsonTypeInfo` discriminators; PyO3 `_to_rust_*_config` aliases serde-renamed keys + final pyo3 calls use serde-renamed param names.
1317

1418
- **package READMEs: regenerated with cold `alef readme`.** The 0.18.0 regen sweep used `alef all` whose hot-cache README pass omits the blank lines between consecutive `##` section headers that the standalone `alef readme` pass emits cold. CI's `Validate READMEs` step (cold `alef readme`) caught the divergence; this commits the cold output. Same cosmetic alef bug as the prior `dcd072a58` patch; tracked separately upstream.

CITATION.cff

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,5 +12,5 @@ authors:
1212
repository-code: "https://github.com/kreuzberg-dev/html-to-markdown"
1313
url: "https://kreuzberg.dev"
1414
license: MIT
15-
version: 3.5.0
15+
version: 3.5.0-rc.1
1616
date-released: 2026-05-17

Cargo.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ exclude = [
2323
]
2424

2525
[workspace.package]
26-
version = "3.5.0"
26+
version = "3.5.0-rc.1"
2727
edition = "2024"
2828
authors = ["Na'aman Hirschfeld <naaman@kreuzberg.dev>"]
2929
description = "High-performance HTML to Markdown converter"
@@ -44,7 +44,7 @@ clap_complete = "4.6"
4444
clap_mangen = "0.3"
4545
encoding_rs = "0.8"
4646
ext-php-rs = "0.15.13"
47-
html-to-markdown-rs = { version = "3.5.0", path = "crates/html-to-markdown" }
47+
html-to-markdown-rs = { version = "3.5.0-rc.1", path = "crates/html-to-markdown" }
4848
html5ever = "0.39.0"
4949
once_cell = "1.21"
5050
pyo3 = { version = "0.28.3", features = ["abi3-py310"] }

crates/html-to-markdown-ffi/Cargo.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "html-to-markdown-ffi"
3-
version = "3.5.0"
3+
version = "3.5.0-rc.1"
44
edition = "2021"
55
license = "MIT"
66
description = "High-performance HTML to Markdown converter"
@@ -28,7 +28,7 @@ default = []
2828

2929
[dependencies]
3030
async-trait = "0.1"
31-
html-to-markdown-rs = { path = "../html-to-markdown", version = "3.5.0", features = [
31+
html-to-markdown-rs = { path = "../html-to-markdown", version = "3.5.0-rc.1", features = [
3232
"full",
3333
"metadata",
3434
"visitor",

crates/html-to-markdown-node/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "html-to-markdown-node"
3-
version = "3.5.0"
3+
version = "3.5.0-rc.1"
44
edition = "2024"
55
license = "MIT"
66
description = "High-performance HTML to Markdown converter"

crates/html-to-markdown-node/npm/darwin-arm64/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@kreuzberg/html-to-markdown-node-darwin-arm64",
3-
"version": "3.5.0",
3+
"version": "3.5.0-rc.1",
44
"description": "High-performance HTML to Markdown converter - Node.js native bindings",
55
"keywords": [
66
"converter",

crates/html-to-markdown-node/npm/darwin-x64/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@kreuzberg/html-to-markdown-node-darwin-x64",
3-
"version": "3.5.0",
3+
"version": "3.5.0-rc.1",
44
"description": "High-performance HTML to Markdown converter - Node.js native bindings",
55
"keywords": [
66
"converter",

crates/html-to-markdown-node/npm/linux-arm-gnueabihf/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@kreuzberg/html-to-markdown-node-linux-arm-gnueabihf",
3-
"version": "3.5.0",
3+
"version": "3.5.0-rc.1",
44
"description": "High-performance HTML to Markdown converter - Node.js native bindings",
55
"keywords": [
66
"converter",

crates/html-to-markdown-node/npm/linux-arm64-gnu/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@kreuzberg/html-to-markdown-node-linux-arm64-gnu",
3-
"version": "3.5.0",
3+
"version": "3.5.0-rc.1",
44
"description": "High-performance HTML to Markdown converter - Node.js native bindings",
55
"keywords": [
66
"converter",

crates/html-to-markdown-node/npm/linux-arm64-musl/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@kreuzberg/html-to-markdown-node-linux-arm64-musl",
3-
"version": "3.5.0",
3+
"version": "3.5.0-rc.1",
44
"description": "High-performance HTML to Markdown converter - Node.js native bindings",
55
"keywords": [
66
"converter",

0 commit comments

Comments
 (0)