You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
4.5 KiB
4.5 KiB
Changelog
2.2.0 (unreleased)
New features:
ERC20
: added internal_approve(address owner, address spender, uint256 value)
, allowing derived contracts to set the allowance of arbitrary accounts.ERC20Metadata
: added internal_setTokenURI(string memory tokenURI)
.ERC20Snapshot
: create snapshots on demand of the token balances and total supply, to later retrieve and e.g. calculate dividends at a past time.
Improvements:
- Upgraded the minimum compiler version to v0.5.2: this removes many Solidity warnings that were false positives.
Counter
's API has been improved, and is now used byERC721
(though it is still indrafts
).ERC721
's transfers are now more gas efficient due to removal of unnecessarySafeMath
calls.- Fixed variable shadowing issues.
Bugfixes:
Breaking changes:
TokenMetadata
(in drafts) has been renamed toERC20Metadata
.
2.1.2 (2019-17-01)
- Removed most of the test suite from the npm package, except
PublicRole.behavior.js
, which may be useful to users testing their ownRoles
.
2.1.1 (2019-04-01)
- Version bump to avoid conflict in the npm registry.
2.1.0 (2019-04-01)
New features:
- Now targeting the 0.5.x line of Solidity compilers. For 0.4.24 support, use version 2.0 of OpenZeppelin.
WhitelistCrowdsale
: a crowdsale where only whitelisted accounts (WhitelistedRole
) can purchase tokens. Adding or removing accounts from the whitelist is done by whitelist admins (WhitelistAdminRole
). Similar to the pre-2.0WhitelistedCrowdsale
. (#1525, #1589)RefundablePostDeliveryCrowdsale
: replacement forRefundableCrowdsale
(deprecated, see below) where tokens are only granted once the crowdsale ends (if it meets its goal). (#1543)PausableCrowdsale
: allows for pausers (PauserRole
) to pause token purchases. Other crowdsale operations (e.g. withdrawals and refunds, if applicable) are not affected. (#832)ERC20
:transferFrom
and_burnFrom
now emitApproval
events, to represent the token's state comprehensively through events. (#1524)ERC721
: added_burn(uint256 tokenId)
, replacing the similar deprecated function (see below). (#1550)ERC721
: added_tokensOfOwner(address owner)
, allowing to internally retrieve the array of an account's owned tokens. (#1522)- Crowdsales: all constructors are now
public
, meaning it is not necessary to extend these contracts in order to deploy them. The exception isFinalizableCrowdsale
, since it is meaningless unless extended. (#1564) SignedSafeMath
: added overflow-safe operations for signed integers (int256
). (#1559, #1588)
Improvements:
- The compiler version required by
Array
was behind the rest of the libray so it was updated tov0.4.24
. (#1553) - Now conforming to a 4-space indentation code style. (1508)
ERC20
: more gas efficient due to removed redundantrequire
s. (#1409)ERC721
: fixed a bug that prevented internal data structures from being properly cleaned, missing potential gas refunds. (#1539 and #1549)ERC721
: general gas savings ontransferFrom
,_mint
and_burn
, due to redudantrequire
s andSSTORE
s. (#1549)