Releases: CQCL/hugr
Releases · CQCL/hugr
hugr-cli: v0.6.1
hugr: v0.12.1
hugr-py: v0.8.1
hugr-passes: v0.8.1
Features
- Op replacement and lowering functions (#1509)
hugr-core: v0.9.1
Bug Fixes
std.collections.insert
wrong output order (#1513)
hugr-cli: v0.6.0
hugr: v0.12.0
Features
- [breaking] Disallow opaque ops during validation (#1431)
- [breaking] Add collections to serialized standard extensions (#1452)
- [breaking] Variadic logic ops now binary (#1451)
- [breaking] Int operations other than widen/narrow have only one width arg (#1455)
- Add a
FuncTypeBase::io
method (#1458) - Add missing ops (#1463)
- [breaking] Move
Lift
,MakeTuple
,UnpackTuple
andLift
to prelude (#1475) Option
/Result
helpers (#1481)- [breaking] Add more list operations (#1474)
- [breaking] Move int conversions to
conversions
ext, add to/from usize (#1490) - Fill out array ops (#1491)
Refactor
- [breaking] Bring the collections ext in line with other extension defs (#1469)
- [breaking] Make Either::Right the "success" case (#1489)
- [breaking] Flatten
CustomOp
in toOpType
(#1429)
Testing
- Add serialization benchmarks (#1439)
hugr-py: v0.8.0
0.8.0 (2024-08-30)
⚠ BREAKING CHANGES
- Moved
itobool
/ifrombool
/itostring_{u,s}
to the conversions extension. - Binary sums representing fallible values now use tag
1
for the successful variant - hugr-py: rename
Custom.name
toCustom.op_name
andFunc(Defn/Decl).name
tof_name
to allow for newname
method ListOp::pop
now returns an option.- Moved all builder definitions into the
hugr.build
module. Movednode_port
andrender
into thehugr.hugr
module. - Move
Lift
,MakeTuple
,UnpackTuple
andLift
from core operations to prelude. Renameops::leaf
module toops::sum
. - hugr-py:
hugr.serialization
module andto_serial
methods are now internal only. - Renamed
_DfBase
toDfBase
and_DefinitionBuilder
toDefinitionBuilder
idivmod_checked
,idivmod
,idiv
,idiv_checked
,imod
,ishl
,ishr
,irotl
,irotr
operations now only have one width argument for all inputs and outputs rather than two.- HUGRs containing opaque operations that don't point to an extension in the registry will fail to validate. Use
Package
to pack extensions with HUGRs for serialisation. CustomOp
removed,OpType
now containsExtensionOp
andOpaqueOp
directly.CustomOpError
renamed toOpaqueOpError
.
Features
Option
/Result
helpers (#1481) (9698420)- Add missing ops (#1463) (841f450)
- Add more list operations (#1474) (037005f)
- Bring in the pure-python renderer from guppy (#1462) (001e66a)
- disallow opaque ops during validation (#1431) (fbbb805)
- fill out array ops (#1491) (26ec57a)
- hugr-py: pretty printing for ops and types (#1482) (aca403a)
- hugr-py: use serialized extensions in python (#1459) (a61f4df), closes #1450
- int operations other than widen/narrow have only one width arg (#1455) (c39ed15)
- Move
Lift
,MakeTuple
,UnpackTuple
andLift
to prelude (#1475) (b387505) - Move int conversions to
conversions
ext, add to/from usize (#1490) (88913f2)
Bug Fixes
- hugr-py: record node children correctly when deserializing (#1480) (331125a), closes #1479
- py: Invalid node indexing (#1457) (d6edcd7)
- schema for array inner types (#1494) (d43cbb2), closes #1471
- Sum value equality. Add unit tests (#1484) (a7b2718)
Code Refactoring
hugr-passes: v0.8.0
Features
- [breaking] Variadic logic ops now binary (#1451)
- [breaking] Int operations other than widen/narrow have only one width arg (#1455)
- [breaking] Move
Lift
,MakeTuple
,UnpackTuple
andLift
to prelude (#1475) - [breaking] Add more list operations (#1474)
- [breaking] Move int conversions to
conversions
ext, add to/from usize (#1490)
Refactor
hugr-core: v0.9.0
Features
- [breaking] Disallow opaque ops during validation (#1431)
- [breaking] Add collections to serialized standard extensions (#1452)
- [breaking] Variadic logic ops now binary (#1451)
- [breaking] Int operations other than widen/narrow have only one width arg (#1455)
- Add a
FuncTypeBase::io
method (#1458) - Add missing ops (#1463)
- [breaking] Move
Lift
,MakeTuple
,UnpackTuple
andLift
to prelude (#1475) Option
/Result
helpers (#1481)- [breaking] Add more list operations (#1474)
- [breaking] Move int conversions to
conversions
ext, add to/from usize (#1490) - Fill out array ops (#1491)