Commit Graph

83 Commits

Author SHA1 Message Date
d555464c53 AccessManager: Avoid resetting nonce when consuming a scheduled operation (#4603)
Co-authored-by: Francisco <fg@frang.io>
2023-09-14 17:26:14 -03:00
6f1685c3eb Merge branch 'master' into audit/wip/2a-2b 2023-09-13 11:14:09 +02:00
9e09e0653a Fix flaky test in AccessManager (#4593) 2023-09-11 12:07:06 -03:00
d54f4ac4b7 Rename AccessManager groups to roles (#4580) 2023-09-07 20:58:50 -03:00
a05a529049 Rename AccessManager.relay to execute (#4578)
Co-authored-by: Francisco Giordano <fg@frang.io>
2023-09-07 10:08:45 +02:00
5a77c9995f Make isConsumingScheduleOp return bytes4 to mitigate clashes (#4575)
Co-authored-by: Francisco Giordano <fg@frang.io>
2023-09-06 20:54:44 -03:00
87f7a2cd42 Refactor Time library to use valueBefore/valueAfter (#4555)
Co-authored-by: Francisco <fg@frang.io>
2023-09-05 23:19:21 -03:00
bb7ca7d151 Prevent setting address(0) as the initialAdmin in AccessManager (#4570)
Co-authored-by: Francisco <fg@frang.io>
2023-09-05 18:47:05 -03:00
ff9d089dad Add a boolean to AccessManager.GrantGroup (#4569) 2023-09-05 11:50:56 -03:00
33cab7cd25 AccessManager: Remove classes (#4562) 2023-09-05 11:49:54 -03:00
e7ba2f7784 Move beneficiary zero address check to Ownable (#4531)
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
Co-authored-by: Francisco <fg@frang.io>
2023-09-04 20:17:16 +00:00
9d2adccf87 Add a minimum delay on all admin update operations (#4557)
Co-authored-by: Francisco <fg@frang.io>
2023-09-04 13:47:51 -03:00
b5a3e693e7 Improve AccessManager (#4520) 2023-08-08 03:22:59 -03:00
9bb8008c23 Access Manager (#4416)
Co-authored-by: Ernesto García <ernestognw@gmail.com>
Co-authored-by: Francisco Giordano <fg@frang.io>
2023-08-07 01:57:10 -03:00
1169bb1e51 Merge branch 'master' into feat/access-manager 2023-08-07 01:28:11 -03:00
5ae630684a Add a bool return to _grantRole and _revokeRole (#4241)
Co-authored-by: Ernesto García <ernestognw@gmail.com>
2023-08-01 13:58:47 +02:00
9cf873ea14 Change access folder structure (#4359)
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
Co-authored-by: Francisco <fg@frang.io>
2023-07-13 18:54:22 -03:00
d6a8b2ccd7 Fix details AccessControl-test (#4391) 2023-06-29 13:41:44 -03:00
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
a522187b50 Implement suggestions from audit of AccessManager (#4178)
Co-authored-by: Francisco Giordano <fg@frang.io>
2023-04-22 15:40:49 -03:00
7f5e91062e Merge branch 'master' into feat/access-manager 2023-03-26 14:33:49 -03: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
fa112be682 Add AccessManager contracts (#4121)
Co-authored-by: Hadrien Croubois <hadrien.croubois@gmail.com>
Co-authored-by: Ernesto García <ernestognw@gmail.com>
2023-03-24 19:37:08 -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