1. 12 Aug, 2019 8 commits
    • v2.2.2 · 4070719f
      Francisco Giordano authored
    • GSN support (#59) · 9c4840a4
      * GSN support
      
      Add base Context contract
      
      Add GSNContext and tests
      
      Add RelayHub deployment to tests
      
      Add RelayProvider integration, complete GSNContext tests
      
      Switch dependency to openzeppelin-gsn-provider
      
      Add default txfee to provider
      
      Add basic signing recipient
      
      Sign more values
      
      Add comment clarifying RelayHub's msg.data
      
      Make context constructors internal
      
      Rename SigningRecipient to GSNRecipientSignedData
      
      Add ERC20Charge recipients
      
      Harcode RelayHub address into GSNContext
      
      Fix Solidity linter errors
      
      Run server from binary, use gsn-helpers to fund it
      
      Migrate to published @openzeppelin/gsn-helpers
      
      Silence false-positive compiler warning
      
      Use GSN helper assertions
      
      Rename meta-tx to gsn, take out of drafts
      
      Merge ERC20 charge recipients into a single one
      
      Rename GSNRecipients to Bouncers
      
      Add GSNBouncerUtils to decouple the bouncers from GSNRecipient
      
      Add _upgradeRelayHub
      
      Store RelayHub address using unstructored storage
      
      Add IRelayHub
      
      Add _withdrawDeposits to GSNRecipient
      
      Add relayHub version to recipient
      
      Make _acceptRelayedCall and _declineRelayedCall easier to use
      
      Rename GSNBouncerUtils to GSNBouncerBase, make it IRelayRecipient
      
      Improve GSNBouncerBase, make pre and post sender-protected and optional
      
      Fix GSNBouncerERC20Fee, add tests
      
      Add missing GSNBouncerSignature test
      
      Override transferFrom in __unstable__ERC20PrimaryAdmin
      
      Rhub address slot reduced by 1
      
      Rename relay hub changed event
      
      Use released gsn-provider
      
      * move gsn to all caps
      
      * update to gsn contracts in solidity/master
      
      * Adapt for ethereum-package
      
      * update gsn related packages
      
      * update dependencies to match contracts repo
      
      * remove mocha bail option
      
      * add changelog entry
      
      * add constructors to mocks
      
      * use unstructured storage for bouncer implementations
      Santiago Palladino authored
    • fix npm badge · 516c1201
      Francisco Giordano authored
    • lint · 5b43fccc
      Francisco Giordano authored
  2. 22 Jul, 2019 1 commit
  3. 20 Jul, 2019 1 commit
    • Rename to @openzeppelin/contracts-ethereum-package (#54) · 7ac0502c
      * Change import path from zos-lib to upgrades in all contracts
      
      * Update readme with new naming
      
      * Update package and deps names
      
      * Change path to initializable in AST of networks.jsons
      
      * Migrate manifest version
      
      * Use new oz file locations
      
      * Rename in ERC20Migrator comments
      
      * Update SDK install instructions in README
      
      * Update gitignore to use new session file name
      
      * trigger CI
      
      * Fixes to readme and package version
      
      * Use 2.5.0 release of OpenZeppelin SDK
      Santiago Palladino authored
  4. 19 Jul, 2019 1 commit
  5. 12 Jun, 2019 2 commits
  6. 11 Jun, 2019 2 commits
  7. 10 Jun, 2019 1 commit
  8. 06 Jun, 2019 1 commit
  9. 05 Jun, 2019 2 commits
  10. 30 May, 2019 2 commits
  11. 28 May, 2019 2 commits
  12. 14 Mar, 2019 2 commits
  13. 07 Mar, 2019 3 commits
    • Signature Malleability: (#1622) · 79dd498b
      * Transaction Malleability:
      If you allow for both values 0/1 and 27/28, you allow two different
      signatures both resulting in a same valid recovery. (r,s,0/1) and
      (r,s,27/28) would both be valid, recover the same public key and sign
      the same data. Furthermore, given (r,s,0/1), (r,s,27/28) can be
      constructed by anyone.
      
      * Transaction Malleability:
      EIP-2 still allows signature malleabality for ecrecover(), remove this
      possibility and force the signature to be unique.
      
      * Added a reference to appendix F to the yellow paper and improved
      comment.
      
      * better test description for testing the version 0, which returns
      a zero address
      
      * Check that the conversion from 0/1 to 27/28 only happens if its 0/1
      
      * improved formatting
      
      * Refactor ECDSA code a bit.
      
      * Refactor ECDSA tests a bit.
      
      * Add changelog entry.
      
      * Add high-s check test.
      Thomas Bocek authored
  14. 06 Mar, 2019 2 commits
    • Add extcodesize check to SafeERC20. (#1662) · 547a5f24
      * Add extcodesize check to SafeERC20.
      
      * Clarify some comments.
      
      * Replace inline assembly with Address.sol.
      Nicolás Venturo authored
    • Add TimedCrowdsale::_extendTime (#1636) · 352ec945
      * Add TimedCrowdsale::_extendTime
      
      * Add tests for TimedCrowdsale extending method
      
      * Reverse event arguments order
      
      * Rename method argument
      
      * Refactor TimedCrowdsale test
      
      * Simplify TimedCrowdsaleImpl
      
      * Fix extendTime method behaviour to deny TimedCrowdsale re-opening after it was ended
      
      * Append chengelog
      
      * Update CHANGELOG.md
      
      Co-Authored-By: k06a <k06aaa@gmail.com>
      
      * Update contracts/crowdsale/validation/TimedCrowdsale.sol
      
      Co-Authored-By: k06a <k06aaa@gmail.com>
      
      * Improve tests
      Anton Bukov authored
  15. 02 Mar, 2019 1 commit
    • Add guard to ERC20Migrator migrate function (#1659) · 3772233c
      * Add guard to ERC20Migrator migrate function
      
      * Add tests for premature migration in ERC20Migrator
      
      These tests apply to the new guard condition, but they don't
      fail without it, since the functions revert anyway.
      They are added for completeness and to ensure full code coverage.
      
      * Use context block around premature migration tests
      
      We should use context blocks for situational details
      and describe for features or functions.
      nikeshnazareth authored
  16. 01 Mar, 2019 4 commits
  17. 28 Feb, 2019 2 commits
    • Add no-return-data ERC20 support to SafeERC20. (#1655) · 41aa39af
      * Add no-return-data ERC20 support to SafeERC20.
      
      * Add changelog entry.
      
      * Replace abi.encodeWithSignature for encodeWithSelector.
      
      * Remove SafeERC20 test code duplication.
      
      * Replace assembly for abi.decode.
      
      * Fix linter errors.
      Nicolás Venturo authored
    • Nonfunctional typos #1643 (#1652) · 0dded493
      * Add IntelliJ IDE config to .gitignore
      
      * Fix variable name in ERC20 function comments
      
      * Fix typos in Arrays function comment
      
      * Fix typos in ownership test names
      
      * Fix typo in Pausable test name
      
      * Fix grammar in Ownable function comment
      
      * Fix grammar in Crowdsale contract comment
      
      * Fix typo in Counters contract comment
      
      * Fix typo in ERC721Enumerable comment
      
      * Fix typo in ERC721PausedToken test name
      
      * Fix typo in Crowdsale function comment
      
      * Fix typo in IncreasingPriceCrowdsale function comment
      
      * Fix grammar in IncreasingPriceCrowdsale test name
      
      * Fix typo in AllowanceCrowdsale test name
      
      * Fix typo in RefundEscrow function comment
      
      * Fix typo in ERC20Migrator contract comment
      
      * Fix typos in SignatureBouncer comments
      
      * Fix typo in SignedSafeMath test name
      
      * Fix typo in TokenVesting contract comment
      
      * Move Ownable comment from @notice section to @dev
      
      The Ownable contract has a comment explaining that renouncing
      ownership will prevent execution of functions with the onlyOwner
      modifier.
      
      This commit moves that comment to the @dev section and replaces it
      with a description suitable for a generic user.
      
      * Clarify purpose of ERC20 transfer function
      
      * Clarify registration of ERC721Enumerable interface
      
      * Clarify purpose of AllowanceCrowdsale test
      
      * Increase specificity of inheritance comments
      
      FinalizableCrowdsale and RefundableCrowsale both have comments
      indicating that they are extensions of the Crowdsale contract.
      
      This commit refines those comments to the most immediate ancestor
      ( TimedCrowdsale and RefundableCrowdsale respectively )
      
      * Remove unused parameter in PaymentSplitter test
      
      * Rename parameter in SignatureBouncer functions
      
      The SignatureBouncer contract has modifiers to validate the
      message sender is authorised to perform an action. They pass
      msg.sender to internal functions as the variable `account`, but
      the function comments refer to the variable as `sender`
      
      This commit changes the variable name to `sender`
      
      * Clarify comments in SignatureBouncer functions
      
      The SignatureBouncer has comments that use the description
      `sender` to refer to the variable `account`.
      
      This commit updates the comments for consistency.
      
      Maintainer Note: this reverts changes in the previous commit,
      which renamed the variable `account` instead.
      nikeshnazareth authored
  18. 27 Feb, 2019 1 commit
  19. 26 Feb, 2019 2 commits