Skip to content

release: 1.0.0 (fork baseline)#6

Merged
ndreno merged 1 commit into
mainfrom
release/1.0.0
May 13, 2026
Merged

release: 1.0.0 (fork baseline)#6
ndreno merged 1 commit into
mainfrom
release/1.0.0

Conversation

@ndreno
Copy link
Copy Markdown

@ndreno ndreno commented May 13, 2026

Summary

First major release of the barbacane-dev fork. Bumps all four workspace crates from `0.6.1` → `1.0.0`, points their `repository` metadata at this fork, and updates the internal `typify-impl` pin in `typify-macro` to match.

The 1.0.0 jump is warranted by the wire-format change around required fields with intrinsic Rust defaults (PR #4) — payloads that previously omitted empty required fields now render them as `[]` / `{}` / `null`. That's a breaking change for any byte-exact downstream consumer.

CHANGELOG

The long-running "Unreleased changes (barbacane-dev fork)" section is closed out as `1.0.0 (released 2026-05-13)`. A fresh empty Unreleased header sits above it for future work.

README

Rewritten to match the fork's positioning:

  • Friendly attribution to oxidecomputer/typify (the 0.6.1 baseline) with a footer acknowledgement.
  • Git-dep install instructions for both the library and the `cargo typify` binary, anchored on the `v1.0.0` tag.
  • New "What's new vs upstream" section summarising the JSON Schema 2020-12 / external $ref / 2019-09 features and the bug-fix catalogue.
  • "Migration notes from 0.6.1" walking through the wire-format change with a before/after table, so consumers know what to expect when they bump.
  • Existing technical content (schema → Rust mapping, `x-rust-type` extension, formatting) preserved and slightly tightened.

Next steps after merge

  1. Tag the merge commit as `v1.0.0` and push.
  2. Consumers can then depend via:
    ```toml
    typify = { git = "https://github.com/barbacane-dev/typify\", tag = "v1.0.0" }
    ```

Test plan

  • `cargo fmt --all -- --check`
  • `cargo clippy --workspace --all-targets --locked --exclude typify-test -- -D warnings`
  • `cargo test --workspace --locked` — all 16 test binaries pass
  • `cargo deny check advisories` — passes with the 2-entry ignore list (adler + paste, transitive only)

First major release of the barbacane-dev fork. Bumps all four
workspace crates (typify, typify-impl, typify-macro, cargo-typify)
from 0.6.1 → 1.0.0, points their `repository` metadata at this fork,
and updates the internal `typify-impl` pin in typify-macro to match.

CHANGELOG closes out the long-running "Unreleased changes
(barbacane-dev fork)" section as `1.0.0 (released 2026-05-13)` and
opens a fresh empty Unreleased header for future work.

README is rewritten to match the fork's positioning: friendly
attribution to upstream oxidecomputer/typify, git-dep install
instructions, a "What's new vs upstream" feature list, and a
migration note covering the wire-format change around required
fields with intrinsic Rust defaults.

The 1.0.0 bump is warranted: the required-fields-with-intrinsic-
defaults fix changes serialized payloads (`{}` becomes
`{"tags":[]}`), which is a wire-format break for any consumer
asserting on byte-exact output. Documented inline in the migration
section.
@ndreno ndreno merged commit f947665 into main May 13, 2026
8 checks passed
@ndreno ndreno deleted the release/1.0.0 branch May 13, 2026 09:56
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