Skip to content
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

refactor!: update to hugr 0.14 #700

Merged
merged 4 commits into from
Nov 28, 2024
Merged

refactor!: update to hugr 0.14 #700

merged 4 commits into from
Nov 28, 2024

Conversation

ss2165
Copy link
Member

@ss2165 ss2165 commented Nov 26, 2024

Awaiting release

BREAKING CHANGE: Extension definitions and registries use Arc for sharing

Copy link

codecov bot commented Nov 26, 2024

Codecov Report

Attention: Patch coverage is 98.14815% with 1 line in your changes missing coverage. Please review.

Project coverage is 82.85%. Comparing base (92cb943) to head (a862790).
Report is 1 commits behind head on main.

Files with missing lines Patch % Lines
tket2/src/ops.rs 66.66% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #700      +/-   ##
==========================================
+ Coverage   82.76%   82.85%   +0.09%     
==========================================
  Files          62       62              
  Lines        7102     7140      +38     
  Branches     6849     6887      +38     
==========================================
+ Hits         5878     5916      +38     
  Misses        861      861              
  Partials      363      363              
Flag Coverage Δ
python 82.21% <ø> (ø)
rust 82.88% <98.14%> (+0.09%) ⬆️

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.

@ss2165 ss2165 requested a review from aborgna-q November 28, 2024 14:15
@ss2165 ss2165 marked this pull request as ready for review November 28, 2024 14:15
@ss2165 ss2165 requested a review from a team as a code owner November 28, 2024 14:15
@aborgna-q
Copy link
Collaborator

You got hit by the rust version bump, some warning lints are now failing on CI
#706

Comment on lines +29 to +31
hugr-core = { git = "https://github.com/CQCL/hugr.git" }
hugr = { git = "https://github.com/CQCL/hugr.git" }
hugr-cli = { git = "https://github.com/CQCL/hugr.git" }
Copy link
Collaborator

Choose a reason for hiding this comment

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

Add an issue to remove this override once hugr 0.14 gets released.

Copy link
Member Author

Choose a reason for hiding this comment

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

@ss2165 ss2165 added this pull request to the merge queue Nov 28, 2024
Merged via the queue into main with commit 7d3e5f5 Nov 28, 2024
17 checks passed
@ss2165 ss2165 deleted the ss/hugr-bump branch November 28, 2024 17:26
@hugrbot hugrbot mentioned this pull request Nov 28, 2024
github-merge-queue bot pushed a commit that referenced this pull request Dec 16, 2024
## 🤖 New release
* `tket2`: 0.6.0 -> 0.7.0 (⚠️ API breaking changes)
* `tket2-hseries`: 0.6.0 -> 0.7.0 (⚠️ API breaking changes)

### ⚠️ `tket2` breaking changes

