b425a72240
Replace revert strings with custom errors ( #4261 )
...
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com >
Co-authored-by: Francisco <fg@frang.io >
2023-06-12 23:41:52 +00:00
13d5e0466a
Make Ownable's initial owner explicit ( #4267 )
...
Co-authored-by: Ernesto García <ernestognw@gmail.com >
2023-05-23 18:26:43 -03:00
0f10efe232
Remove code in preparation for v5.0 ( #4258 )
...
Co-authored-by: Ernesto García <ernestognw@gmail.com >
Co-authored-by: Francisco <fg@frang.io >
2023-05-19 22:48:05 +02:00
3ec4307c8a
Fix bug allowing anyone to cancel an admin renounce ( #4238 )
...
Co-authored-by: Francisco Giordano <fg@frang.io >
2023-05-11 17:17:06 +00:00
3e1b25a5cf
Clean up pending admin schedule on renounce in DefaultAdminRules ( #4230 )
2023-05-10 20:08:05 +00:00
72ed4ca67a
Ensure AccessControlDefaultAdminRules's initialDefaultAdmin is non-zero ( #4220 )
...
Co-authored-by: Ernesto García <ernestognw@gmail.com >
2023-05-05 16:31:23 -03:00
d23f818a59
Fix AccessControlDefaultAdminRules admin consistency ( #4177 )
...
Co-authored-by: Francisco <fg@frang.io >
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com >
2023-04-28 15:09:58 +02:00
ca822213f2
Make AccessControlDefaultAdminRules delay configurable ( #4079 )
...
Co-authored-by: Francisco <fg@frang.io >
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com >
2023-03-26 14:23:13 -03:00
dad73159df
Add AccessControlDefaultAdminRules ( #4009 )
...
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com >
Co-authored-by: Francisco <fg@frang.io >
2023-02-24 21:48:08 +00:00
a28aafdc85
Use Prettier for JS files ( #3913 )
...
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com >
2023-01-04 15:03:40 +01:00
c1d9da4052
Use hardhat-exposed to reduce the need for mocks ( #3666 )
...
Co-authored-by: Francisco <fg@frang.io >
2023-01-03 14:38:13 +00:00
2336bd3e8e
Simplify ESLint config ( #3903 )
2022-12-29 17:08:12 -03:00
1f0e7cdf04
Add Ownable2Step extension with 2-step transfer ( #3620 )
...
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com >
Co-authored-by: Francisco <frangio.1@gmail.com >
2022-09-01 15:46:44 +00:00
668a648bc6
Add utilities for CrossChain messaging ( #3183 )
...
Co-authored-by: Francisco Giordano <frangio.1@gmail.com >
2022-03-30 11:41:04 -03:00
e0a2b195e4
Add modifier & internal function with standard revert message in AccessControl ( #2609 )
...
Co-authored-by: Francisco Giordano <frangio.1@gmail.com >
2021-04-16 12:15:09 -03:00
7adf0d88a0
Fix AccessControlEnumerable not tracking renounceRole ( #2572 )
...
* Fix AccessControlEnumerable not tracking renounceRole
* Updated changelog
2021-03-08 13:44:20 +01:00
29ffe6f426
Add ERC165 interface detection to AccessControl ( #2562 )
...
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com >
2021-03-04 18:50:12 -03:00
24a0bc23cf
Reorganize the repo structure ( #2503 )
...
Co-authored-by: Francisco Giordano <frangio.1@gmail.com >
2021-02-22 16:44:16 +00:00
e341bdc1b7
Remove enumerable from AccessControl and add AccessControlEnumerable extension ( #2512 )
...
Co-authored-by: Francisco Giordano <frangio.1@gmail.com >
2021-02-19 17:36:56 +00:00
f06738828b
Migrate to Hardhat ( #2397 )
2020-10-28 17:03:05 -03:00
7f3eee750a
Add TimelockController ( #2354 )
...
Co-authored-by: Francisco Giordano <frangio.1@gmail.com >
2020-09-17 16:16:05 -03:00
ace35fdeda
Update all dependencies transitively ( #2363 )
2020-09-16 12:14:53 -03:00
0b489f4d79
Improve test descriptions #1157 ( #2334 )
...
Co-authored-by: Paolo Dibitonto <p.dibitonto@almaviva.it >
Co-authored-by: Francisco Giordano <frangio.1@gmail.com >
2020-08-25 14:58:45 -03:00
ccfd370b89
Update Test Helpers to 0.5.6 ( #2261 )
...
* update test-helpers to 0.5.6-rc.0
* remove comment that no longer applies
* fix uses of expectEvent.notEmitted
* remove mocha only
* update to final version
* Update test/token/ERC777/ERC777.test.js
Co-authored-by: Nicolás Venturo <nicolas.venturo@gmail.com >
Co-authored-by: Nicolás Venturo <nicolas.venturo@gmail.com >
2020-06-02 17:00:56 -03:00
4cbcaf35e4
Fix linter errors
2020-05-08 12:57:43 -03:00
73baf0b635
Feature/Adding RoleAdminChanged event in AccessControl ( #2214 )
...
* Emit new event RoleAdminChanged
* Adding new RoleAdminChanged event in Tests
* Update suggested comments on new Event
Co-authored-by: Nicolás Venturo <nicolas.venturo@gmail.com >
* Adding PreviousAdminRole to event
* Update AccessControl.test.js
* Update CHANGELOG.md
Co-authored-by: Nicolás Venturo <nicolas.venturo@gmail.com >
2020-05-06 17:21:39 -03:00
c7705712ba
Remove in-constructor requirements ( #2195 )
...
* Remove isConstructor requirement from _setupRole
* Remove isConstructor requirement from _setupDecimals
* Update contracts/access/AccessControl.sol
Co-Authored-By: Francisco Giordano <frangio.1@gmail.com >
Co-authored-by: Francisco Giordano <frangio.1@gmail.com >
2020-04-17 17:00:30 -03:00
5b5d91c9d4
Remove 'external' functions ( #2162 )
...
* Remove _grantRole and _revokeRole, replace with _setupRole
* Make all external AccessControl functions public
* Remove Ownable._transferOwnership
* Rename ERC721's _safeTransferFrom and _transferFrom to _safeTransfer and _transfer
* Make all ERC721 external functions public
* Make all miscelaneous external functions public instead
* Add changelog entry
* Move calldata arguments to memory
* Update contracts/access/AccessControl.sol
Co-Authored-By: Francisco Giordano <frangio.1@gmail.com >
* Restrict setupRole to the constructor
* Replace isConstructor for !isContract
Co-authored-by: Francisco Giordano <frangio.1@gmail.com >
2020-04-02 15:29:58 -03:00
c173392e15
Revamped Access Control ( #2112 )
...
* Remove Roles
* Add AccessControl and tests
* Removed IAccessControl
* Add RoleGranted and RoleRevoked events
* Make roles grantable and revokable regardless of their previous status
* Fix typo
* Add documentation
* Cleanup tests
* Add enumeration tests
* Add _setRoleAdmin tests
* Fix lint error
* Fix AccessControl link in docs
* WIP on access control guide
* Rename getRoleMembersCount
* Add tests for new role admin
* Make AccessControl GSN compatible
* Update access control guide
* Rename admin to adminRole
* Rename roleIds to roles
* Add 'operator' to RoleGranted and RoleRevoked events.
* Only emit events if the roles were not previously granted/revoked
* Uncomment expectEvent.not tests
* Rename operator to sender
* Add changelog entry
2020-03-16 17:41:24 -03:00
8176a901a9
Cleanup of Ownership directory ( #2120 )
...
* Remove Ownable.isOwner.
* Remove ownable behavior from tests
* Make Escrow use Ownable instead of Secondary
* Migrate GSNRecipientERC20Fee to Ownable
* Remove Secondary
* Move Ownable to access directory
* Remove mentions of Secondary
* Add changelog entry
* Move Ownable tests to access
* Remove unused mock
2020-03-16 15:12:29 -03:00
5dfe7215a9
Migrate Contracts to Solidity v0.6 ( #2080 )
...
* Initial migration to Solidity 0.6.x - v3.0 first steps (#2063 )
* Initial migration, missing GSN, 721, 777 and Crowdsales.
* Add _beforeTokenOperation and _afterTokenOperation.
* Add documentation for hooks.
* Add hooks doc
* Add missing drafts
* Add back ERC721 with hooks
* Bring back ERC777
* Notes on hooks
* Bring back GSN
* Make functions virtual
* Make GSN overrides explicit
* Fix ERC20Pausable tests
* Remove virtual from some view functions
* Update linter
* Delete examples
* Remove unnecessary virtual
* Remove roles from Pausable
* Remove roles
* Remove users of roles
* Adapt ERC20 tests
* Fix ERC721 tests
* Add all ERC721 hooks
* Add ERC777 hooks
* Fix remaining tests
* Bump compiler version
* Move 721BurnableMock into mocks directory
* Remove _before hooks
* Fix tests
* Upgrade linter
* Put modifiers last
* Remove _beforeTokenApproval and _beforeOperatorApproval hooks
2020-02-14 11:12:32 -03:00
5f92adc2e7
Migrate from truffle to test-environment ( #2007 )
...
* Sketch
* Migrate all tests to test-env
* Finish migration to test-env
* Add config
* Work on GSN tests
* Migrate to newer test-env version and loader syntax
* Add GSN setup
* Finish test-env migration
* Setup coverage using test-env
* Migrate to npm package
* Fix package.json
* Add compile step to CI
* Add comment on coverage setup
* Remove dependency on @truffle/contract
* Fix package-lock merge
* Fix linter errors
* Upgrade test-environment, depend locally on ganche-coverage
* Improve coverage script
* Improve sign.js API
* Move accounts destructuring to describe block
* Switch to prebuilt ethereumjs-vm package
* Upgrade test-enviroment version
* use workspace in circleci config
* remove unnecessary npx
2019-11-28 15:46:42 -03:00
3274d9db00
Upgrade to @openzeppelin/test-helpers@0.5.1 ( #1942 )
2019-10-10 19:38:23 -03:00
489d2e85f1
Replace chai.should with chai.expect ( #1780 )
...
* changed exxpect to expect wherever applicable
* Merged with latest branch
* Updated merkleTree helper to latest master branch
* Made linting fixes
* Fix for test build
* updated for Coverage
* Updated Address.test.js
* Undo package-lock changes.
2019-06-24 17:40:05 -03:00
a71c3bce32
Update test-helpers to v0.4.0. ( #1770 )
2019-05-24 13:36:15 -03:00
3682c6575c
Added message string for require() ( #1704 )
...
* Error handling in ERC20 and ERC721
* Added message string for require.
* Fixed solhint errors.
* Updated PR as per issue #1709
* changes as per #1709 and openzeppelin forum.
* Changes in require statement
* Changes in require statement
* build pipeline fix
* Changes as per @nventuro's comment.
* Update revert reason strings.
* Fianal update of revert reason strings.
* WIP: Updating reason strings in test cases
* WIP: Added changes to ERC20 and ERC721
* Fixes linting errors in *.tes.js files
* Achieved 100% code coverage
* Updated the test cases with shouldFail.reverting.withMessage()
* Fix package-lock.
* address review comments
* fix linter issues
* fix remaining revert reasons
2019-04-24 11:17:08 -03:00
19c705d928
Fix/rename anyone account #1357 ( #1718 )
...
* replacing all instances of from: anyone with from: other
* replacing all instances of from: anyone with from: other
* replacing all instances of from: anyone with from: other
* changing anyone to other
* changing anyone to other
2019-04-11 12:34:10 -03:00
1ebeef7ffd
Remove unnecessary SLOAD. ( #1715 )
2019-04-10 12:29:58 -03:00
96432bf28e
Renamed test/behavior to test/behaviors.
2019-01-18 15:44:59 -03:00
6a658f2ac8
Move PublicRole.behavior to behavior directory.
2019-01-17 20:26:56 -03:00
3e82db2f6f
Migration to truffle 5 (and web3 1.0 (and BN)) ( #1601 )
...
* Now compiling using truffle 5.
* Migrated some test files, missing BN scientific notation usage.
* Now using BN time values.
* Migrate ERC20 tests.
* Migrate all ERC20 tests.
* Migrate utils, payment and ownership tests.
* All tests save ERC721 migrated.
* Migrated ERC721 tests.
* Fix lint errors.
* Delete old test helpers.
* Fix remaining crowdsale tests.
* Fix signature bouncer tests.
* Update how constants is used.
* Compile script pre-removes the build dir.
* Fix SafeMath tests.
* Revert "Compile script pre-removes the build dir."
This reverts commit 247e745113 .
* Fix linter errors.
* Upgrade openzeppelin-test-helpers dependency.
* Update openzeppelin-test-helpers dependency.
* Define math constants globally.
* Remove unnecessary ether unit.
* Roll back reduced ether amounts in tests.
* Remove unnecessary toNumber conversions.
* Delete compile script.
* Fixed failing test.
2019-01-14 19:11:55 -03:00
35d70397b6
Rename WhitelisterRole to WhitelistAdminRole. ( #1589 )
...
* Rename WhitelisterRole to WhitelistAdminRole.
* Update WhitelistAdmin changelog entry.
2019-01-04 15:32:24 -03:00
7142e25e78
Add back WhitelistedCrowdsale ( #1525 )
...
* Added WhitelisterRole.
* Added WhitelisteeRole and WhitelistedCrowdsale.
* Added WhitelistedCrowdsale tests.
* Whitelisters can now remove Whitelistees.
* PublicRole.behavior now supports a manager account, added Whitelistee tests.
* Rephrased tests, added test for whitelistees doing invalid purchases.
* Fixed linter error.
* Fixed typos
Co-Authored-By: nventuro <nicolas.venturo@gmail.com >
* Working around JS quirks
Co-Authored-By: nventuro <nicolas.venturo@gmail.com >
* Update PublicRole.behavior.js
* Renamed WhitelisteeRole to WhitelistedRole.
* Renamed WhitelistedCrowdsale to WhitelistCrowdsale.
* Now using the new test helper.
* Added basic documentation.
2018-12-12 14:46:07 -03:00
70fd243e3b
Test setup helper added ( #1482 )
...
* signing prefix added
* Minor improvement
* Tests changed
* Successfully tested
* Minor improvements
* Minor improvements
* Revert "Dangling commas are now required. (#1359 )"
This reverts commit a6889776f4 .
* updates
* fixes #1404
* approve failing test
* suggested changes done
* ISafeERC20 removed
* conflict fixes
* fixes #1205
* minor change
* suggested changes
* reviewed changes
* final update
2018-12-07 13:32:48 -03:00
c2de8ffd14
Now testing events in constructors! ( #1511 )
...
* Added inTransaction tests.
* Added expectEvent.inConstructor.
* Changed inTransaction, removed decodeLogs.
* Flipped comparison to improve the error message.
* Improved expectEvent tests.
* Migrated tests to use expectEvent.
* Added roles constructor tests.
* Fixed linter errors.
* Made lodash a dev dependency.
* Added more inLogs tests.
* Update expectEvent.test.js
* Removed lodash.
* Moved role constructor tests to public role behavior.
* Revert "Flipped comparison to improve the error message."
This reverts commit 438c57833d .
* Replaced chai-as-promised with shouldFail.
2018-11-27 17:56:26 -03:00
3bd30f7382
Roles.add and remove now require pre-conditions on the account. ( #1421 )
2018-10-16 17:20:33 -03:00
b0da0fded0
Replaced assertJump, assertRevert and expectThrow with shouldFail. ( #1363 )
...
* Replaced assertJump, assertRevert and expectThrow with shouldFail.
* Fixed linter errors.
* Fixed typo.
* Made the helpers async.
2018-10-09 16:23:55 -03:00
58a42443df
added a test helper with common constants ( #1400 )
...
* signing prefix added
* Minor improvement
* Tests changed
* Successfully tested
* Minor improvements
* Minor improvements
* Revert "Dangling commas are now required. (#1359 )"
This reverts commit a6889776f4 .
* updates
* fixes #1206
2018-10-09 15:46:09 -03:00
21198bf1c1
Roles now emit events in construction and when renouncing. ( #1329 )
...
* release candidate v2.0.0-rc.1
* fix linter error
(cherry picked from commit c12a1c6898 )
* Roles now emit events in construction and when renouncing.
2018-09-26 11:36:41 -03:00
6cae0f458d
Role library now requires non-zero addresses. ( #1303 )
...
* The role library now requires non-zero addresses.
* Fixed SignatureBouncer checks with null address.
* change ternary operator for or operator
* adapt to new variable name convention
* Update Roles.sol
2018-09-07 13:32:12 -03:00