2.1.7848

  • add ERC1155 EOSIO <> EVM bridge guide

  • update EOSIO <> EOSIO bridge guide to support new parameters

  • add governance guides

  • update code blocks to use cpp/js/json files accordingly to make the code look nice

  • bunch of other small things

  • update ipfs-api to ^26.1.2

  • cleanup/refactor zeus/boxes/groups/core/test-extensions/lib/atomic/index.js atomic assets library to make creating templates, schemas, collections, and fetching next asset ID / template ID simpler

  • update docs link in README files

  • update go-ipfs to ^0.10.0

  • specify nodejs versions >=12.0.0 <14.0.0 acceptable

  • add multi stake test to airhodl.spec.js

  • add eth-gas-reporter and hardhat support to zeus/boxes/groups/eth-sdk/eth-extensions/zeus-box.json

  • add bitManipulation.sol file to handle slice , bytesToString conversion, and string_tobytes conversion for URI

  • update ipfsd-ctl version to 10.0.4

  • update ipfs version to ^0.59.1

  • consolidate atomicassets contracts to its own box instead of duplicating code

  • support --evm-sister-port for sidechain EVM instance

  • add defaults endpoints for each EVM chain

  • update default params for eip1559 max fees

  • use RPC instead of web socket for EVM endpoint by default

  • add default params for Rinkeby and Ropsten testnets to ecosystem configuration file

  • add flattened files to make contract verification on etherscan easier

  • increase response timeout for demux to not prematurely fail incoming requests if demux under load

  • add atomictokenpeg1155 zeus box including EOSIO/ETH contracts, unit tests

    • atomictokenpeg1155.cpp EOSIO contract handling EOSIO or EVM originating NFTs. Allows creation of mapping by NFT collection owner on EOSIO chain regcolection. NFT collection owner may also register each supported NFT regnft.

      • In the case of EVM originating token, can use evmeossetup which requires bridge permission level to register existing ERC1155 contract

    • atomictokenpeg1155.sol handles message from atomictokenpeg1155.cpp file to create/burn NFTs

    • IERC1155Tradable.sol handles implementation of burn, safeTransferFrom, create, and uri functions.

    • atomictokenpeg1155evm2eosio.sol handles EVM originating ERC1155 contract, uses transfers instead of create/burn.

    • IERC1155Tradable.sol handles safeTransferFrom and uri functions for ERC1155Tradeable.sol contract

    • ERC1155Tradable.sol OpenSea's ERC1155 contract adjusted for bridge's needs to delete metadata before burn.

    • atomictokenpeg1155.spec.js tests for EOSIO originating NFT

      • transfer eos -> eth

      • Manual refund to sender when eos account doesn't exist, to control gas cost

      • Auto refund to sender when EVM account doesn't exist

      • transfer eth -> eos

      • register new NFT, try double register (fails), and transfer

    • atomictokenpeg1155evm2eosio.spec.js tests for EVM originating ERC1155

      • transfer eth -> eos

      • Auto refund to sender when eth address doesn\'t exist

      • Transfers nft from eos to eth

      • Manual refund to sender when eos account doesn\'t exist

      • register new NFT, try double register, and transfer

    • update atomictokenpeg box handling EOSIO atomic assets <> ERC721 nfts

      • atomictokenpeg.cpp

        • add asset mapping singleton

        • BUG: pass token address to evmeossetup instead of in memo to control address

        • check if NFT already mapped

        • ensure bridge does not register NFT with same immutable data

        • make collection author RAM payer for registration

        • if NFT mapping not found on inbound eth -> eos NFT transfer, mark for manual refund

      • atomictokenpegeosio.cpp / atomictokenpegxeosio.cpp

        • fix bug where NFT with different template id, schema name, or collection name could not be mapped

        • make collection author RAM owner of registering NFT

        • verify incoming NFT has been registered and mapped, creating double mapping

      • atomictokenpeg.spec.js clean up and support running at any time, used to throw errors if the asset id, template IDs were not hard coded

      • atomictokenpegeosio.spec.js clean up for same reason, support new reverse mapping parameters

      • atomictokenpegevm2eosio.spec.js clean up and support arbitrary run without hard coded values

  • specify nodejs versions >=12.0.0 <14.0.0 acceptable

  • update go-ipfs to ^0.10.0

  • update ipfsd-ctl version to 10.0.4

  • update ipfs version to ^0.59.1

dappservices contract

  • add provider to refreceipt action to more easily allow governance 3rd party staking

DSP Services:

  • add assertion error to prevent link.hpp lib from processing requests if processing disabled, previously would only prevent reschedule of interval

Last updated