Releases: algorandfoundation/puya
v4.0.0
v4.0.0 (2024-11-14)
Breaking
-
raise an error when attempting to iterate a tuple of mutable values (
43a364e
)BREAKING CHANGE: iterating a tuple of mutable types will now raise an error as they cannot be copied
-
passing a mutable value more than once to a subroutine will now raise an error as allowing it would break semantic compatability (
dac51be
)BREAKING CHANGE: passing a mutable value more than once to a subroutine causes an error
-
raise an error when attempting to modify immutable arrays such as
algopy.arc4.Address
(9450c7a
)BREAKING CHANGE: modifying an
algopy.arc4.Address
will now raise an error
Feature
-
use extract3 instead of substring3 for bytes indexing (
4954155
) -
remove ops with no side effects when result is not used (
ea34059
) -
ARC-56 application specifications can now be output using the
--output-arc56
option (2d3eb49
) -
add
.copy()
to arc4.Tuple (fe7a0ea
) -
add support for AVM version 11 (
0c31697
) -
allow variable rebinding of mutable parameter values (
253168a
)
Fix
-
ensure expressions are only evaluated once (
359956c
) -
prevent errors trying to optimize dig 0 (
bf52c36
) -
improve error message when a self parameter is missing from a method declaration (
8153cfb
) -
use read location for variable source locations, rather than where the variable was last defined (
27e2659
) -
correctly determine if an
algopy.arc4.Struct
sub-class is immutable or not based onfrozen
class parameter and immutability of fields (0491d0b
)
v3.6.0
v3.5.0
v3.5.0 (2024-10-30)
Feature
-
add
_replace
implementation for named tuples, makealgopy.CompiledContract
andalgopy.CompiledLogicSig
named tuples (93a47f2
) -
reduce stack manipulations ops when subroutine/op results are directly assigned (
fbe6ebb
) -
add CLI option
--output_source_map
to produce debug information that can be used with the next release of AVM debugger (3009822
) -
add optimization to include constant blocks in TEAL output (
671677b
)
Fix
v3.4.1
v3.4.0
v3.3.0
v3.3.0 (2024-10-16)
v3.2.3
v3.2.2
v3.2.2 (2024-10-08)
Fix
v3.2.1
v3.2.0
v3.2.0 (2024-09-24)
Feature
- expand handling of literal expressions to allow combining them with binary boolean operators, and improve error messaging when handling of type unions in nested bool contexts (
b4e0c30
)