- 06 Oct, 2022 18 commits
-
-
Annie Ke authored
-
mergify[bot] authored
indexer: Restore some bindings
-
mergify[bot] authored
-
mergify[bot] authored
ENG-2835 adds release configs for endpoint-monitor
-
mergify[bot] authored
-
mergify[bot] authored
Use uint64 for arithmetic in XDM's baseGas
-
Maurelian authored
-
Maurelian authored
-
Matthew Slipper authored
To support Bedrock and non-Bedrock within the same indexer, we need to include the SCC bindings.
-
Matthew Slipper authored
This allows us to use stacked diffs more effectively.
-
Matthew Slipper authored
-
Matthew Slipper authored
-
Matthew Slipper authored
-
Matthew Slipper authored
-
Matthew Slipper authored
-
Matthew Slipper authored
Prepares the repo to land the indexer changes by mocing some additional utilities to `op-e2e` and moving `backoff` from `op-node` into `op-service`.
-
Joshua Gutow authored
* op-node: Simplify Receipts Fetching API The previous API would return a receipts fetcher that the caller was responsible for iterating through and then calling `Result` on. This moves this inside the `Fetch` function. This simplifies usage of the API and does not result in performance regression because the receipts hash check requires all receipts to be fetched before * Cache receipts fetcher rather than receipts This modifies the refactor to be equivalent to the previous code. Caching the receipts fetcher is actually critical for performance because the fetcher caches intermediate results. The fetcher typically makes lots of calls to fetch all the receipts so if all work is thrown out on a single failure it will be very hard for the node to make progress. * Rename Fetch -> FetchReceipts
-
Mark Tyneway authored
* ctp: mainnet nft bridge deployments * Create mighty-planets-pump.md Co-authored-by:
mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
-
- 05 Oct, 2022 5 commits
-
-
Maurelian authored
* ctb: Rename event in the L2ToL1MessagePasser The new name MessagePassed, is less confusing since the name 'WithdrawalInitiated' is used in the L2 Bridge. * Chore: bindings * op-node: fix tests for MessagePassed topic 0 * chore: Changeset Co-authored-by:
mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
-
protolambda authored
op-node: split driver state/model into L1 state, L1 origin selector, L2 sequencer, L2 derivation (#3647) * op-node: split driver state/model into l1 state, l1 origin selector, l2 sequencer, l2 derivation * op-node: implement driver refactor review feedback Co-authored-by:
mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
-
Mark Tyneway authored
* contracts-bedrock: cleanup initialize * bindings: regenerate * contracts-bedrock: snapshot * contracts-bedrock: remove extra gap * bindings: regenerate Co-authored-by:
mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
-
Matthew Slipper authored
* op-e2e: Start adopting op-chain-ops This PR starts the process of adopting op-chain-ops in op-e2e by porting over the `Secrets` struct we use in Hive. This lets us share wallet generation code among different projects. Adopting op-chain-ops in op-e2e improves the following: 1. Transactions now route through the correct proxy contracts. 2. There's no need to wait for a contract deployment since conracts exist in genesis. 3. We can export the test helpers in op-e2e to enable us to run similar end-to-end tests in other applications like the indexer This is the first in a series of stacked PRs. * op-e2e: Migrate tests to op-chain-ops * Updates from code review * remove unnecessary method * Update op-e2e/setup.go Co-authored-by:
Joshua Gutow <jgutow@optimism.io> * CR updates * Update op-e2e/e2eutils/secrets.go Co-authored-by:
Joshua Gutow <jgutow@optimism.io> * Update op-e2e/e2eutils/secrets.go Co-authored-by:
Joshua Gutow <jgutow@optimism.io> * try to fix test timeout * fix deadlock * fix similar case Co-authored-by:
Joshua Gutow <jgutow@optimism.io>
-
Maurelian authored
--wip-- wip
-
- 04 Oct, 2022 13 commits
-
-
Mark Tyneway authored
Adds the test key used in geth's unit tests to the genesis alloc. This makes testing more seamless when using the op-chain-ops tooling Co-authored-by:
mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
-
Mark Tyneway authored
Check for nil values coming from the block when creating a new `StorageConfig`. This will prevent cryptic errors that happen deeper in serialization, when trying to deal with `nil` values. Instead the error should be caught earlier with a better error message. Co-authored-by:
mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
-
Mark Tyneway authored
For building a developer genesis, if the `L2Addresses` struct is `nil`, it will now use the default values. This simplifies config and reduces code duplication as `nil` can now be passed. Co-authored-by:
mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
-
Mark Tyneway authored
Improve the error message on failed deployments. This will make it much easier to debug issues with config. The name of the deployment will not be returned as part of the error, along with the error message itself. This error is likely due to a revert in the constructor or an out of gas during deployment. Co-authored-by:
mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
-
jhawk28 authored
Co-authored-by:
Matthew Slipper <me@matthewslipper.com> Co-authored-by:
mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
-
Joshua Gutow authored
* op-node: Clean up pipeline Now that the engine queue is the only step stage, it is easy to consolidate different loops inside the derivation pipeline. * op-node: Fully remove the progress API It has been partially replaced with the Origin API, but the open/closed distinction no longer exists. Co-authored-by:
Matthew Slipper <me@matthewslipper.com>
-
Matthew Slipper authored
-
Mark Tyneway authored
Now we no longer need to use one off scripts for testing this kind of thing. The hh task will check to see the status of a transaction hash and then finalize the withdrawal on L1 if the message status is ready for relay. It does this by creating a `CrossChainMessenger`. Co-authored-by:
mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
-
protolambda authored
Co-authored-by:
mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
-
Joshua Gutow authored
This function was not being used and could be safely removed. Co-authored-by:
mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
-
Maurelian authored
Co-authored-by:
mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
-
Matthew Slipper authored
Integrates the HTTP PollingClient with the op-node. To do this, I needed to change the RPC interface to return an `ethereum.Subscription` object rather than a concrete *rpc.ClientSubscription instance. I also introduced a new method to return the correct `client.RPC` implementation based on the user's chosen RPC URL. Lastly, I added an additional CircleCI job to run all end-to-end tests against an HTTP-based RPC endpoint to prevent issues from arising in the future.
-
Matthew Slipper authored
The Geth RPC client does not support subscriptions for HTTP endpoints. As a result, users who set an HTTP endpoint for the op-node were unable to sync since the driver never got any L1 head updates. This PR adds a wrapper around `client.RPC` that makes `newHeads` subscriptions work over HTTP. It does this by layering a notifications system that mimicks what Geth does under the hood on top of an HTTP polling loop. The interface is the same as the one exposed by the raw RPC client. I tried my best to match Geth's subscription semantics, including: - Closing the client causes all subscribers to get a nil error on their error channels. - Unsubscribing closes each subscriber's error channel. - Calling `Unsubscribe` multiple times is safe. The poll rate is configurable. It default to 250ms, which should be fine for both L1 and L2. I tried at first to use Geth's underlying libraries, but found that it was impossible to do so without making changes to Geth itself to export more fields. This system is also simpler, and gives us room to instrument the polling loop in the future. The wrapper is not integrated with the rest of the system in this PR. I'll stack those changes on top of this one so we can review this in isolation. Totally open to different solutions here - marking as draft to reflect the fact that if there's a better way to do this, I'm happy o close this + the dependent PRs and go a different route. Meta: - Fixes ENG-2490
-
- 03 Oct, 2022 3 commits
-
-
Matthew Slipper authored
* ci: Parallelize op-e2e Replaces my previous PRs since `t.Parallel()` works fine. Also exposes the listener on the op-node, so that we can use a port of zero and allow the kernel to allocate a port. * close other geth nodes * missed one * use t.cleanup
-
Zach Howard authored
-
protolambda authored
-
- 01 Oct, 2022 1 commit
-
-
Zach Howard authored
-