```
--- failure auto_trait_impl_removed: auto trait no longer implemented ---

Description:
A public type has stopped implementing one or more auto traits. This can break downstream code that depends on the traits being implemented.
        ref: https://doc.rust-lang.org/reference/special-types-and-traits.html#auto-traits
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.37.0/src/lints/auto_trait_impl_removed.ron

Failed in:
  type Units is no longer UnwindSafe, in /tmp/.tmpfB4eOr/tket2/tket2/src/circuit/units.rs:62
  type Units is no longer RefUnwindSafe, in /tmp/.tmpfB4eOr/tket2/tket2/src/circuit/units.rs:62

--- failure enum_missing: pub enum removed or renamed ---

Description:
A publicly-visible enum cannot be imported by its prior path. A `pub use` may have been removed, or the enum 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.37.0/src/lints/enum_missing.ron

Failed in:
  enum tket2::serialize::guppy::CircuitLoadError, previously in file /tmp/.tmphWIpmA/tket2/src/serialize/guppy.rs:114

--- failure enum_no_repr_variant_discriminant_changed: enum variant had its discriminant change value ---

Description:
The enum's variant had its discriminant value change. This breaks downstream code that used its value via a numeric cast like `as isize`.
        ref: https://doc.rust-lang.org/reference/items/enumerations.html#assigning-discriminant-values
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.37.0/src/lints/enum_no_repr_variant_discriminant_changed.ron

Failed in:
  variant Tk2Op::QAlloc 17 -> 18 in /tmp/.tmpfB4eOr/tket2/tket2/src/ops.rs:61
  variant Tk2Op::QFree 18 -> 20 in /tmp/.tmpfB4eOr/tket2/tket2/src/ops.rs:63
  variant Tk2Op::Reset 19 -> 21 in /tmp/.tmpfB4eOr/tket2/tket2/src/ops.rs:64

--- failure enum_variant_missing: pub enum variant removed or renamed ---

Description:
A publicly-visible enum has at least one variant that is no longer available under its prior name. It 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.37.0/src/lints/enum_variant_missing.ron

Failed in:
  variant CircuitLoadError::ValError, previously in file /tmp/.tmphWIpmA/tket2/src/serialize/guppy.rs:156
  variant RewriterSerialisationError::OpaqueOp, previously in file /tmp/.tmphWIpmA/tket2/src/rewrite/ecc_rewriter.rs:221

--- failure function_missing: pub fn removed or renamed ---

Description:
A publicly-visible function cannot be imported by its prior path. A `pub use` may have been removed, or the function 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.37.0/src/lints/function_missing.ron

Failed in:
  function tket2::serialize::guppy::load_guppy_json_reader, previously in file /tmp/.tmphWIpmA/tket2/src/serialize/guppy.rs:32
  function tket2::serialize::load_guppy_json_reader, previously in file /tmp/.tmphWIpmA/tket2/src/serialize/guppy.rs:32
  function tket2::serialize::guppy::load_guppy_json_str, previously in file /tmp/.tmphWIpmA/tket2/src/serialize/guppy.rs:26
  function tket2::serialize::load_guppy_json_str, previously in file /tmp/.tmphWIpmA/tket2/src/serialize/guppy.rs:26
  function tket2::serialize::guppy::load_guppy_json_file, previously in file /tmp/.tmphWIpmA/tket2/src/serialize/guppy.rs:16
  function tket2::serialize::load_guppy_json_file, previously in file /tmp/.tmphWIpmA/tket2/src/serialize/guppy.rs:16
  function tket2::serialize::guppy::find_function, previously in file /tmp/.tmphWIpmA/tket2/src/serialize/guppy.rs:58

--- failure module_missing: pub module removed or renamed ---

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

Failed in:
  mod tket2::serialize::guppy, previously in file /tmp/.tmphWIpmA/tket2/src/serialize/guppy.rs:1

--- failure pub_module_level_const_missing: pub module-level const is missing ---

Description:
A public const is missing, renamed, or changed from const to static.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.37.0/src/lints/pub_module_level_const_missing.ron

Failed in:
  ROTATION_TYPE in file /tmp/.tmphWIpmA/tket2/src/extension/rotation.rs:39
  ROTATION_CUSTOM_TYPE in file /tmp/.tmphWIpmA/tket2/src/extension/rotation.rs:35

--- 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.37.0/src/lints/struct_missing.ron

Failed in:
  struct tket2::extension::REGISTRY, previously in file /tmp/.tmphWIpmA/tket2/src/extension.rs:37
```

### ⚠️ `tket2-hseries` breaking changes

