Releases: pooky-labs/smart-contracts
Releases · pooky-labs/smart-contracts
v1.0.0
What's Changed
Features:
- feat: refactor tests with Typechain, setup basic CI by @mathieu-bour in #1
- feat: enable Hardhat gas report in CI (MATIC/EUR) by @mathieu-bour in #2
- feat: use OpenZeppelin uint256 to string library by @mathieu-bour in #3
- feat: use OpenZeppelin ECDSA library by @mathieu-bour in #4
- refactor: rephrase and simplify most of the contracts documentation by @mathieu-bour in #5
- feat: remove the Errors library and use Solidity errors instead by @mathieu-bour in #6
- feat: add BallLuxury into the BallInfo, MATIC rewards, improve code coverage by @mathieu-bour in #7
- feat: remove token revocation, add
PookyGenesisMinter.setTreasuryWallet
by @mathieu-bour in #9 - CertiK audit resolution by @duxxud in #11
- feat(coverage): increase code coverage by @mathieu-bour in #12
- feat: add checkClaimEligibility function by @mathieu-bour in #13
- refactor: rewrite tasks using new types, make them interactive by @mathieu-bour in #14
- refactor: rewrite contracts without upgrades, reset tests by @mathieu-bour in #15
- feat(Pookyball): adhere to Operator Filter Registry by @mathieu-bour in #16
- docs(readme): split README.md, add CONTRIBUTING.md by @mathieu-bour in #20
- feat(pookyballs): implement the ERC2981 standard with 5% royalty by @mathieu-bour in #21
- feat(waitlist): switch to
AccessControl
-based permissions by @mathieu-bour in #22 - feat(deploy): automatically transfer the admin privileges to the Pooky multisig by @mathieu-bour in #23
- feat(deploy): request multiple randomWords when batch minting by @mathieu-bour in #24
- feat(deploy): automatically add Pookyball as consumer by @mathieu-bour in #25
- feat(Pookyball): allow to change the ERC2891 royalties recipient by @mathieu-bour in #26
- docs(natspec): improve contracts natspec by @mathieu-bour in #27
- feat(rewards): claim Pookyball, use a struct and add data argument by @mathieu-bour in #28
- docs(rewards): add Claudiu Micu to contributors by @mathieu-bour in #33
- feat(game): add the Airdrop contract by @mathieu-bour in #34
- feat(game): do not distribute Pookyball rewards for now by @mathieu-bour in #35
- feat(game): add the Energy contract by @mathieu-bour in #36
- feat(abi): exports the contracts ABI into abi/ by @mathieu-bour in #38
- feat(game): add Pressure contract by @mathieu-bour in #39
- docs: update README.md and CONTRIBUTING.md by @mathieu-bour in #40
- Export smart contract bytecode by @buildwithme in #41
- feat(bytecode): export bytecode like we did with ABIs by @mathieu-bour in #42
- feat(rewards): ensure that rewards ids cannot be claimed more than once by @mathieu-bour in #43
- tests: add AccessControl tests by @mathieu-bour in #44
- feat(mint): add GenesisMinter.getTemplates() function by @mathieu-bour in #45
- feat(vrf): add the Chainlink VRF subscription id by @mathieu-bour in #46
- feat(mint): new Genesis mint parameters by @mathieu-bour in #47
- docs(readme): update Pookyball, Level and Rewards contract addresses by @mathieu-bour in #48
- docs(changelog): add CHANGELOG.md file by @mathieu-bour in #49
- feat(game): reduce level/pressure and Genesis sale price by @mathieu-bour in #50
- feat(rewards): rewards can distribute Pookyballs tokens by @mathieu-bour in #51
- docs(changelog): add 6 March 2023 entry by @mathieu-bour in #52
- feat(pressure): upgrade
Pressure
contract, sunsetEnergy
contract by @mathieu-bour in #53 - feat(sale): deploy
LaunchSale
, updateLevel.RATIO_POK
by @mathieu-bour in #54 - feat(mint): open a second LaunchSale contract by @mathieu-bour in #55
- feat(game): allow anybody to level up any Pookyball by @mathieu-bour in #56
- feat(mint): create RefillableSale, update dependencies by @mathieu-bour in #57
- feat(ethers): upgrade to ethers.js v6 by @mathieu-bour in #58
- feat(stickers): introduce Stickers and migrate to Foundry by @mathieu-bour in #59
- feat: add
PookyballLevel
contract by @mathieu-bour in #61 - feat(stickers): introduce offchain PXP for Stickers + BaseLevelUp by @mathieu-bour in #63
- feat(pookyball): centralised PXP for Pookyballs by @mathieu-bour in #64
- feat(rewards): split fuzz/non fuzz rewards tests by @mathieu-bour in #65
- feat(stickers): refactor, introduce Ascension contracts by @mathieu-bour in #66
- feat(stickers): rework Stickers ascension by @mathieu-bour in #67
- feat(stickers): lower minimum level for stickers to 5 by @mathieu-bour in #68
- feat(pookyball): add tests for Mythic rarity by @mathieu-bour in #70
- feat(stickers): update stickers ascension to support attached stickers by @mathieu-bour in #71
- Contract scripts improvements by @buildwithme in #73
Fixes:
- fix(deploy): do not crash on "Already Verified" error by @mathieu-bour in #29
- fix(rewards): verify if the data passed to the reward claim function was signed also by @buildwithme in #30
- fix(rewards): increment user nonce on user rewards claim before distributing the rewards in order to avoid reentrancy attacks by @buildwithme in #31
- fix: add user address to the signature for claimRewards by @duxxud in #8
- fix(game): re-deploy Level to fix max levels by @mathieu-bour in #60
- fix(game): update PookyballLevel to use the maximum level per rarity by @mathieu-bour in #62
- fix(scripts): MAPP-203: Refactor and add missing deployment scripts by @buildwithme in #72
CI/CD:
- ci(package): prepare for package export by @mathieu-bour in #17
- ci: publish on the npm registry by @mathieu-bour in #18
- ci(actions): ensure that all tests pass before publishing by @mathieu-bour in #19
Chores:
- chore(package): remove the latest package traces by @mathieu-bour in #32
- chore(script): deploy Stickers on Polygon mainnet by @mathieu-bour in #69
New Contributors
- @mathieu-bour made their first contribution in #1
- @duxxud made their first contribution in #8
- @buildwithme made their first contribution in #30
Full Changelog: https://github.com/pooky-labs/smart-contracts/commits/v1.0.0