Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Develop -> Master #3170

Merged
merged 94 commits into from Aug 4, 2022
Merged

Develop -> Master #3170

merged 94 commits into from Aug 4, 2022

Commits on Jul 25, 2022

  1. Configuration menu
    Copy the full SHA
    c69aeb9 View commit details
    Browse the repository at this point in the history
  2. added changeset

    optimisticben committed Jul 25, 2022
    Configuration menu
    Copy the full SHA
    51a1595 View commit details
    Browse the repository at this point in the history

Commits on Jul 26, 2022

  1. Add cloudbuild file for bedrock image builds (#3073)

    parameterize project
    
    Switch to artifact registry
    
    Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
    optimisticben and mergify[bot] committed Jul 26, 2022
    Configuration menu
    Copy the full SHA
    cf25c4b View commit details
    Browse the repository at this point in the history
  2. chore: Fix foundry config to use profiles key (#3088)

    Address this warning: Unknown section [default] found in foundry.toml. This notation for profiles has been deprecated and may result in the profile not being registered in future versions. Please use [profile.default] instead or run .
    maurelian committed Jul 26, 2022
    Configuration menu
    Copy the full SHA
    0d9769b View commit details
    Browse the repository at this point in the history
  3. op-bindings: regenerate (#3099)

    * op-bindings: regenerate
    
    The build was missed someplace and is now breaking ci everywhere
    
    * ci: build monorepo with op-bindings change
    tynes committed Jul 26, 2022
    Configuration menu
    Copy the full SHA
    19d6a8e View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    4a07282 View commit details
    Browse the repository at this point in the history
  5. contracts: update docs

    Due to a new version of the openzeppelin contracts,
    the docs need to be regenerated. Each time that the
    contracts are built, these files are generated.
    Merging this commit will make dev on alternative things
    less noisy.
    tynes committed Jul 26, 2022
    Configuration menu
    Copy the full SHA
    0fb9310 View commit details
    Browse the repository at this point in the history
  6. Merge pull request #3101 from ethereum-optimism/contracts/updated-docs

    contracts: update docs
    tynes committed Jul 26, 2022
    Configuration menu
    Copy the full SHA
    330a85c View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    3b2f061 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    dc1d5e8 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    13a9e9b View commit details
    Browse the repository at this point in the history

Commits on Jul 27, 2022

  1. ci: remove publishing of deprecated images

    The `js-builder` and `go-builder` are no longer
    used, they were replaced by `ci-builder`. Their
    dockerfiles have already been deleted from the
    repo, this now deletes their reference in the CI
    docker build pipeline.
    tynes committed Jul 27, 2022
    Configuration menu
    Copy the full SHA
    755d5cb View commit details
    Browse the repository at this point in the history
  2. contracts-bedrock: standard initializable (#3109)

    Use only 1 initializable instead of two different initializable
    imports. Using contracts with the same name will break hardhat.
    
    The two different initializable imports were:
    
    ```solidity
    import { Initializable } from "@openzeppelin/contracts-upgradeable/proxy/utils/Initializable.sol";
    ```
    
    ```solidity
    import { Initializable } from "@openzeppelin/contracts/proxy/utils/Initializable.sol";
    ```
    
    This standardizes on not using `contracts-upgradeable`.
    tynes committed Jul 27, 2022
    Configuration menu
    Copy the full SHA
    d544f80 View commit details
    Browse the repository at this point in the history
  3. proxyd: Parameterize full RPC request logging (#3110)

    Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
    mslipper and mergify[bot] committed Jul 27, 2022
    Configuration menu
    Copy the full SHA
    915f3b2 View commit details
    Browse the repository at this point in the history

Commits on Jul 28, 2022

  1. Configuration menu
    Copy the full SHA
    898c7ac View commit details
    Browse the repository at this point in the history
  2. bindings + snapshot: update

    tynes committed Jul 28, 2022
    Configuration menu
    Copy the full SHA
    6cc63d6 View commit details
    Browse the repository at this point in the history
  3. contracts-bedrock: fix build (#3114)

    * contracts-bedrock: fix build
    
    Standardize on the upgradable initializable since the contracts
    are technically upgradable it is more clear. There are no real
    implementation differences between the upgradable and standard
    initializable implementations. `OwnableUpgradable` is `initializable`
    imported from the upgradable package, and the `L2OutputOracle`
    inherits from `OwnableUpgradable`. This means that the only
    way to standardize on a single implementation of `Initializable`
    is to use the upgradable version.
    
    This also bumps the version of the openzeppelin contracts
    dependency because they refactored the initializable implementation
    and made it easier to understand.
    
    https://github.com/OpenZeppelin/openzeppelin-contracts-upgradeable/releases/tag/v4.7.0
    OpenZeppelin/openzeppelin-contracts#3450
    
    * op-bindings: regenerate
    tynes committed Jul 28, 2022
    Configuration menu
    Copy the full SHA
    c97ad24 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    c57337c View commit details
    Browse the repository at this point in the history
  5. op-bindings: speed up build

    tynes committed Jul 28, 2022
    Configuration menu
    Copy the full SHA
    d16a853 View commit details
    Browse the repository at this point in the history
  6. Merge pull request #3116 from ethereum-optimism/ci/speed-up-bindings

    op-bindings: speed up build
    tynes committed Jul 28, 2022
    Configuration menu
    Copy the full SHA
    74719d7 View commit details
    Browse the repository at this point in the history
  7. Merge pull request #3108 from ethereum-optimism/ci/remove-old-images

    ci: remove publishing of deprecated images
    tynes committed Jul 28, 2022
    Configuration menu
    Copy the full SHA
    fe79994 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    d74e029 View commit details
    Browse the repository at this point in the history
  9. contracts-bedrock: fix typechain export

    The `package.json` defines the files that are included
    in the `npm` package, the previous glob did not match
    all of the typechain artifacts.
    tynes committed Jul 28, 2022
    Configuration menu
    Copy the full SHA
    af96563 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    a057342 View commit details
    Browse the repository at this point in the history
  11. Merge pull request #3095 from ethereum-optimism/deps/contracts-bedrock

    contracts-bedrock: update hardhat forge dep
    tynes committed Jul 28, 2022
    Configuration menu
    Copy the full SHA
    1242293 View commit details
    Browse the repository at this point in the history
  12. contracts-bedrock: update hardhat-forge plugin

    Updates the hh forge plugin to the following:
    
    ```
    "@foundry-rs/hardhat-forge": "^0.1.16"
    ```
    
    Includes bugfixes for when multiple imports
    of contracts with the same name happens.
    tynes committed Jul 28, 2022
    Configuration menu
    Copy the full SHA
    ccbfe54 View commit details
    Browse the repository at this point in the history
  13. makefile: clean-node-modules

    Adds a helper to the makefile for deleting all of the js
    deps. This is useful for when checking out a new branch
    and ensuring that the deps are up to date. I find
    myself doing this often manually, so adding a make command
    makes sense.
    tynes committed Jul 28, 2022
    Configuration menu
    Copy the full SHA
    3c2071c View commit details
    Browse the repository at this point in the history
  14. Merge pull request #3120 from ethereum-optimism/deps/hh-forge

    contracts-bedrock: update hardhat-forge plugin
    tynes committed Jul 28, 2022
    Configuration menu
    Copy the full SHA
    fc050af View commit details
    Browse the repository at this point in the history
  15. ci: Add cloudbuild for bedrock deployer (#3123)

    Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
    mslipper and mergify[bot] committed Jul 28, 2022
    Configuration menu
    Copy the full SHA
    00fe6a7 View commit details
    Browse the repository at this point in the history
  16. ops: Properly set devnet batch submitter address (#3121)

    This was being incorrectly set in the rollup json relative to the
    HD path supplied to the batcher was. This resulted in L2 reorgs
    on the sequencer & the inability to send L2 transactions.
    
    Co-authored-by: Mark Tyneway <mark.tyneway@gmail.com>
    trianglesphere and tynes committed Jul 28, 2022
    Configuration menu
    Copy the full SHA
    6c9862a View commit details
    Browse the repository at this point in the history
  17. Merge pull request #3118 from ethereum-optimism/fix/ctb-typechain-export

    contracts-bedrock: fix typechain export
    tynes committed Jul 28, 2022
    Configuration menu
    Copy the full SHA
    620dddb View commit details
    Browse the repository at this point in the history
  18. core-utils,contracts-bedrock,ci: OpNodeProvider + check

    Implements a simple `OpNodeProvider` that can be used
    to query the op-node. It is used as part of a ci check
    against the devnet. It should add some more health related
    things, now it just prints of rpc responses. This will
    help to debug things.
    tynes committed Jul 28, 2022
    Configuration menu
    Copy the full SHA
    0df744f View commit details
    Browse the repository at this point in the history
  19. contracts-bedrock: modularize build

    Modularize the build of `contracts-bedrock` so that
    more packages can be dev deps. Make it so that the differential
    testing build is different than the typescript build.
    
    This is part of the larger sdk integration work, split out
    into its own smaller PR.
    tynes committed Jul 28, 2022
    Configuration menu
    Copy the full SHA
    c648d55 View commit details
    Browse the repository at this point in the history
  20. integration-tests: modularize

    Move away from using a nested api on the messenger
    and instead use an imported function
    tynes committed Jul 28, 2022
    Configuration menu
    Copy the full SHA
    d97df13 View commit details
    Browse the repository at this point in the history
  21. Merge pull request #3128 from ethereum-optimism/ctb/deps-build-cleanup

    contracts-bedrock: modularize build
    tynes committed Jul 28, 2022
    Configuration menu
    Copy the full SHA
    6f54608 View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    d1702ad View commit details
    Browse the repository at this point in the history
  23. Merge pull request #3129 from ethereum-optimism/fix/itests-modularize

    integration-tests: modularize
    tynes committed Jul 28, 2022
    Configuration menu
    Copy the full SHA
    f90ff30 View commit details
    Browse the repository at this point in the history
  24. Merge pull request #3122 from ethereum-optimism/helper/clean-node-mod…

    …ules
    
    makefile: `clean-node-modules`
    tynes committed Jul 28, 2022
    Configuration menu
    Copy the full SHA
    ae09706 View commit details
    Browse the repository at this point in the history
  25. Configuration menu
    Copy the full SHA
    82ca9c4 View commit details
    Browse the repository at this point in the history

Commits on Jul 29, 2022

  1. contracts-bedrock: fix build

    tynes committed Jul 29, 2022
    Configuration menu
    Copy the full SHA
    0f9e727 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #3124 from ethereum-optimism/ci/check-op-node

    core-utils,contracts-bedrock,ci: OpNodeProvider + check
    tynes committed Jul 29, 2022
    Configuration menu
    Copy the full SHA
    64337ed View commit details
    Browse the repository at this point in the history
  3. contracts-bedrock: in place handling of immutables

    This updates the hardhat task `genesis-l2` to handle
    setting the immutables in the deployed bytecode. This
    is necessary because the predeploys "live" in the L2
    state and are not deployed. Any immutables must be manually
    placed into the bytecode by looking at the compiler output
    and then finding the offsets and slicing in the values.
    
    A high level API is exposed for setting arbitrary immutables
    with the `replaceImmutables` function. This was inspired by
    smock's `computeStorageSlots`.
    
    Longer term, this code will be rewritten in go and be able to
    operate on either a LevelDB database (upgrade an existing system)
    or a `genesis.json` (good for starting a new network). This is
    a requirement because the state surgery is large enough such that
    it must bind directly to LevelDB and be in a language that is
    relatively fast.
    tynes committed Jul 29, 2022
    Configuration menu
    Copy the full SHA
    a32e68a View commit details
    Browse the repository at this point in the history
  4. ci: add immutables check to ci

    tynes committed Jul 29, 2022
    Configuration menu
    Copy the full SHA
    1475b28 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    118e9be View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    9edfdd5 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    43ab823 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    1124f30 View commit details
    Browse the repository at this point in the history
  9. Merge pull request #3119 from ethereum-optimism/ctb/genesis-l2-immuta…

    …bles
    
    contracts-bedrock: in place handling of immutables
    tynes committed Jul 29, 2022
    Configuration menu
    Copy the full SHA
    966e1b1 View commit details
    Browse the repository at this point in the history
  10. deps: update excessively-safe-call

    Fixes foundry config issue so that warnings go away during
    compilation. Also cleans up warnings when running tests.
    
    nomad-xyz/ExcessivelySafeCall@81cd99c
    tynes committed Jul 29, 2022
    Configuration menu
    Copy the full SHA
    7f6ea13 View commit details
    Browse the repository at this point in the history
  11. ops: Use starting L1 Block for timestamp everywhere (#3085)

    * ops: Use starting L1 Block for timestamp everywhere
    
    This transitions the starting timestamp to a new flow. The L2 rollup
    is anchored on a L1 block. The L2 genesis block & rollup config use
    the timestamp of the L1 start block as the their time. Properly
    threading this through the HH tasks is a little tricky but possible.
    This is because we have two flows: creating a L1 network & placing
    the rollup on that and creating a rollup on an existing L1 network
    (like goerli). There is still a L1 starting time for the first flow.
    
    This also fixes a circular dependcy that previously existed. The
    starting timestamp was provided and served as the starting timestamp
    for the L1 genesis & the "L2 Starting Time" in the L2 Output Oracle.
    The actual L2 genesis & rollup start time were based on when the
    Optimism Portal contract was deployed (after the L2 Output Oracle
    contract must have been deployed). The rollup is resilient to being
    started before contracts are fully deployed, so using a specific
    L1 block as the start is the cleanest solution I have seen.
    
    * Fix lint
    
    * Update packages/contracts-bedrock/deploy-config/goerli.ts
    
    * Add undefined checks to l1StartingBlockTag
    
    * lint
    
    * fix checks
    
    Co-authored-by: Matthew Slipper <me@matthewslipper.com>
    Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
    3 people committed Jul 29, 2022
    Configuration menu
    Copy the full SHA
    9e97694 View commit details
    Browse the repository at this point in the history
  12. test(ctb): change gasLimit arg to uint256 (#3111)

    * test(ctb): change gasLimit arg to uint256
    
    * test(ctb): Set maximum diff fuzz gasLimit to 30MM
    
    * test(ctb): Set maximum diff fuzz value to 120MM eth
    
    * ctb: Address compiler warnings
    
    Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
    maurelian and mergify[bot] committed Jul 29, 2022
    Configuration menu
    Copy the full SHA
    f1bcf4b View commit details
    Browse the repository at this point in the history
  13. bedrock: Optional pprof servers (#3136)

    * op-batcher: Enable optional pprof server
    
    * op-proposer: Enable optional pprof server
    
    * op-node: Eanble optional pprof server
    
    Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
    trianglesphere and mergify[bot] committed Jul 29, 2022
    Configuration menu
    Copy the full SHA
    2a7be36 View commit details
    Browse the repository at this point in the history

Commits on Jul 30, 2022

  1. contracts-bedrock: fix deployment

    It was being deployed with the implementation address
    of the `L2OutputOracle` instead of the proxy. This
    was preventing output commitments to actually be posted.
    tynes committed Jul 30, 2022
    Configuration menu
    Copy the full SHA
    3dd296e View commit details
    Browse the repository at this point in the history
  2. contracts-bedrock: add watch task

    A hardhat task that lists off important information.
    Very helpful for debugging live networks.
    
    Usage:
    
    ```
    $ npx hardhat watch --network devnetL1
    ```
    
    It will print off information as the chain makes progress.
    tynes committed Jul 30, 2022
    Configuration menu
    Copy the full SHA
    fe94b86 View commit details
    Browse the repository at this point in the history
  3. ops-bedrock: simple config fixes

    Deletes an old config option and also changes the poll
    interval on the `op-proposer` to `1s` so that it submits
    outputs faster. I found that the proposer will lag a lot,
    especially if the commitment interval is small.
    
    We need to carefully consider the implications of the commitment
    interval and understand if it can be updated dynamically or not.
    tynes committed Jul 30, 2022
    Configuration menu
    Copy the full SHA
    abee324 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    a6b8a69 View commit details
    Browse the repository at this point in the history
  5. Merge pull request #3133 from ethereum-optimism/deps/safe-call

    deps: update excessively-safe-call
    tynes committed Jul 30, 2022
    Configuration menu
    Copy the full SHA
    70bf922 View commit details
    Browse the repository at this point in the history

Commits on Jul 31, 2022

  1. contracts-bedrock: fix slither

    `slither` crashes on new solidity features, one is used
    in the forge tests. Not exactly sure what it is, but
    this will prevent that problem by moving the tests
    to a temp dir when running slither and then moving them
    back.
    tynes committed Jul 31, 2022
    Configuration menu
    Copy the full SHA
    056cb98 View commit details
    Browse the repository at this point in the history

Commits on Aug 1, 2022

  1. hardhat-deploy-config: Support JSON-formatted deploy configs (#3145)

    Also adds a new `deployer` network for use with automation.
    mslipper committed Aug 1, 2022
    Configuration menu
    Copy the full SHA
    6ce47f3 View commit details
    Browse the repository at this point in the history
  2. ci: attempt fix

    tynes committed Aug 1, 2022
    Configuration menu
    Copy the full SHA
    5c0e604 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    b5b6b31 View commit details
    Browse the repository at this point in the history
  4. contracts-bedrock: Fix provider usage in L2OutputOracle deployment sc…

    …ript (#3148)
    
    * ci: Tag cloudbuild images with the commit SHA
    
    * contracts-bedrock: Fix provider usage in L2OutputOracle deployment script
    
    `getDefaultProvider()` returns a fallback mainnet provider, which doesn't work.
    
    Builds on #3147.
    mslipper committed Aug 1, 2022
    Configuration menu
    Copy the full SHA
    6d9011e View commit details
    Browse the repository at this point in the history
  5. ops: update foundry docker image version (#3090)

    Update to commit 64fe4ac
    
    https://github.com/foundry-rs/foundry/tree/64fe4acc97e6d76551cea7598c201f05ecd65639
    foundry-rs/foundry@64fe4ac
    
    This update is pulled in so that the new config file format can be
    adopted.
    
    Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
    tynes and mergify[bot] committed Aug 1, 2022
    Configuration menu
    Copy the full SHA
    e736a4d View commit details
    Browse the repository at this point in the history
  6. Merge pull request #3143 from ethereum-optimism/fix/slither-ci

    contracts-bedrock: fix slither
    tynes committed Aug 1, 2022
    Configuration menu
    Copy the full SHA
    bd7258a View commit details
    Browse the repository at this point in the history
  7. contracts-bedrock: fix gas snapshot (#3144)

    The gas snapshot check was disabled in CI because it
    would cause a lot of merge conflicts. Now that there
    is no rush to change the contracts, we should re-enable
    the check. Also commit in the latest snapshot.
    
    Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
    tynes and mergify[bot] committed Aug 1, 2022
    Configuration menu
    Copy the full SHA
    bea97cd View commit details
    Browse the repository at this point in the history
  8. feat: Add wstETH to sdk (#3127)

    * add wsteth to sdk
    
    * changeset
    
    Co-authored-by: Will Cory <willcory@Wills-MacBook-Pro.local>
    roninjin10 and Will Cory committed Aug 1, 2022
    Configuration menu
    Copy the full SHA
    f05ab6b View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    1d23f3b View commit details
    Browse the repository at this point in the history
  10. Merge pull request #3139 from ethereum-optimism/fix/docker-config

    ops-bedrock: simple config fixes
    tynes committed Aug 1, 2022
    Configuration menu
    Copy the full SHA
    89a2f76 View commit details
    Browse the repository at this point in the history
  11. Merge pull request #3138 from ethereum-optimism/feat/watch-task

    contracts-bedrock: add watch task
    tynes committed Aug 1, 2022
    Configuration menu
    Copy the full SHA
    3bbbfb3 View commit details
    Browse the repository at this point in the history
  12. Merge pull request #3137 from ethereum-optimism/fix/deploy-portal

    contracts-bedrock: fix deployment
    tynes committed Aug 1, 2022
    Configuration menu
    Copy the full SHA
    d8f03f9 View commit details
    Browse the repository at this point in the history
  13. op-node: Add p2p utils (#3150)

    * op-node: Add p2p utils
    
    * Update op-node/cmd/p2p/cmd.go
    
    Co-authored-by: Joshua Gutow <jgutow@optimism.io>
    
    * Update op-node/cmd/p2p/cmd.go
    
    Co-authored-by: Joshua Gutow <jgutow@optimism.io>
    
    * lint
    
    * fix devnet
    
    Co-authored-by: Joshua Gutow <jgutow@optimism.io>
    mslipper and trianglesphere committed Aug 1, 2022
    Configuration menu
    Copy the full SHA
    f7fcf8a View commit details
    Browse the repository at this point in the history
  14. Revert "op-node: Add p2p utils (#3150)" (#3152)

    This reverts commit f7fcf8a.
    mslipper committed Aug 1, 2022
    Configuration menu
    Copy the full SHA
    9501096 View commit details
    Browse the repository at this point in the history
  15. op-node: Properly set timestamp in PreparePayloadAttributes (#3151)

    This now uses a passed in timestamp for PreparePayloadAttributes.
    This is important because when generating a payload attributes from
    a batch it should be using the timestamp of the batch, not the
    L2 parent + block time. When we are creating payloads based on the
    L2 parent time, that is easy to set there instead of pulling it into
    this function.
    
    This enabled/exacerbated a divergence bug where the timestamp of the
    batch was not the timestamp that was being set inside
    PreparePayloadAttributes.
    
    Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
    trianglesphere and mergify[bot] committed Aug 1, 2022
    Configuration menu
    Copy the full SHA
    4fe787d View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    0c5ad1d View commit details
    Browse the repository at this point in the history
  17. op-node: Add p2p utils (#3153)

    * op-node: Add p2p utils
    
    * Update op-node/flags/flags.go
    
    Co-authored-by: Diederik Loerakker <proto@protolambda.com>
    
    Co-authored-by: Diederik Loerakker <proto@protolambda.com>
    mslipper and protolambda committed Aug 1, 2022
    Configuration menu
    Copy the full SHA
    0e7184b View commit details
    Browse the repository at this point in the history
  18. contracts-bedrock: L2ToL1MessagePasser event extension

    Emit an additional event during `initiateWithdrawal` that includes
    the withdrawal hash so that it is easy to observe changes to the
    `sentMessages` mapping.
    tynes committed Aug 1, 2022
    Configuration menu
    Copy the full SHA
    4554155 View commit details
    Browse the repository at this point in the history
  19. op-bindings: regenerate

    tynes committed Aug 1, 2022
    Configuration menu
    Copy the full SHA
    6db6627 View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    391c162 View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    6e272fc View commit details
    Browse the repository at this point in the history
  22. Merge pull request #3135 from ethereum-optimism/fix/contracts-event-e…

    …xtension
    
    contracts-bedrock: L2ToL1MessagePasser event extension
    tynes committed Aug 1, 2022
    Configuration menu
    Copy the full SHA
    20a9fe4 View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    357c770 View commit details
    Browse the repository at this point in the history

Commits on Aug 2, 2022

  1. contracts-bedrock: add forge contract verification support (#3141)

    * contracts-bedrock: add forge contract verification support
    
    Add etherscan contract verification for the hh/foundry
    compiler toolchain. This will eventually be upstreamed,
    but is implemented here to ensure that it works thoroughly
    first.
    
    To run the task:
    
    ```
    export ETHERSCAN_API_KEY=$(cat api-key.txt)
    $ npx hardhat forge-verify --network goerli
    ```
    
    In the future, other contract verification backends
    will be added to forge and this task will be updated
    to support them.
    
    Example contract that was verified: https://goerli.etherscan.io/address/0x1234662682c85fa6fb375416d14db965eba222ba#code
    
    An individual contract can be targeted instead of all of them
    with the `--contract` flag. If hardhat deploy has configured
    external deployments, forge will not be able to verify them.
    It may be possible to implement that in the future.
    
    * contracts-bedrock: modularize tasks
    tynes committed Aug 2, 2022
    Configuration menu
    Copy the full SHA
    28649d6 View commit details
    Browse the repository at this point in the history
  2. feat(sdk): add Bedrock support to SDK (#3086)

    * core-utils: add bedrock types
    
    * sdk: implement bedrock functionality
    
    * tests: update for bedrock
    
    * sdk: add hardhat deposit task
    
    * circleci: run deposit task in ci
    
    * tsconfig: cleanup
    
    * contracts-bedrock: make commitment interval larger
    
    * changeset: add
    
    Co-authored-by: Mark Tyneway <mark.tyneway@gmail.com>
    smartcontracts and tynes committed Aug 2, 2022
    Configuration menu
    Copy the full SHA
    dac4a9f View commit details
    Browse the repository at this point in the history
  3. op-node: Isolated channel frame serialization (#3125)

    * op-node: Add channel frame serialization
    
    This creates a struct & serialization & deserialization methods
    for it. This is to replace the current serialization code which
    is embedded in more complex methods.
    
    The reading is done with a reader API instead of a bytes API because
    the frame is variable length & is originally merged together with
    other frames without a clean division. The writing API uses a
    writer for simplicity (but is not required).
    
    This lays the groundwork for easily switching to fixed int sizes.
    
    * op-node: Use channel frame deserialization
    
    This uses the new channel frame object for deserialization. Some
    of the API interaction is a little weird in the channel_bank
    IngestData loop, but the code is not able to be easily tested and
    upgraded.
    
    * op-node: Use channel frame in serialization
    
    This uses the default implementation (through a struct) rather
    than the custom logic. It might make sense to use a slightly
    different API for serialization than deserialization given the
    inputs, but splitting out the logic into it's own function is
    still an improvement.
    
    Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
    trianglesphere and mergify[bot] committed Aug 2, 2022
    Configuration menu
    Copy the full SHA
    9673eca View commit details
    Browse the repository at this point in the history

Commits on Aug 3, 2022

  1. op-node: Derivation metrics (#3156)

    * op-node: Derivation metrics
    
    Adds support for the following batch derivation metrics:
    
    - 0/1 gauge for if the derivation is idle
    - Count of total pipeline resets
    - Count of total unsafe payloads received
    - Count of total derivation errors
    - Gauge tracking the various L1/L2 safe/unsafe heads
    
    * review updates + more metrics
    mslipper committed Aug 3, 2022
    Configuration menu
    Copy the full SHA
    a184269 View commit details
    Browse the repository at this point in the history
  2. op-node: Add transactions sequenced metric (#3162)

    This will allow us to measure opnode throughput.
    mslipper committed Aug 3, 2022
    Configuration menu
    Copy the full SHA
    bd65ee5 View commit details
    Browse the repository at this point in the history
  3. op-node/cmd: update op-node command description (#3140)

    Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
    protolambda and mergify[bot] committed Aug 3, 2022
    Configuration menu
    Copy the full SHA
    6500c75 View commit details
    Browse the repository at this point in the history
  4. use dai adapter not standard (#3159)

    Co-authored-by: Will Cory <willcory@Wills-MacBook-Pro.local>
    Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
    3 people committed Aug 3, 2022
    Configuration menu
    Copy the full SHA
    7b7dae0 View commit details
    Browse the repository at this point in the history
  5. specs: fix spec markdown linting (#3061)

    * style(specs): fix toc/lint in specs, update CI
    
    style(specs): lint/toc/link fixes
    
    style(readme): fix bedrock contracts link
    
    chore(specs): specs lint scripts
    
    chore(specs): update CI jobs to use new lint scripts and unsilence links linter
    
    style(specs): fix toc, fix quotes in markdown lint script
    
    * yarn: update linting dependencies
    
    * specs: add minimal batch submitter spec, fix broken links
    
    Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
    protolambda and mergify[bot] committed Aug 3, 2022
    Configuration menu
    Copy the full SHA
    b1cc033 View commit details
    Browse the repository at this point in the history
  6. typo (#3084)

    Co-authored-by: Matthew Slipper <me@matthewslipper.com>
    fasteater and mslipper committed Aug 3, 2022
    Configuration menu
    Copy the full SHA
    96103ed View commit details
    Browse the repository at this point in the history

Commits on Aug 4, 2022

  1. proxyd: Unwrap single RPC batches (#3165)

    * proxyd: Unwrap single RPC batches
    
    * Update backend.go
    mslipper committed Aug 4, 2022
    Configuration menu
    Copy the full SHA
    406a4fc View commit details
    Browse the repository at this point in the history
  2. ci: Add devnet timeout (#3167)

    `no_output_timeout` wasn't being honored because the deposit command produced output on each poll. Instead, use the `timeout` command to kill the process from within the job itself regardless of output.
    mslipper committed Aug 4, 2022
    Configuration menu
    Copy the full SHA
    acdea79 View commit details
    Browse the repository at this point in the history
  3. op-node: Use unmetered L1 Attributes Transaction (#3157)

    * op-node: Use unmetered L1 Attributes Transaction
    
    This enables the IsSystemTransaction flag in the L1 Attributes
    deposit & updates to the latest version of geth.
    
    * specs updates
    
    * Update specs/deposits.md
    
    * feat: bedrock deposit transaction type update
    
    * bedrock: update geth dependency
    
    * fix(core-utils): bedrock deposit tx encode/decode typescript fixes
    
    * feat(packages/contracts-bedrock): update UserDepositTransaction type and encoding to handle isSystemTransaction bool
    
    * contracts-bedrock: update differential deposit tx solidity <> js fuzzing
    
    * core-utils
    
    * contracts-bedrock
    
    * contracts-bedrock: fix test
    
    * contracts-bedrock: fix differential tests
    
    * contracts-bedrock: fix broken test
    
    * contracts-bedrock: gas snapshot
    
    Co-authored-by: protolambda <proto@protolambda.com>
    Co-authored-by: Mark Tyneway <mark.tyneway@gmail.com>
    3 people committed Aug 4, 2022
    Configuration menu
    Copy the full SHA
    8ae3915 View commit details
    Browse the repository at this point in the history
  4. proxyd: Add frontend rate limiting (#3166)

    * proxyd: Add frontend rate limiting
    
    To give us more flexibiltiy with rate limiting, proxyd now supports rate limiting of client (frontend) requests in addition to upstream (backend) requests. This PR also gives us the ability to exempt certain user agents/origins from rate limiting.
    
    * lint
    mslipper committed Aug 4, 2022
    Configuration menu
    Copy the full SHA
    b6f4bfc View commit details
    Browse the repository at this point in the history