Commit f05d29a1 by github-actions

Transpile d438fa08

parent 261747d4
......@@ -4,7 +4,7 @@
* Enumerables: Improve gas cost of removal in `EnumerableSet` and `EnumerableMap`.
* Enumerables: Improve gas cost of lookup in `EnumerableSet` and `EnumerableMap`.
## Unreleased
## 4.1.0 (2021-04-29)
* `IERC20Metadata`: add a new extended interface that includes the optional `name()`, `symbol()` and `decimals()` functions. ([#2561](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/2561))
* `ERC777`: make reception acquirement optional in `_mint`. ([#2552](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/2552))
......
= Access
= Access Control
[.readme-notice]
NOTE: This document is better viewed at https://docs.openzeppelin.com/contracts/api/access
......
{
"name": "@openzeppelin/contracts-upgradeable",
"description": "Secure Smart Contract library for Solidity",
"version": "4.0.0",
"version": "4.1.0",
"files": [
"**/*.sol",
"/build/contracts/*.json",
......
......@@ -58,10 +58,6 @@ By default, the upgrade functionality included in {UUPSUpgradeable} contains a s
{{ERC1967Upgrade}}
== UUPS
{{UUPSUpgradeable}}
== Transparent Proxy
{{TransparentUpgradeableProxy}}
......@@ -83,3 +79,5 @@ By default, the upgrade functionality included in {UUPSUpgradeable} contains a s
== Utils
{{Initializable}}
{{UUPSUpgradeable}}
......@@ -6,11 +6,14 @@ import "../ERC1967/ERC1967UpgradeUpgradeable.sol";
import "./Initializable.sol";
/**
* @dev Base contract for building openzeppelin-upgrades compatible implementations for the {ERC1967Proxy}. It includes
* publicly available upgrade functions that are called by the plugin and by the secure upgrade mechanism to verify
* continuation of the upgradability.
* @dev An upgradeability mechanism designed for UUPS proxies. The functions included here can perform an upgrade of an
* {ERC1967Proxy}, when this contract is set as the implementation behind such a proxy.
*
* The {_authorizeUpgrade} function MUST be overridden to include access restriction to the upgrade mechanism.
* A security mechanism ensures that an upgrade does not turn off upgradeability accidentally, although this risk is
* reinstated if the upgrade retains upgradeability but removes the security mechanism, e.g. by replacing
* `UUPSUpgradeable` with a custom implementation of upgrades.
*
* The {_authorizeUpgrade} function must be overridden to include access restriction to the upgrade mechanism.
*
* _Available since v4.1._
*/
......@@ -22,16 +25,41 @@ abstract contract UUPSUpgradeable is Initializable, ERC1967UpgradeUpgradeable {
function __UUPSUpgradeable_init_unchained() internal initializer {
}
/**
* @dev Upgrade the implementation of the proxy to `newImplementation`.
*
* Calls {_authorizeUpgrade}.
*
* Emits an {Upgraded} event.
*/
function upgradeTo(address newImplementation) external virtual {
_authorizeUpgrade(newImplementation);
_upgradeToAndCallSecure(newImplementation, bytes(""), false);
}
/**
* @dev Upgrade the implementation of the proxy to `newImplementation`, and subsequently execute the function call
* encoded in `data`.
*
* Calls {_authorizeUpgrade}.
*
* Emits an {Upgraded} event.
*/
function upgradeToAndCall(address newImplementation, bytes memory data) external payable virtual {
_authorizeUpgrade(newImplementation);
_upgradeToAndCallSecure(newImplementation, data, true);
}
/**
* @dev Function that should revert when `msg.sender` is not authorized to upgrade the contract. Called by
* {upgradeTo} and {upgradeToAndCall}.
*
* Normally, this function will use an xref:access.adoc[access control] modifier such as {Ownable-onlyOwner}.
*
* ```solidity
* function _authorizeUpgrade(address) internal override onlyOwner {}
* ```
*/
function _authorizeUpgrade(address newImplementation) internal virtual;
uint256[50] private __gap;
}
......@@ -6,6 +6,8 @@ This variant is available as a separate package called `@openzeppelin/contracts-
It follows all of the rules for xref:upgrades-plugins::writing-upgradeable.adoc[Writing Upgradeable Contracts]: constructors are replaced by initializer functions, state variables are initialized in initializer functions, and we additionally check for storage incompatibilities across minor versions.
TIP: OpenZeppelin provides a full suite of tools for deploying and securing upgradeable smart contracts. xref:openzeppelin::upgrades.adoc[Check out the full list of resources].
== Overview
=== Installation
......
{
"name": "openzeppelin-solidity",
"version": "4.0.0",
"version": "4.1.0",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "openzeppelin-solidity",
"version": "4.0.0",
"version": "4.1.0",
"license": "MIT",
"bin": {
"openzeppelin-contracts-migrate-imports": "scripts/migrate-imports.js"
......@@ -54,18 +54,18 @@
}
},
"node_modules/@babel/helper-validator-identifier": {
"version": "7.12.11",
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz",
"integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==",
"version": "7.14.0",
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.0.tgz",
"integrity": "sha512-V3ts7zMSu5lfiwWDVWzRDGIN+lnCEUdaXgtVHJgLb1rGaA6jMrtB9EmE7L18foXJIE8Un/A/h6NJfGQp/e1J4A==",
"dev": true
},
"node_modules/@babel/highlight": {
"version": "7.13.10",
"resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.13.10.tgz",
"integrity": "sha512-5aPpe5XQPzflQrFwL1/QoeHkP2MsA4JCntcXHRhEsdsfPVkvPi2w7Qix4iV7t5S/oC9OodGrggd8aco1g3SZFg==",
"version": "7.14.0",
"resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.0.tgz",
"integrity": "sha512-YSCOwxvTYEIMSGaBQb5kDDsCopDdiUGsqpatp3fOlI4+2HQSkTmEVWnVuySdAC5EWCqSWWTv0ib63RjR7dTBdg==",
"dev": true,
"dependencies": {
"@babel/helper-validator-identifier": "^7.12.11",
"@babel/helper-validator-identifier": "^7.14.0",
"chalk": "^2.0.0",
"js-tokens": "^4.0.0"
}
......@@ -357,9 +357,9 @@
"dev": true
},
"node_modules/@ethersproject/abi": {
"version": "5.1.1",
"resolved": "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.1.1.tgz",
"integrity": "sha512-UNmhRL4ngm1nCWvhJWRd55PvP1JWojGD4BR63JxyiiWZQAszYzaHHeYdRcj+NY3S0kV6SmAS2dZWSBOZPnXbSw==",
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.1.2.tgz",
"integrity": "sha512-uMhoQVPX0UtfzTpekYQSEUcJGDgsJ25ifz+SV6PDETWaUFhcR8RNgb1QPTASP13inW8r6iy0/Xdq9D5hK2pNvA==",
"dev": true,
"funding": [
{
......@@ -1682,9 +1682,9 @@
}
},
"node_modules/@openzeppelin/test-helpers": {
"version": "0.5.10",
"resolved": "https://registry.npmjs.org/@openzeppelin/test-helpers/-/test-helpers-0.5.10.tgz",
"integrity": "sha512-agXr5Rn/q0MCDaU0ioYMGQVjY32Ln3Ae3cyQKtESuKdDoEZ7g3Y7x4eUbT779OE9nQ+xQCytmVqjKvZvajURug==",
"version": "0.5.11",
"resolved": "https://registry.npmjs.org/@openzeppelin/test-helpers/-/test-helpers-0.5.11.tgz",
"integrity": "sha512-HkFpCjtTD8dk+wdYhsT07YbMGCE+Z4Wp5sBKXvPDF3Lynoc0H2KqZgCWV+qr2YZ0WW1oX/sXkKFrrKJ0caBTjw==",
"dev": true,
"dependencies": {
"@openzeppelin/contract-loader": "^0.6.2",
......@@ -2331,9 +2331,9 @@
}
},
"node_modules/@types/chai": {
"version": "4.2.16",
"resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.2.16.tgz",
"integrity": "sha512-vI5iOAsez9+roLS3M3+Xx7w+WRuDtSmF8bQkrbcIJ2sC1PcDgVoA0WGpa+bIrJ+y8zqY2oi//fUctkxtIcXJCw==",
"version": "4.2.17",
"resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.2.17.tgz",
"integrity": "sha512-LaiwWNnYuL8xJlQcE91QB2JoswWZckq9A4b+nMPq8dt8AP96727Nb3X4e74u+E3tm4NLTILNI9MYFsyVc30wSA==",
"dev": true
},
"node_modules/@types/concat-stream": {
......@@ -2393,9 +2393,9 @@
"dev": true
},
"node_modules/@types/node": {
"version": "14.14.41",
"resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.41.tgz",
"integrity": "sha512-dueRKfaJL4RTtSa7bWeTK1M+VH+Gns73oCgzvYfHZywRCoPSd8EkXBL0mZ9unPTveBn+D9phZBaxuzpwjWkW0g==",
"version": "15.0.1",
"resolved": "https://registry.npmjs.org/@types/node/-/node-15.0.1.tgz",
"integrity": "sha512-TMkXt0Ck1y0KKsGr9gJtWGjttxlZnnvDtphxUOSd0bfaR6Q1jle+sPvrzNR1urqYTWMinoKvjKfXUGsumaO1PA==",
"dev": true
},
"node_modules/@types/pbkdf2": {
......@@ -4273,9 +4273,9 @@
}
},
"node_modules/core-js-pure": {
"version": "3.11.0",
"resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.11.0.tgz",
"integrity": "sha512-PxEiQGjzC+5qbvE7ZIs5Zn6BynNeZO9zHhrrWmkRff2SZLq0CE/H5LuZOJHhmOQ8L38+eMzEHAmPYWrUtDfuDQ==",
"version": "3.11.1",
"resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.11.1.tgz",
"integrity": "sha512-2JukQi8HgAOCD5CSimxWWXVrUBoA9Br796uIA5Z06bIjt7PBBI19ircFaAxplgE1mJf3x2BY6MkT/HWA/UryPg==",
"dev": true,
"hasInstallScript": true,
"funding": {
......@@ -5683,9 +5683,9 @@
}
},
"node_modules/eth-gas-reporter/node_modules/@solidity-parser/parser": {
"version": "0.12.1",
"resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.12.1.tgz",
"integrity": "sha512-ikxVpwskNxEp2fvYS1BdRImnevHmM97zdPFBa1cVtjtNpoqCm/EmljATTZk0s9G/zsN5ZbPf9OAIAW4gbBJiRA==",
"version": "0.12.2",
"resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.12.2.tgz",
"integrity": "sha512-d7VS7PxgMosm5NyaiyDJRNID5pK4AWj1l64Dbz0147hJgy5k2C0/ZiKK/9u5c5K+HRUVHmp+RMvGEjGh84oA5Q==",
"dev": true
},
"node_modules/eth-gas-reporter/node_modules/@types/bn.js": {
......@@ -6351,12 +6351,14 @@
"version": "1.5.2",
"resolved": "https://registry.npmjs.org/ethereumjs-common/-/ethereumjs-common-1.5.2.tgz",
"integrity": "sha512-hTfZjwGX52GS2jcVO6E2sx4YuFnf0Fhp5ylo4pEPhEffNln7vS59Hr5sLnp3/QCazFLluuBZ+FZ6J5HTp0EqCA==",
"deprecated": "New package name format for new versions: @ethereumjs/common. Please update.",
"dev": true
},
"node_modules/ethereumjs-tx": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/ethereumjs-tx/-/ethereumjs-tx-2.1.2.tgz",
"integrity": "sha512-zZEK1onCeiORb0wyCXUvg94Ve5It/K6GD1K+26KfFKodiBiS6d9lfCXlUKGBBdQ+bv7Day+JK0tj1K+BeNFRAw==",
"deprecated": "New package name format for new versions: @ethereumjs/tx. Please update.",
"dev": true,
"dependencies": {
"ethereumjs-common": "^1.5.0",
......@@ -7224,104 +7226,7 @@
"bundleDependencies": [
"source-map-support",
"yargs",
"ethereumjs-util",
"@types/bn.js",
"@types/node",
"@types/pbkdf2",
"@types/secp256k1",
"ansi-regex",
"ansi-styles",
"base-x",
"blakejs",
"bn.js",
"brorand",
"browserify-aes",
"bs58",
"bs58check",
"buffer-from",
"buffer-xor",
"camelcase",
"cipher-base",
"cliui",
"color-convert",
"color-name",
"create-hash",
"create-hmac",
"cross-spawn",
"decamelize",
"elliptic",
"emoji-regex",
"end-of-stream",
"ethereum-cryptography",
"ethjs-util",
"evp_bytestokey",
"execa",
"find-up",
"get-caller-file",
"get-stream",
"hash-base",
"hash.js",
"hmac-drbg",
"inherits",
"invert-kv",
"is-fullwidth-code-point",
"is-hex-prefixed",
"is-stream",
"isexe",
"keccak",
"lcid",
"locate-path",
"map-age-cleaner",
"md5.js",
"mem",
"mimic-fn",
"minimalistic-assert",
"minimalistic-crypto-utils",
"nice-try",
"node-addon-api",
"node-gyp-build",
"npm-run-path",
"once",
"os-locale",
"p-defer",
"p-finally",
"p-is-promise",
"p-limit",
"p-locate",
"p-try",
"path-exists",
"path-key",
"pbkdf2",
"pump",
"randombytes",
"readable-stream",
"require-directory",
"require-main-filename",
"ripemd160",
"rlp",
"safe-buffer",
"scrypt-js",
"secp256k1",
"semver",
"set-blocking",
"setimmediate",
"sha.js",
"shebang-command",
"shebang-regex",
"signal-exit",
"source-map",
"string_decoder",
"string-width",
"strip-ansi",
"strip-eof",
"strip-hex-prefix",
"util-deprecate",
"which",
"which-module",
"wrap-ansi",
"wrappy",
"y18n",
"yargs-parser"
"ethereumjs-util"
],
"dev": true,
"dependencies": {
......@@ -9729,9 +9634,9 @@
}
},
"node_modules/http-response-object/node_modules/@types/node": {
"version": "10.17.58",
"resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.58.tgz",
"integrity": "sha512-Dn5RBxLohjdHFj17dVVw3rtrZAeXeWg+LQfvxDIW/fdPkSiuQk7h3frKMYtsQhtIW42wkErDcy9UMVxhGW4O7w==",
"version": "10.17.59",
"resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.59.tgz",
"integrity": "sha512-7Uc8IRrL8yZz5ti45RaFxpbU8TxlzdC3HvxV+hOWo1EyLsuKv/w7y0n+TwZzwL3vdx3oZ2k3ubxPq131hNtXyg==",
"dev": true
},
"node_modules/http-signature": {
......@@ -14542,9 +14447,9 @@
}
},
"node_modules/solhint/node_modules/@solidity-parser/parser": {
"version": "0.12.1",
"resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.12.1.tgz",
"integrity": "sha512-ikxVpwskNxEp2fvYS1BdRImnevHmM97zdPFBa1cVtjtNpoqCm/EmljATTZk0s9G/zsN5ZbPf9OAIAW4gbBJiRA==",
"version": "0.12.2",
"resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.12.2.tgz",
"integrity": "sha512-d7VS7PxgMosm5NyaiyDJRNID5pK4AWj1l64Dbz0147hJgy5k2C0/ZiKK/9u5c5K+HRUVHmp+RMvGEjGh84oA5Q==",
"dev": true
},
"node_modules/solhint/node_modules/acorn": {
......@@ -14895,9 +14800,9 @@
}
},
"node_modules/solidity-coverage/node_modules/@solidity-parser/parser": {
"version": "0.12.1",
"resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.12.1.tgz",
"integrity": "sha512-ikxVpwskNxEp2fvYS1BdRImnevHmM97zdPFBa1cVtjtNpoqCm/EmljATTZk0s9G/zsN5ZbPf9OAIAW4gbBJiRA==",
"version": "0.12.2",
"resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.12.2.tgz",
"integrity": "sha512-d7VS7PxgMosm5NyaiyDJRNID5pK4AWj1l64Dbz0147hJgy5k2C0/ZiKK/9u5c5K+HRUVHmp+RMvGEjGh84oA5Q==",
"dev": true
},
"node_modules/solidity-coverage/node_modules/ansi-styles": {
......@@ -16228,9 +16133,9 @@
}
},
"node_modules/uglify-js": {
"version": "3.13.4",
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.13.4.tgz",
"integrity": "sha512-kv7fCkIXyQIilD5/yQy8O+uagsYIOt5cZvs890W40/e/rvjMSzJw81o9Bg0tkURxzZBROtDQhW2LFjOGoK3RZw==",
"version": "3.13.5",
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.13.5.tgz",
"integrity": "sha512-xtB8yEqIkn7zmOyS2zUNBsYCBRhDkvlNxMMY2smuJ/qA8NCHeQvKCF3i9Z4k8FJH4+PJvZRtMrPynfZ75+CSZw==",
"dev": true,
"optional": true,
"bin": {
......@@ -16574,9 +16479,9 @@
}
},
"node_modules/web3-bzz/node_modules/@types/node": {
"version": "12.20.10",
"resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.10.tgz",
"integrity": "sha512-TxCmnSSppKBBOzYzPR2BR25YlX5Oay8z2XGwFBInuA/Co0V9xJhLlW4kjbxKtgeNo3NOMbQP1A5Rc03y+XecPw==",
"version": "12.20.11",
"resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.11.tgz",
"integrity": "sha512-gema+apZ6qLQK7k7F0dGkGCWQYsL0qqKORWOQO6tq46q+x+1C0vbOiOqOwRVlh4RAdbQwV/j/ryr3u5NOG1fPQ==",
"dev": true
},
"node_modules/web3-bzz/node_modules/underscore": {
......@@ -16711,9 +16616,9 @@
}
},
"node_modules/web3-core/node_modules/@types/node": {
"version": "12.20.10",
"resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.10.tgz",
"integrity": "sha512-TxCmnSSppKBBOzYzPR2BR25YlX5Oay8z2XGwFBInuA/Co0V9xJhLlW4kjbxKtgeNo3NOMbQP1A5Rc03y+XecPw==",
"version": "12.20.11",
"resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.11.tgz",
"integrity": "sha512-gema+apZ6qLQK7k7F0dGkGCWQYsL0qqKORWOQO6tq46q+x+1C0vbOiOqOwRVlh4RAdbQwV/j/ryr3u5NOG1fPQ==",
"dev": true
},
"node_modules/web3-core/node_modules/bignumber.js": {
......@@ -16926,9 +16831,9 @@
}
},
"node_modules/web3-eth-personal/node_modules/@types/node": {
"version": "12.20.10",
"resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.10.tgz",
"integrity": "sha512-TxCmnSSppKBBOzYzPR2BR25YlX5Oay8z2XGwFBInuA/Co0V9xJhLlW4kjbxKtgeNo3NOMbQP1A5Rc03y+XecPw==",
"version": "12.20.11",
"resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.11.tgz",
"integrity": "sha512-gema+apZ6qLQK7k7F0dGkGCWQYsL0qqKORWOQO6tq46q+x+1C0vbOiOqOwRVlh4RAdbQwV/j/ryr3u5NOG1fPQ==",
"dev": true
},
"node_modules/web3-eth/node_modules/underscore": {
......@@ -17572,18 +17477,18 @@
}
},
"@babel/helper-validator-identifier": {
"version": "7.12.11",
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz",
"integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==",
"version": "7.14.0",
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.14.0.tgz",
"integrity": "sha512-V3ts7zMSu5lfiwWDVWzRDGIN+lnCEUdaXgtVHJgLb1rGaA6jMrtB9EmE7L18foXJIE8Un/A/h6NJfGQp/e1J4A==",
"dev": true
},
"@babel/highlight": {
"version": "7.13.10",
"resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.13.10.tgz",
"integrity": "sha512-5aPpe5XQPzflQrFwL1/QoeHkP2MsA4JCntcXHRhEsdsfPVkvPi2w7Qix4iV7t5S/oC9OodGrggd8aco1g3SZFg==",
"version": "7.14.0",
"resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.0.tgz",
"integrity": "sha512-YSCOwxvTYEIMSGaBQb5kDDsCopDdiUGsqpatp3fOlI4+2HQSkTmEVWnVuySdAC5EWCqSWWTv0ib63RjR7dTBdg==",
"dev": true,
"requires": {
"@babel/helper-validator-identifier": "^7.12.11",
"@babel/helper-validator-identifier": "^7.14.0",
"chalk": "^2.0.0",
"js-tokens": "^4.0.0"
},
......@@ -17855,9 +17760,9 @@
}
},
"@ethersproject/abi": {
"version": "5.1.1",
"resolved": "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.1.1.tgz",
"integrity": "sha512-UNmhRL4ngm1nCWvhJWRd55PvP1JWojGD4BR63JxyiiWZQAszYzaHHeYdRcj+NY3S0kV6SmAS2dZWSBOZPnXbSw==",
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.1.2.tgz",
"integrity": "sha512-uMhoQVPX0UtfzTpekYQSEUcJGDgsJ25ifz+SV6PDETWaUFhcR8RNgb1QPTASP13inW8r6iy0/Xdq9D5hK2pNvA==",
"dev": true,
"requires": {
"@ethersproject/address": "^5.1.0",
......@@ -18822,9 +18727,9 @@
}
},
"@openzeppelin/test-helpers": {
"version": "0.5.10",
"resolved": "https://registry.npmjs.org/@openzeppelin/test-helpers/-/test-helpers-0.5.10.tgz",
"integrity": "sha512-agXr5Rn/q0MCDaU0ioYMGQVjY32Ln3Ae3cyQKtESuKdDoEZ7g3Y7x4eUbT779OE9nQ+xQCytmVqjKvZvajURug==",
"version": "0.5.11",
"resolved": "https://registry.npmjs.org/@openzeppelin/test-helpers/-/test-helpers-0.5.11.tgz",
"integrity": "sha512-HkFpCjtTD8dk+wdYhsT07YbMGCE+Z4Wp5sBKXvPDF3Lynoc0H2KqZgCWV+qr2YZ0WW1oX/sXkKFrrKJ0caBTjw==",
"dev": true,
"requires": {
"@openzeppelin/contract-loader": "^0.6.2",
......@@ -19398,9 +19303,9 @@
}
},
"@types/chai": {
"version": "4.2.16",
"resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.2.16.tgz",
"integrity": "sha512-vI5iOAsez9+roLS3M3+Xx7w+WRuDtSmF8bQkrbcIJ2sC1PcDgVoA0WGpa+bIrJ+y8zqY2oi//fUctkxtIcXJCw==",
"version": "4.2.17",
"resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.2.17.tgz",
"integrity": "sha512-LaiwWNnYuL8xJlQcE91QB2JoswWZckq9A4b+nMPq8dt8AP96727Nb3X4e74u+E3tm4NLTILNI9MYFsyVc30wSA==",
"dev": true
},
"@types/concat-stream": {
......@@ -19460,9 +19365,9 @@
"dev": true
},
"@types/node": {
"version": "14.14.41",
"resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.41.tgz",
"integrity": "sha512-dueRKfaJL4RTtSa7bWeTK1M+VH+Gns73oCgzvYfHZywRCoPSd8EkXBL0mZ9unPTveBn+D9phZBaxuzpwjWkW0g==",
"version": "15.0.1",
"resolved": "https://registry.npmjs.org/@types/node/-/node-15.0.1.tgz",
"integrity": "sha512-TMkXt0Ck1y0KKsGr9gJtWGjttxlZnnvDtphxUOSd0bfaR6Q1jle+sPvrzNR1urqYTWMinoKvjKfXUGsumaO1PA==",
"dev": true
},
"@types/pbkdf2": {
......@@ -21011,9 +20916,9 @@
"dev": true
},
"core-js-pure": {
"version": "3.11.0",
"resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.11.0.tgz",
"integrity": "sha512-PxEiQGjzC+5qbvE7ZIs5Zn6BynNeZO9zHhrrWmkRff2SZLq0CE/H5LuZOJHhmOQ8L38+eMzEHAmPYWrUtDfuDQ==",
"version": "3.11.1",
"resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.11.1.tgz",
"integrity": "sha512-2JukQi8HgAOCD5CSimxWWXVrUBoA9Br796uIA5Z06bIjt7PBBI19ircFaAxplgE1mJf3x2BY6MkT/HWA/UryPg==",
"dev": true
},
"core-util-is": {
......@@ -22123,9 +22028,9 @@
},
"dependencies": {
"@solidity-parser/parser": {
"version": "0.12.1",
"resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.12.1.tgz",
"integrity": "sha512-ikxVpwskNxEp2fvYS1BdRImnevHmM97zdPFBa1cVtjtNpoqCm/EmljATTZk0s9G/zsN5ZbPf9OAIAW4gbBJiRA==",
"version": "0.12.2",
"resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.12.2.tgz",
"integrity": "sha512-d7VS7PxgMosm5NyaiyDJRNID5pK4AWj1l64Dbz0147hJgy5k2C0/ZiKK/9u5c5K+HRUVHmp+RMvGEjGh84oA5Q==",
"dev": true
},
"@types/bn.js": {
......@@ -25299,9 +25204,9 @@
},
"dependencies": {
"@types/node": {
"version": "10.17.58",
"resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.58.tgz",
"integrity": "sha512-Dn5RBxLohjdHFj17dVVw3rtrZAeXeWg+LQfvxDIW/fdPkSiuQk7h3frKMYtsQhtIW42wkErDcy9UMVxhGW4O7w==",
"version": "10.17.59",
"resolved": "https://registry.npmjs.org/@types/node/-/node-10.17.59.tgz",
"integrity": "sha512-7Uc8IRrL8yZz5ti45RaFxpbU8TxlzdC3HvxV+hOWo1EyLsuKv/w7y0n+TwZzwL3vdx3oZ2k3ubxPq131hNtXyg==",
"dev": true
}
}
......@@ -29071,9 +28976,9 @@
},
"dependencies": {
"@solidity-parser/parser": {
"version": "0.12.1",
"resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.12.1.tgz",
"integrity": "sha512-ikxVpwskNxEp2fvYS1BdRImnevHmM97zdPFBa1cVtjtNpoqCm/EmljATTZk0s9G/zsN5ZbPf9OAIAW4gbBJiRA==",
"version": "0.12.2",
"resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.12.2.tgz",
"integrity": "sha512-d7VS7PxgMosm5NyaiyDJRNID5pK4AWj1l64Dbz0147hJgy5k2C0/ZiKK/9u5c5K+HRUVHmp+RMvGEjGh84oA5Q==",
"dev": true
},
"acorn": {
......@@ -29358,9 +29263,9 @@
},
"dependencies": {
"@solidity-parser/parser": {
"version": "0.12.1",
"resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.12.1.tgz",
"integrity": "sha512-ikxVpwskNxEp2fvYS1BdRImnevHmM97zdPFBa1cVtjtNpoqCm/EmljATTZk0s9G/zsN5ZbPf9OAIAW4gbBJiRA==",
"version": "0.12.2",
"resolved": "https://registry.npmjs.org/@solidity-parser/parser/-/parser-0.12.2.tgz",
"integrity": "sha512-d7VS7PxgMosm5NyaiyDJRNID5pK4AWj1l64Dbz0147hJgy5k2C0/ZiKK/9u5c5K+HRUVHmp+RMvGEjGh84oA5Q==",
"dev": true
},
"ansi-styles": {
......@@ -30445,9 +30350,9 @@
"peer": true
},
"uglify-js": {
"version": "3.13.4",
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.13.4.tgz",
"integrity": "sha512-kv7fCkIXyQIilD5/yQy8O+uagsYIOt5cZvs890W40/e/rvjMSzJw81o9Bg0tkURxzZBROtDQhW2LFjOGoK3RZw==",
"version": "3.13.5",
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.13.5.tgz",
"integrity": "sha512-xtB8yEqIkn7zmOyS2zUNBsYCBRhDkvlNxMMY2smuJ/qA8NCHeQvKCF3i9Z4k8FJH4+PJvZRtMrPynfZ75+CSZw==",
"dev": true,
"optional": true
},
......@@ -30727,9 +30632,9 @@
},
"dependencies": {
"@types/node": {
"version": "12.20.10",
"resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.10.tgz",
"integrity": "sha512-TxCmnSSppKBBOzYzPR2BR25YlX5Oay8z2XGwFBInuA/Co0V9xJhLlW4kjbxKtgeNo3NOMbQP1A5Rc03y+XecPw==",
"version": "12.20.11",
"resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.11.tgz",
"integrity": "sha512-gema+apZ6qLQK7k7F0dGkGCWQYsL0qqKORWOQO6tq46q+x+1C0vbOiOqOwRVlh4RAdbQwV/j/ryr3u5NOG1fPQ==",
"dev": true
},
"underscore": {
......@@ -30765,9 +30670,9 @@
}
},
"@types/node": {
"version": "12.20.10",
"resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.10.tgz",
"integrity": "sha512-TxCmnSSppKBBOzYzPR2BR25YlX5Oay8z2XGwFBInuA/Co0V9xJhLlW4kjbxKtgeNo3NOMbQP1A5Rc03y+XecPw==",
"version": "12.20.11",
"resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.11.tgz",
"integrity": "sha512-gema+apZ6qLQK7k7F0dGkGCWQYsL0qqKORWOQO6tq46q+x+1C0vbOiOqOwRVlh4RAdbQwV/j/ryr3u5NOG1fPQ==",
"dev": true
},
"bignumber.js": {
......@@ -31062,9 +30967,9 @@
},
"dependencies": {
"@types/node": {
"version": "12.20.10",
"resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.10.tgz",
"integrity": "sha512-TxCmnSSppKBBOzYzPR2BR25YlX5Oay8z2XGwFBInuA/Co0V9xJhLlW4kjbxKtgeNo3NOMbQP1A5Rc03y+XecPw==",
"version": "12.20.11",
"resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.11.tgz",
"integrity": "sha512-gema+apZ6qLQK7k7F0dGkGCWQYsL0qqKORWOQO6tq46q+x+1C0vbOiOqOwRVlh4RAdbQwV/j/ryr3u5NOG1fPQ==",
"dev": true
}
}
......@@ -2,7 +2,7 @@
"private": true,
"name": "openzeppelin-solidity",
"description": "Secure Smart Contract library for Solidity",
"version": "4.0.0",
"version": "4.1.0",
"files": [
"/contracts/**/*.sol",
"/build/contracts/*.json",
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment