Skip to content

v1.1.0

Choose a tag to compare

@github-actions github-actions released this 14 Jun 17:30
· 24 commits to master since this release
6dfd4e1

pbr-cpp-memory-pool v1.1.0 — Milestone 8: Internationalization & Post-Release Governance

The first post-1.0 MINOR. v1.1.0 is purely additive documentation and governance — the shipped library is unchanged from v1.0.x (no API, ABI, or behaviour change), so every existing consumer is unaffected. It opens the maintained-product phase: documentation translations, post-release governance, and an automated congruence check.

What's in the box

Documentation translations (ADR-0032)

A file-based, zero-external-dependency translation system under docs/i18n/. English stays the single normative source; translations are a convenience layer with an explicit English fallback. Both target languages — Simplified Chinese (zh-Hans) and Japanese (ja) — now cover the full translatable surface: the README, the specification, and the patterns-catalogue overview, each at a 1:1 mirrored path with an "English is normative" banner pinned to the source commit it was translated from.

  • A commit-pinned translation-status.md manifest makes staleness machine-detectable.
  • A glossary.md fixes canonical ↔ zh-Hansja terminology (with explicit keep in English entries for free list, RAII, Pimpl, the GoF pattern names, etc.).

The spec is now English-normative (ADR-0033)

The specification — originally authored in Italian — was translated to English in place as the single normative source (a faithful translation; requirements unchanged), so the whole repository is uniformly English (AGENTS.md §2) and the spec can be localized coherently like the rest of the surface.

Post-release maintenance protocol (ADR-0034)

docs/workflow/maintenance.md governs the maintained-product phase: the version-protected surface, a patch/minor/major decision tree (ambiguous rounds up), per-level version/CHANGELOG/release-notes mechanics, the hotfix-by-releasability + backport path, a private-first Security-categorized fix path, and a deprecate-in-MINOR → window → remove-in-MAJOR deprecation policy. The agent-vs-human release boundary is unchanged.

Agent-runnable consistency lint (ADR-0035)

tools/consistency_lint.py — a dependency-free (Python 3 stdlib only) checker that asserts cross-artifact congruence and exits non-zero with an actionable report. Six checks: version lockstep, ADR index ↔ files, every catalogued pattern backed by an ADR + code location, no dangling Spec Coverage Map row, no stale i18n translation, and README ↔ ROADMAP milestone agreement. It runs as a CI gate (the consistency job in docs.yml) and is wired into the agent contract as a mandatory pre-PR check (AGENTS.md §6.4 + the PR template), with a failure → remediation map in the maintenance protocol.

python tools/consistency_lint.py     # run it locally before drafting a PR

Architecture Decision Records

Four ADRs accepted in Milestone 8, taking the running total from 31 to 35:

  • ADR-0032 — documentation i18n architecture.
  • ADR-0033 — English as the specification's normative language.
  • ADR-0034 — post-release maintenance protocol.
  • ADR-0035 — agent-runnable consistency lint.

Spec Coverage Map

No change — Milestone 8 is additive documentation and governance, not a spec requirement. All fifteen rows remain ✅ (accepted at v1.0.0, ADR-0029).

What this release does not contain

  • No library code change — the static archive is unchanged from v1.0.1; this is a docs/governance MINOR.
  • Localization of the ADRs / CHANGELOG / ROADMAP (English-only by design — ADR-0032 §2), a third translation language, and a SECURITY.md (a noted follow-up) are out of scope.

Verifying the release

Each platform tarball is the same complete cmake --install tree as v1.0.x (full headers + static archive + CMake package config + pkg-config .pc). SHA-256 checksums are in SHA256SUMS:

sha256sum --check SHA256SUMS

Links