Skip to content

release(barcodes): graduate VellumPdf.Barcodes to Stable; v1.10.0 - #162

Merged
Tim81 merged 2 commits into
mainfrom
barcodes-stabilize
Jul 7, 2026
Merged

release(barcodes): graduate VellumPdf.Barcodes to Stable; v1.10.0#162
Tim81 merged 2 commits into
mainfrom
barcodes-stabilize

Conversation

@Tim81

@Tim81 Tim81 commented Jul 7, 2026

Copy link
Copy Markdown
Owner

The finish line for the v1.10 barcode expansion: with all five new symbologies merged, this graduates VellumPdf.Barcodes from Preview to Stable and cuts v1.10.0.

Graduation

  • Promote the public API surface — moved all 165 entries from PublicAPI.Unshipped.txt into PublicAPI.Shipped.txt (the 1.10 stable contract); Unshipped is back to just the header. Build stays 0-warning (PublicApiAnalyzer satisfied).
  • Flip Preview → Stable for VellumPdf.Barcodes across the package-family tables in the root README, the docfx landing (index.md), and all eight per-package READMEs. VellumPdf.Reader and VellumPdf.Conformance stay Preview. Removed the Preview banner and refreshed the symbology lists (six → the full set: QR/Micro QR/GS1-QR, Data Matrix, Aztec, PDF417, Code 128/GS1-128, Code 39, EAN/UPC/UPC-E, ITF-14).
  • Recorded the graduation + shipped/deferred Barcodes: completeness backlog (Kanji, Structured Append, UPC-E, Compact/Macro PDF417, GS1-128 HRI, Code 128 FNC4) #155 items in docs/barcodes-roadmap.md, plus the Aztec placement provenance decision.

Release metadata

  • Extended the Barcodes <Description>/<PackageTags>; added a shared <PackageReleaseNotes>; CHANGELOG.md gains a ## [1.10.0] - 2026-07-07 entry.
  • VersionPrefix 1.9.0 → 1.10.0. Versions are lockstep, so all eight packages republish at 1.10.0 (noted in the changelog).

Clean-room wording

Reworded the NOTICE/docs/architecture.md clean-room statement to be precise: the library is implemented from published specifications and, where a symbology's standard is patented, the original patents (e.g. US 5,591,956 for Aztec); zxing-cpp is used only as an interoperability decode cross-check in tests, never as a source — including verifying the exact Aztec placement coordinates, whose ISO/IEC 24778 figures aren't freely available. "No third-party source is copied" is preserved.

Verification

dotnet build -c Release (0 warnings), 936 tests pass, dotnet format --verify-no-changes clean, clean-room check pass, and dotnet pack produces all eight packages at 1.10.0 with the Barcodes package bundling its own README.

Stops at a green PR — no tag or publish. Cutting the v1.10.0 tag (which triggers the Trusted-Publishing release to NuGet) is a separate, explicitly-authorized step.

Tim81 added 2 commits July 7, 2026 11:01
Promote the VellumPdf.Barcodes public API surface (PublicAPI.Unshipped ->
Shipped) and flip the package from Preview to Stable now that the five new
symbologies have landed: Data Matrix / GS1 Data Matrix (#151), GS1-mode QR
(#152), Aztec (#153), Code 39 (#154), and UPC-E + GS1-128 parenthesized
human-readable text (#155).

- Flip Preview -> Stable for VellumPdf.Barcodes across the package-family
  tables (root README, the docfx landing, and the eight per-package READMEs);
  Reader and Conformance stay Preview. Remove the Preview banner and refresh
  the symbology lists to the full set.
- Record the graduation and the shipped/deferred #155 items in the barcodes
  roadmap, and add the Aztec placement provenance decision.
- Extend the package description and tags; add PackageReleaseNotes and a
  CHANGELOG [1.10.0] entry.
- Reword the NOTICE and architecture clean-room statement to say precisely that
  the library is implemented from published specifications and, where a
  symbology's standard is patented, the original patents, with zxing-cpp used
  only as an interoperability decode cross-check, never as a source.
- Bump VersionPrefix 1.9.0 -> 1.10.0 (all eight packages republish in lockstep).
…now supported)

The VellumPdf.Reader package Description still said cross-reference streams and
object streams were unsupported, but the reader implements both (plus hybrid
xref) now; only encryption and content extraction remain unsupported. Corrects
the metadata that would otherwise republish inaccurately at 1.10.0.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant