Skip to content

Conversation

@aborgna-q
Copy link
Collaborator

@aborgna-q aborgna-q commented Jul 24, 2025

image

We can bump the patch version in the file to mark forward/backward compatible changes (e.g. docs), and it will get ignored by the compatibility checks.

@aborgna-q aborgna-q requested review from ss2165 and zrho July 24, 2025 13:37
@aborgna-q aborgna-q requested a review from a team as a code owner July 24, 2025 13:37
@ss2165
Copy link
Member

ss2165 commented Jul 24, 2025

shouldn't this be v1.0.0?

@codecov
Copy link

codecov bot commented Jul 24, 2025

Codecov Report

Attention: Patch coverage is 87.50000% with 2 lines in your changes missing coverage. Please review.

Project coverage is 82.62%. Comparing base (b079072) to head (dc17b7f).
Report is 3 commits behind head on main.

Files with missing lines Patch % Lines
hugr-model/src/lib.rs 87.50% 1 Missing ⚠️
hugr-model/src/v0/binary/read.rs 75.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2471      +/-   ##
==========================================
- Coverage   82.63%   82.62%   -0.01%     
==========================================
  Files         250      250              
  Lines       46502    46480      -22     
  Branches    42071    42049      -22     
==========================================
- Hits        38426    38404      -22     
- Misses       6026     6027       +1     
+ Partials     2050     2049       -1     
Flag Coverage Δ
python 91.31% <ø> (ø)
rust 81.70% <87.50%> (-0.01%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@aborgna-q
Copy link
Collaborator Author

Yeah, I guess this is the first stable release.

@hugrbot
Copy link
Collaborator

hugrbot commented Jul 24, 2025

This PR contains breaking changes to the public Rust API.
Please deprecate the old API instead (if possible), or mark the PR with a ! to indicate a breaking change.

cargo-semver-checks summary

--- failure struct_missing: pub struct removed or renamed ---

Description:
A publicly-visible struct cannot be imported by its prior path. A `pub use` may have been removed, or the struct itself may have been renamed or removed entirely.
      ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
     impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.42.0/src/lints/struct_missing.ron

Failed in:
struct hugr_model::VersionParseError, previously in file /home/runner/work/hugr/hugr/BASELINE_BRANCH/hugr-model/src/version.rs:43
struct hugr_model::Version, previously in file /home/runner/work/hugr/hugr/BASELINE_BRANCH/hugr-model/src/version.rs:8

Copy link
Member

@ss2165 ss2165 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thank you

@aborgna-q
Copy link
Collaborator Author

(Ignoring the semver-checks warnings since it's removing an unpublished struct)

@aborgna-q aborgna-q added this pull request to the merge queue Jul 24, 2025
Merged via the queue into main with commit 5b3e4ba Jul 24, 2025
25 of 26 checks passed
@aborgna-q aborgna-q deleted the ab/model-semver branch July 24, 2025 14:02
This was referenced Jul 24, 2025
github-merge-queue bot pushed a commit that referenced this pull request Jul 24, 2025
This release fixes multiple inconsistencies between the serialization
formats
and improves the error messages when loading unsupported envelopes.

We now also support nodes with up to `2^32` connections to the same port
(up from `2^16`).

---

## 🤖 New release

* `hugr-model`: 0.21.0 -> 0.22.0 (✓ API compatible changes)
* `hugr-core`: 0.21.0 -> 0.22.0 (✓ API compatible changes)
* `hugr-llvm`: 0.21.0 -> 0.22.0 (✓ API compatible changes)
* `hugr-passes`: 0.21.0 -> 0.22.0 (✓ API compatible changes)
* `hugr-persistent`: 0.1.0 -> 0.2.0 (✓ API compatible changes)
* `hugr`: 0.21.0 -> 0.22.0 (✓ API compatible changes)
* `hugr-cli`: 0.21.0 -> 0.22.0 (✓ API compatible changes)

<details><summary><i><b>Changelog</b></i></summary><p>

## `hugr-model`

<blockquote>

##
[0.22.0](hugr-model-v0.21.0...hugr-model-v0.22.0)
- 2025-07-24

### New Features

- Names of private functions become `core.title` metadata.
([#2448](#2448))
- include generator metatada in model import and cli validate errors
([#2452](#2452))
- Version number in hugr binary format.
([#2468](#2468))
- Use semver crate for -model version, and include in docs
([#2471](#2471))
</blockquote>

## `hugr-core`

<blockquote>

##
[0.22.0](hugr-core-v0.21.0...hugr-core-v0.22.0)
- 2025-07-24

### Bug Fixes

- Ensure SumTypes have the same json encoding in -rs and -py
([#2465](#2465))

### New Features

- Export entrypoint metadata in Python and fix bug in import
([#2434](#2434))
- Names of private functions become `core.title` metadata.
([#2448](#2448))
- [**breaking**] Use binary envelopes for operation lower_func encoding
([#2447](#2447))
- [**breaking**] Update portgraph dependency to 0.15
([#2455](#2455))
- Detect and fail on unrecognised envelope flags
([#2453](#2453))
- include generator metatada in model import and cli validate errors
([#2452](#2452))
- [**breaking**] Add `insert_region` to HugrMut
([#2463](#2463))
- Non-region entrypoints in `hugr-model`.
([#2467](#2467))
</blockquote>

## `hugr-llvm`

<blockquote>

##
[0.21.0](hugr-llvm-v0.20.2...hugr-llvm-v0.21.0)
- 2025-07-09

### New Features

- [**breaking**] No nested FuncDefns (or AliasDefns)
([#2256](#2256))
- [**breaking**] Split `TypeArg::Sequence` into tuples and lists.
([#2140](#2140))
- [**breaking**] More helpful error messages in model import
([#2272](#2272))
- [**breaking**] Merge `TypeParam` and `TypeArg` into one `Term` type in
Rust ([#2309](#2309))
- Add `MakeError` op ([#2377](#2377))
</blockquote>

## `hugr-passes`

<blockquote>

##
[0.22.0](hugr-passes-v0.21.0...hugr-passes-v0.22.0)
- 2025-07-24

### New Features

- ReplaceTypes allows linearizing inside Op replacements
([#2435](#2435))
- Add pass for DFG inlining
([#2460](#2460))
</blockquote>

## `hugr-persistent`

<blockquote>

##
[0.2.0](hugr-persistent-v0.1.0...hugr-persistent-v0.2.0)
- 2025-07-24

### New Features

- [**breaking**] Update portgraph dependency to 0.15
([#2455](#2455))
</blockquote>

## `hugr`

<blockquote>

##
[0.22.0](hugr-v0.21.0...hugr-v0.22.0)
- 2025-07-24

### Bug Fixes

- Ensure SumTypes have the same json encoding in -rs and -py
([#2465](#2465))

### New Features

- ReplaceTypes allows linearizing inside Op replacements
([#2435](#2435))
- Add pass for DFG inlining
([#2460](#2460))
- Export entrypoint metadata in Python and fix bug in import
([#2434](#2434))
- Names of private functions become `core.title` metadata.
([#2448](#2448))
- [**breaking**] Use binary envelopes for operation lower_func encoding
([#2447](#2447))
- [**breaking**] Update portgraph dependency to 0.15
([#2455](#2455))
- Detect and fail on unrecognised envelope flags
([#2453](#2453))
- include generator metatada in model import and cli validate errors
([#2452](#2452))
- [**breaking**] Add `insert_region` to HugrMut
([#2463](#2463))
- Non-region entrypoints in `hugr-model`.
([#2467](#2467))
</blockquote>

## `hugr-cli`

<blockquote>

##
[0.22.0](hugr-cli-v0.21.0...hugr-cli-v0.22.0)
- 2025-07-24

### New Features

- include generator metatada in model import and cli validate errors
([#2452](#2452))
</blockquote>


</p></details>

---
This PR was generated with
[release-plz](https://github.com/release-plz/release-plz/).

---------

Co-authored-by: Agustín Borgna <[email protected]>
@hugrbot hugrbot mentioned this pull request Jul 28, 2025
github-merge-queue bot pushed a commit that referenced this pull request Jul 28, 2025
## 🤖 New release

* `hugr-model`: 0.22.0 -> 0.22.1
* `hugr-core`: 0.22.0 -> 0.22.1
* `hugr-llvm`: 0.22.0 -> 0.22.1
* `hugr-passes`: 0.22.0 -> 0.22.1 (✓ API compatible changes)
* `hugr`: 0.22.0 -> 0.22.1 (✓ API compatible changes)
* `hugr-cli`: 0.22.0 -> 0.22.1
* `hugr-persistent`: 0.2.0 -> 0.2.1

<details><summary><i><b>Changelog</b></i></summary><p>

## `hugr-model`

<blockquote>

##
[0.22.0](hugr-model-v0.21.0...hugr-model-v0.22.0)
- 2025-07-24

### New Features

- Names of private functions become `core.title` metadata.
([#2448](#2448))
- include generator metatada in model import and cli validate errors
([#2452](#2452))
- Version number in hugr binary format.
([#2468](#2468))
- Use semver crate for -model version, and include in docs
([#2471](#2471))
</blockquote>

## `hugr-core`

<blockquote>

##
[0.22.0](hugr-core-v0.21.0...hugr-core-v0.22.0)
- 2025-07-24

### Bug Fixes

- Ensure SumTypes have the same json encoding in -rs and -py
([#2465](#2465))

### New Features

- Export entrypoint metadata in Python and fix bug in import
([#2434](#2434))
- Names of private functions become `core.title` metadata.
([#2448](#2448))
- [**breaking**] Use binary envelopes for operation lower_func encoding
([#2447](#2447))
- [**breaking**] Update portgraph dependency to 0.15
([#2455](#2455))
- Detect and fail on unrecognised envelope flags
([#2453](#2453))
- include generator metatada in model import and cli validate errors
([#2452](#2452))
- [**breaking**] Add `insert_region` to HugrMut
([#2463](#2463))
- Non-region entrypoints in `hugr-model`.
([#2467](#2467))
</blockquote>

## `hugr-llvm`

<blockquote>

##
[0.21.0](hugr-llvm-v0.20.2...hugr-llvm-v0.21.0)
- 2025-07-09

### New Features

- [**breaking**] No nested FuncDefns (or AliasDefns)
([#2256](#2256))
- [**breaking**] Split `TypeArg::Sequence` into tuples and lists.
([#2140](#2140))
- [**breaking**] More helpful error messages in model import
([#2272](#2272))
- [**breaking**] Merge `TypeParam` and `TypeArg` into one `Term` type in
Rust ([#2309](#2309))
- Add `MakeError` op ([#2377](#2377))
</blockquote>

## `hugr-passes`

<blockquote>

##
[0.22.1](hugr-passes-v0.22.0...hugr-passes-v0.22.1)
- 2025-07-28

### New Features

- Include copy_discard_array in DelegatingLinearizer::default
([#2479](#2479))
- Inline calls to functions not on cycles in the call graph
([#2450](#2450))
</blockquote>

## `hugr`

<blockquote>

##
[0.22.1](hugr-v0.22.0...hugr-v0.22.1)
- 2025-07-28

### New Features

- Include copy_discard_array in DelegatingLinearizer::default
([#2479](#2479))
- Inline calls to functions not on cycles in the call graph
([#2450](#2450))
</blockquote>

## `hugr-cli`

<blockquote>

##
[0.22.0](hugr-cli-v0.21.0...hugr-cli-v0.22.0)
- 2025-07-24

### New Features

- include generator metatada in model import and cli validate errors
([#2452](#2452))
</blockquote>

## `hugr-persistent`

<blockquote>

##
[0.2.0](hugr-persistent-v0.1.0...hugr-persistent-v0.2.0)
- 2025-07-24

### New Features

- [**breaking**] Update portgraph dependency to 0.15
([#2455](#2455))
</blockquote>


</p></details>

---
This PR was generated with
[release-plz](https://github.com/release-plz/release-plz/).
This was referenced Jul 29, 2025
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.

4 participants