Releases: kadena-io/pact
Pact 4.13.1
Pact 4.13.0
4.13.0
Features
- Support for encoding a hyperlane TokenMessage (#1362)
Bugfixes
- Fixed support for decoding a hyperlane TokenMessage (#1362)
Misc
- require hashes >= 3.0 (#1370)
- add specific clause for masking hugenum regression in ARM runners (#1364)
- support ghc-9.10 (#1367)
New Contributors
- @ak3n made their first contribution in #1362
Full Changelog: v4.12.0...v4.13.0
Pact 4.12.0
Pact 4.11.0
Features
- Support for verifier plugins (#1324,#1336)
- Support for
hyperlane-message-id
(#1335) - Support for decoding a hyperlane TokenMessage (#1344)
Bugfixes
- Fix bug in enforce-pact-version parser (#1334)
- Fix pact CLI usage output to use correct naming (#1331)
- Fix
step
fordefpact
s in typechecker (#1333)
Misc
Pact 4.10
Pact 4.9.0
Pact 4.8
4.8
Bugfixes
- Fix name resolution within module redeploy (#1235)
- Fixed issue with the hash of cap guards,
hash
native and principals (#1273) (#1278) - Fixed error message for calling a non-function value (#1268)
Eval
- Tweaked the gas of concat (#1269), reverse and format (#1271)
- Allow computation on integers less than 10^80 without gas penalty (#1272)
Internal changes
- More granular gas units (#1245)
- Remove GHCJS support (#1280)
- GHC 9.6+ version support (#1242)
- Package docs in nix flake (#1258)
- Vendor sources of prettyprinter-1.6.0 (#1263)
- Use MTL 2.3+ (#1261)
- replace cryptonite by crypton (#1240)
Formal Verification
Other
- Improve modref docs (#1256)
Thanks to @thomashoneyman for the contribution!
Pact 4.7.1
4.7.1
This marks the 4.7.1 release of the Pact language.
Eval
- Add feature flag
FlagDisableRuntimeTypeChecking
for disabling runtime typechecking
introduced in Pact 4.7 (#1231)
Formal Verification
Tests
- Refactored test to avoid
runIO
within tests (#1129) - Add
CoverageSpec
(#1228) - Fix
ReplSpec
tests (#1216) - Cleanup
PactContinuationSpec
(#1222)
Others
Pact 4.7.0
4.7.0
This marks the 4.7.0 version of the Pact smart contract language.
Eval
- Improve advice implementation (#1187)
- Fix inconsistent trace output (#1153)
- Fix coverage, restore defun advice (#1151)
- Create persistence dirs if missing (#1148)
- Differentiate between errors on-chain and off-chain (#1185)
- Don't display function documentation in non-repl context (#1185)
- Runtime type checking on return types now enforced (#1209)
Natives
- Allow native function versioning in eval (#1195)
- Add new native
dec
for integer to decimal conversion (#1150) - Implement
shift
in terms of other natives for better gas costing (#1208) - Intialize body of
env-data
to an empty object instead of Null (#1188)
read-*
functions are now recoverable if the key doesn't exist. That is, a call such as(read-string 'key)
is recoverable if'key
does not exist in the data payload by surrounding it withtry
. As an example,(try "string if key isn't present" (read-string "key"))
. This applies to
read-integer
,read-string
,read-decimal
,read-keyset
andread-msg
(as long asread-msg
has a key supplied as an argument - #1223 )
Typechecking
- Fix Typechecker treatment of special binding forms (#1212)
Formal Verification
- Enable warnings during symbolic eval (#1175)
- Remove
emit-event
shim (#1168) - Remove
hash
shims (#1158) - Remove
enumerate
shim (#1155) - Remove
distinct
shim (#1154) - Remove
describe-namespace
shim (#1156) - Remove
is-principal
,typeof-principal
,create-principal
, andvalidate-principal
shims (#1160) - Remove
format
shim (#1159)
Documentation
- Remove mention of private defpacts from the reference manual (#1207)
- Add documentation for
enumerate
(#1176)
Misc
- New PR and Issue templates introduced.
Thanks to everyone for their contributions, especially @CryptoPascal31 for his wonderful feedback and commentary, and welcome to our newest Pact team member, @ak3n!.
4.6.0
-
Add
DisablePact46
execution flag (#1138) -
Add Zero Knowledge native operations (#1052)
-
Add deprecation warning system (#1127)
-
Build support for Nix flakes (#1083)
-
Passage of time simulation in local pact server build (#1082)
-
Fixed parsing failure message for Public Keys (#1097)
-
print
native now pretty prints output using term pretty printing (#1106) -
Typechecker:
-
Formal Verification:
- Prevent usage of
result
fixed binding indefpact
verification. (#1113) - Warning added for invaliding models when decimals are too high a
precision (#1113) - Typechecker now correctly infers function type arguments (#1112)
- Added debug flag to
verify
native, allowing outputs to be directed to
SMTLib file on a per-module basis. (#1122) - Add shim for
select
in FV (#1090)
- Prevent usage of
Thanks to everyone for their contributions, especially new contributors @qooboodoop and @omahs, and welcome to our newest Pact team member, @rsoeldner!.