Skip to content

4.0.0

Compare
Choose a tag to compare
@SebastienGllmt SebastienGllmt released this 09 Aug 04:29
· 23 commits to master since this release
506e187

Breaking changes

  • Moved common types for REST API endpoints from @paima/mw-core to @paima/utils. This makes it easier to share these types between your backend API and frontend client
  • STF calls now receive a new BlockHeader type (from @paima/sdk/utils) instead of just the blockHeight

New features

  • Add multiple new @paima/rest endpoints
    • transaction_count/blockHeight to get the total count of transactions (inputs & scheduled) in a block
    • transaction_count/address to get the total count of transactions (inputs & scheduled) in a block for a specific address
    • transaction_content/blockNumberAndIndex to get the content of a transaction by a block number + tx index
  • Visually see the AsyncAPI for a node (the MQTT events used in Paima)
    • Full UI at http://localhost:3333/docs/asyncapi/ui
    • Specification at http://localhost:3333/docs/asyncapi/spec.yml
  • Precompiles can now be fetched as a JSON object from http://localhost:3333/docs/precompiles
  • @paima/rest REST API endpoints can be now be queries in a statically typechecked way using using import { getPaimaNodeRestClient } from '@paima/mw-core'

Experimental features

  • New (experimental) EVM JSON-RPC wrapper support for Paima applications at http://localhost:3333/rpc/evm. This means you can query a Paima node as if it was an EVM node. Not all endpoints work
    • Some EVM-specific concepts like uncles don't exist in Paima
    • Transaction / block related endpoints currently are not well supported (improvements coming in the future. See #411)
  • Work-in-progress support for MQTT topics that are complex objects (not just strings & number) by turning creating the topic based on the object's hash

Bug fixes

  • Fix avail batcher not sending a message when a batch is finalized
  • Fix issue where an empty presync during parallel EVM sync caused a crash
  • Add missing error code documentation on @paima/rest endpoints
  • Fix missing return on dry_run error case
  • Log database connection string so it's more obvious the cause of a crash if it crashes during connection

Chores

  • Bump nx version
  • Fix issue with tests hanging on latest foundry version
  • Load ENV in nodejs environments if used before they are explicitly loaded
  • Fixed @paima/source sometimes causing builds to hang
  • Document error severity when checking for implicit dependencies in the Paima build process