```
--- failure auto_trait_impl_removed: auto trait no longer implemented ---

Description:
A public type has stopped implementing one or more auto traits. This can break downstream code that depends on the traits being implemented.
        ref: https://doc.rust-lang.org/reference/special-types-and-traits.html#auto-traits
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.37.0/src/lints/auto_trait_impl_removed.ron

Failed in:
  type FutureOp is no longer UnwindSafe, in /tmp/.tmpfB4eOr/tket2/tket2-hseries/src/extension/futures.rs:164
  type FutureOp is no longer RefUnwindSafe, in /tmp/.tmpfB4eOr/tket2/tket2-hseries/src/extension/futures.rs:164

--- failure enum_missing: pub enum removed or renamed ---

Description:
A publicly-visible enum cannot be imported by its prior path. A `pub use` may have been removed, or the enum 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.37.0/src/lints/enum_missing.ron

Failed in:
  enum tket2_hseries::extension::hseries::HSeriesOp, previously in file /tmp/.tmphWIpmA/tket2-hseries/src/extension/hseries.rs:79
  enum tket2_hseries::extension::hseries::LowerTk2Error, previously in file /tmp/.tmphWIpmA/tket2-hseries/src/extension/hseries/lower.rs:41
  enum tket2_hseries::HSeriesPassError, previously in file /tmp/.tmphWIpmA/tket2-hseries/src/lib.rs:38

--- failure function_missing: pub fn removed or renamed ---

Description:
A publicly-visible function cannot be imported by its prior path. A `pub use` may have been removed, or the function 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.37.0/src/lints/function_missing.ron

Failed in:
  function tket2_hseries::extension::hseries::lower_tk2_op, previously in file /tmp/.tmphWIpmA/tket2-hseries/src/extension/hseries/lower.rs:113
  function tket2_hseries::extension::hseries::check_lowered, previously in file /tmp/.tmphWIpmA/tket2-hseries/src/extension/hseries/lower.rs:153

--- failure function_parameter_count_changed: pub fn parameter count changed ---

Description:
A publicly-visible function now takes a different number of parameters.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#fn-change-arity
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.37.0/src/lints/function_parameter_count_changed.ron

Failed in:
  tket2_hseries::extension::futures::future_custom_type now takes 2 parameters instead of 1, in /tmp/.tmpfB4eOr/tket2/tket2-hseries/src/extension/futures.rs:59

--- failure method_parameter_count_changed: pub method parameter count changed ---

Description:
A publicly-visible method now takes a different number of parameters.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#fn-change-arity
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.37.0/src/lints/method_parameter_count_changed.ron

Failed in:
  tket2_hseries::lazify_measure::LazifyMeasurePass::run now takes 2 parameters instead of 3, in /tmp/.tmpfB4eOr/tket2/tket2-hseries/src/lazify_measure.rs:54

--- failure module_missing: pub module removed or renamed ---

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

Failed in:
  mod tket2_hseries::extension::hseries, previously in file /tmp/.tmphWIpmA/tket2-hseries/src/extension/hseries.rs:1

--- failure pub_module_level_const_missing: pub module-level const is missing ---

Description:
A public const is missing, renamed, or changed from const to static.
        ref: https://doc.rust-lang.org/cargo/reference/semver.html#item-remove
       impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.37.0/src/lints/pub_module_level_const_missing.ron

Failed in:
  EXTENSION_VERSION in file /tmp/.tmphWIpmA/tket2-hseries/src/extension/hseries.rs:38
  EXTENSION_ID in file /tmp/.tmphWIpmA/tket2-hseries/src/extension/hseries.rs:36

--- 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.37.0/src/lints/struct_missing.ron

Failed in:
  struct tket2_hseries::extension::futures::REGISTRY, previously in file /tmp/.tmphWIpmA/tket2-hseries/src/extension/futures.rs:30
  struct tket2_hseries::extension::result::REGISTRY, previously in file /tmp/.tmphWIpmA/tket2-hseries/src/extension/result.rs:36
  struct tket2_hseries::extension::hseries::LowerTket2ToHSeriesPass, previously in file /tmp/.tmphWIpmA/tket2-hseries/src/extension/hseries/lower.rs:177
  struct tket2_hseries::extension::hseries::REGISTRY, previously in file /tmp/.tmphWIpmA/tket2-hseries/src/extension/hseries.rs:40
  struct tket2_hseries::extension::hseries::HSeriesOpIter, previously in file /tmp/.tmphWIpmA/tket2-hseries/src/extension/hseries.rs:73
  struct tket2_hseries::HSeriesPass, previously in file /tmp/.tmphWIpmA/tket2-hseries/src/lib.rs:31
  struct tket2_hseries::extension::hseries::EXTENSION, previously in file /tmp/.tmphWIpmA/tket2-hseries/src/extension/hseries.rs:40

--- failure trait_missing: pub trait removed or renamed ---

Description:
A publicly-visible trait cannot be imported by its prior path. A `pub use` may have been removed, or the trait 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.37.0/src/lints/trait_missing.ron

Failed in:
  trait tket2_hseries::extension::hseries::HSeriesOpBuilder, previously in file /tmp/.tmphWIpmA/tket2-hseries/src/extension/hseries.rs:131
```

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

## `tket2`
<blockquote>

##
[0.7.0](tket2-v0.6.0...tket2-v0.7.0)
- 2024-12-16

### New Features

- [**breaking**] Track circuit extensions and read/write packages (#680)
- [**breaking**] update measurement and alloc operations (#702)

### Refactor

- [**breaking**] update to hugr 0.14 (#700)
</blockquote>

## `tket2-hseries`
<blockquote>

##
[0.7.0](tket2-hseries-v0.6.0...tket2-hseries-v0.7.0)
- 2024-12-16

### New Features

- [**breaking**] update measurement and alloc operations (#702)

### Refactor

- [**breaking**] update to hugr 0.14 (#700)
- [**breaking**] rename hseries to qsystem (#703)
</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 Dec 18, 2024
github-merge-queue bot pushed a commit that referenced this pull request Dec 18, 2024
## 🤖 New release
* `tket2`: 0.7.0 -> 0.7.1 (✓ API compatible changes)
* `tket2-hseries`: 0.7.0 -> 0.7.1 (✓ API compatible changes)

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

## `tket2`
<blockquote>

##
[0.7.0](tket2-v0.6.0...tket2-v0.7.0)
- 2024-12-16

### ⚠ BREAKING CHANGES

- Removed `load_guppy_*` methods. Use `Circuit::load_function_reader`
instead.
- Extension definitions and registries now use `Arc`s for sharing

### New Features

- [**breaking**] Track circuit extensions and read/write packages (#680)
- [**breaking**] update measurement and alloc operations (#702)

### Refactor

- [**breaking**] update to hugr 0.14 (#700)
</blockquote>

## `tket2-hseries`
<blockquote>

##
[0.7.1](tket2-hseries-v0.7.0...tket2-hseries-v0.7.1)
- 2024-12-18

### New Features

- Add monomorphization and constant folding to QSystemPass (#730)
</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 Dec 18, 2024
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.

2 participants