@arbitrum/nitro-contracts 3.1.0 → 3.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/contracts/@openzeppelin/contracts/access/Ownable.sol/Ownable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/interfaces/draft-IERC1822.sol/IERC1822Proxiable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Proxy.sol/ERC1967Proxy.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/proxy/ERC1967/ERC1967Upgrade.sol/ERC1967Upgrade.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/proxy/Proxy.sol/Proxy.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/proxy/beacon/IBeacon.sol/IBeacon.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/proxy/beacon/UpgradeableBeacon.sol/UpgradeableBeacon.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol/ProxyAdmin.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol/UUPSUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/security/ReentrancyGuard.sol/ReentrancyGuard.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/token/ERC20/ERC20.sol/ERC20.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/token/ERC20/IERC20.sol/IERC20.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/token/ERC20/extensions/IERC20Metadata.sol/IERC20Metadata.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/token/ERC20/extensions/draft-IERC20Permit.sol/IERC20Permit.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/token/ERC20/utils/SafeERC20.sol/SafeERC20.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/utils/Address.sol/Address.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/utils/Context.sol/Context.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/utils/Create2.sol/Create2.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/utils/StorageSlot.sol/StorageSlot.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/utils/Strings.sol/Strings.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts/utils/cryptography/ECDSA.sol/ECDSA.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/access/AccessControlEnumerableUpgradeable.sol/AccessControlEnumerableUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/access/AccessControlUpgradeable.sol/AccessControlUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/access/IAccessControlEnumerableUpgradeable.sol/IAccessControlEnumerableUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/access/IAccessControlUpgradeable.sol/IAccessControlUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/access/OwnableUpgradeable.sol/OwnableUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol/Initializable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/security/PausableUpgradeable.sol/PausableUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/token/ERC20/ERC20Upgradeable.sol/ERC20Upgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/token/ERC20/IERC20Upgradeable.sol/IERC20Upgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/ERC20BurnableUpgradeable.sol/ERC20BurnableUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/token/ERC20/extensions/IERC20MetadataUpgradeable.sol/IERC20MetadataUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/AddressUpgradeable.sol/AddressUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/ContextUpgradeable.sol/ContextUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/Create2Upgradeable.sol/Create2Upgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/StorageSlotUpgradeable.sol/StorageSlotUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/StringsUpgradeable.sol/StringsUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/cryptography/ECDSAUpgradeable.sol/ECDSAUpgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/cryptography/draft-EIP712Upgradeable.sol/EIP712Upgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/introspection/ERC165Upgradeable.sol/ERC165Upgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/introspection/IERC165Upgradeable.sol/IERC165Upgradeable.dbg.json +1 -1
- package/build/contracts/@openzeppelin/contracts-upgradeable/utils/structs/EnumerableSetUpgradeable.sol/EnumerableSetUpgradeable.dbg.json +1 -1
- package/build/contracts/src/assertionStakingPool/AbsBoldStakingPool.sol/AbsBoldStakingPool.dbg.json +1 -1
- package/build/contracts/src/assertionStakingPool/AssertionStakingPool.sol/AssertionStakingPool.dbg.json +1 -1
- package/build/contracts/src/assertionStakingPool/AssertionStakingPoolCreator.sol/AssertionStakingPoolCreator.dbg.json +1 -1
- package/build/contracts/src/assertionStakingPool/EdgeStakingPool.sol/EdgeStakingPool.dbg.json +1 -1
- package/build/contracts/src/assertionStakingPool/EdgeStakingPoolCreator.sol/EdgeStakingPoolCreator.dbg.json +1 -1
- package/build/contracts/src/assertionStakingPool/StakingPoolCreatorUtils.sol/StakingPoolCreatorUtils.dbg.json +1 -1
- package/build/contracts/src/assertionStakingPool/interfaces/IAbsBoldStakingPool.sol/IAbsBoldStakingPool.dbg.json +1 -1
- package/build/contracts/src/assertionStakingPool/interfaces/IAssertionStakingPool.sol/IAssertionStakingPool.dbg.json +1 -1
- package/build/contracts/src/assertionStakingPool/interfaces/IAssertionStakingPoolCreator.sol/IAssertionStakingPoolCreator.dbg.json +1 -1
- package/build/contracts/src/assertionStakingPool/interfaces/IEdgeStakingPool.sol/IEdgeStakingPool.dbg.json +1 -1
- package/build/contracts/src/assertionStakingPool/interfaces/IEdgeStakingPoolCreator.sol/IEdgeStakingPoolCreator.dbg.json +1 -1
- package/build/contracts/src/bridge/AbsBridge.sol/AbsBridge.dbg.json +1 -1
- package/build/contracts/src/bridge/AbsInbox.sol/AbsInbox.dbg.json +1 -1
- package/build/contracts/src/bridge/AbsOutbox.sol/AbsOutbox.dbg.json +1 -1
- package/build/contracts/src/bridge/Bridge.sol/Bridge.dbg.json +1 -1
- package/build/contracts/src/bridge/DelayBuffer.sol/DelayBuffer.dbg.json +1 -1
- package/build/contracts/src/bridge/ERC20Bridge.sol/ERC20Bridge.dbg.json +1 -1
- package/build/contracts/src/bridge/ERC20Inbox.sol/ERC20Inbox.dbg.json +1 -1
- package/build/contracts/src/bridge/ERC20Outbox.sol/ERC20Outbox.dbg.json +1 -1
- package/build/contracts/src/bridge/GasRefunder.sol/GasRefunder.dbg.json +1 -1
- package/build/contracts/src/bridge/IBridge.sol/IBridge.dbg.json +1 -1
- package/build/contracts/src/bridge/IDelayedMessageProvider.sol/IDelayedMessageProvider.dbg.json +1 -1
- package/build/contracts/src/bridge/IERC20Bridge.sol/IERC20Bridge.dbg.json +1 -1
- package/build/contracts/src/bridge/IERC20Inbox.sol/IERC20Inbox.dbg.json +1 -1
- package/build/contracts/src/bridge/IEthBridge.sol/IEthBridge.dbg.json +1 -1
- package/build/contracts/src/bridge/IInbox.sol/IInbox.dbg.json +1 -1
- package/build/contracts/src/bridge/IInboxBase.sol/IInboxBase.dbg.json +1 -1
- package/build/contracts/src/bridge/IOutbox.sol/IOutbox.dbg.json +1 -1
- package/build/contracts/src/bridge/IOwnable.sol/IOwnable.dbg.json +1 -1
- package/build/contracts/src/bridge/ISequencerInbox.sol/IFeeTokenPricer.dbg.json +1 -1
- package/build/contracts/src/bridge/ISequencerInbox.sol/ISequencerInbox.dbg.json +1 -1
- package/build/contracts/src/bridge/Inbox.sol/Inbox.dbg.json +1 -1
- package/build/contracts/src/bridge/Messages.sol/Messages.dbg.json +1 -1
- package/build/contracts/src/bridge/Outbox.sol/Outbox.dbg.json +1 -1
- package/build/contracts/src/bridge/SequencerInbox.sol/SequencerInbox.dbg.json +1 -1
- package/build/contracts/src/bridge/extra/ERC20MigrationOutbox.sol/ERC20MigrationOutbox.dbg.json +4 -0
- package/build/contracts/src/bridge/extra/ERC20MigrationOutbox.sol/ERC20MigrationOutbox.json +113 -0
- package/build/contracts/src/bridge/extra/IERC20MigrationOutbox.sol/IERC20MigrationOutbox.dbg.json +4 -0
- package/build/contracts/src/bridge/extra/IERC20MigrationOutbox.sol/IERC20MigrationOutbox.json +97 -0
- package/build/contracts/src/chain/CacheManager.sol/CacheManager.dbg.json +1 -1
- package/build/contracts/src/chain/CacheManager.sol/CacheManager.json +2 -2
- package/build/contracts/src/challengeV2/IAssertionChain.sol/IAssertionChain.dbg.json +1 -1
- package/build/contracts/src/challengeV2/IEdgeChallengeManager.sol/IEdgeChallengeManager.dbg.json +1 -1
- package/build/contracts/src/challengeV2/libraries/ArrayUtilsLib.sol/ArrayUtilsLib.dbg.json +1 -1
- package/build/contracts/src/challengeV2/libraries/ChallengeEdgeLib.sol/ChallengeEdgeLib.dbg.json +1 -1
- package/build/contracts/src/challengeV2/libraries/EdgeChallengeManagerLib.sol/EdgeChallengeManagerLib.dbg.json +1 -1
- package/build/contracts/src/challengeV2/libraries/MerkleTreeAccumulatorLib.sol/MerkleTreeAccumulatorLib.dbg.json +1 -1
- package/build/contracts/src/challengeV2/libraries/UintUtilsLib.sol/UintUtilsLib.dbg.json +1 -1
- package/build/contracts/src/express-lane-auction/Balance.sol/BalanceLib.dbg.json +1 -1
- package/build/contracts/src/express-lane-auction/Burner.sol/Burner.dbg.json +1 -1
- package/build/contracts/src/express-lane-auction/ELCRound.sol/LatestELCRoundsLib.dbg.json +1 -1
- package/build/contracts/src/express-lane-auction/ExpressLaneAuction.sol/ExpressLaneAuction.dbg.json +1 -1
- package/build/contracts/src/express-lane-auction/ExpressLaneAuction.sol/ExpressLaneAuction.json +2 -2
- package/build/contracts/src/express-lane-auction/IExpressLaneAuction.sol/IExpressLaneAuction.dbg.json +1 -1
- package/build/contracts/src/express-lane-auction/RoundTimingInfo.sol/RoundTimingInfoLib.dbg.json +1 -1
- package/build/contracts/src/libraries/AddressAliasHelper.sol/AddressAliasHelper.dbg.json +1 -1
- package/build/contracts/src/libraries/AdminFallbackProxy.sol/AdminFallbackProxy.dbg.json +1 -1
- package/build/contracts/src/libraries/AdminFallbackProxy.sol/DoubleLogicERC1967Upgrade.dbg.json +1 -1
- package/build/contracts/src/libraries/ArbitrumChecker.sol/ArbitrumChecker.dbg.json +1 -1
- package/build/contracts/src/libraries/CallerChecker.sol/CallerChecker.dbg.json +1 -1
- package/build/contracts/src/libraries/CryptographyPrimitives.sol/CryptographyPrimitives.dbg.json +1 -1
- package/build/contracts/src/libraries/DecimalsConverterHelper.sol/DecimalsConverterHelper.dbg.json +1 -1
- package/build/contracts/src/libraries/DelegateCallAware.sol/DelegateCallAware.dbg.json +1 -1
- package/build/contracts/src/libraries/DoubleLogicUUPSUpgradeable.sol/DoubleLogicUUPSUpgradeable.dbg.json +1 -1
- package/build/contracts/src/libraries/GasRefundEnabled.sol/GasRefundEnabled.dbg.json +1 -1
- package/build/contracts/src/libraries/IGasRefunder.sol/IGasRefunder.dbg.json +1 -1
- package/build/contracts/src/libraries/IReader4844.sol/IReader4844.dbg.json +1 -1
- package/build/contracts/src/libraries/MerkleLib.sol/MerkleLib.dbg.json +1 -1
- package/build/contracts/src/libraries/UUPSNotUpgradeable.sol/UUPSNotUpgradeable.dbg.json +1 -1
- package/build/contracts/src/mocks/BridgeStub.sol/BridgeStub.dbg.json +1 -1
- package/build/contracts/src/mocks/BridgeUnproxied.sol/BridgeUnproxied.dbg.json +1 -1
- package/build/contracts/src/mocks/InboxStub.sol/InboxStub.dbg.json +1 -1
- package/build/contracts/src/mocks/MerkleTreeAccess.sol/MerkleTreeAccess.dbg.json +1 -1
- package/build/contracts/src/mocks/MockRollupEventInbox.sol/MockRollupEventInbox.dbg.json +1 -1
- package/build/contracts/src/mocks/SequencerInboxBlobMock.sol/SequencerInboxBlobMock.dbg.json +1 -1
- package/build/contracts/src/mocks/SequencerInboxStub.sol/SequencerInboxStub.dbg.json +1 -1
- package/build/contracts/src/mocks/SimpleOneStepProofEntry.sol/SimpleOneStepProofEntry.dbg.json +1 -1
- package/build/contracts/src/mocks/TestWETH9.sol/IWETH9.dbg.json +1 -1
- package/build/contracts/src/mocks/TestWETH9.sol/TestWETH9.dbg.json +1 -1
- package/build/contracts/src/mocks/UpgradeExecutorMock.sol/UpgradeExecutorMock.dbg.json +1 -1
- package/build/contracts/src/node-interface/NodeInterface.sol/NodeInterface.dbg.json +1 -1
- package/build/contracts/src/node-interface/NodeInterfaceDebug.sol/NodeInterfaceDebug.dbg.json +1 -1
- package/build/contracts/src/osp/HashProofHelper.sol/HashProofHelper.dbg.json +1 -1
- package/build/contracts/src/osp/IOneStepProofEntry.sol/IOneStepProofEntry.dbg.json +1 -1
- package/build/contracts/src/osp/IOneStepProofEntry.sol/OneStepProofEntryLib.dbg.json +1 -1
- package/build/contracts/src/osp/IOneStepProver.sol/IOneStepProver.dbg.json +1 -1
- package/build/contracts/src/osp/OneStepProofEntry.sol/OneStepProofEntry.dbg.json +1 -1
- package/build/contracts/src/osp/OneStepProver0.sol/OneStepProver0.dbg.json +1 -1
- package/build/contracts/src/osp/OneStepProverHostIo.sol/OneStepProverHostIo.dbg.json +1 -1
- package/build/contracts/src/osp/OneStepProverMath.sol/OneStepProverMath.dbg.json +1 -1
- package/build/contracts/src/osp/OneStepProverMemory.sol/OneStepProverMemory.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbAddressTable.sol/ArbAddressTable.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbAggregator.sol/ArbAggregator.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbBLS.sol/ArbBLS.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbDebug.sol/ArbDebug.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbFunctionTable.sol/ArbFunctionTable.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbGasInfo.sol/ArbGasInfo.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbInfo.sol/ArbInfo.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbNativeTokenManager.sol/ArbNativeTokenManager.dbg.json +4 -0
- package/build/contracts/src/precompiles/ArbNativeTokenManager.sol/ArbNativeTokenManager.json +75 -0
- package/build/contracts/src/precompiles/ArbOwner.sol/ArbOwner.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbOwner.sol/ArbOwner.json +71 -0
- package/build/contracts/src/precompiles/ArbOwnerPublic.sol/ArbOwnerPublic.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbOwnerPublic.sol/ArbOwnerPublic.json +32 -0
- package/build/contracts/src/precompiles/ArbRetryableTx.sol/ArbRetryableTx.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbStatistics.sol/ArbStatistics.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbSys.sol/ArbSys.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbWasm.sol/ArbWasm.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbWasmCache.sol/ArbWasmCache.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbosActs.sol/ArbosActs.dbg.json +1 -1
- package/build/contracts/src/precompiles/ArbosTest.sol/ArbosTest.dbg.json +1 -1
- package/build/contracts/src/rollup/AbsRollupEventInbox.sol/AbsRollupEventInbox.dbg.json +1 -1
- package/build/contracts/src/rollup/Assertion.sol/AssertionNodeLib.dbg.json +1 -1
- package/build/contracts/src/rollup/AssertionState.sol/AssertionStateLib.dbg.json +1 -1
- package/build/contracts/src/rollup/BOLDUpgradeAction.sol/BOLDUpgradeAction.dbg.json +1 -1
- package/build/contracts/src/rollup/BOLDUpgradeAction.sol/ConstantArrayStorage.dbg.json +1 -1
- package/build/contracts/src/rollup/BOLDUpgradeAction.sol/IOldRollup.dbg.json +1 -1
- package/build/contracts/src/rollup/BOLDUpgradeAction.sol/IOldRollupAdmin.dbg.json +1 -1
- package/build/contracts/src/rollup/BOLDUpgradeAction.sol/ISeqInboxPostUpgradeInit.dbg.json +1 -1
- package/build/contracts/src/rollup/BOLDUpgradeAction.sol/StateHashPreImageLookup.dbg.json +1 -1
- package/build/contracts/src/rollup/BridgeCreator.sol/BridgeCreator.dbg.json +1 -1
- package/build/contracts/src/rollup/DeployHelper.sol/DeployHelper.dbg.json +1 -1
- package/build/contracts/src/rollup/ERC20RollupEventInbox.sol/ERC20RollupEventInbox.dbg.json +1 -1
- package/build/contracts/src/rollup/FactoryDeployerHelper.sol/FactoryDeployerHelper.dbg.json +1 -1
- package/build/contracts/src/rollup/FactoryDeployerHelper.sol/IDeployHelper.dbg.json +1 -1
- package/build/contracts/src/rollup/FactoryDeployerHelper.sol/IERC20.dbg.json +1 -1
- package/build/contracts/src/rollup/FactoryDeployerHelper.sol/IERC20Bridge.dbg.json +1 -1
- package/build/contracts/src/rollup/FactoryDeployerHelper.sol/IInboxBase.dbg.json +1 -1
- package/build/contracts/src/rollup/IRollupAdmin.sol/IRollupAdmin.dbg.json +1 -1
- package/build/contracts/src/rollup/IRollupCore.sol/IRollupCore.dbg.json +1 -1
- package/build/contracts/src/rollup/IRollupEventInbox.sol/IRollupEventInbox.dbg.json +1 -1
- package/build/contracts/src/rollup/IRollupLogic.sol/IRollupUser.dbg.json +1 -1
- package/build/contracts/src/rollup/RollupAdminLogic.sol/RollupAdminLogic.dbg.json +1 -1
- package/build/contracts/src/rollup/RollupCore.sol/RollupCore.dbg.json +1 -1
- package/build/contracts/src/rollup/RollupCreator.sol/RollupCreator.dbg.json +1 -1
- package/build/contracts/src/rollup/RollupEventInbox.sol/RollupEventInbox.dbg.json +1 -1
- package/build/contracts/src/rollup/RollupLib.sol/RollupLib.dbg.json +1 -1
- package/build/contracts/src/rollup/RollupProxy.sol/RollupProxy.dbg.json +1 -1
- package/build/contracts/src/rollup/ValidatorWallet.sol/ValidatorWallet.dbg.json +1 -1
- package/build/contracts/src/rollup/ValidatorWalletCreator.sol/ValidatorWalletCreator.dbg.json +1 -1
- package/build/contracts/src/state/Deserialize.sol/Deserialize.dbg.json +1 -1
- package/build/contracts/src/state/GlobalState.sol/GlobalStateLib.dbg.json +1 -1
- package/build/contracts/src/state/Instructions.sol/Instructions.dbg.json +1 -1
- package/build/contracts/src/state/Machine.sol/MachineLib.dbg.json +1 -1
- package/build/contracts/src/state/MerkleProof.sol/MerkleProofLib.dbg.json +1 -1
- package/build/contracts/src/state/Module.sol/ModuleLib.dbg.json +1 -1
- package/build/contracts/src/state/ModuleMemory.sol/ModuleMemoryLib.dbg.json +1 -1
- package/build/contracts/src/state/ModuleMemoryCompact.sol/ModuleMemoryCompactLib.dbg.json +1 -1
- package/build/contracts/src/state/MultiStack.sol/MultiStackLib.dbg.json +1 -1
- package/build/contracts/src/state/PcArray.sol/PcArrayLib.dbg.json +1 -1
- package/build/contracts/src/state/StackFrame.sol/StackFrameLib.dbg.json +1 -1
- package/build/contracts/src/state/Value.sol/ValueLib.dbg.json +1 -1
- package/build/contracts/src/state/ValueArray.sol/ValueArrayLib.dbg.json +1 -1
- package/build/contracts/src/state/ValueStack.sol/ValueStackLib.dbg.json +1 -1
- package/build/contracts/src/stylus/StylusDeployer.sol/StylusDeployer.dbg.json +1 -1
- package/build/contracts/src/stylus/StylusDeployer.sol/StylusDeployer.json +7 -2
- package/build/contracts/src/test-helpers/BridgeTester.sol/BridgeTester.dbg.json +1 -1
- package/build/contracts/src/test-helpers/CryptographyPrimitivesTester.sol/CryptographyPrimitivesTester.dbg.json +1 -1
- package/build/contracts/src/test-helpers/EthVault.sol/EthVault.dbg.json +1 -1
- package/build/contracts/src/test-helpers/MessageTester.sol/MessageTester.dbg.json +1 -1
- package/build/contracts/src/test-helpers/NoReceiveForwarder.sol/ConstructorError.dbg.json +1 -1
- package/build/contracts/src/test-helpers/NoReceiveForwarder.sol/ConstructorFine.dbg.json +1 -1
- package/build/contracts/src/test-helpers/NoReceiveForwarder.sol/NoReceiveForwarder.dbg.json +1 -1
- package/build/contracts/src/test-helpers/NoReceiveForwarder.sol/ReceivingForwarder.dbg.json +1 -1
- package/build/contracts/src/test-helpers/OutboxWithoutOptTester.sol/OutboxWithoutOptTester.dbg.json +1 -1
- package/build/contracts/src/test-helpers/RollupMock.sol/RollupMock.dbg.json +1 -1
- package/build/contracts/src/test-helpers/TestToken.sol/TestToken.dbg.json +1 -1
- package/build/contracts/src/test-helpers/ValueArrayTester.sol/ValueArrayTester.dbg.json +1 -1
- package/package.json +1 -1
- package/src/bridge/extra/ERC20MigrationOutbox.sol +44 -0
- package/src/bridge/extra/IERC20MigrationOutbox.sol +38 -0
- package/src/express-lane-auction/IExpressLaneAuction.sol +4 -0
- package/src/precompiles/ArbNativeTokenManager.sol +39 -0
- package/src/precompiles/ArbOwner.sol +28 -0
- package/src/precompiles/ArbOwnerPublic.sol +10 -0
- package/src/stylus/StylusDeployer.sol +4 -3
- package/build/contracts/src/mocks/ArbOS11To32UpgradeTest.sol/ArbOS11To32UpgradeTest.dbg.json +0 -4
- package/build/contracts/src/mocks/ArbOS11To32UpgradeTest.sol/ArbOS11To32UpgradeTest.json +0 -24
- package/build/contracts/src/mocks/Benchmarks.sol/Benchmarks.dbg.json +0 -4
- package/build/contracts/src/mocks/Benchmarks.sol/Benchmarks.json +0 -46
- package/build/contracts/src/mocks/BigMap.sol/BigMap.dbg.json +0 -4
- package/build/contracts/src/mocks/BigMap.sol/BigMap.json +0 -48
- package/build/contracts/src/mocks/CreateTest.sol/CreateTest.dbg.json +0 -4
- package/build/contracts/src/mocks/CreateTest.sol/CreateTest.json +0 -15
- package/build/contracts/src/mocks/HostioTest.sol/HostioTest.dbg.json +0 -4
- package/build/contracts/src/mocks/HostioTest.sol/HostioTest.json +0 -513
- package/build/contracts/src/mocks/MultiCallTest.sol/MultiCallTest.dbg.json +0 -4
- package/build/contracts/src/mocks/MultiCallTest.sol/MultiCallTest.json +0 -71
- package/build/contracts/src/mocks/PendingBlkTimeAndNrAdvanceCheck.sol/PendingBlkTimeAndNrAdvanceCheck.dbg.json +0 -4
- package/build/contracts/src/mocks/PendingBlkTimeAndNrAdvanceCheck.sol/PendingBlkTimeAndNrAdvanceCheck.json +0 -36
- package/build/contracts/src/mocks/Program.sol/ProgramTest.dbg.json +0 -4
- package/build/contracts/src/mocks/Program.sol/ProgramTest.json +0 -142
- package/build/contracts/src/mocks/ProxyAdminForBinding.sol/ProxyAdminForBinding.dbg.json +0 -4
- package/build/contracts/src/mocks/ProxyAdminForBinding.sol/ProxyAdminForBinding.json +0 -160
- package/build/contracts/src/mocks/SdkStorage.sol/SdkStorage.dbg.json +0 -4
- package/build/contracts/src/mocks/SdkStorage.sol/SdkStorage.json +0 -25
- package/build/contracts/src/mocks/SelfDestruct.sol/SelfDestructInConstructorWithDestination.dbg.json +0 -4
- package/build/contracts/src/mocks/SelfDestruct.sol/SelfDestructInConstructorWithDestination.json +0 -22
- package/build/contracts/src/mocks/SelfDestruct.sol/SelfDestructInConstructorWithoutDestination.dbg.json +0 -4
- package/build/contracts/src/mocks/SelfDestruct.sol/SelfDestructInConstructorWithoutDestination.json +0 -16
- package/build/contracts/src/mocks/SelfDestruct.sol/SelfDestructOutsideConstructor.dbg.json +0 -4
- package/build/contracts/src/mocks/SelfDestruct.sol/SelfDestructOutsideConstructor.json +0 -36
- package/build/contracts/src/mocks/Simple.sol/Simple.dbg.json +0 -4
- package/build/contracts/src/mocks/Simple.sol/Simple.json +0 -303
- package/build/contracts/src/mocks/SimpleCacheManager.sol/SimpleCacheManager.dbg.json +0 -4
- package/build/contracts/src/mocks/SimpleCacheManager.sol/SimpleCacheManager.json +0 -37
- package/build/contracts/src/mocks/SimpleProxy.sol/SimpleProxy.dbg.json +0 -4
- package/build/contracts/src/mocks/SimpleProxy.sol/SimpleProxy.json +0 -30
- package/src/mocks/ArbOS11To32UpgradeTest.sol +0 -18
- package/src/mocks/Benchmarks.sol +0 -52
- package/src/mocks/BigMap.sol +0 -23
- package/src/mocks/CreateTest.sol +0 -44
- package/src/mocks/HostioTest.sol +0 -200
- package/src/mocks/MultiCallTest.sol +0 -119
- package/src/mocks/PendingBlkTimeAndNrAdvanceCheck.sol +0 -31
- package/src/mocks/Program.sol +0 -128
- package/src/mocks/ProxyAdminForBinding.sol +0 -9
- package/src/mocks/SdkStorage.sol +0 -176
- package/src/mocks/SelfDestruct.sol +0 -33
- package/src/mocks/Simple.sol +0 -168
- package/src/mocks/SimpleCacheManager.sol +0 -29
- package/src/mocks/SimpleProxy.sol +0 -21
@@ -20,6 +20,11 @@
|
|
20
20
|
"internalType": "address",
|
21
21
|
"name": "newContract",
|
22
22
|
"type": "address"
|
23
|
+
},
|
24
|
+
{
|
25
|
+
"internalType": "bytes",
|
26
|
+
"name": "data",
|
27
|
+
"type": "bytes"
|
23
28
|
}
|
24
29
|
],
|
25
30
|
"name": "ContractInitializationError",
|
@@ -137,8 +142,8 @@
|
|
137
142
|
"type": "function"
|
138
143
|
}
|
139
144
|
],
|
140
|
-
"bytecode": "
|
141
|
-
"deployedBytecode": "
|
145
|
+
"bytecode": "0x608060405234801561001057600080fd5b506108dd806100206000396000f3fe6080604052600436106100345760003560e01c8063835d1d4c146100395780639f40b3851461006e578063a9a8e4e91461009c575b600080fd5b34801561004557600080fd5b50610059610054366004610605565b6100d4565b60405190151581526020015b60405180910390f35b34801561007a57600080fd5b5061008e610089366004610684565b6101f0565b604051908152602001610065565b6100af6100aa3660046106d0565b610226565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610065565b6040517fd70c0ca700000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82163f6004820152600090819060719063d70c0ca790602401602060405180830381865afa925050508015610161575060408051601f3d908101601f1916820190925261015e91810190610765565b60015b61016d57506000610170565b90505b607173ffffffffffffffffffffffffffffffffffffffff1663a996e0c26040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101bc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101e09190610765565b61ffff9182169116141592915050565b600083838360405160200161020793929190610787565b6040516020818303038152906040528051906020012090509392505050565b6000811561023c576102398286866101f0565b91505b600061027f88888080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250879250610534915050565b9050600061028c826100d4565b90506000811561033c5760006102a287346107a1565b6040517f58c780c200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff861660048201529091506071906358c780c2908390602401604080518083038185885af1158015610312573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061033791906107db565b925050505b86156103ff576000808473ffffffffffffffffffffffffffffffffffffffff16888b8b60405161036d929190610807565b60006040518083038185875af1925050503d80600081146103aa576040519150601f19603f3d011682016040523d82523d6000602084013e6103af565b606091505b5091509150816103f85784816040517f88d8f57d0000000000000000000000000000000000000000000000000000000081526004016103ef92919061085d565b60405180910390fd5b5050610436565b8515610436576040517ecc797100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008661044383346107a1565b61044d91906107a1565b905080156104dc57604051600090339083908381818185875af1925050503d8060008114610497576040519150601f19603f3d011682016040523d82523d6000602084013e61049c565b606091505b50509050806104da576040517f3ea99169000000000000000000000000000000000000000000000000000000008152600481018390526024016103ef565b505b60405173ffffffffffffffffffffffffffffffffffffffff851681527f8ffcdc15a283d706d38281f500270d8b5a656918f555de0913d7455e3e6bc1bf9060200160405180910390a150919998505050505050505050565b60008251600003610571576040517f21744a5900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000821561058a57828451602086016000f59050610596565b8351602085016000f090505b3d1519811516156105ad576040513d6000823e3d81fd5b73ffffffffffffffffffffffffffffffffffffffff81166105fc57836040517f794c92ce0000000000000000000000000000000000000000000000000000000081526004016103ef9190610894565b90505b92915050565b60006020828403121561061757600080fd5b813573ffffffffffffffffffffffffffffffffffffffff811681146105fc57600080fd5b60008083601f84011261064d57600080fd5b50813567ffffffffffffffff81111561066557600080fd5b60208301915083602082850101111561067d57600080fd5b9250929050565b60008060006040848603121561069957600080fd5b83359250602084013567ffffffffffffffff8111156106b757600080fd5b6106c38682870161063b565b9497909650939450505050565b600080600080600080608087890312156106e957600080fd5b863567ffffffffffffffff8082111561070157600080fd5b61070d8a838b0161063b565b9098509650602089013591508082111561072657600080fd5b5061073389828a0161063b565b979a9699509760408101359660609091013595509350505050565b805161ffff8116811461076057600080fd5b919050565b60006020828403121561077757600080fd5b6107808261074e565b9392505050565b838152818360208301376000910160200190815292915050565b818103818111156105ff577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600080604083850312156107ee57600080fd5b6107f78361074e565b9150602083015190509250929050565b8183823760009101908152919050565b6000815180845260005b8181101561083d57602081850181015186830182015201610821565b506000602082860101526020601f19601f83011685010191505092915050565b73ffffffffffffffffffffffffffffffffffffffff8316815260406020820152600061088c6040830184610817565b949350505050565b602081526000610780602083018461081756fea26469706673582212202ffe15188103190347fe5bb6d173aaf7108665ba4de6a82347fb04622c2affa064736f6c63430008110033",
|
146
|
+
"deployedBytecode": "0x6080604052600436106100345760003560e01c8063835d1d4c146100395780639f40b3851461006e578063a9a8e4e91461009c575b600080fd5b34801561004557600080fd5b50610059610054366004610605565b6100d4565b60405190151581526020015b60405180910390f35b34801561007a57600080fd5b5061008e610089366004610684565b6101f0565b604051908152602001610065565b6100af6100aa3660046106d0565b610226565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610065565b6040517fd70c0ca700000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff82163f6004820152600090819060719063d70c0ca790602401602060405180830381865afa925050508015610161575060408051601f3d908101601f1916820190925261015e91810190610765565b60015b61016d57506000610170565b90505b607173ffffffffffffffffffffffffffffffffffffffff1663a996e0c26040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101bc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101e09190610765565b61ffff9182169116141592915050565b600083838360405160200161020793929190610787565b6040516020818303038152906040528051906020012090509392505050565b6000811561023c576102398286866101f0565b91505b600061027f88888080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250879250610534915050565b9050600061028c826100d4565b90506000811561033c5760006102a287346107a1565b6040517f58c780c200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff861660048201529091506071906358c780c2908390602401604080518083038185885af1158015610312573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061033791906107db565b925050505b86156103ff576000808473ffffffffffffffffffffffffffffffffffffffff16888b8b60405161036d929190610807565b60006040518083038185875af1925050503d80600081146103aa576040519150601f19603f3d011682016040523d82523d6000602084013e6103af565b606091505b5091509150816103f85784816040517f88d8f57d0000000000000000000000000000000000000000000000000000000081526004016103ef92919061085d565b60405180910390fd5b5050610436565b8515610436576040517ecc797100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008661044383346107a1565b61044d91906107a1565b905080156104dc57604051600090339083908381818185875af1925050503d8060008114610497576040519150601f19603f3d011682016040523d82523d6000602084013e61049c565b606091505b50509050806104da576040517f3ea99169000000000000000000000000000000000000000000000000000000008152600481018390526024016103ef565b505b60405173ffffffffffffffffffffffffffffffffffffffff851681527f8ffcdc15a283d706d38281f500270d8b5a656918f555de0913d7455e3e6bc1bf9060200160405180910390a150919998505050505050505050565b60008251600003610571576040517f21744a5900000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000821561058a57828451602086016000f59050610596565b8351602085016000f090505b3d1519811516156105ad576040513d6000823e3d81fd5b73ffffffffffffffffffffffffffffffffffffffff81166105fc57836040517f794c92ce0000000000000000000000000000000000000000000000000000000081526004016103ef9190610894565b90505b92915050565b60006020828403121561061757600080fd5b813573ffffffffffffffffffffffffffffffffffffffff811681146105fc57600080fd5b60008083601f84011261064d57600080fd5b50813567ffffffffffffffff81111561066557600080fd5b60208301915083602082850101111561067d57600080fd5b9250929050565b60008060006040848603121561069957600080fd5b83359250602084013567ffffffffffffffff8111156106b757600080fd5b6106c38682870161063b565b9497909650939450505050565b600080600080600080608087890312156106e957600080fd5b863567ffffffffffffffff8082111561070157600080fd5b61070d8a838b0161063b565b9098509650602089013591508082111561072657600080fd5b5061073389828a0161063b565b979a9699509760408101359660609091013595509350505050565b805161ffff8116811461076057600080fd5b919050565b60006020828403121561077757600080fd5b6107808261074e565b9392505050565b838152818360208301376000910160200190815292915050565b818103818111156105ff577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600080604083850312156107ee57600080fd5b6107f78361074e565b9150602083015190509250929050565b8183823760009101908152919050565b6000815180845260005b8181101561083d57602081850181015186830182015201610821565b506000602082860101526020601f19601f83011685010191505092915050565b73ffffffffffffffffffffffffffffffffffffffff8316815260406020820152600061088c6040830184610817565b949350505050565b602081526000610780602083018461081756fea26469706673582212202ffe15188103190347fe5bb6d173aaf7108665ba4de6a82347fb04622c2affa064736f6c63430008110033",
|
142
147
|
"linkReferences": {},
|
143
148
|
"deployedLinkReferences": {}
|
144
149
|
}
|
package/package.json
CHANGED
@@ -0,0 +1,44 @@
|
|
1
|
+
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
|
+
// SPDX-License-Identifier: BUSL-1.1
|
4
|
+
|
5
|
+
pragma solidity ^0.8.4;
|
6
|
+
|
7
|
+
import {IERC20} from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
|
8
|
+
import {IERC20Bridge} from "../IERC20Bridge.sol";
|
9
|
+
import {IERC20MigrationOutbox} from "./IERC20MigrationOutbox.sol";
|
10
|
+
|
11
|
+
/**
|
12
|
+
* @title An outbox for migrating nativeToken of a rollup from the native bridge to a new address
|
13
|
+
* @notice For some custom fee token orbit chains, they might want to have their native token being managed by an external bridge. This
|
14
|
+
* contract allow permissionless migration of the native bridge collateral, without requiring any change in the vanilla outbox.
|
15
|
+
* @dev This contract should be allowed as an outbox in conjunction with the vanilla outbox contract. Nonzero value withdrawal via the
|
16
|
+
* native bridge (ArbSys) must be disabled on the child chain or funds and messages will be stuck.
|
17
|
+
*/
|
18
|
+
contract ERC20MigrationOutbox is IERC20MigrationOutbox {
|
19
|
+
IERC20Bridge public immutable bridge;
|
20
|
+
address public immutable nativeToken;
|
21
|
+
address public immutable destination;
|
22
|
+
|
23
|
+
constructor(IERC20Bridge _bridge, address _destination) {
|
24
|
+
if (_destination == address(0)) {
|
25
|
+
revert InvalidDestination();
|
26
|
+
}
|
27
|
+
bridge = _bridge;
|
28
|
+
destination = _destination;
|
29
|
+
nativeToken = bridge.nativeToken();
|
30
|
+
}
|
31
|
+
|
32
|
+
/// @inheritdoc IERC20MigrationOutbox
|
33
|
+
function migrate() external {
|
34
|
+
uint256 bal = IERC20(nativeToken).balanceOf(address(bridge));
|
35
|
+
if (bal == 0) {
|
36
|
+
revert NoBalanceToMigrate();
|
37
|
+
}
|
38
|
+
(bool success, bytes memory returndata) = bridge.executeCall(destination, bal, "");
|
39
|
+
if (!success) {
|
40
|
+
revert MigrationFailed(returndata);
|
41
|
+
}
|
42
|
+
emit CollateralMigrated(destination, bal);
|
43
|
+
}
|
44
|
+
}
|
@@ -0,0 +1,38 @@
|
|
1
|
+
// Copyright 2021-2022, Offchain Labs, Inc.
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE
|
3
|
+
// SPDX-License-Identifier: BUSL-1.1
|
4
|
+
|
5
|
+
pragma solidity ^0.8.4;
|
6
|
+
|
7
|
+
import {IERC20Bridge} from "../IERC20Bridge.sol";
|
8
|
+
|
9
|
+
interface IERC20MigrationOutbox {
|
10
|
+
/// @notice Thrown when there is no balance to migrate.
|
11
|
+
error NoBalanceToMigrate();
|
12
|
+
|
13
|
+
/// @notice Thrown when the migration process fails.
|
14
|
+
/// @param returndata The return data from the failed migration call.
|
15
|
+
error MigrationFailed(bytes returndata);
|
16
|
+
|
17
|
+
/// @notice Thrown when the destination address is invalid.
|
18
|
+
error InvalidDestination();
|
19
|
+
|
20
|
+
/// @notice Emitted when a migration is completed.
|
21
|
+
event CollateralMigrated(address indexed destination, uint256 amount);
|
22
|
+
|
23
|
+
/// @notice Returns the address of the bridge contract.
|
24
|
+
/// @return The IERC20Bridge contract address.
|
25
|
+
function bridge() external view returns (IERC20Bridge);
|
26
|
+
|
27
|
+
/// @notice Returns the address of the native token to be migrated.
|
28
|
+
/// @return The address of the native token.
|
29
|
+
function nativeToken() external view returns (address);
|
30
|
+
|
31
|
+
/// @notice Returns the destination address for the migration.
|
32
|
+
/// @return The address where the native token will be migrated to.
|
33
|
+
function destination() external view returns (address);
|
34
|
+
|
35
|
+
/// @notice Migrate the native token of the rollup to the destination address.
|
36
|
+
/// @dev Can be called by anyone. Reverts if there is no balance to migrate or if the migration fails.
|
37
|
+
function migrate() external;
|
38
|
+
}
|
@@ -226,6 +226,10 @@ interface IExpressLaneAuction is IAccessControlEnumerableUpgradeable, IERC165Upg
|
|
226
226
|
|
227
227
|
/// @notice The current auction round that we're in
|
228
228
|
/// Bidding for control of the next round occurs in the current round
|
229
|
+
/// @dev On inactive chains without new block production, this method may return
|
230
|
+
/// stale round information using the last known block timestamp. For chains
|
231
|
+
/// with infrequent block creation, consider using off-chain timestamp calculations
|
232
|
+
/// or implementing an alternative round tracking mechanism to ensure accuracy.
|
229
233
|
function currentRound() external view returns (uint64);
|
230
234
|
|
231
235
|
/// @notice Is the current auction round closed for bidding
|
@@ -0,0 +1,39 @@
|
|
1
|
+
// Copyright 2021-2025, Offchain Labs, Inc.
|
2
|
+
// For license information, see https://github.com/OffchainLabs/nitro-contracts/blob/main/LICENSE.md
|
3
|
+
// SPDX-License-Identifier: BUSL-1.1
|
4
|
+
|
5
|
+
pragma solidity >=0.4.21 <0.9.0;
|
6
|
+
|
7
|
+
/**
|
8
|
+
* @title Enables minting and burning native tokens.
|
9
|
+
* @notice Authorized callers are added/removed through ArbOwner precompile.
|
10
|
+
* Precompiled contract that exists in every Arbitrum chain at 0x0000000000000000000000000000000000000073.
|
11
|
+
* Available in ArbOS version 41
|
12
|
+
*/
|
13
|
+
interface ArbNativeTokenManager {
|
14
|
+
/**
|
15
|
+
* @notice Emitted when some amount of the native gas token is minted to a NativeTokenOwner.
|
16
|
+
*/
|
17
|
+
event NativeTokenMinted(address indexed to, uint256 amount);
|
18
|
+
|
19
|
+
/**
|
20
|
+
* @notice Emitted when some amount of the native gas token is burned from a NativeTokenOwner.
|
21
|
+
*/
|
22
|
+
event NativeTokenBurned(address indexed from, uint256 amount);
|
23
|
+
|
24
|
+
/**
|
25
|
+
* @notice In case the caller is authorized,
|
26
|
+
* mints some amount of the native gas token for this chain to the caller.
|
27
|
+
*/
|
28
|
+
function mintNativeToken(
|
29
|
+
uint256 amount
|
30
|
+
) external;
|
31
|
+
|
32
|
+
/**
|
33
|
+
* @notice In case the caller is authorized,
|
34
|
+
* burns some amount of the native gas token for this chain from the caller.
|
35
|
+
*/
|
36
|
+
function burnNativeToken(
|
37
|
+
uint256 amount
|
38
|
+
) external;
|
39
|
+
}
|
@@ -33,6 +33,34 @@ interface ArbOwner {
|
|
33
33
|
/// @notice Retrieves the list of chain owners
|
34
34
|
function getAllChainOwners() external view returns (address[] memory);
|
35
35
|
|
36
|
+
/// @notice Sets the NativeTokenManagementFrom time
|
37
|
+
/// Available in ArbOS version 41
|
38
|
+
function setNativeTokenManagementFrom(
|
39
|
+
uint64 timestamp
|
40
|
+
) external;
|
41
|
+
|
42
|
+
/// @notice Add account as a native token owner
|
43
|
+
/// Available in ArbOS version 41
|
44
|
+
function addNativeTokenOwner(
|
45
|
+
address newOwner
|
46
|
+
) external;
|
47
|
+
|
48
|
+
/// @notice Remove account from the list of native token owners
|
49
|
+
/// Available in ArbOS version 41
|
50
|
+
function removeNativeTokenOwner(
|
51
|
+
address ownerToRemove
|
52
|
+
) external;
|
53
|
+
|
54
|
+
/// @notice See if the user is a native token owner
|
55
|
+
/// Available in ArbOS version 41
|
56
|
+
function isNativeTokenOwner(
|
57
|
+
address addr
|
58
|
+
) external view returns (bool);
|
59
|
+
|
60
|
+
/// @notice Retrieves the list of native token owners
|
61
|
+
/// Available in ArbOS version 41
|
62
|
+
function getAllNativeTokenOwners() external view returns (address[] memory);
|
63
|
+
|
36
64
|
/// @notice Set how slowly ArbOS updates its estimate of the L1 basefee
|
37
65
|
function setL1BaseFeeEstimateInertia(
|
38
66
|
uint64 inertia
|
@@ -24,6 +24,16 @@ interface ArbOwnerPublic {
|
|
24
24
|
/// @notice Retrieves the list of chain owners
|
25
25
|
function getAllChainOwners() external view returns (address[] memory);
|
26
26
|
|
27
|
+
/// @notice See if the user is a native token owner
|
28
|
+
/// Available in ArbOS version 41
|
29
|
+
function isNativeTokenOwner(
|
30
|
+
address addr
|
31
|
+
) external view returns (bool);
|
32
|
+
|
33
|
+
/// @notice Retrieves the list of native token owners
|
34
|
+
/// Available in ArbOS version 41
|
35
|
+
function getAllNativeTokenOwners() external view returns (address[] memory);
|
36
|
+
|
27
37
|
/// @notice Gets the network fee collector
|
28
38
|
function getNetworkFeeAccount() external view returns (address);
|
29
39
|
|
@@ -13,7 +13,7 @@ contract StylusDeployer {
|
|
13
13
|
event ContractDeployed(address deployedContract);
|
14
14
|
|
15
15
|
error ContractDeploymentError(bytes bytecode);
|
16
|
-
error ContractInitializationError(address newContract);
|
16
|
+
error ContractInitializationError(address newContract, bytes data);
|
17
17
|
error RefundExcessValueError(uint256 excessValue);
|
18
18
|
error EmptyBytecode();
|
19
19
|
error InitValueButNotInitData();
|
@@ -75,9 +75,10 @@ contract StylusDeployer {
|
|
75
75
|
// initialize - this will fail if the program wasn't activated by this point
|
76
76
|
// we check if initData exists to avoid calling contracts unnecessarily
|
77
77
|
if (initData.length != 0) {
|
78
|
-
(bool success,
|
78
|
+
(bool success, bytes memory data) =
|
79
|
+
address(newContractAddress).call{value: initValue}(initData);
|
79
80
|
if (!success) {
|
80
|
-
revert ContractInitializationError(newContractAddress);
|
81
|
+
revert ContractInitializationError(newContractAddress, data);
|
81
82
|
}
|
82
83
|
} else if (initValue != 0) {
|
83
84
|
// if initValue exists init data should too
|
@@ -1,24 +0,0 @@
|
|
1
|
-
{
|
2
|
-
"_format": "hh-sol-artifact-1",
|
3
|
-
"contractName": "ArbOS11To32UpgradeTest",
|
4
|
-
"sourceName": "src/mocks/ArbOS11To32UpgradeTest.sol",
|
5
|
-
"abi": [
|
6
|
-
{
|
7
|
-
"inputs": [],
|
8
|
-
"name": "mcopy",
|
9
|
-
"outputs": [
|
10
|
-
{
|
11
|
-
"internalType": "bytes32",
|
12
|
-
"name": "x",
|
13
|
-
"type": "bytes32"
|
14
|
-
}
|
15
|
-
],
|
16
|
-
"stateMutability": "nonpayable",
|
17
|
-
"type": "function"
|
18
|
-
}
|
19
|
-
],
|
20
|
-
"bytecode": "0x608060405234801561000f575f80fd5b5061014e8061001d5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c806319b0cc231461002d575b5f80fd5b610035610047565b60405190815260200160405180910390f35b5f60096020526020805f5e5f51905060646001600160a01b031663051038f26040518163ffffffff1660e01b8152600401602060405180830381865afa158015610093573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100b79190610101565b6057146100fe5760405162461bcd60e51b815260206004820152601160248201527022ac2822a1aa22a22fa0a92127a9af999960791b604482015260640160405180910390fd5b90565b5f60208284031215610111575f80fd5b505191905056fea26469706673582212209dea1ebe41065a9fcc7551ce48ee3750697e8689adeae54c74e6ead3a017aef464736f6c63430008180033",
|
21
|
-
"deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610029575f3560e01c806319b0cc231461002d575b5f80fd5b610035610047565b60405190815260200160405180910390f35b5f60096020526020805f5e5f51905060646001600160a01b031663051038f26040518163ffffffff1660e01b8152600401602060405180830381865afa158015610093573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100b79190610101565b6057146100fe5760405162461bcd60e51b815260206004820152601160248201527022ac2822a1aa22a22fa0a92127a9af999960791b604482015260640160405180910390fd5b90565b5f60208284031215610111575f80fd5b505191905056fea26469706673582212209dea1ebe41065a9fcc7551ce48ee3750697e8689adeae54c74e6ead3a017aef464736f6c63430008180033",
|
22
|
-
"linkReferences": {},
|
23
|
-
"deployedLinkReferences": {}
|
24
|
-
}
|
@@ -1,46 +0,0 @@
|
|
1
|
-
{
|
2
|
-
"_format": "hh-sol-artifact-1",
|
3
|
-
"contractName": "Benchmarks",
|
4
|
-
"sourceName": "src/mocks/Benchmarks.sol",
|
5
|
-
"abi": [
|
6
|
-
{
|
7
|
-
"inputs": [],
|
8
|
-
"name": "fillBlockAdd",
|
9
|
-
"outputs": [],
|
10
|
-
"stateMutability": "payable",
|
11
|
-
"type": "function"
|
12
|
-
},
|
13
|
-
{
|
14
|
-
"inputs": [],
|
15
|
-
"name": "fillBlockHash",
|
16
|
-
"outputs": [],
|
17
|
-
"stateMutability": "payable",
|
18
|
-
"type": "function"
|
19
|
-
},
|
20
|
-
{
|
21
|
-
"inputs": [],
|
22
|
-
"name": "fillBlockMulMod",
|
23
|
-
"outputs": [],
|
24
|
-
"stateMutability": "payable",
|
25
|
-
"type": "function"
|
26
|
-
},
|
27
|
-
{
|
28
|
-
"inputs": [],
|
29
|
-
"name": "fillBlockQuickStep",
|
30
|
-
"outputs": [],
|
31
|
-
"stateMutability": "payable",
|
32
|
-
"type": "function"
|
33
|
-
},
|
34
|
-
{
|
35
|
-
"inputs": [],
|
36
|
-
"name": "fillBlockRecover",
|
37
|
-
"outputs": [],
|
38
|
-
"stateMutability": "payable",
|
39
|
-
"type": "function"
|
40
|
-
}
|
41
|
-
],
|
42
|
-
"bytecode": "0x608060405234801561001057600080fd5b50610321806100206000396000f3fe60806040526004361061005a5760003560e01c80636488e930116100435780636488e93014610071578063ea01a66f14610079578063fb721c181461008157600080fd5b80630b39d8e51461005f578063142ddcf914610069575b600080fd5b610067610089565b005b6100676101ff565b610067610229565b610067610296565b6100676102a0565b7feddecf107b5740cef7f5a01e3ea7e287665c4e75a8eb6afae2fda2e3d436778673361594f5429d23ece0a88e4fbe529e1c49d524d8601b7fc6178c2de1078cd36c3bd302cde755340d7f17fcb3fcc0b9c333ba03b217029f7f5fdbcefe2675e96219cdae57a7894280bf80fd40d44ce146a35e169ea6a78fd35b60408051600081526020810180835287905260ff851691810191909152606081018390526080810182905273ffffffffffffffffffffffffffffffffffffffff85169060019060a0016020604051602081039080840390855afa15801561016f573d6000803e3d6000fd5b5050506020604051035173ffffffffffffffffffffffffffffffffffffffff16146101fa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f57524f4e475f415242494e415554000000000000000000000000000000000000604482015260640160405180910390fd5b610104565b60005b7feddecf107b5740cef7f5a01e3ea7e287665c4e75a8eb6afae2fda2e3d436778601610202565b7feddecf107b5740cef7f5a01e3ea7e287665c4e75a8eb6afae2fda2e3d43677865b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f7fc6178c2de1078cd36c3bd302cde755340d7f17fcb3fcc0b9c333ba03b217029f8209905061024b565b60005b5034610299565b7feddecf107b5740cef7f5a01e3ea7e287665c4e75a8eb6afae2fda2e3d43677865b6040805160208101839052016040516020818303038152906040528051906020012090506102c256fea264697066735822122027bb326e97bf6a46d542532f574c63c704a8e473e80dfcc3f9d3971a6d1d41b764736f6c63430008110033",
|
43
|
-
"deployedBytecode": "0x60806040526004361061005a5760003560e01c80636488e930116100435780636488e93014610071578063ea01a66f14610079578063fb721c181461008157600080fd5b80630b39d8e51461005f578063142ddcf914610069575b600080fd5b610067610089565b005b6100676101ff565b610067610229565b610067610296565b6100676102a0565b7feddecf107b5740cef7f5a01e3ea7e287665c4e75a8eb6afae2fda2e3d436778673361594f5429d23ece0a88e4fbe529e1c49d524d8601b7fc6178c2de1078cd36c3bd302cde755340d7f17fcb3fcc0b9c333ba03b217029f7f5fdbcefe2675e96219cdae57a7894280bf80fd40d44ce146a35e169ea6a78fd35b60408051600081526020810180835287905260ff851691810191909152606081018390526080810182905273ffffffffffffffffffffffffffffffffffffffff85169060019060a0016020604051602081039080840390855afa15801561016f573d6000803e3d6000fd5b5050506020604051035173ffffffffffffffffffffffffffffffffffffffff16146101fa576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f57524f4e475f415242494e415554000000000000000000000000000000000000604482015260640160405180910390fd5b610104565b60005b7feddecf107b5740cef7f5a01e3ea7e287665c4e75a8eb6afae2fda2e3d436778601610202565b7feddecf107b5740cef7f5a01e3ea7e287665c4e75a8eb6afae2fda2e3d43677865b7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f7fc6178c2de1078cd36c3bd302cde755340d7f17fcb3fcc0b9c333ba03b217029f8209905061024b565b60005b5034610299565b7feddecf107b5740cef7f5a01e3ea7e287665c4e75a8eb6afae2fda2e3d43677865b6040805160208101839052016040516020818303038152906040528051906020012090506102c256fea264697066735822122027bb326e97bf6a46d542532f574c63c704a8e473e80dfcc3f9d3971a6d1d41b764736f6c63430008110033",
|
44
|
-
"linkReferences": {},
|
45
|
-
"deployedLinkReferences": {}
|
46
|
-
}
|
@@ -1,48 +0,0 @@
|
|
1
|
-
{
|
2
|
-
"_format": "hh-sol-artifact-1",
|
3
|
-
"contractName": "BigMap",
|
4
|
-
"sourceName": "src/mocks/BigMap.sol",
|
5
|
-
"abi": [
|
6
|
-
{
|
7
|
-
"inputs": [
|
8
|
-
{
|
9
|
-
"internalType": "uint256",
|
10
|
-
"name": "clear",
|
11
|
-
"type": "uint256"
|
12
|
-
},
|
13
|
-
{
|
14
|
-
"internalType": "uint256",
|
15
|
-
"name": "add",
|
16
|
-
"type": "uint256"
|
17
|
-
}
|
18
|
-
],
|
19
|
-
"name": "clearAndAddValues",
|
20
|
-
"outputs": [],
|
21
|
-
"stateMutability": "nonpayable",
|
22
|
-
"type": "function"
|
23
|
-
},
|
24
|
-
{
|
25
|
-
"inputs": [
|
26
|
-
{
|
27
|
-
"internalType": "uint256",
|
28
|
-
"name": "",
|
29
|
-
"type": "uint256"
|
30
|
-
}
|
31
|
-
],
|
32
|
-
"name": "data",
|
33
|
-
"outputs": [
|
34
|
-
{
|
35
|
-
"internalType": "uint256",
|
36
|
-
"name": "",
|
37
|
-
"type": "uint256"
|
38
|
-
}
|
39
|
-
],
|
40
|
-
"stateMutability": "view",
|
41
|
-
"type": "function"
|
42
|
-
}
|
43
|
-
],
|
44
|
-
"bytecode": "0x608060405234801561001057600080fd5b506101e9806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063a2fe30ff1461003b578063f0ba844014610050575b600080fd5b61004e6100493660046100f8565b610082565b005b61007061005e36600461011a565b60006020819052908152604090205481565b60405190815260200160405180910390f35b6001545b816001546100949190610162565b8110156100c157600081815260208190526040902062845fed9055806100b98161017b565b915050610086565b600181905560005b838110156100f257600081815260208190526040812055806100ea8161017b565b9150506100c9565b50505050565b6000806040838503121561010b57600080fd5b50508035926020909101359150565b60006020828403121561012c57600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8082018082111561017557610175610133565b92915050565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036101ac576101ac610133565b506001019056fea2646970667358221220d7c605ba9e85f421d609c402eb23f4342b0fa52d1bc480f84d7e85aa5b77801b64736f6c63430008110033",
|
45
|
-
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100365760003560e01c8063a2fe30ff1461003b578063f0ba844014610050575b600080fd5b61004e6100493660046100f8565b610082565b005b61007061005e36600461011a565b60006020819052908152604090205481565b60405190815260200160405180910390f35b6001545b816001546100949190610162565b8110156100c157600081815260208190526040902062845fed9055806100b98161017b565b915050610086565b600181905560005b838110156100f257600081815260208190526040812055806100ea8161017b565b9150506100c9565b50505050565b6000806040838503121561010b57600080fd5b50508035926020909101359150565b60006020828403121561012c57600080fd5b5035919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b8082018082111561017557610175610133565b92915050565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036101ac576101ac610133565b506001019056fea2646970667358221220d7c605ba9e85f421d609c402eb23f4342b0fa52d1bc480f84d7e85aa5b77801b64736f6c63430008110033",
|
46
|
-
"linkReferences": {},
|
47
|
-
"deployedLinkReferences": {}
|
48
|
-
}
|
@@ -1,15 +0,0 @@
|
|
1
|
-
{
|
2
|
-
"_format": "hh-sol-artifact-1",
|
3
|
-
"contractName": "CreateTest",
|
4
|
-
"sourceName": "src/mocks/CreateTest.sol",
|
5
|
-
"abi": [
|
6
|
-
{
|
7
|
-
"stateMutability": "nonpayable",
|
8
|
-
"type": "fallback"
|
9
|
-
}
|
10
|
-
],
|
11
|
-
"bytecode": "0x608060405234801561001057600080fd5b506102d2806100206000396000f3fe608060405234801561001057600080fd5b50600036606060008383600081811061002b5761002b610206565b919091013560f81c915061004490508360018187610235565b909450925060006100586020828688610235565b6100619161025f565b90506100708460208188610235565b9450945060008260ff166002036100fb576000610090602082888a610235565b6100999161025f565b90506100a8866020818a610235565b96509650600087878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050825192935084929150506020830186f592505050610143565b600086868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505082519293505060208301905084f09150505b73ffffffffffffffffffffffffffffffffffffffff81166101c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f6661696c656420746f2063726561746500000000000000000000000000000000604482015260640160405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16803b806020016040519081016040528181526000908060200190933c80519650602001945050505050f35b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000808585111561024557600080fd5b8386111561025257600080fd5b5050820193919092039150565b80356020831015610296577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b165b9291505056fea26469706673582212209431771ba2c9b8e2676999adcd0dff83847db2d5a6b3805a1b7d04ccc2f5231564736f6c63430008110033",
|
12
|
-
"deployedBytecode": "0x608060405234801561001057600080fd5b50600036606060008383600081811061002b5761002b610206565b919091013560f81c915061004490508360018187610235565b909450925060006100586020828688610235565b6100619161025f565b90506100708460208188610235565b9450945060008260ff166002036100fb576000610090602082888a610235565b6100999161025f565b90506100a8866020818a610235565b96509650600087878080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525050825192935084929150506020830186f592505050610143565b600086868080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152505082519293505060208301905084f09150505b73ffffffffffffffffffffffffffffffffffffffff81166101c4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f6661696c656420746f2063726561746500000000000000000000000000000000604482015260640160405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16803b806020016040519081016040528181526000908060200190933c80519650602001945050505050f35b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000808585111561024557600080fd5b8386111561025257600080fd5b5050820193919092039150565b80356020831015610296577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b165b9291505056fea26469706673582212209431771ba2c9b8e2676999adcd0dff83847db2d5a6b3805a1b7d04ccc2f5231564736f6c63430008110033",
|
13
|
-
"linkReferences": {},
|
14
|
-
"deployedLinkReferences": {}
|
15
|
-
}
|