diff --git a/.changeset/chilled-melons-speak.md b/.changeset/chilled-melons-speak.md deleted file mode 100644 index 5266a6b24..000000000 --- a/.changeset/chilled-melons-speak.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@eth-optimism/contracts-bedrock': patch ---- - -Optionally print cast commands during migration diff --git a/.changeset/flat-adults-hope.md b/.changeset/flat-adults-hope.md deleted file mode 100644 index fdf2e8342..000000000 --- a/.changeset/flat-adults-hope.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@eth-optimism/atst': minor ---- - -Update readAttestations and prepareWriteAttestation to handle keys longer than 32 bytes diff --git a/.changeset/fluffy-geese-yell.md b/.changeset/fluffy-geese-yell.md deleted file mode 100644 index b88f17394..000000000 --- a/.changeset/fluffy-geese-yell.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@eth-optimism/atst': minor ---- - -Remove broken allowFailures as option diff --git a/.changeset/long-frogs-study.md b/.changeset/long-frogs-study.md deleted file mode 100644 index e84fd3598..000000000 --- a/.changeset/long-frogs-study.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@eth-optimism/common-ts': patch ---- - -Fix BaseServiceV2 configuration for caseCase options diff --git a/.changeset/metal-apes-taste.md b/.changeset/metal-apes-taste.md deleted file mode 100644 index 40bd1c54d..000000000 --- a/.changeset/metal-apes-taste.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@eth-optimism/atst': patch ---- - -Update docs diff --git a/.changeset/metal-feet-give.md b/.changeset/metal-feet-give.md deleted file mode 100644 index d3b64a127..000000000 --- a/.changeset/metal-feet-give.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@eth-optimism/atst': minor ---- - -Move react api to @eth-optimism/atst/react so react isn't required to run the core sdk diff --git a/.changeset/poor-buses-hug.md b/.changeset/poor-buses-hug.md deleted file mode 100644 index 66db062bb..000000000 --- a/.changeset/poor-buses-hug.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@eth-optimism/sdk': patch ---- - -Update migrated withdrawal gaslimit calculation diff --git a/.changeset/quiet-crews-leave.md b/.changeset/quiet-crews-leave.md deleted file mode 100644 index 9780f99ca..000000000 --- a/.changeset/quiet-crews-leave.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@eth-optimism/atst': minor ---- - -Fix main and module in atst package.json diff --git a/.changeset/sixty-days-explain.md b/.changeset/sixty-days-explain.md deleted file mode 100644 index f6f621878..000000000 --- a/.changeset/sixty-days-explain.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@eth-optimism/atst': patch ---- - -Fixed bug with atst not defaulting to currently connected chain diff --git a/.changeset/slimy-mangos-brake.md b/.changeset/slimy-mangos-brake.md deleted file mode 100644 index 2ec9d8e5c..000000000 --- a/.changeset/slimy-mangos-brake.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@eth-optimism/atst': minor ---- - -Deprecate parseAttestationBytes and createRawKey in favor for createKey, createValue diff --git a/.changeset/three-apes-study.md b/.changeset/three-apes-study.md deleted file mode 100644 index 0b6ff4beb..000000000 --- a/.changeset/three-apes-study.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@eth-optimism/fault-detector': patch ---- - -Fixes a bug that would cause the fault detector to error out if no outputs had been proposed yet. diff --git a/.changeset/wicked-ads-pump.md b/.changeset/wicked-ads-pump.md deleted file mode 100644 index d0aab06d3..000000000 --- a/.changeset/wicked-ads-pump.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -'@eth-optimism/contracts-bedrock': patch ---- - -Print tenderly simulation links during deployment diff --git a/integration-tests/package.json b/integration-tests/package.json index c53fa68f7..1fb1408d4 100644 --- a/integration-tests/package.json +++ b/integration-tests/package.json @@ -30,10 +30,10 @@ "devDependencies": { "@babel/eslint-parser": "^7.5.4", "@eth-optimism/contracts": "^0.5.40", - "@eth-optimism/contracts-bedrock": "0.13.0", + "@eth-optimism/contracts-bedrock": "0.13.1", "@eth-optimism/contracts-periphery": "^1.0.7", "@eth-optimism/core-utils": "0.12.0", - "@eth-optimism/sdk": "2.0.0", + "@eth-optimism/sdk": "2.0.1", "@ethersproject/abstract-provider": "^5.7.0", "@ethersproject/providers": "^5.7.0", "@ethersproject/transactions": "^5.7.0", diff --git a/op-node/cmd/batch_decoder/README.md b/op-node/cmd/batch_decoder/README.md index 5c3b7639e..d2454ec3d 100644 --- a/op-node/cmd/batch_decoder/README.md +++ b/op-node/cmd/batch_decoder/README.md @@ -26,6 +26,16 @@ the transaction hash. into channels. It then stores the channels with metadata on disk where the file name is the Channel ID. +### Force Close + +`batch_decoder force-close` will create a transaction data that can be sent from the batcher address to +the batch inbox address which will force close the given channels. This will allow future channels to +be read without waiting for the channel timeout. It uses uses the results from `batch_decoder fetch` to +create the close transaction because the transaction it creates for a specific channel requires information +about if the channel has been closed or not. If it has been closed already but is missing specific frames +those frames need to be generated differently than simply closing the channel. + + ## JQ Cheat Sheet `jq` is a really useful utility for manipulating JSON files. @@ -48,7 +58,6 @@ jq "select(.is_ready == false)|[.id, .frames[0].inclusion_block, .frames[0].tran ## Roadmap - Parallel transaction fetching (CLI-3563) -- Create force-close channel tx data from channel ID (CLI-3564) - Pull the batches out of channels & store that information inside the ChannelWithMetadata (CLI-3565) - Transaction Bytes used - Total uncompressed (different from tx bytes) + compressed bytes diff --git a/op-node/cmd/batch_decoder/main.go b/op-node/cmd/batch_decoder/main.go index 552f88aa3..d63b32de6 100644 --- a/op-node/cmd/batch_decoder/main.go +++ b/op-node/cmd/batch_decoder/main.go @@ -9,6 +9,7 @@ import ( "github.com/ethereum-optimism/optimism/op-node/cmd/batch_decoder/fetch" "github.com/ethereum-optimism/optimism/op-node/cmd/batch_decoder/reassemble" + "github.com/ethereum-optimism/optimism/op-node/rollup/derive" "github.com/ethereum/go-ethereum/common" "github.com/ethereum/go-ethereum/ethclient" "github.com/urfave/cli" @@ -113,6 +114,46 @@ func main() { return nil }, }, + { + Name: "force-close", + Usage: "Create the tx data which will force close a channel", + Flags: []cli.Flag{ + cli.StringFlag{ + Name: "id", + Required: true, + Usage: "ID of the channel to close", + }, + cli.StringFlag{ + Name: "inbox", + Value: "0x0000000000000000000000000000000000000000", + Usage: "(Optional) Batch Inbox Address", + }, + cli.StringFlag{ + Name: "in", + Value: "/tmp/batch_decoder/transactions_cache", + Usage: "Cache directory for the found transactions", + }, + }, + Action: func(cliCtx *cli.Context) error { + var id derive.ChannelID + if err := (&id).UnmarshalText([]byte(cliCtx.String("id"))); err != nil { + log.Fatal(err) + } + frames := reassemble.LoadFrames(cliCtx.String("in"), common.HexToAddress(cliCtx.String("inbox"))) + var filteredFrames []derive.Frame + for _, frame := range frames { + if frame.Frame.ID == id { + filteredFrames = append(filteredFrames, frame.Frame) + } + } + data, err := derive.ForceCloseTxData(filteredFrames) + if err != nil { + log.Fatal(err) + } + fmt.Printf("%x\n", data) + return nil + }, + }, } if err := app.Run(os.Args); err != nil { diff --git a/op-node/cmd/batch_decoder/reassemble/reassemble.go b/op-node/cmd/batch_decoder/reassemble/reassemble.go index a92c0363d..79b67dc04 100644 --- a/op-node/cmd/batch_decoder/reassemble/reassemble.go +++ b/op-node/cmd/batch_decoder/reassemble/reassemble.go @@ -38,14 +38,8 @@ type Config struct { OutDirectory string } -// Channels loads all transactions from the given input directory that are submitted to the -// specified batch inbox and then re-assembles all channels & writes the re-assembled channels -// to the out directory. -func Channels(config Config) { - if err := os.MkdirAll(config.OutDirectory, 0750); err != nil { - log.Fatal(err) - } - txns := loadTransactions(config.InDirectory, config.BatchInbox) +func LoadFrames(directory string, inbox common.Address) []FrameWithMetadata { + txns := loadTransactions(directory, inbox) // Sort first by block number then by transaction index inside the block number range. // This is to match the order they are processed in derivation. sort.Slice(txns, func(i, j int) bool { @@ -56,7 +50,17 @@ func Channels(config Config) { } }) - frames := transactionsToFrames(txns) + return transactionsToFrames(txns) +} + +// Channels loads all transactions from the given input directory that are submitted to the +// specified batch inbox and then re-assembles all channels & writes the re-assembled channels +// to the out directory. +func Channels(config Config) { + if err := os.MkdirAll(config.OutDirectory, 0750); err != nil { + log.Fatal(err) + } + frames := LoadFrames(config.InDirectory, config.BatchInbox) framesByChannel := make(map[derive.ChannelID][]FrameWithMetadata) for _, frame := range frames { framesByChannel[frame.Frame.ID] = append(framesByChannel[frame.Frame.ID], frame) @@ -143,6 +147,7 @@ func transactionsToFrames(txns []fetch.TransactionWithMetadata) []FrameWithMetad return out } +// if inbox is the zero address, it will load all frames func loadTransactions(dir string, inbox common.Address) []fetch.TransactionWithMetadata { files, err := os.ReadDir(dir) if err != nil { @@ -152,7 +157,7 @@ func loadTransactions(dir string, inbox common.Address) []fetch.TransactionWithM for _, file := range files { f := path.Join(dir, file.Name()) txm := loadTransactionsFile(f) - if txm.InboxAddr == inbox && txm.ValidSender { + if (inbox == common.Address{} || txm.InboxAddr == inbox) && txm.ValidSender { out = append(out, txm) } } diff --git a/op-node/rollup/derive/channel_out.go b/op-node/rollup/derive/channel_out.go index fd5657158..feef8ae7c 100644 --- a/op-node/rollup/derive/channel_out.go +++ b/op-node/rollup/derive/channel_out.go @@ -213,3 +213,58 @@ func BlockToBatch(block *types.Block) (*BatchData, error) { }, }, nil } + +// ForceCloseTxData generates the transaction data for a transaction which will force close +// a channel. It should be given every frame of that channel which has been submitted on +// chain. The frames should be given in order that they appear on L1. +func ForceCloseTxData(frames []Frame) ([]byte, error) { + if len(frames) == 0 { + return nil, errors.New("must provide at least one frame") + } + frameNumbers := make(map[uint16]struct{}) + id := frames[0].ID + closeNumber := uint16(0) + closed := false + for i, frame := range frames { + if !closed && frame.IsLast { + closeNumber = frame.FrameNumber + } + closed = closed || frame.IsLast + frameNumbers[frame.FrameNumber] = struct{}{} + if frame.ID != id { + return nil, fmt.Errorf("invalid ID in list: first ID: %v, %vth ID: %v", id, i, frame.ID) + } + } + + var out bytes.Buffer + out.WriteByte(DerivationVersion0) + + if !closed { + f := Frame{ + ID: id, + FrameNumber: 0, + Data: nil, + IsLast: true, + } + if err := f.MarshalBinary(&out); err != nil { + return nil, err + } + } else { + for i := uint16(0); i <= closeNumber; i++ { + if _, ok := frameNumbers[i]; ok { + continue + } + f := Frame{ + ID: id, + FrameNumber: i, + Data: nil, + IsLast: false, + } + if err := f.MarshalBinary(&out); err != nil { + return nil, err + } + } + } + + return out.Bytes(), nil +} diff --git a/op-node/rollup/derive/channel_out_test.go b/op-node/rollup/derive/channel_out_test.go index 42e927039..ea6eeac36 100644 --- a/op-node/rollup/derive/channel_out_test.go +++ b/op-node/rollup/derive/channel_out_test.go @@ -5,6 +5,7 @@ import ( "math/big" "testing" + "github.com/ethereum/go-ethereum/common" "github.com/ethereum/go-ethereum/core/types" "github.com/ethereum/go-ethereum/rlp" "github.com/stretchr/testify/require" @@ -49,3 +50,69 @@ func TestRLPByteLimit(t *testing.T) { require.Equal(t, err, rlp.ErrValueTooLarge) require.Equal(t, out2, "") } + +func TestForceCloseTxData(t *testing.T) { + id := [16]byte{0xde, 0xad, 0xbe, 0xef, 0xde, 0xad, 0xbe, 0xef, 0xde, 0xad, 0xbe, 0xef, 0xde, 0xad, 0xbe, 0xef} + tests := []struct { + frames []Frame + errors bool + output string + }{ + { + frames: []Frame{}, + errors: true, + output: "", + }, + { + frames: []Frame{Frame{FrameNumber: 0, IsLast: false}, Frame{ID: id, FrameNumber: 1, IsLast: true}}, + errors: true, + output: "", + }, + { + frames: []Frame{Frame{ID: id, FrameNumber: 0, IsLast: false}}, + errors: false, + output: "00deadbeefdeadbeefdeadbeefdeadbeef00000000000001", + }, + { + frames: []Frame{Frame{ID: id, FrameNumber: 0, IsLast: true}}, + errors: false, + output: "00", + }, + { + frames: []Frame{Frame{ID: id, FrameNumber: 1, IsLast: false}}, + errors: false, + output: "00deadbeefdeadbeefdeadbeefdeadbeef00000000000001", + }, + { + frames: []Frame{Frame{ID: id, FrameNumber: 1, IsLast: true}}, + errors: false, + output: "00deadbeefdeadbeefdeadbeefdeadbeef00000000000000", + }, + { + frames: []Frame{Frame{ID: id, FrameNumber: 2, IsLast: true}}, + errors: false, + output: "00deadbeefdeadbeefdeadbeefdeadbeef00000000000000deadbeefdeadbeefdeadbeefdeadbeef00010000000000", + }, + { + frames: []Frame{Frame{ID: id, FrameNumber: 1, IsLast: false}, Frame{ID: id, FrameNumber: 3, IsLast: true}}, + errors: false, + output: "00deadbeefdeadbeefdeadbeefdeadbeef00000000000000deadbeefdeadbeefdeadbeefdeadbeef00020000000000", + }, + { + frames: []Frame{Frame{ID: id, FrameNumber: 1, IsLast: false}, Frame{ID: id, FrameNumber: 3, IsLast: true}, Frame{ID: id, FrameNumber: 5, IsLast: true}}, + errors: false, + output: "00deadbeefdeadbeefdeadbeefdeadbeef00000000000000deadbeefdeadbeefdeadbeefdeadbeef00020000000000", + }, + } + + for i, test := range tests { + out, err := ForceCloseTxData(test.frames) + if test.errors { + require.NotNil(t, err, "Should error on tc %v", i) + require.Nil(t, out, "Should return no value in tc %v", i) + } else { + require.NoError(t, err, "Should not error on tc %v", i) + require.Equal(t, common.FromHex(test.output), out, "Should match output tc %v", i) + } + } +} diff --git a/packages/actor-tests/CHANGELOG.md b/packages/actor-tests/CHANGELOG.md index a3d0864f3..d6cbbae6e 100644 --- a/packages/actor-tests/CHANGELOG.md +++ b/packages/actor-tests/CHANGELOG.md @@ -1,5 +1,15 @@ # @eth-optimism/actor-tests +## 0.0.23 + +### Patch Changes + +- Updated dependencies [22c3885f5] +- Updated dependencies [66cafc00a] +- Updated dependencies [f52c07529] + - @eth-optimism/contracts-bedrock@0.13.1 + - @eth-optimism/sdk@2.0.1 + ## 0.0.22 ### Patch Changes diff --git a/packages/actor-tests/package.json b/packages/actor-tests/package.json index 161275f47..464c64eda 100644 --- a/packages/actor-tests/package.json +++ b/packages/actor-tests/package.json @@ -1,6 +1,6 @@ { "name": "@eth-optimism/actor-tests", - "version": "0.0.22", + "version": "0.0.23", "description": "A library and suite of tests to stress test Optimism Bedrock.", "license": "MIT", "author": "", @@ -18,9 +18,9 @@ "test:coverage": "yarn test" }, "dependencies": { - "@eth-optimism/contracts-bedrock": "0.13.0", + "@eth-optimism/contracts-bedrock": "0.13.1", "@eth-optimism/core-utils": "^0.12.0", - "@eth-optimism/sdk": "^2.0.0", + "@eth-optimism/sdk": "^2.0.1", "@types/chai": "^4.2.18", "@types/chai-as-promised": "^7.1.4", "async-mutex": "^0.3.2", diff --git a/packages/atst/CHANGELOG.md b/packages/atst/CHANGELOG.md index 0840ee923..d0035d90b 100644 --- a/packages/atst/CHANGELOG.md +++ b/packages/atst/CHANGELOG.md @@ -1,5 +1,20 @@ # @eth-optimism/atst +## 0.2.0 + +### Minor Changes + +- dcd13eec1: Update readAttestations and prepareWriteAttestation to handle keys longer than 32 bytes +- 9fd5be8e2: Remove broken allowFailures as option +- 3f4a43542: Move react api to @eth-optimism/atst/react so react isn't required to run the core sdk +- 71727eae9: Fix main and module in atst package.json +- 3d5f26c49: Deprecate parseAttestationBytes and createRawKey in favor for createKey, createValue + +### Patch Changes + +- 68bbe48b6: Update docs +- 6fea2f2db: Fixed bug with atst not defaulting to currently connected chain + ## 0.1.0 ### Minor Changes diff --git a/packages/atst/package.json b/packages/atst/package.json index ecdb3fcb2..5311437cb 100644 --- a/packages/atst/package.json +++ b/packages/atst/package.json @@ -1,6 +1,6 @@ { "name": "@eth-optimism/atst", - "version": "0.1.0", + "version": "0.2.0", "type": "module", "main": "dist/index.cjs", "types": "src/index.ts", diff --git a/packages/chain-mon/CHANGELOG.md b/packages/chain-mon/CHANGELOG.md index e28bdb8ee..d9efe625e 100644 --- a/packages/chain-mon/CHANGELOG.md +++ b/packages/chain-mon/CHANGELOG.md @@ -1,5 +1,14 @@ # @eth-optimism/drippie-mon +## 0.2.1 + +### Patch Changes + +- Updated dependencies [fecd42d67] +- Updated dependencies [66cafc00a] + - @eth-optimism/common-ts@0.8.1 + - @eth-optimism/sdk@2.0.1 + ## 0.2.0 ### Minor Changes diff --git a/packages/chain-mon/package.json b/packages/chain-mon/package.json index 37349ecc9..784706dff 100644 --- a/packages/chain-mon/package.json +++ b/packages/chain-mon/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@eth-optimism/chain-mon", - "version": "0.2.0", + "version": "0.2.1", "description": "[Optimism] Chain monitoring services", "main": "dist/index", "types": "dist/index", @@ -32,10 +32,10 @@ "url": "https://github.com/ethereum-optimism/optimism.git" }, "dependencies": { - "@eth-optimism/common-ts": "0.8.0", + "@eth-optimism/common-ts": "0.8.1", "@eth-optimism/contracts-periphery": "1.0.7", "@eth-optimism/core-utils": "0.12.0", - "@eth-optimism/sdk": "2.0.0", + "@eth-optimism/sdk": "2.0.1", "ethers": "^5.7.0", "@types/dateformat": "^5.0.0", "chai-as-promised": "^7.1.1", diff --git a/packages/common-ts/CHANGELOG.md b/packages/common-ts/CHANGELOG.md index 155b0e8e1..e5fb8b60a 100644 --- a/packages/common-ts/CHANGELOG.md +++ b/packages/common-ts/CHANGELOG.md @@ -1,5 +1,11 @@ # @eth-optimism/common-ts +## 0.8.1 + +### Patch Changes + +- fecd42d67: Fix BaseServiceV2 configuration for caseCase options + ## 0.8.0 ### Minor Changes diff --git a/packages/common-ts/package.json b/packages/common-ts/package.json index 79a354850..bed116d53 100644 --- a/packages/common-ts/package.json +++ b/packages/common-ts/package.json @@ -1,6 +1,6 @@ { "name": "@eth-optimism/common-ts", - "version": "0.8.0", + "version": "0.8.1", "description": "[Optimism] Advanced typescript tooling used by various services", "main": "dist/index", "types": "dist/index", diff --git a/packages/contracts-bedrock/CHANGELOG.md b/packages/contracts-bedrock/CHANGELOG.md index c2a0248bb..5a8aa9fad 100644 --- a/packages/contracts-bedrock/CHANGELOG.md +++ b/packages/contracts-bedrock/CHANGELOG.md @@ -1,5 +1,12 @@ # @eth-optimism/contracts-bedrock +## 0.13.1 + +### Patch Changes + +- 22c3885f5: Optionally print cast commands during migration +- f52c07529: Print tenderly simulation links during deployment + ## 0.13.0 ### Minor Changes diff --git a/packages/contracts-bedrock/package.json b/packages/contracts-bedrock/package.json index 6c789f839..e9db0cad5 100644 --- a/packages/contracts-bedrock/package.json +++ b/packages/contracts-bedrock/package.json @@ -1,6 +1,6 @@ { "name": "@eth-optimism/contracts-bedrock", - "version": "0.13.0", + "version": "0.13.1", "description": "Contracts for Optimism Specs", "main": "dist/index", "types": "dist/index", diff --git a/packages/contracts-periphery/package.json b/packages/contracts-periphery/package.json index ec5338980..86f462437 100644 --- a/packages/contracts-periphery/package.json +++ b/packages/contracts-periphery/package.json @@ -53,7 +53,7 @@ "url": "https://github.com/ethereum-optimism/optimism.git" }, "devDependencies": { - "@eth-optimism/contracts-bedrock": "0.13.0", + "@eth-optimism/contracts-bedrock": "0.13.1", "@eth-optimism/core-utils": "^0.12.0", "@eth-optimism/hardhat-deploy-config": "^0.2.5", "@ethersproject/hardware-wallets": "^5.7.0", diff --git a/packages/data-transport-layer/CHANGELOG.md b/packages/data-transport-layer/CHANGELOG.md index a2744a83d..e9dc4094b 100644 --- a/packages/data-transport-layer/CHANGELOG.md +++ b/packages/data-transport-layer/CHANGELOG.md @@ -1,5 +1,12 @@ # data transport layer +## 0.5.54 + +### Patch Changes + +- Updated dependencies [fecd42d67] + - @eth-optimism/common-ts@0.8.1 + ## 0.5.53 ### Patch Changes diff --git a/packages/data-transport-layer/package.json b/packages/data-transport-layer/package.json index d1f664470..3049eb945 100644 --- a/packages/data-transport-layer/package.json +++ b/packages/data-transport-layer/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@eth-optimism/data-transport-layer", - "version": "0.5.53", + "version": "0.5.54", "description": "[Optimism] Service for shuttling data from L1 into L2", "main": "dist/index", "types": "dist/index", @@ -36,7 +36,7 @@ "url": "https://github.com/ethereum-optimism/optimism.git" }, "dependencies": { - "@eth-optimism/common-ts": "0.8.0", + "@eth-optimism/common-ts": "0.8.1", "@eth-optimism/contracts": "0.5.40", "@eth-optimism/core-utils": "0.12.0", "@ethersproject/providers": "^5.7.0", diff --git a/packages/fault-detector/CHANGELOG.md b/packages/fault-detector/CHANGELOG.md index 9cdf476bb..a4cfb68b4 100644 --- a/packages/fault-detector/CHANGELOG.md +++ b/packages/fault-detector/CHANGELOG.md @@ -1,5 +1,15 @@ # @eth-optimism/fault-detector +## 0.6.2 + +### Patch Changes + +- f9b579d55: Fixes a bug that would cause the fault detector to error out if no outputs had been proposed yet. +- Updated dependencies [fecd42d67] +- Updated dependencies [66cafc00a] + - @eth-optimism/common-ts@0.8.1 + - @eth-optimism/sdk@2.0.1 + ## 0.6.1 ### Patch Changes diff --git a/packages/fault-detector/package.json b/packages/fault-detector/package.json index 3bdb7c6c1..b51bdcc55 100644 --- a/packages/fault-detector/package.json +++ b/packages/fault-detector/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@eth-optimism/fault-detector", - "version": "0.6.1", + "version": "0.6.2", "description": "[Optimism] Service for detecting faulty L2 output proposals", "main": "dist/index", "types": "dist/index", @@ -47,10 +47,10 @@ "ts-node": "^10.9.1" }, "dependencies": { - "@eth-optimism/common-ts": "^0.8.0", + "@eth-optimism/common-ts": "^0.8.1", "@eth-optimism/contracts": "^0.5.40", "@eth-optimism/core-utils": "^0.12.0", - "@eth-optimism/sdk": "^2.0.0", + "@eth-optimism/sdk": "^2.0.1", "@ethersproject/abstract-provider": "^5.7.0" } } diff --git a/packages/message-relayer/CHANGELOG.md b/packages/message-relayer/CHANGELOG.md index 1c1d36690..e74f4783e 100644 --- a/packages/message-relayer/CHANGELOG.md +++ b/packages/message-relayer/CHANGELOG.md @@ -1,5 +1,14 @@ # @eth-optimism/message-relayer +## 0.5.32 + +### Patch Changes + +- Updated dependencies [fecd42d67] +- Updated dependencies [66cafc00a] + - @eth-optimism/common-ts@0.8.1 + - @eth-optimism/sdk@2.0.1 + ## 0.5.31 ### Patch Changes diff --git a/packages/message-relayer/package.json b/packages/message-relayer/package.json index 4ec268eca..1043b0dee 100644 --- a/packages/message-relayer/package.json +++ b/packages/message-relayer/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@eth-optimism/message-relayer", - "version": "0.5.31", + "version": "0.5.32", "description": "[Optimism] Service for automatically relaying L2 to L1 transactions", "main": "dist/index", "types": "dist/index", @@ -31,9 +31,9 @@ "url": "https://github.com/ethereum-optimism/optimism.git" }, "dependencies": { - "@eth-optimism/common-ts": "0.8.0", + "@eth-optimism/common-ts": "0.8.1", "@eth-optimism/core-utils": "0.12.0", - "@eth-optimism/sdk": "2.0.0", + "@eth-optimism/sdk": "2.0.1", "ethers": "^5.7.0" }, "devDependencies": { diff --git a/packages/replica-healthcheck/CHANGELOG.md b/packages/replica-healthcheck/CHANGELOG.md index c1ac743c6..a484eaf74 100644 --- a/packages/replica-healthcheck/CHANGELOG.md +++ b/packages/replica-healthcheck/CHANGELOG.md @@ -1,5 +1,12 @@ # @eth-optimism/replica-healthcheck +## 1.2.3 + +### Patch Changes + +- Updated dependencies [fecd42d67] + - @eth-optimism/common-ts@0.8.1 + ## 1.2.2 ### Patch Changes diff --git a/packages/replica-healthcheck/package.json b/packages/replica-healthcheck/package.json index f6947f80c..a571236ae 100644 --- a/packages/replica-healthcheck/package.json +++ b/packages/replica-healthcheck/package.json @@ -1,7 +1,7 @@ { "private": true, "name": "@eth-optimism/replica-healthcheck", - "version": "1.2.2", + "version": "1.2.3", "description": "[Optimism] Service for monitoring the health of replica nodes", "main": "dist/index", "types": "dist/index", @@ -32,7 +32,7 @@ "url": "https://github.com/ethereum-optimism/optimism.git" }, "dependencies": { - "@eth-optimism/common-ts": "0.8.0", + "@eth-optimism/common-ts": "0.8.1", "@eth-optimism/core-utils": "0.12.0", "@ethersproject/abstract-provider": "^5.7.0" }, diff --git a/packages/sdk/CHANGELOG.md b/packages/sdk/CHANGELOG.md index 49bb72862..3c7f0a9ab 100644 --- a/packages/sdk/CHANGELOG.md +++ b/packages/sdk/CHANGELOG.md @@ -1,5 +1,14 @@ # @eth-optimism/sdk +## 2.0.1 + +### Patch Changes + +- 66cafc00a: Update migrated withdrawal gaslimit calculation +- Updated dependencies [22c3885f5] +- Updated dependencies [f52c07529] + - @eth-optimism/contracts-bedrock@0.13.1 + ## 2.0.0 ### Major Changes diff --git a/packages/sdk/package.json b/packages/sdk/package.json index c72313a73..9ac2ce1b8 100644 --- a/packages/sdk/package.json +++ b/packages/sdk/package.json @@ -1,6 +1,6 @@ { "name": "@eth-optimism/sdk", - "version": "2.0.0", + "version": "2.0.1", "description": "[Optimism] Tools for working with Optimism", "main": "dist/index", "types": "dist/index", @@ -50,7 +50,7 @@ "dependencies": { "@eth-optimism/contracts": "0.5.40", "@eth-optimism/core-utils": "0.12.0", - "@eth-optimism/contracts-bedrock": "0.13.0", + "@eth-optimism/contracts-bedrock": "0.13.1", "lodash": "^4.17.21", "merkletreejs": "^0.2.27", "rlp": "^2.2.7"