* initial docsite setup
* switch from pushd to cd
* install and set up solidity-docgen
* use the docsite branch next for now
* make it clear that env var is a repository
* add a clarifying comment about a relative path
* change relative to absolute path in docsite script
* add docgen script
* add first few READMEs for contract documentation
* update solidity-docgen
* add docsite as dependency and adjust script
* update openzeppelin-docsite
* update solidity-docgen
* remove dummy text
* update docgen and docsite
* update openzeppelin-docsite
* add netlify.toml
* udpate tokens guide for 2.2
* add DOCUMENTATION.md
* Update docs/learn-about-utilities.md
Co-Authored-By: frangio <frangio.1@gmail.com>
* fix PaymentSplitter docs wording
* update solidity-docgen
* add missing ERC20 contracts
* update solidity-docgen
* trigger deploy with cleared cache
* update solidity-docgen
* update openzeppelin-docsite
* remove travis docs setup
* update openzeppelin-docsite
* switch to published solidity-docgen
* Update PaymentSplitter.sol
* add back private function docs
* add non-zero address requirement
* add comprehensive contract-level docs
* use capital E for Ether
* 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.
* 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.
* 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.
* Refactor Counter to support increment and decrement.
* Move Counter out of drafts.
* Refactor ERC721 to use Counter.
* Rollback Counter returning the current value in increment and decrement.
* Update test/drafts/Counter.test.js
Co-Authored-By: nventuro <nicolas.venturo@gmail.com>
* Improve Counter documentation.
* Move Counter.test to utils.
* Move back Counter to drafts.
* Adding solhint, working on style fixes.
* Upgraded to solhint 1.5.0.
* Removed all references to Solium
* Updated mocks to make the pass the new linter rules.
* Reformatted the .solhint.json file a bit.
* Removed Solium configuration files.
* Remove Solium dependency.
* Add comment explaing disabled time rule in TokenVesting.
* Revert to the old (ugly?) style.
* Revert SignatureBouncerMock style.
* Fix ERC165InterfacesSupported interface.
* Now compiling in a separate directory using truffle 5.
* Ported to 0.5.1, now compiling using 0.5.1.
* test now also compiles using the truffle 5 hack.
* Downgraded to 0.5.0.
* Sorted scripts.
* Cleaned up the compile script a bit.
* signed safe math
* fix lint errors
* refactor overflow checks and add descriptions
* remove incorrect description
* add test for reversed arguments in multiplication test
* fix power operator
* improve multiplication test descriptions
* Update SafeMath.test.js
* add feature to changelog
* Added PausableCrowdsale contract
* Changed inheritance order to prevent "Linearization of inheritance graph impossible" error
* Updated mock PausableCrowdsaleImpl to new constructor syntax
* Broke function definition to multiple lines
Comply with new max line length
* Rename events to past-tense in PausableCrowdsale test
* Removed should.be.fullfilled from PausableCrowdsale tests
* Change import assertRevert to require in PausableCrowdsale tests
* Remove dependency on chai-as-promised and added BigNumber support in PausableCrowdsale tests
* reindent solidity with 4 spaces
* add missing view modifier in _preValidatePurchase
* convert assertRevert to new shoulFail helper
* add new setup helper
* use expectEvent
* convert to assert to chai should style
* add description to beforeEach blocks
* extract common step to beforeEach
* improve documentation
* revert inheritance error
* move PausableCrowdsale into crowdsale/validation
* make documentation more specific
* put whitespace in line with convention
* improve test suite account names
* undo beforeEach descriptions
* simplify tests
* fix transaction senders to be the anyone account
* make transaction senders more explicit
* remove mocha only