Releases: OpenZeppelin/openzeppelin-contracts
v1.8.0
This release contains the full implementation of EIP721, following the last details settled in the recently closed EIP. Thanks to all the community for your contributions! 🚀
Changelog
- ✨ Final EIP721 implementation (#803)
- 🔥 Add
Transferevent toBurnableToken(#735) - 👨🏫
ECRecoveryrecoveris now internal (#818) - 💅 Documentation and tests enhancements
v1.7.0
This release contains a big refactor of the Crowdsale contract, which allowed us to implement some really cool new crowdsale models. We also have a shiny new documentation site. Thanks to all the community for the awesome contributions! 🚀
Changelog
⚠️ BigCrowdsalerefactor, including breaking changes (#744)- 🆕 new crowdsale models (#744)
WhitelistedCrowdsaleIndividuallyCappedCrowdsale,PostDeliveryCrowdsaleAllowanceCrowdsaleIncreasingPriceCrowdsale- Original
Crowdsalecontract refactored intoCrowdsale,TimedCrowdsaleandMintedCrowdsale.
- 🏹 Move token creation outside of
Crowdsalecontract (#690) - 👑
Heritableimprovements (#702)
Project updates:
- 📘 New documentation site! (#750)
Update GitHub Pull Request templates (#699)- 🔧 Minor tweaks for test artifact imports (#698)
- 🕵️♂️ Improve test coverage (#712)
v1.6.0
This time we bring you a new release, which includes the much hyped ERC721 for non-fungible tokens, to create your own digital collectibles and more. 🐈 🌍 🚀 🎉
During this release cycle the team has been very active improving the development process itself, and we're already seeing great results in the speed with which we respond to new issues and PRs. Take a peek at the status of development at our waffle.io board.
We'll be waiting for your contributions!
Changelog
- 🆕 Added
ERC721non-fungible token implementation (#615) 🐈 - 🆕 Added
ERC827token implementation providestransfer,transferFromandapprovemethods which additionally perform a call to the recipients (#518) - 🆕 Added
Heritable, an extension ofOwnablewith a designated heir (#680) - Added
getTokenAmountfor dynamic rate crowdsales (#638) - Added the
totalSupplyfunction to the ERC20 interface (#666)
Project changes
v1.5.0
v1.4.0
Thanks to all members of the community that contributed to this release! 🎉 🚀
Changelog
- 🆕 Added
TokenVestingwhich implements vesting of tokens. It replaces the oldVestedTokenwith a more modular approach. (#476) - 🆕 Added
SplitPaymentwhich implements distributing payments to multiple people proportionally to shares. (#417) - 🆕 Added
DetailedERC20which adds to a token state variables with the optional ERC20 metadata. (#477) - 🆕 Added
CappedTokenwhich is aMintableTokenwith capped supply. (#515) - Made
MintableToken'sfinishMintingexecutable only once. (#505) - Upgraded to Truffle 4.0.1 and Solidity 0.4.18. (#573, #460, #576, #506)
- Removed deprecated
claim()fromTokenTimelock. (#469)
And some additional changes to code style, tests, documentation and continuous integration.
v1.3.0
After a long wait, we're finally releasing version 1.3.0 of OpenZeppelin. This is a big release with a lot of small fixes, exciting new features, and enhancements to the developer experience.
This release includes commits from 29 contributors! Huge thanks to all of you! 🎉 🎉
Changelog
- Removed
MultisigWalletin favor of gnosis/MultiSigWallet. (#328) - Added a directory with examples. (#333, #342)
- Migrated the crowdsale contracts to timestamps instead of block numbers. (#350)
- Removed the call to
finishMintinginFinalizableCrowdsale. (#364) - Made
approvepausable inPausableToken. (#448) - Added an
OwnershipTransferredevent. (#424) - Added the
BurnableTokencontract. (#341) - Added the
CanReclaimTokencontract. (#348) - Added the
SafeERC20library for interaction with ERC20 tokens. (#413) - Added the
MerkleProoflibrary for merkle proof verification. (#260) - Fixed some small issues in ERC20 compliance. (#345, #405, #446)
- Fixed a bug in
transferFrom. (#377) - Fixed
transferOwnershiptoreverton failure instead of silently failing. (#323) - Fixed a bug in
TokenTimelock. (#430) - Several enhancements to tests and documentation.
- Parallelized coverage and tests in Travis for faster test results in PRs. (#369)
- Removed the only production dependency (was actually a dev dependency). Now installing via
npm install --only=prod zeppelin-solidityshould install zero extra dependencies! (#357)
v1.2.0
Changelog
- Fix ERC20 interface and implementations to conform to standard.
- Rename
claimtoreleaseinTokenTimelock. - Bugfixes in
VestedToken. - Deprecated
throwin favor ofrequire(),assert()andrevert(). - Small improvements on crowdsale contracts.
- Added
ECRecoverylibrary.
v1.1.0
Changelog
- Add Crowdsale contracts.
- Add a TokenTimelock contract.
- Add coveralls and move npm to yarn for TravisCI.
- Upgrade to Truffle version 3.2.2 and Solidity version 0.4.11
- Other minor refactors and fixes.
- Extract some functions of
SafeMathintoMath. - Remove all checks for short address attack (see: #261)
v1.0.6
Changelog
- Add external audit report to repo.
- Minor improvements to
Destructible. - Revert to usig npm as preferred installation method, as ethpm is still immature.
- Add solidity-coverage
- Add natspec documentation
- Add revokability and burnablity options to
VestedTokenand general refactor and optimizations
Security
- Add fix for the
approve()mitigation. - Protect
transferFromagainst short hand attack. - Fix attack on
VestedToken#grantVestedTokens()
Thanks to @misteraverin, @miohtama, @izqui, @cgewecke, @maurelian, @JGcarv and @DavidKnott for your contributions to this release!
v1.0.5
Changelog:
- Added new
TokenDestructiblelifecycle helper for contracts that want to transfer owned tokens when destroyed. - Decouple transferable logic from
VestedTokenasLimitedTransferToken. - Added new ownership helpers
HasNoEther,HasNoContracts,NoOwner. - Added
ReentrancyGuardto prevent contract from calling itself, directly or indirectly. - Several refactors and small fixes.
- New
MintableTokentoken with minting functions. - New
PausableTokentoken with pausable transfers (it's aPausableinstance) - Make SafeMath a library.
- External audit security fixes. (Audit link will be published soon).
Thanks to @recmo, @izqui, @demibrener, @frangio, @roderik, @jdetychey, @DavidKnott, @lastperson, @tatiesmars, @AugustoL, @ORBAT for your contributions! This release wouldn't be the same without your work.