Skip to content

Releases: kadena-io/pact

Pact 4.4.1

01 Dec 19:59
0d45ad7
Compare
Choose a tag to compare
  • Export ApiReq constituent data structures (#1055)
  • Fix test tree creation to allow tests to run faster, safer to run on a single core,
    and prevents test servers from being exposed to public environs (#1060, #1062)
  • Added capability guards (#1057)
  • Lazily evaluate enforce to reduce gas usage on evaluation (#1069)
  • Gas adjustment for various natives (#1071)
  • Fix FV regression that disallowed the verification of unary operators like abs (#1079)
  • Documentation link fixes (thanks @przemeklach! #1075)

Pact 4.4

07 Sep 16:33
957b8bd
Compare
Choose a tag to compare

Changelog:

  • Document VSCode support - thanks JeremeyJS! (#965)
  • Documentation fixes - thanks JCM00N and Luzzotica! (#1003, #1021)
  • Gas-related bug fixes and adjustments to format and try (#1020, #1019)
  • Defined keysets are now required to be namespaced (#1011)
  • Consolidated Pact 4.4 execution config flag (removes need for DisablePreserveNamespaceUpgrade flag, #1026)

Pact 4.3.1

15 Jul 21:57
0ec7e92
Compare
Choose a tag to compare

Changelog:

  • Add validate-principal, is-principal, typeof-principal, and create-principal natives #998
  • Allow module upgrades without enforcing namespace user guards #1008
  • Export haskell primitives for working with Principal guards #1006
  • Add describe-namespace native #1010
  • Add support for with-capability repl docs #1016
  • Re-enable repl line info #1005

Pact 4.3

04 May 19:04
73b94d5
Compare
Choose a tag to compare
  • Interpreter improvements (#970)
  • New create-principal and validate-principal natives (#969)
  • Fixes to name resolution (#987)
  • New nested defpacts + continue native (#980)

Pact 4.2.1

03 Apr 00:58
dac7ee4
Compare
Choose a tag to compare
  • Backport chainweb gasmodel (#978)
  • Memory improvements (#964)
  • Force eof in parseExprs (#963)
  • Fix pact add-sig (#981)

Pact 4.2.0

19 Jan 16:15
51f8d6e
Compare
Choose a tag to compare
  • Language features:

    • Lambdas: let-bound function definitions (#915)
    • In-line lambdas @ application use sites: (#954)
    • Provide equality for modrefs (#951)
  • Bug Fixes

    • Fixed formal verification for take/drop functions (#921)
    • Internal native fix (#945)
    • Fix schema unification on module upgrades (#948)
    • Docs expression evaluation fixed (#946)
    • Allow self modrefs (#950)
  • New Natives

    • zip native (#922)
    • cond syntactic form (#938)
    • fold-db native (#941)
  • Persistence improvements

    • Versoned PactValue persistence (#926)
    • Fix modref payload serialization, decouple from persistence backcompat (#949)
    • Run Repls with Sqlite backend (#934)

Pact 4.1.1

30 Oct 23:23
d4452cb
Compare
Choose a tag to compare
  • Guard for recursion at runtime on user apps (#913)
  • FV and TC give real errors (and warnings), improve model failure output (#904)
  • Fix nested capability acquisition (#910)
  • Add support for empty import lists when module hashes are present (#901)

Pact 4.1

24 Aug 17:08
d59a9d2
Compare
Choose a tag to compare
  • [Typechecking/FV] Support dynamic refs in TC/analyze (#894)
    • adds 'env-dynref' REPL builtin for mocking interfaces
    • improved/automatic shimming of natives in TC
  • [Code Coverage] Write coverage/lcov.info relative to loaded file (#883)
  • [Build Tooling]

Pact 4.0

17 Jun 21:07
01d2f73
Compare
Choose a tag to compare
  • Add "advice" plus LCOV code coverage (#861)
    • General advice mechanism for e.g. instrumenting performance bracketing
    • -c in pact tool outputs coverage to coverage/lcov.info relative to loaded file
  • Emit synthetic cross-chain events (#875)
    • Emits X_YIELD on cross-chain initiation and X_RESUME on cross chain resumption
      for any defpact:
      • (pact.X_YIELD targetChain:string continuationName:string continuationArgs:[*])
      • (pact.X_RESUME sourceChain:string continuationName:string continuationArgs:[*])
    • Thus a cross-chain transfer send from 0 to 1 would be (pact.X_YIELD "1" "coin.transfer-crosschain" ["Bob" "Alice" 10.0])
      on chain 0 then (pact.X_RESUME "0" "coin.transfer-crosschain" ["Bob" "Alice" 10.0]) on chain 1.
  • Support blessed modules and add source chain in crosschain (#862)
    • Blessed modules are now supported for resuming cross-chains initiated pre-upgrade.
    • Initiation of cross-chain captures/transmits source chain in output in field .continuation.yield.sourceChain
  • New natives (#859,#874,#860,#862)
    • enumerate to build sequenced lists
    • str-to-list and concat to transform strings to arrays and back
    • distinct to de-dupe lists
    • emit-event to not fire event defcaps when emitting, and allowing arbitrary parameter values
  • Miscellaneous
    • Elide info from Modref JSON (#856)
    • Move SigData and related types into library (#852)
    • More robust TH and avoid deprecated use of star (#870)
    • Enable benchmarks in nix ghc build (#869)
    • Remove thyme dependency (#867)
    • Remove swagger support (#866)
    • Add time benchmarks (#868)
    • Remove setup from gas results (#865)
    • Improve gas golden output (#864)
    • Conditional z3 and servant (#850)

Pact 3.7

15 Dec 18:38
Compare
Choose a tag to compare

Pact 3.7

  • Module References (#817,#839)
  • Pact Events:
    • Backward compatible JSON (#820)
    • @event tag for capabilities (#830)
    • env-events for testing (#827)
  • Fix runtime typechecker for lists (#825)
  • with-applied-env, expect-that testing tools