Skip to content

Commit

Permalink
solidity 0.8.9 support
Browse files Browse the repository at this point in the history
  • Loading branch information
rajivpo authored and smartcontracts committed Oct 14, 2021
1 parent f2ab74f commit cb0b073
Show file tree
Hide file tree
Showing 67 changed files with 81 additions and 67 deletions.
14 changes: 14 additions & 0 deletions .changeset/modern-hounds-dance.md
@@ -0,0 +1,14 @@
---
'@eth-optimism/gas-oracle': patch
'@eth-optimism/integration-tests': patch
'@eth-optimism/l2geth': patch
'@eth-optimism/batch-submitter': patch
'@eth-optimism/contracts': patch
'@eth-optimism/core-utils': patch
'@eth-optimism/data-transport-layer': patch
'@eth-optimism/message-relayer': patch
'@eth-optimism/regenesis-surgery': patch
'@eth-optimism/specs': patch
---

upgraded to solidity 0.8.9
2 changes: 1 addition & 1 deletion integration-tests/contracts/ConstructorReverter.sol
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

import { Reverter } from './Reverter.sol';

Expand Down
2 changes: 1 addition & 1 deletion integration-tests/contracts/ERC20.sol
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

contract ERC20 {
event Transfer(address indexed _from, address indexed _to, uint256 _value);
Expand Down
2 changes: 1 addition & 1 deletion integration-tests/contracts/OVMContextStorage.sol
@@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

// Can't do this until the package is published.
//import { iOVM_L1BlockNumber } from "@eth-optimism/contracts/iOVM_L1BlockNumber";
Expand Down
2 changes: 1 addition & 1 deletion integration-tests/contracts/OVMMulticall.sol
Expand Up @@ -18,7 +18,7 @@ copies or substantial portions of the Software.
*/

pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

// Can't do this until the package is published.
//import { iOVM_L1BlockNumber } from "@eth-optimism/contracts/iOVM_L1BlockNumber";
Expand Down
2 changes: 1 addition & 1 deletion integration-tests/contracts/Proxy.sol
@@ -1,6 +1,6 @@
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/**
* @dev This abstract contract provides a fallback function that delegates all calls to another contract using the EVM
Expand Down
2 changes: 1 addition & 1 deletion integration-tests/contracts/Reverter.sol
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

contract Reverter {
string constant public revertMessage = "This is a simple reversion.";
Expand Down
2 changes: 1 addition & 1 deletion integration-tests/contracts/SimpleStorage.sol
@@ -1,4 +1,4 @@
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

contract ICrossDomainMessenger {
address public xDomainMessageSender;
Expand Down
2 changes: 1 addition & 1 deletion integration-tests/contracts/TestOOG.sol
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

contract TestOOG {
function runOutOfGas() public {
Expand Down
2 changes: 1 addition & 1 deletion integration-tests/contracts/ValueCalls.sol
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

contract ValueContext {
function getSelfBalance() external payable returns(uint256) {
Expand Down
2 changes: 1 addition & 1 deletion integration-tests/hardhat.config.ts
Expand Up @@ -17,7 +17,7 @@ const config: HardhatUserConfig = {
timeout: 50000,
},
solidity: {
version: '0.8.8',
version: '0.8.9',
settings: {
optimizer: { enabled: true, runs: 200 },
metadata: {
Expand Down
2 changes: 1 addition & 1 deletion integration-tests/test/whitelist.spec.ts
Expand Up @@ -98,7 +98,7 @@ describe('Whitelist', async () => {
['0x0000000000000000000000000000000000000000000000000000000000000000']:
'0x0000000000000000000000000000000000000000000000000000000000000001',

// See https://docs.soliditylang.org/en/v0.8.8/internals/layout_in_storage.html for
// See https://docs.soliditylang.org/en/v0.8.9/internals/layout_in_storage.html for
// reference on how the correct storage slot should be set.
// Whitelist mapping is located at storage slot 1.
// whitelist[address] will be located at:
Expand Down
4 changes: 2 additions & 2 deletions ops/docker/Dockerfile.monorepo
Expand Up @@ -10,8 +10,8 @@ RUN apt-get update -y && apt-get install -y git
# Pre-download the compilers so that they do not need to be downloaded inside
# the image when building
FROM alpine as downloader
ARG VERSION=v0.8.8
ARG SOLC_VERSION=${VERSION}+commit.dddeac2f
ARG VERSION=v0.8.9
ARG SOLC_VERSION=${VERSION}+commit.e5eed63a
ARG SOLC_UPSTREAM=https://github.com/ethereum/solc-bin/raw/gh-pages/linux-amd64/solc-linux-amd64-${SOLC_VERSION}

ADD $SOLC_UPSTREAM ./solc
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/* Library Imports */
import { Lib_OVMCodec } from "../../libraries/codec/Lib_OVMCodec.sol";
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/* Library Imports */
import { AddressAliasHelper } from "../../standards/AddressAliasHelper.sol";
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/* Interface Imports */
import { IL1StandardBridge } from "./IL1StandardBridge.sol";
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/* Library Imports */
import { AddressAliasHelper } from "../../standards/AddressAliasHelper.sol";
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/* Library Imports */
import { Lib_Buffer } from "../../libraries/utils/Lib_Buffer.sol";
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/* Library Imports */
import { Lib_OVMCodec } from "../../libraries/codec/Lib_OVMCodec.sol";
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/* Interface Imports */
import { IBondManager } from "./IBondManager.sol";
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/**
* @title IBondManager
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/* Interface Imports */
import { ICrossDomainMessenger } from "../../libraries/bridge/ICrossDomainMessenger.sol";
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/**
* @title IL2ERC20Bridge
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/* Library Imports */
import { AddressAliasHelper } from "../../standards/AddressAliasHelper.sol";
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/* Interface Imports */
import { IL1StandardBridge } from "../../L1/messaging/IL1StandardBridge.sol";
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/* Contract Imports */
import { L2StandardERC20 } from "../../standards/L2StandardERC20.sol";
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/**
* @title OVM_DeployerWhitelist
Expand Down
2 changes: 1 addition & 1 deletion packages/contracts/contracts/L2/predeploys/OVM_ETH.sol
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/* Library Imports */
import { Lib_PredeployAddresses } from "../../libraries/constants/Lib_PredeployAddresses.sol";
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/* External Imports */
import { Ownable } from "@openzeppelin/contracts/access/Ownable.sol";
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/* Interface Imports */
import { iOVM_L2ToL1MessagePasser } from "./iOVM_L2ToL1MessagePasser.sol";
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/* Library Imports */
import { Lib_PredeployAddresses } from "../../libraries/constants/Lib_PredeployAddresses.sol";
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/**
* @title iOVM_L1BlockNumber
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/**
* @title iOVM_L2ToL1MessagePasser
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

import { iL1ChugSplashDeployer } from "./interfaces/iL1ChugSplashDeployer.sol";

Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/**
* @title iL1ChugSplashDeployer
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/* Library Imports */
import { Lib_RLPReader } from "../rlp/Lib_RLPReader.sol";
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/* Library Imports */
import { Lib_RLPReader } from "../rlp/Lib_RLPReader.sol";
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/**
* @title Lib_DefaultValues
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/**
* @title Lib_PredeployAddresses
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/* External Imports */
import { Ownable } from "@openzeppelin/contracts/access/Ownable.sol";
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/* Library Imports */
import { Lib_AddressManager } from "./Lib_AddressManager.sol";
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/* Library Imports */
import { Lib_AddressManager } from "./Lib_AddressManager.sol";
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/**
* @title Lib_RLPReader
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/**
* @title Lib_RLPWriter
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/* Library Imports */
import { Lib_BytesUtils } from "../utils/Lib_BytesUtils.sol";
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/* Library Imports */
import { Lib_MerkleTrie } from "./Lib_MerkleTrie.sol";
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/**
* @title Lib_Buffer
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/**
* @title Lib_Byte32Utils
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/**
* @title Lib_BytesUtils
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

/**
* @title Lib_MerkleTree
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

import { IERC20 } from "@openzeppelin/contracts/token/ERC20/IERC20.sol";
import { IERC165 } from "@openzeppelin/contracts/utils/introspection/IERC165.sol";
Expand Down
2 changes: 1 addition & 1 deletion packages/contracts/contracts/standards/L2StandardERC20.sol
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

import { ERC20 } from "@openzeppelin/contracts/token/ERC20/ERC20.sol";
import "./IL2StandardERC20.sol";
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

contract Helper_GasMeasurer {
function measureCallGas(
Expand Down
@@ -1,5 +1,5 @@
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.8;
pragma solidity ^0.8.9;

contract Helper_SimpleProxy {
address internal owner;
Expand Down

0 comments on commit cb0b073

Please sign in to comment.