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

fix: crosschain merge conflicts #88

Merged
merged 55 commits into from
Oct 8, 2024

Conversation

agusduha
Copy link
Member

@agusduha agusduha commented Oct 8, 2024

No description provided.

dependabot bot and others added 30 commits October 2, 2024 19:44
…-optimism#12229)

Bumps ethereum/client-go from v1.14.8 to v1.14.11.

---
updated-dependencies:
- dependency-name: ethereum/client-go
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Fixes an error in the deploy script that was recently introduced.
SuperchainProxyAdmin was being set twice and ownership was being
set incorrectly.
…2267)

Until recently we were running in-process and didn't have any timeout at all. Seems worth having but we're hitting the 1 hour timeout.
…timism#12271)

* feat: Add ChainAssertions for deploySuperchain contracts

* Update Deploy.s.sol

Co-authored-by: Matt Solomon <[email protected]>

---------

Co-authored-by: Matt Solomon <[email protected]>
Adds SOLIDITY_UPGRADES.md to contracts-bedrock. Please note that
this document makes some references to a unified Solidity version.
This will be true in a few days...
Adds Kontrol summary build back into CI just to verify that it
functions correctly. In line with our recent CI changes this
task still does not enforce that the build summary be checked in.
* Update op-geth depdency to 1.14.10 base

* Update op-geth to v1.14.11 merge base

* Update to ethereum-optimism/op-geth commit
* op-deployer: Test for existing OPCM

Adds a test for deployments against an existing OPCM. The test works by spinning up an Anvil instance and forking Sepolia. To run this test, you'll need to specify two env vars:

- `SEPOLIA_RPC_URL`: RPC URL for a Sepolia node.
- `ENABLE_ANVIL`: Set to `true` to enable the test.

In CI, the test uses our internal CI RPC nodes.

* goimports

* ensure streams close

* lint

* run anvil as part of unit not integration tests

* simplify

* remove foundry from kurtosis

* use auto mine

* mount artifacts

* redeploy OPCM

* comment
* op-deployer: Update artifacts url

* increase estimator multiples

* log transactions
…2277)

Contracts being hosted in this repository that are considered
"third-party" are to be hosted in the vendor folder.
* feat: Add reasons to checkOptimismPortal2

* feat: log if impl of proxy add more functions

* feat: More ChainAssertions reason strings

* feat: checkDisputeGameFactory for isProxy

* feat: Final checkAssertions error codes
…ereum-optimism#12263)

