Skip to content

Releases: animocabrands/ethereum-contracts-nft_staking

v4.0.0: Version 4.0.0 (#13)

09 Nov 15:14
c4e0815
Compare
Choose a tag to compare

New features

  • NftStakingV2.sol:
    • added batchUnstakeNfts() function
    • internal hook functions _onStake and_onUnstake.
    • added withdrawLostCycleRewards for an admin to withdraw the rewards for a past cycle where there was no stake.
    • new events NftsBatchStaked and NftsBatchUnstaked emitted during batch operations instead of the single versions.
    • Batch functions throw on an empty tokens list.
    • Optimised implementation of batch staking.
    • GSN compatibility.

Improvements

v3.0.4: Version 3.0.4 (#12)

20 Aug 01:41
d9d9ffa
Compare
Choose a tag to compare

Improvements

  • Optimised the assignment of tokenInfos in _stakeNFT.

v3.0.3: Version 3.0.3 (#11)

03 Aug 19:14
5a20ac1
Compare
Choose a tag to compare

Improvements

  • Calibrated the re-stake exploit fix to only apply during the same cycle after unstaking.
  • Improved the comments.

v3.0.2: Version 3.0.2 (#10)

03 Aug 04:25
531b62e
Compare
Choose a tag to compare

Bugfixes

  • Fixed an exploit that allowed the claiming of rewards for the cycle in which a token was unstaked.

v3.0.1: Merge pull request #9 from animocabrands/version-3.0.1

20 Jul 02:19
ca0a718
Compare
Choose a tag to compare

Improvements

  • Gas optimisations, minor comments improvements.
  • Linting configuration.
  • Migrated to yarn.

v3.0.0: Certik recommendations round 3 (#8)

03 Jul 03:35
58445ee
Compare
Choose a tag to compare

New features

  • Added addRewardsForPeriods() function, which initializes or adds reward amounts for the specified period range. This will perform a transfer operation to fund the contract with the added rewards amount when called.
  • Added contract interface IWhitelistedNftContract to define the API for the whitelisted contract used for NFT transfer operations when unstaking.

Breaking changes

  • Removed setRewardsForPeriods() function.
  • Funding the contract rewards no longer occurs when calling the start() function. Instead, this happens whenever addRewardsForPeriods() is called.
  • Removed disabled state variable, for representing the contract enabled state, and replaced with enabled.
  • Renamed RewardsScheduled event to RewardsAdded.
  • Renamed totalPrizePool state variable to totalRewardsPool.

v2.0.1: Version 2.0.1 (#7)

20 Jun 10:08
0cf3ffb
Compare
Choose a tag to compare

New features

  • The module now exports a constants and a utils object.
  • Added a function to calculate a total rewards based on a rewards schedule.

Bugfixes

  • Fixed a wrong import in the migration and restructured the script

v2.0.0: Version 2.0.0 (#5)

18 Jun 03:17
f4f73c2
Compare
Choose a tag to compare

Breaking changes

  • Updated @animoca/ethereum-contracts-core_library to version 3 and downgraded it to be a dev dependency.
  • Updated @animoca/ethereum-contracts-erc20_base to version 3 and downgraded it to be a dev dependency.
  • Updated @animoca/ethereum-contracts-assets_inventory to version 3 and downgraded it to be a dev dependency.
  • Migrated compiler to solc:0.6.8.
  • Design change to record staker histories with modification to public interfaces.
  • Removed testable version of the contract.

Improvements

  • Removed dependency on @animoca/f1dt-core_metadata.

v1.0.2: V1.0.2 (#3)

06 May 08:51
dbfbdc4
Compare
Choose a tag to compare

1.0.2 (04/05/2020)

Improvements

  • Updated dependency on @animoca/ethereum-contracts-assets_inventory to 2.0.1.
  • Change variables names in multiple files to be more generic.

v1.0.1

04 May 08:49
930b5ff
Compare
Choose a tag to compare

Improvements

  • Added 1_NftStaking.js migration script