-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(hugr-core): Add impl Hash for Type
#1347
Conversation
Manually changing reviewer as Alan is off today and I'd like to release this ASAP. |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #1347 +/- ##
=======================================
Coverage 87.48% 87.48%
=======================================
Files 111 111
Lines 19789 19789
Branches 17522 17522
=======================================
Hits 17313 17313
Misses 1702 1702
Partials 774 774
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
impl Hash for Type
impl Hash for Type
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
cached_decl
should be alright, since the value is always present (vs. lazily computed and cached).
LGTM
## 🤖 New release * `hugr`: 0.9.1 -> 0.10.0 * `hugr-core`: 0.6.1 -> 0.7.0 * `hugr-passes`: 0.6.1 -> 0.6.2 * `hugr-cli`: 0.2.1 -> 0.3.0 <details><summary><i><b>Changelog</b></i></summary><p> ## `hugr` <blockquote> ## 0.10.0 (2024-07-26) ### Bug Fixes (#1350)) - [**breaking**] Bump serialisation version with no upgrade path ([#1352](#1352)) ### Features - Add `nonlocal_edges` and `ensure_no_nonlocal_edges` ([#1345](#1345)) - Serialization upgrade path ([#1327](#1327)) - [**breaking**] Replace opaque type arguments with String ([#1328](#1328)) - Add `impl Hash for Type` ([#1347](#1347)) - `HasDef` and `HasConcrete` traits for def/concrete op design pattern ([#1336](#1336)) - Add pointer standard extension ([#1337](#1337)) - [**breaking**] Remove the `Eq` type bound. ([#1364](#1364)) ### Refactor - [**breaking**] Use JSON rather than YAML in opaque fields. ([#1338](#1338)) - [**breaking**] Declarative module behind optional feature flag ([#1341](#1341)) ### Testing - Miri gate serialization upgrades ([#1349](#1349)) </blockquote> ## `hugr-core` <blockquote> ## 0.7.0 (2024-07-26) ### Bug Fixes (#1350)) - [**breaking**] Bump serialisation version with no upgrade path ([#1352](#1352)) ### Features - Serialization upgrade path ([#1327](#1327)) - [**breaking**] Replace opaque type arguments with String ([#1328](#1328)) - Add `impl Hash for Type` ([#1347](#1347)) - `HasDef` and `HasConcrete` traits for def/concrete op design pattern ([#1336](#1336)) - Add pointer standard extension ([#1337](#1337)) - [**breaking**] Remove the `Eq` type bound. ([#1364](#1364)) ### Refactor - [**breaking**] Use JSON rather than YAML in opaque fields. ([#1338](#1338)) - [**breaking**] Declarative module behind optional feature flag ([#1341](#1341)) ### Testing - Miri gate serialization upgrades ([#1349](#1349)) </blockquote> ## `hugr-passes` <blockquote> ## 0.6.2 (2024-07-26) ### Features - Add `nonlocal_edges` and `ensure_no_nonlocal_edges` ([#1345](#1345)) </blockquote> ## `hugr-cli` <blockquote> ## 0.3.0 (2024-07-26) ### Features - [**breaking**] Created `validate` CLI subcommand. ([#1312](#1312)) </blockquote> </p></details> --- This PR was generated with [release-plz](https://github.com/MarcoIeni/release-plz/). --------- Co-authored-by: Douglas Wilson <[email protected]>
Note that I have made a choice here to include
PolyFuncType
andTypeParam
. We could excludeTypeParam
by not includingTypeArgVariable::cached_decl
in theHash
(andPartialEq
,Eq
, which would be a change of behaviour).