Skip to content

Releases: CQCL/guppylang

v0.14.0

19 Dec 12:28
db86f98
Compare
Choose a tag to compare

0.14.0 (2024-12-19)

⚠ BREAKING CHANGES

  • Lists in py(...) expressions are now turned into Guppy arrays instead of lists.
  • dirty_qubit function removed
  • measure_return renamed to project_z

Features

Bug Fixes

Documentation

v0.13.1

15 Nov 13:42
3d74156
Compare
Choose a tag to compare

0.13.1 (2024-11-15)

Features

Bug Fixes

v0.13.0

12 Nov 17:08
f527703
Compare
Choose a tag to compare

0.13.0 (2024-11-12)

⚠ BREAKING CHANGES

  • prelude module renamed to std

Features

Bug Fixes

  • Mock guppy decorator during sphinx builds (#622) (1cccc04)

Documentation

Miscellaneous Chores

Code Refactoring

v0.12.2

21 Oct 13:53
Compare
Choose a tag to compare

Features

  • Allow py expressions in type arguments (#515) (b4fae3f)
  • remove python python 3 upper bound (support python 3.13) (#578) (73bb94a), closes #558

Bug Fixes

v0.12.1

23 Sep 17:16
7980fec
Compare
Choose a tag to compare

0.12.1 (2024-09-23)

Features

  • Add Definition.compile producing Hugr Package (#504) (d8c8bec)
  • Add missing tket2 quantum gates, generalise RotationCompile (#510) (18d4b4c)

Miscellaneous Chores

v0.12.0

18 Sep 13:26
17678e7
Compare
Choose a tag to compare

0.12.0 (2024-09-18)

⚠ BREAKING CHANGES

  • Pytket circuits loaded via a py expression no longer take ownership of the passed qubits.
  • Lists and function tensors are no longer available by default. guppylang.enable_experimental_features() must be called before compilation to enable them.
  • The GuppyModule argument is now optional for all decorators and no longer the first positional argument. Removed the explicit module objects builtins, quantum, and angle.
  • quantum_functional is now its own Guppy module and no longer implicitly comes with quantum.
  • Linear function arguments are now borrowed by default; removed the now redundant @inout annotation

Features

  • Add functions to quantum module and make quantum_functional independent (#494) (0b0b1af)
  • Hide lists and function tensors behind experimental flag (#501) (c867f48)
  • Make linear types @inout by default; add @owned annotation (#486) (e900c96)
  • Only lower definitions to Hugr if they are used (#496) (cc2c8a4)
  • Support implicit modules for all decorators and turn builtins into implicit module (#476) (cc8a424)
  • Use inout for pytket circuits (#500) (a980ec2)

Bug Fixes

v0.11.0

11 Sep 15:10
5cfcdf5
Compare
Choose a tag to compare

0.11.0 (2024-09-11)

⚠ BREAKING CHANGES

  • guppy.take_module renamed to guppy.get_module and no longer removes the module from the state.
  • Quantum operations rx, rz, phased_x, and zz_max use the angle type instead of floats.

Features

Bug Fixes

  • hseries ops use floats instead of angles (#483) (7ed3853), closes #477
  • Keep track of definitions that are implicitly imported (#481) (a89f225), closes #480

v0.10.0

11 Sep 08:34
4309059
Compare
Choose a tag to compare

0.10.0 (2024-09-11)

⚠ BREAKING CHANGES

  • Bumped the hugr dependency to 0.8.0
  • GuppyModule.load no longer loads the content of modules but instead just brings the name of the module into scope. Use GuppyModule.load_all to get the old behaviour.
  • Removed guppylang.hugr_builder.hugr.Hugr, compiling a module returns a hugr.Package instead.

Features

Bug Fixes

Documentation

  • Update readme, cargo build instead of --extra validation (#471) (c2a4c86)

Miscellaneous Chores

v0.9.0

12 Aug 14:15
1dfebef
Compare
Choose a tag to compare

0.9.0 (2024-08-12)

⚠ BREAKING CHANGES

Bug Fixes

v0.8.1

08 Aug 14:42
7bf419f
Compare
Choose a tag to compare

0.8.1 (2024-08-08)

Bug Fixes