Skip to content

Releases: erasureprotocol/erasure-protocol

Multiple Token Support

08 Jan 18:06
b2e586d
Compare
Choose a tag to compare

This release adds support for staking and payments with DAI or NMR. DAI stakes are converted to NMR on Uniswap to perform a burn.

Find contracts addresses and ABIs in @erasure/abis

Update testenv

21 Dec 15:59
f6f6175
Compare
Choose a tag to compare

Add deployment of Erasure_Users

Erasure Escrows

23 Nov 02:06
2437b8f
Compare
Choose a tag to compare

This release includes the launch of an escrow for CountdownGriefing agreements. It also redeploys existing factories for simplifications and code quality improvements. The Post template has been deprecated in favor of using Feed for building track-record.

Changelog

Here are the relevant changes for this release:

  • New Erasure_Escrows registry
  • Redeploy Feed template
  • Redeploy SimpleGriefing template
  • Redeploy CountdownGriefing template
  • New CountdownGriefingEscrow template
  • Deprecated Post template

Description of improvements

  • Explicit return values
  • Simplify state machine
  • Staker no longer able to update metadata for SimpleGriefing and CountdownGriefing
  • Add NATSPEC documentation
  • Add state machine and access control graphs in header comment of relevant contracts
  • Prevent frontrunning on salty deployments

Contracts

This section contains all the active contract addresses for this version. Contracts from previous releases excluded from this release are officially deprecated.

NMR Token

Contract Mainnet Rinkeby
NMR / MockNMR 0x1776e1F26f98b1A5dF9cD347953a26dd3Cb46671 0x1A758E75d1082BAab0A934AFC7ED27Dbf6282373

Registries

Contract Mainnet Rinkeby
Erasure_Posts 0x348FA9DcFf507B81C7A1d7981244eA92E8c6Af29 0x57EB544cCA126D356FFe19D732A79Db494ba09b1
Erasure_Agreements 0xa6cf4Bf00feF8866e9F3f61C972bA7C687C6eDbF 0xf46D714e39b742E22eB0363FE5D727E3C0a8BEcC
Erasure_Escrows 0x409EA12E73a10EF166bc063f94Aa9bc952835E93 0xFD6a8b50B7D97133B03f48a08E9BEF5f664e092c
Erasure_Users 0x789D0082B20A929D6fB64EB4c10c68e827AAB7aB 0xbF7339e68b81a1261FDF46FDBe916cd88f3609c0

Factories

Contract Mainnet Rinkeby
Feed Factory 0xEF078E8330f99186079BE1d2ee6b4a5d6f23E8F1 0x241795381CE24bf3Ea7721778a5Ec66b43a915DF
SimpleGriefing Factory 0x474C80E1e6Bfd3283c9F31979AAc920A0F89a7AA 0x9B8F36CEa9F84178BC5F31fBF836e8E8058577Af
CountdownGriefing Factory 0x053624bd3BA5a3F5b2246A44d2794b5152a6032B 0xCAE071401c9e6a5880b47f79b7aCD1d972eAb0E0
CountdownGriefingEscrow Factory 0xC5E1169F69D744F6CECEA47a50A66bE7E41e0460 0xca851A27C03FDb70D9468372d852D39a5830945b

Templates

Contract Mainnet Rinkeby
Feed Template 0xea14477b327B9E4be4cdfBcE2df04C09F7D2a196 0xFF1A286A98d29f59B91328F2228e4511db39a4a1
SimpleGriefing Template 0x210fF9Ced719E9bf2444DbC3670BAC99342126fA 0x8eEC9425bed0B6A35AD5922afF688b14dBF9EefF
CountdownGriefing Template 0xCA276Ef1810E6d40c3A8B6cd02bd10fE2f098936 0xbb76fDB45025587fceAC489CF9259285c6962A33
CountdownGriefingEscrow Template 0x8AF5db2d758071A3c48AC12eC4F081857Fd0cef4 0x4E122d8f121E137BDBb63ADEa0E12895fa46c349

NPM packages update

10 Dec 19:43
be662bc
Compare
Choose a tag to compare

Small update to javascript libraries:

  • added v1.2.x support to testenv
  • added local graphQL deployment to testenv
  • improved multihash support in crypto-ipfs

Factory Upgrade

24 Sep 18:57
Compare
Choose a tag to compare

This release deploys upgraded versions of factories to provide additional features and gas optimizations. v1.0.1 factories will be deprecated in the coming weeks.

Changelog

Agreements

  • OneWayGriefing agreement is deprecated in favour of CountdownGriefing
  • CountdownGriefing now allows the counterparty to release the staker's tokens
  • Punishments now require passing in the current stake to prevent user errors

Posts

  • Feed now stores the proofhash locally to optimize gas
  • Additional operator functionality added to Feed and Post

Factories

  • Updated to solidity compiler 0.5.11
  • Factories now all use the standard create() and createSalty() functions
  • Templates now all emit an event Initialized()which logs the initialization parameters
  • Metadata is removed from state to optimize gas

Gas Benchmarks

Instance v1.0.0 v1.1.0
Post 419,581 298,153
Feed 309,386 252,588
ProofHash 463,368 28,288
SimpleGriefing na 328,835
CountdownGriefing 375,177 351,287

Contracts

Contract Mainnet Rinkeby
NMR / MockNMR 0x1776e1F26f98b1A5dF9cD347953a26dd3Cb46671 0x1A758E75d1082BAab0A934AFC7ED27Dbf6282373
Erasure_Posts 0x348FA9DcFf507B81C7A1d7981244eA92E8c6Af29 0x57EB544cCA126D356FFe19D732A79Db494ba09b1
Erasure_Agreements 0xa6cf4Bf00feF8866e9F3f61C972bA7C687C6eDbF 0xf46D714e39b742E22eB0363FE5D727E3C0a8BEcC
Erasure_Users 0x789D0082B20A929D6fB64EB4c10c68e827AAB7aB 0xbF7339e68b81a1261FDF46FDBe916cd88f3609c0
Post Template 0x7f858F0726af676e00cB76459D984463ee1307c2 0x223EbC4e00eD605cC580E6B547aDbf7300B4BF4D
Post Factory 0x41b65f0153410E42ec26eaBa71F9f8f133282B54 0xbd1E2C679ED25485e27e5AD8eD3a2776769d22aF
Feed Template 0xA411eB36538a2Ae060A766221E43A94205460369 0x7aA06aa3b6D5476c0CE720231E2Add74164f78CD
Feed Factory 0x206780873974878722Ed156544589701832eE920 0xa3140871346f4efF924dc874EC6AfD4573232F03
SimpleGriefing Template 0xC04Bd2f0d484b7e0156b21c98B2923Ca8b9ce149 0x183347dA3DABb0F8a43a49E4Df93C957030f6780
SimpleGriefing Factory 0x67ef9503cf0350dB52130Ef2Ad053E868Bc90FC7 0x896E5C478c297092965441A62d0a0B0A4A4CC6E8
CountdownGriefing Template 0x89a2958544f86Cc57828dbBf31E2C786f20Fe0a0 0xb84d62fbd39bf3504d197D2405FCD5b86427D35B
CountdownGriefing Factory 0xd330e5e9670738D36E31dcb1fde0c08B1895a0b1 0xab005C507c877696033e60BB99cAc9B9ADD6A741

Rinkeby Redeployment

Mainnet Deployment

Testnet Deployment