Bumps [github.com/multiformats/go-multiaddr-dns](https://github.com/multiformats/go-multiaddr-dns) from 0.3.1 to 0.4.0.
- [Release notes](https://github.com/multiformats/go-multiaddr-dns/releases)
- [Commits](multiformats/go-multiaddr-dns@v0.3.1...v0.4.0)

---
updated-dependencies:
- dependency-name: github.com/multiformats/go-multiaddr-dns
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
This will clear the way to delete a lot of the deployX() functions in
Deploy.s.sol
* remove deleted .yml path

* delete content about mergify
* Update README.md

* Update README.md

Changed idea

* Update SECURITY.md
* Update SECURITY.md

* Update SECURITY.md
Adds local semgrep scanning with blocking CI rules. Since this is
local it will run without needing to log in to semgrep and can
therefore run on external branches.
* Update SECURITY.md

* Update SECURITY.md
* cannon: Fix 64-bit memory access

Also, replace `memory.GetMemory` with `memory.GetUint32`

* Rename SetWord to SetUint32

* fix comment
…on (ethereum-optimism#12238)

* Move serialize from cannon to op-service

* Add binary deserialization to asterisc's state converter trace function

* Use Asterisc's witness cmd to generate state data

* Fix op-challenger tests

* remove unnecessary logic from state_converter, and only test witness subcommand
* e2e: attempt fix L1Deployments check

* e2e: attempt another fix
…s.run()

 (ethereum-optimism#12260)

* feat: Rename setupSuperchain to deploySuperchain

* feat: Replace deployImplementations with call to DeployImplementations.run()

* feat: Add implsUnstrict() to get all impl addresses

* feat: Remove deployL1xDM and move its ChainAssertion to deployImplementations

* feat: Remove deployOptimismPortal2 and move its assertion to deplyImpls

* feat: Remove deployOptimismMintableFactory and move its assertion to deplyImpl

* fix: test file name

* fix: Incorrect implementation contract name in _implUnstrict()

* feat: Add checkSystemConfigInterop

* feat: Move unused deploySuperchainConfig to DeployOwnership

* feat: Delete deployOptimismPortalInterop

* feat: Delete unused FP deploy functions

Preimage Oracle
DelayedWeth
DGF

A ChainAssertion was also added for the PreimageOracle

* feat: Delete deploySystemConfig

* feat: remove superfluous Unstrict suffix from contract getters

* feat: Improve reason string in checkSystemConfigI

* feat: Add missing chainAssertions

* feat: Require interop flag sanity

* feat: limit fuzz runs in CI on this test
* feat: Move deployImplementations up to align with order of usage

* feat: Add OPCM to deployImplementations

* fix: compiler warning
…um-optimism#12327)

Bumps [golang.org/x/time](https://github.com/golang/time) from 0.6.0 to 0.7.0.
- [Commits](golang/time@v0.6.0...v0.7.0)

---
updated-dependencies:
- dependency-name: golang.org/x/time
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
…um-optimism#12332)

* feat: Move DEFAULT_STARTING_ANCHOR_ROOTS to Constants library

* feat: Move DEFAULT_STARTING_ANCHOR_ROOTS to scripts/libraries/Constants

* fix: import error
* contracts: update chain assertions

Updates the assertion that the storage is either 1 or 0xff.
This enables the usage of `_disableInitializers` which is
required for the Standard L2 Genesis project, so that
the `SystemConfig` doesn't make external calls during its
deployment.

* lint: fix

* nit: address naming

* rebase and fix build

* build: fix

* build: fix
maurelian and others added 22 commits October 5, 2024 04:12
* feat(ci): allow solc warnings on tests

* Test: forge build with warnings in test

* Revert "Test: forge build with warnings in test"

This reverts commit b479829.
…hereum-optimism#12329)

* dependabot(gomod): bump golang.org/x/crypto from 0.27.0 to 0.28.0

Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.27.0 to 0.28.0.
- [Commits](golang/crypto@v0.27.0...v0.28.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* deps: fix go.mod

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Mark Tyneway <[email protected]>
Adds the sol-expectrevert-no-args semgrep rule locally.
* contracts: clean up deploy script abstractions

Move the implementation deployments into `deployImplementations`
and the initializations into the initizer function so that things
are grouped more logically. Even though we use OPSM for modern
deployments, the legacy code is still in the repo. This change
makes it easier to implement Standard L2 Genesis, where we depend
on the `OptimismPortal` being initialized before the `SystemConfig`,
since the `SystemConfig` makes calls to the portal during its
`initialize` call.

* op-e2e: remove dependency on contracts existing

Modularizes the functionality more

* lint: fix
Cleans up the existing semgrep rules and gets rid of the blanket
ignores that were being applied everywhere now that we can add
ignores for specific files in the rule config.
…ism#12346)

Updates contracts-bedrock-tests to use foundry profiles to set the
fuzz/invariant run parameters instead of inlining it. Has the
added benefit of separating out into two profiles so that tests
can be selectively tuned down for the heavy fuzz pipeline without
also tuning them down for the standard CI pipeline.
Adds sol-style-malformed-require to local semgrep and actually
fixes the rule so that it works. Fixes a couple of findings that
the rule found.
* contracts-bedrock: cleanup `FeeVault`

Updates the `FeeVault` to follow modern conventions used in the repo
by moving to usage of interfaces rather than implementations. Also
moves the `FeeVault` into the `L2` package as its only really useful
on L2. This is meant to reduce the diff for the Stanard L2 Genesis
by breaking up the refactor into its own small PR.

* contracts: update semver-lock

* semver-lock: fixup

* cleanup: refactor

* lint: fix

* snapshots: regenerate

* interface check: ignore fee vaults

There is an issue with normalization of enums when they are return
values
…um-optimism#12306)

* contracts-bedrock: fixes `OptimismMintableERC721Factory` test

This contract is only used as a predeploy so it should be tested based
on the L2 genesis generation setup. Ensures that the address is stored
and labeled as part of in memory test setup, as well as updates the
tests to work based on the predeploy.

This is a small refactor to make future Standard L2 genesis work more
simple.

Also includes a small ABI fix to the `OptimismMintableERC721Factory`
since this contract has not been updated to decouple immutable naming
conventions from its ABI.

* snapshots: update

* checks: fix

* lint: fix

* typo: fix
Adds sol-style-malformed-revert to local semgrep and fixes the
rule so that it actually works. Fixes a couple of findings that
the updated rule discovered.
A few things in this commit:
- Adds a new check for unused imports in contracts
- Cleans up contracts based on that check
- Removes several files that aren't being used anymore
Adds the Solidity unused imports check to ci.
Adds MIPSInstructions as an exception to malformed require.
* OPCM: DepolyOPChain additional testing checks.

* fix: absolute prestate.

* fix: adding to assertions.

* fix: maxClockDuration check added.
Adds a new configuration to DeployImplementations so that it
knows which MIPS version to deploy.
Adds semgrep-scan-local to top-level justfile.
…configs in init() methods (ethereum-optimism#12307)

This was causing op-program to spend cycles parsing the config JSON files to set constants that weren't actually used.
@agusduha agusduha self-assigned this Oct 8, 2024
@agusduha agusduha merged commit a79bf4e into sc-feat/crosschain-erc20 Oct 8, 2024
3 checks passed
@agusduha agusduha deleted the fix/crosschain-merge-conflicts branch October 8, 2024 13:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.