Skip to content

Commit 1408ea6

Browse files
authored
chore: release v0.20.0
1 parent 107cccd commit 1408ea6

File tree

14 files changed

+167
-21
lines changed

14 files changed

+167
-21
lines changed

Cargo.lock

+6-6
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

hugr-cli/CHANGELOG.md

+9
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,15 @@
11
# Changelog
22

33

4+
## [0.20.0](https://github.com/CQCL/hugr/compare/hugr-cli-v0.15.4...hugr-cli-v0.20.0) - 2025-05-09
5+
6+
### New Features
7+
8+
- [**breaking**] Bump MSRV to 1.85 ([#2136](https://github.com/CQCL/hugr/pull/2136))
9+
- [**breaking**] Add Hugr entrypoints ([#2147](https://github.com/CQCL/hugr/pull/2147))
10+
- [**breaking**] Validate any HugrView, make errors generic ([#2155](https://github.com/CQCL/hugr/pull/2155))
11+
- [**breaking**] Only expose envelope serialization of hugrs and packages ([#2167](https://github.com/CQCL/hugr/pull/2167))
12+
413
## [0.15.3](https://github.com/CQCL/hugr/compare/hugr-cli-v0.15.2...hugr-cli-v0.15.3) - 2025-04-02
514

615
### Documentation

hugr-cli/Cargo.toml

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "hugr-cli"
3-
version = "0.15.4"
3+
version = "0.20.0"
44
edition = { workspace = true }
55
rust-version = { workspace = true }
66
license = { workspace = true }
@@ -19,7 +19,7 @@ bench = false
1919
clap = { workspace = true, features = ["derive", "cargo"] }
2020
clap-verbosity-flag.workspace = true
2121
derive_more = { workspace = true, features = ["display", "error", "from"] }
22-
hugr = { path = "../hugr", version = "0.15.4" }
22+
hugr = { path = "../hugr", version = "0.20.0" }
2323
serde_json.workspace = true
2424
clio = { workspace = true, features = ["clap-parse"] }
2525

hugr-core/CHANGELOG.md

+39
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,44 @@
11
# Changelog
22

3+
## [0.20.0](https://github.com/CQCL/hugr/compare/hugr-core-v0.15.4...hugr-core-v0.20.0) - 2025-05-09
4+
5+
### Bug Fixes
6+
7+
- [**breaking**] Don't expose `HugrMutInternals` ([#2071](https://github.com/CQCL/hugr/pull/2071))
8+
- `as_unary_option` indexing bug ([#2163](https://github.com/CQCL/hugr/pull/2163))
9+
- Skip phantom data for array value serialisation ([#2166](https://github.com/CQCL/hugr/pull/2166))
10+
- Remove deleted nodes from node_map in `SimpleReplacement` ([#2176](https://github.com/CQCL/hugr/pull/2176))
11+
12+
### New Features
13+
14+
- [**breaking**] Allow generic Nodes in HugrMut insert operations ([#2075](https://github.com/CQCL/hugr/pull/2075))
15+
- [**breaking**] Mark all Error enums as non_exhaustive ([#2056](https://github.com/CQCL/hugr/pull/2056))
16+
- Make NodeHandle generic ([#2092](https://github.com/CQCL/hugr/pull/2092))
17+
- [**breaking**] remove ExtensionValue ([#2093](https://github.com/CQCL/hugr/pull/2093))
18+
- [**breaking**] Hugrmut on generic nodes ([#2111](https://github.com/CQCL/hugr/pull/2111))
19+
- [**breaking**] Removed model_unstable feature flag ([#2120](https://github.com/CQCL/hugr/pull/2120))
20+
- [**breaking**] Remove `RootTagged` from the hugr view trait hierarchy ([#2122](https://github.com/CQCL/hugr/pull/2122))
21+
- [**breaking**] Split Rewrite trait into VerifyPatch and ApplyPatch ([#2070](https://github.com/CQCL/hugr/pull/2070))
22+
- [**breaking**] Bump MSRV to 1.85 ([#2136](https://github.com/CQCL/hugr/pull/2136))
23+
- [**breaking**] Cleanup core trait definitions ([#2126](https://github.com/CQCL/hugr/pull/2126))
24+
- [**breaking**] Removed runtime extension sets. ([#2145](https://github.com/CQCL/hugr/pull/2145))
25+
- [**breaking**] Accept outgoing ports in SimpleReplacement nu_out ([#2151](https://github.com/CQCL/hugr/pull/2151))
26+
- [**breaking**] Improved array lowering ([#2109](https://github.com/CQCL/hugr/pull/2109))
27+
- [**breaking**] Make `NamedOp` private. Add `MakeExtensionOp::name` and `MakeOpDef::opdef_name` ([#2138](https://github.com/CQCL/hugr/pull/2138))
28+
- InsertCut patch for inserting HUGR across edges. ([#2153](https://github.com/CQCL/hugr/pull/2153))
29+
- [**breaking**] Add Hugr entrypoints ([#2147](https://github.com/CQCL/hugr/pull/2147))
30+
- [**breaking**] Return a node mapping in HugrInternals::region_portgraph ([#2164](https://github.com/CQCL/hugr/pull/2164))
31+
- [**breaking**] Validate any HugrView, make errors generic ([#2155](https://github.com/CQCL/hugr/pull/2155))
32+
- Reimplement `insert_hugr` using only `HugrView` ([#2174](https://github.com/CQCL/hugr/pull/2174))
33+
- Only allow region containers as entrypoints ([#2173](https://github.com/CQCL/hugr/pull/2173))
34+
- Export and import entrypoints via metadata in `hugr-model`. ([#2172](https://github.com/CQCL/hugr/pull/2172))
35+
- [**breaking**] Only expose envelope serialization of hugrs and packages ([#2167](https://github.com/CQCL/hugr/pull/2167))
36+
37+
### Refactor
38+
39+
- do not use .portgraph in mermaid/graphviz ([#2177](https://github.com/CQCL/hugr/pull/2177))
40+
- [**breaking**] Removed global portgraph-related methods from `HugrInternals` ([#2180](https://github.com/CQCL/hugr/pull/2180))
41+
342
## [0.15.4](https://github.com/CQCL/hugr/compare/hugr-core-v0.15.3...hugr-core-v0.15.4) - 2025-05-07
443

544
### New Features

hugr-core/Cargo.toml

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "hugr-core"
3-
version = "0.15.4"
3+
version = "0.20.0"
44
edition = { workspace = true }
55
rust-version = { workspace = true }
66

@@ -27,7 +27,7 @@ bench = false
2727
name = "model"
2828

2929
[dependencies]
30-
hugr-model = { version = "0.19.1", path = "../hugr-model" }
30+
hugr-model = { version = "0.20.0", path = "../hugr-model" }
3131

3232
cgmath = { workspace = true, features = ["serde"] }
3333
delegate = { workspace = true }

hugr-llvm/CHANGELOG.md

+20
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,26 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
55
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
66

77

8+
## [0.20.0](https://github.com/CQCL/hugr/compare/hugr-llvm-v0.15.4...hugr-llvm-v0.20.0) - 2025-05-09
9+
10+
### Bug Fixes
11+
12+
- Fix `inline_constant_functions` pass ([#2135](https://github.com/CQCL/hugr/pull/2135))
13+
14+
### New Features
15+
16+
- [**breaking**] Hugrmut on generic nodes ([#2111](https://github.com/CQCL/hugr/pull/2111))
17+
- [**breaking**] Remove `RootTagged` from the hugr view trait hierarchy ([#2122](https://github.com/CQCL/hugr/pull/2122))
18+
- [**breaking**] Bump MSRV to 1.85 ([#2136](https://github.com/CQCL/hugr/pull/2136))
19+
- [**breaking**] Cleanup core trait definitions ([#2126](https://github.com/CQCL/hugr/pull/2126))
20+
- [**breaking**] Removed runtime extension sets. ([#2145](https://github.com/CQCL/hugr/pull/2145))
21+
- [**breaking**] Improved array lowering ([#2109](https://github.com/CQCL/hugr/pull/2109))
22+
- [**breaking**] Make `NamedOp` private. Add `MakeExtensionOp::name` and `MakeOpDef::opdef_name` ([#2138](https://github.com/CQCL/hugr/pull/2138))
23+
- Make `hugr_llvm::extension::collections::array::build_array_alloc` public ([#2165](https://github.com/CQCL/hugr/pull/2165))
24+
- Add LLVM emission for prelude.noop ([#2160](https://github.com/CQCL/hugr/pull/2160))
25+
- [**breaking**] Add Hugr entrypoints ([#2147](https://github.com/CQCL/hugr/pull/2147))
26+
- [**breaking**] Return a node mapping in HugrInternals::region_portgraph ([#2164](https://github.com/CQCL/hugr/pull/2164))
27+
828
## [0.15.4](https://github.com/CQCL/hugr/compare/hugr-llvm-v0.15.3...hugr-llvm-v0.15.4) - 2025-05-07
929

1030
### New Features

hugr-llvm/Cargo.toml

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "hugr-llvm"
3-
version = "0.15.4"
3+
version = "0.20.0"
44
description = "A general and extensible crate for lowering HUGRs into LLVM IR"
55

66
edition.workspace = true
@@ -24,7 +24,7 @@ llvm14-0 = ["inkwell/llvm14-0"]
2424

2525
[dependencies]
2626
inkwell = { version = "0.6.0", default-features = false }
27-
hugr-core = { path = "../hugr-core", version = "0.15.4" }
27+
hugr-core = { path = "../hugr-core", version = "0.20.0" }
2828
anyhow = "1.0.98"
2929
itertools.workspace = true
3030
delegate.workspace = true

hugr-model/CHANGELOG.md

+8
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
11
# Changelog
22

3+
## [0.20.0](https://github.com/CQCL/hugr/compare/hugr-model-v0.19.1...hugr-model-v0.20.0) - 2025-05-09
4+
5+
### New Features
6+
7+
- [**breaking**] Mark all Error enums as non_exhaustive ([#2056](https://github.com/CQCL/hugr/pull/2056))
8+
- [**breaking**] Bump MSRV to 1.85 ([#2136](https://github.com/CQCL/hugr/pull/2136))
9+
- Export and import entrypoints via metadata in `hugr-model`. ([#2172](https://github.com/CQCL/hugr/pull/2172))
10+
311
## [0.19.0](https://github.com/CQCL/hugr/compare/hugr-model-v0.18.1...hugr-model-v0.19.0) - 2025-05-07
412

513
### New Features

hugr-model/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "hugr-model"
3-
version = "0.19.1"
3+
version = "0.20.0"
44
readme = "README.md"
55
documentation = "https://docs.rs/hugr-model/"
66
description = "Data model for Quantinuum's HUGR intermediate representation"

hugr-passes/CHANGELOG.md

+26
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,32 @@
11
# Changelog
22

33

4+
## [0.20.0](https://github.com/CQCL/hugr/compare/hugr-passes-v0.15.4...hugr-passes-v0.20.0) - 2025-05-09
5+
6+
### New Features
7+
8+
- [**breaking**] Mark all Error enums as non_exhaustive ([#2056](https://github.com/CQCL/hugr/pull/2056))
9+
- [**breaking**] Handle CallIndirect in Dataflow Analysis ([#2059](https://github.com/CQCL/hugr/pull/2059))
10+
- [**breaking**] ComposablePass trait allowing sequencing and validation ([#1895](https://github.com/CQCL/hugr/pull/1895))
11+
- [**breaking**] ReplaceTypes: allow lowering ops into a Call to a function already in the Hugr ([#2094](https://github.com/CQCL/hugr/pull/2094))
12+
- [**breaking**] Hugrmut on generic nodes ([#2111](https://github.com/CQCL/hugr/pull/2111))
13+
- [**breaking**] Remove `RootTagged` from the hugr view trait hierarchy ([#2122](https://github.com/CQCL/hugr/pull/2122))
14+
- [**breaking**] Split Rewrite trait into VerifyPatch and ApplyPatch ([#2070](https://github.com/CQCL/hugr/pull/2070))
15+
- [**breaking**] Bump MSRV to 1.85 ([#2136](https://github.com/CQCL/hugr/pull/2136))
16+
- [**breaking**] Cleanup core trait definitions ([#2126](https://github.com/CQCL/hugr/pull/2126))
17+
- [**breaking**] Removed runtime extension sets. ([#2145](https://github.com/CQCL/hugr/pull/2145))
18+
- [**breaking**] Improved array lowering ([#2109](https://github.com/CQCL/hugr/pull/2109))
19+
- export mangle name function ([#2152](https://github.com/CQCL/hugr/pull/2152))
20+
- [**breaking**] Make `NamedOp` private. Add `MakeExtensionOp::name` and `MakeOpDef::opdef_name` ([#2138](https://github.com/CQCL/hugr/pull/2138))
21+
- [**breaking**] Add Hugr entrypoints ([#2147](https://github.com/CQCL/hugr/pull/2147))
22+
- [**breaking**] Return a node mapping in HugrInternals::region_portgraph ([#2164](https://github.com/CQCL/hugr/pull/2164))
23+
- [**breaking**] Validate any HugrView, make errors generic ([#2155](https://github.com/CQCL/hugr/pull/2155))
24+
- [**breaking**] Explicit hugr type param to ComposablePass ([#2179](https://github.com/CQCL/hugr/pull/2179))
25+
26+
### Refactor
27+
28+
- [**breaking**] Removed global portgraph-related methods from `HugrInternals` ([#2180](https://github.com/CQCL/hugr/pull/2180))
29+
430
## [0.15.4](https://github.com/CQCL/hugr/compare/hugr-passes-v0.15.3...hugr-passes-v0.15.4) - 2025-05-07
531

632
### New Features

hugr-passes/Cargo.toml

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "hugr-passes"
3-
version = "0.15.4"
3+
version = "0.20.0"
44
edition = { workspace = true }
55
rust-version = { workspace = true }
66
license = { workspace = true }
@@ -16,7 +16,7 @@ categories = ["compilers"]
1616
bench = false
1717

1818
[dependencies]
19-
hugr-core = { path = "../hugr-core", version = "0.15.4" }
19+
hugr-core = { path = "../hugr-core", version = "0.20.0" }
2020
portgraph = { workspace = true }
2121
ascent = { version = "0.8.0" }
2222
derive_more = { workspace = true, features = ["display", "error", "from"] }

hugr-py/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ bench = false
2121

2222
[dependencies]
2323
bumpalo = { workspace = true, features = ["collections"] }
24-
hugr-model = { version = "0.19", path = "../hugr-model", features = ["pyo3"] }
24+
hugr-model = { version = "0.20", path = "../hugr-model", features = ["pyo3"] }
2525
paste.workspace = true
2626
pyo3 = { workspace = true, features = ["extension-module", "abi3-py310"] }
2727
smol_str.workspace = true

hugr/CHANGELOG.md

+44
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,49 @@
11
# Changelog
22

3+
## [0.20.0](https://github.com/CQCL/hugr/compare/hugr-v0.15.4...hugr-v0.20.0) - 2025-05-09
4+
5+
### Bug Fixes
6+
7+
- [**breaking**] Don't expose `HugrMutInternals` ([#2071](https://github.com/CQCL/hugr/pull/2071))
8+
- `as_unary_option` indexing bug ([#2163](https://github.com/CQCL/hugr/pull/2163))
9+
- Skip phantom data for array value serialisation ([#2166](https://github.com/CQCL/hugr/pull/2166))
10+
- Remove deleted nodes from node_map in `SimpleReplacement` ([#2176](https://github.com/CQCL/hugr/pull/2176))
11+
12+
### New Features
13+
14+
- [**breaking**] Handle CallIndirect in Dataflow Analysis ([#2059](https://github.com/CQCL/hugr/pull/2059))
15+
- [**breaking**] ComposablePass trait allowing sequencing and validation ([#1895](https://github.com/CQCL/hugr/pull/1895))
16+
- [**breaking**] ReplaceTypes: allow lowering ops into a Call to a function already in the Hugr ([#2094](https://github.com/CQCL/hugr/pull/2094))
17+
- export mangle name function ([#2152](https://github.com/CQCL/hugr/pull/2152))
18+
- [**breaking**] Explicit hugr type param to ComposablePass ([#2179](https://github.com/CQCL/hugr/pull/2179))
19+
- [**breaking**] Allow generic Nodes in HugrMut insert operations ([#2075](https://github.com/CQCL/hugr/pull/2075))
20+
- [**breaking**] Mark all Error enums as non_exhaustive ([#2056](https://github.com/CQCL/hugr/pull/2056))
21+
- Make NodeHandle generic ([#2092](https://github.com/CQCL/hugr/pull/2092))
22+
- [**breaking**] remove ExtensionValue ([#2093](https://github.com/CQCL/hugr/pull/2093))
23+
- [**breaking**] Hugrmut on generic nodes ([#2111](https://github.com/CQCL/hugr/pull/2111))
24+
- [**breaking**] Cleanup core trait definitions ([#2126](https://github.com/CQCL/hugr/pull/2126))
25+
- [**breaking**] Accept outgoing ports in SimpleReplacement nu_out ([#2151](https://github.com/CQCL/hugr/pull/2151))
26+
- [**breaking**] Improved array lowering ([#2109](https://github.com/CQCL/hugr/pull/2109))
27+
- [**breaking**] Make `NamedOp` private. Add `MakeExtensionOp::name` and `MakeOpDef::opdef_name` ([#2138](https://github.com/CQCL/hugr/pull/2138))
28+
- InsertCut patch for inserting HUGR across edges. ([#2153](https://github.com/CQCL/hugr/pull/2153))
29+
- [**breaking**] Add Hugr entrypoints ([#2147](https://github.com/CQCL/hugr/pull/2147))
30+
- [**breaking**] Return a node mapping in HugrInternals::region_portgraph ([#2164](https://github.com/CQCL/hugr/pull/2164))
31+
- [**breaking**] Validate any HugrView, make errors generic ([#2155](https://github.com/CQCL/hugr/pull/2155))
32+
- Reimplement `insert_hugr` using only `HugrView` ([#2174](https://github.com/CQCL/hugr/pull/2174))
33+
- Only allow region containers as entrypoints ([#2173](https://github.com/CQCL/hugr/pull/2173))
34+
- Export and import entrypoints via metadata in `hugr-model`. ([#2172](https://github.com/CQCL/hugr/pull/2172))
35+
- [**breaking**] Removed model_unstable feature flag ([#2120](https://github.com/CQCL/hugr/pull/2120))
36+
- [**breaking**] Remove `RootTagged` from the hugr view trait hierarchy ([#2122](https://github.com/CQCL/hugr/pull/2122))
37+
- [**breaking**] Split Rewrite trait into VerifyPatch and ApplyPatch ([#2070](https://github.com/CQCL/hugr/pull/2070))
38+
- [**breaking**] Bump MSRV to 1.85 ([#2136](https://github.com/CQCL/hugr/pull/2136))
39+
- [**breaking**] Removed runtime extension sets. ([#2145](https://github.com/CQCL/hugr/pull/2145))
40+
- [**breaking**] Only expose envelope serialization of hugrs and packages ([#2167](https://github.com/CQCL/hugr/pull/2167))
41+
42+
### Refactor
43+
44+
- do not use .portgraph in mermaid/graphviz ([#2177](https://github.com/CQCL/hugr/pull/2177))
45+
- [**breaking**] Removed global portgraph-related methods from `HugrInternals` ([#2180](https://github.com/CQCL/hugr/pull/2180))
46+
347
## [0.15.4](https://github.com/CQCL/hugr/compare/hugr-v0.15.3...hugr-v0.15.4) - 2025-05-07
448

549
### New Features

hugr/Cargo.toml

+5-5
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "hugr"
3-
version = "0.15.4"
3+
version = "0.20.0"
44
edition = { workspace = true }
55
rust-version = { workspace = true }
66

@@ -30,10 +30,10 @@ llvm-test = ["hugr-llvm/llvm14-0", "hugr-llvm/test-utils"]
3030
zstd = ["hugr-core/zstd"]
3131

3232
[dependencies]
33-
hugr-model = { path = "../hugr-model", version = "0.19.1" }
34-
hugr-core = { path = "../hugr-core", version = "0.15.4" }
35-
hugr-passes = { path = "../hugr-passes", version = "0.15.4" }
36-
hugr-llvm = { path = "../hugr-llvm", version = "0.15.4", optional = true }
33+
hugr-model = { path = "../hugr-model", version = "0.20.0" }
34+
hugr-core = { path = "../hugr-core", version = "0.20.0" }
35+
hugr-passes = { path = "../hugr-passes", version = "0.20.0" }
36+
hugr-llvm = { path = "../hugr-llvm", version = "0.20.0", optional = true }
3737

3838
[dev-dependencies]
3939
lazy_static = { workspace = true }

0 commit comments

Comments
 (0)