Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
N
nebula
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
exchain
nebula
Commits
cedeb4ec
Unverified
Commit
cedeb4ec
authored
Jun 12, 2023
by
mergify[bot]
Committed by
GitHub
Jun 12, 2023
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'develop' into extradata
parents
9fb2b72d
ff615e77
Changes
8
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
5 additions
and
639 deletions
+5
-639
chilly-carrots-impress.md
.changeset/chilly-carrots-impress.md
+5
-0
package.json
packages/core-utils/package.json
+0
-3
batch-encoding.ts
packages/core-utils/src/optimism/batch-encoding.ts
+0
-432
index.ts
packages/core-utils/src/optimism/index.ts
+0
-2
rollup-types.ts
packages/core-utils/src/optimism/rollup-types.ts
+0
-71
calldata.json
packages/core-utils/test/fixtures/calldata.json
+0
-1
batch-encoding.spec.ts
packages/core-utils/test/optimism/batch-encoding.spec.ts
+0
-125
yarn.lock
yarn.lock
+0
-5
No files found.
.changeset/chilly-carrots-impress.md
0 → 100644
View file @
cedeb4ec
---
'
@eth-optimism/core-utils'
:
patch
---
Delete legacy core-utils
packages/core-utils/package.json
View file @
cedeb4ec
...
@@ -39,13 +39,10 @@
...
@@ -39,13 +39,10 @@
"@ethersproject/bytes"
:
"^5.7.0"
,
"@ethersproject/bytes"
:
"^5.7.0"
,
"@ethersproject/contracts"
:
"^5.7.0"
,
"@ethersproject/contracts"
:
"^5.7.0"
,
"@ethersproject/constants"
:
"^5.7.0"
,
"@ethersproject/constants"
:
"^5.7.0"
,
"@ethersproject/hash"
:
"^5.7.0"
,
"@ethersproject/keccak256"
:
"^5.7.0"
,
"@ethersproject/keccak256"
:
"^5.7.0"
,
"@ethersproject/rlp"
:
"^5.7.0"
,
"@ethersproject/rlp"
:
"^5.7.0"
,
"@ethersproject/transactions"
:
"^5.7.0"
,
"@ethersproject/properties"
:
"^5.7.0"
,
"@ethersproject/properties"
:
"^5.7.0"
,
"@ethersproject/web"
:
"^5.7.0"
,
"@ethersproject/web"
:
"^5.7.0"
,
"bufio"
:
"^1.0.7"
,
"chai"
:
"^4.3.4"
"chai"
:
"^4.3.4"
},
},
"devDependencies"
:
{
"devDependencies"
:
{
...
...
packages/core-utils/src/optimism/batch-encoding.ts
deleted
100644 → 0
View file @
9fb2b72d
This diff is collapsed.
Click to expand it.
packages/core-utils/src/optimism/index.ts
View file @
cedeb4ec
...
@@ -3,9 +3,7 @@
...
@@ -3,9 +3,7 @@
*/
*/
export
*
from
'
./alias
'
export
*
from
'
./alias
'
export
*
from
'
./batch-encoding
'
export
*
from
'
./fees
'
export
*
from
'
./fees
'
export
*
from
'
./rollup-types
'
export
*
from
'
./op-node
'
export
*
from
'
./op-node
'
export
*
from
'
./deposit-transaction
'
export
*
from
'
./deposit-transaction
'
export
*
from
'
./encoding
'
export
*
from
'
./encoding
'
...
...
packages/core-utils/src/optimism/rollup-types.ts
deleted
100644 → 0
View file @
9fb2b72d
/* External Imports */
import
{
BlockWithTransactions
,
TransactionResponse
,
}
from
'
@ethersproject/abstract-provider
'
/**
* Structure of the response returned by L2Geth nodes when querying the `rollup_getInfo` endpoint.
*/
export
interface
RollupInfo
{
mode
:
'
sequencer
'
|
'
verifier
'
syncing
:
boolean
ethContext
:
{
blockNumber
:
number
timestamp
:
number
}
rollupContext
:
{
index
:
number
queueIndex
:
number
}
}
/**
* Enum used for the two transaction types (queue and direct to Sequencer).
*/
export
enum
QueueOrigin
{
Sequencer
=
'
sequencer
'
,
L1ToL2
=
'
l1
'
,
}
/**
* JSON transaction representation when returned by L2Geth nodes. This is simply an extension to
* the standard transaction response type. You do NOT need to use this type unless you care about
* having typed access to L2-specific fields.
*/
export
interface
L2Transaction
extends
TransactionResponse
{
l1BlockNumber
:
number
l1TxOrigin
:
string
queueOrigin
:
string
rawTransaction
:
string
}
/**
* JSON block representation when returned by L2Geth nodes. Just a normal block but with
* L2Transaction objects instead of the standard transaction response object.
*/
export
interface
L2Block
extends
BlockWithTransactions
{
stateRoot
:
string
transactions
:
[
L2Transaction
]
}
/**
* Generic batch element, either a state root batch element or a transaction batch element.
*/
export
interface
BatchElement
{
// Only exists on state root batch elements.
stateRoot
:
string
// Only exists on transaction batch elements.
isSequencerTx
:
boolean
rawTransaction
:
undefined
|
string
// Batch element context, exists on all batch elements.
timestamp
:
number
blockNumber
:
number
}
/**
* List of batch elements.
*/
export
type
Batch
=
BatchElement
[]
packages/core-utils/test/fixtures/calldata.json
deleted
100644 → 0
View file @
9fb2b72d
This diff is collapsed.
Click to expand it.
packages/core-utils/test/optimism/batch-encoding.spec.ts
deleted
100644 → 0
View file @
9fb2b72d
import
'
../setup
'
/* Internal Imports */
import
{
expect
}
from
'
chai
'
import
{
encodeAppendSequencerBatch
,
decodeAppendSequencerBatch
,
sequencerBatch
,
BatchType
,
SequencerBatch
,
}
from
'
../../src
'
describe
(
'
BatchEncoder
'
,
function
()
{
this
.
timeout
(
10
_000
)
// eslint-disable-next-line @typescript-eslint/no-var-requires
const
data
=
require
(
'
../fixtures/calldata.json
'
)
describe
(
'
appendSequencerBatch
'
,
()
=>
{
it
(
'
legacy: should work with the simple case
'
,
()
=>
{
const
batch
=
{
shouldStartAtElement
:
0
,
totalElementsToAppend
:
0
,
contexts
:
[],
transactions
:
[],
type
:
BatchType
.
LEGACY
,
}
const
encoded
=
encodeAppendSequencerBatch
(
batch
)
const
decoded
=
decodeAppendSequencerBatch
(
encoded
)
expect
(
decoded
).
to
.
deep
.
equal
(
batch
)
})
it
(
'
legacy: should work with more complex case
'
,
()
=>
{
const
batch
=
{
shouldStartAtElement
:
10
,
totalElementsToAppend
:
1
,
contexts
:
[
{
numSequencedTransactions
:
2
,
numSubsequentQueueTransactions
:
1
,
timestamp
:
100
,
blockNumber
:
200
,
},
],
transactions
:
[
'
0x45423400000011
'
,
'
0x45423400000012
'
],
type
:
BatchType
.
LEGACY
,
}
const
encoded
=
encodeAppendSequencerBatch
(
batch
)
const
decoded
=
decodeAppendSequencerBatch
(
encoded
)
expect
(
decoded
).
to
.
deep
.
equal
(
batch
)
})
describe
(
'
mainnet data
'
,
()
=>
{
for
(
const
[
hash
,
calldata
]
of
Object
.
entries
(
data
))
{
// Deserialize the raw calldata
const
decoded
=
SequencerBatch
.
fromHex
<
SequencerBatch
>
(
calldata
as
string
)
it
(
`
${
hash
}
`
,
()
=>
{
const
encoded
=
decoded
.
toHex
()
expect
(
encoded
).
to
.
deep
.
equal
(
calldata
)
const
batch
=
SequencerBatch
.
decode
(
decoded
.
encode
())
expect
(
decoded
).
to
.
deep
.
eq
(
batch
)
})
it
(
`
${
hash
}
(compressed)`
,
()
=>
{
// Set the batch type to be zlib so that the batch
// is compressed
decoded
.
type
=
BatchType
.
ZLIB
// Encode a compressed batch
const
encodedCompressed
=
decoded
.
encode
()
// Decode a compressed batch
const
decodedPostCompressed
=
SequencerBatch
.
decode
<
SequencerBatch
>
(
encodedCompressed
)
// Expect that the batch type is detected
expect
(
decodedPostCompressed
.
type
).
to
.
eq
(
BatchType
.
ZLIB
)
// Expect that the contexts match
expect
(
decoded
.
contexts
).
to
.
deep
.
equal
(
decodedPostCompressed
.
contexts
)
for
(
const
[
i
,
tx
]
of
decoded
.
transactions
.
entries
())
{
const
got
=
decodedPostCompressed
.
transactions
[
i
]
expect
(
got
).
to
.
deep
.
eq
(
tx
)
}
// Reserialize the batch as legacy
decodedPostCompressed
.
type
=
BatchType
.
LEGACY
// Ensure that the original data can be recovered
const
encoded
=
decodedPostCompressed
.
toHex
()
expect
(
encoded
).
to
.
deep
.
equal
(
calldata
)
})
it
(
`
${
hash
}
: serialize txs`
,
()
=>
{
for
(
const
tx
of
decoded
.
transactions
)
{
tx
.
toTransaction
()
}
})
}
})
it
(
'
should throw an error
'
,
()
=>
{
const
batch
=
{
shouldStartAtElement
:
10
,
totalElementsToAppend
:
1
,
contexts
:
[
{
numSequencedTransactions
:
2
,
numSubsequentQueueTransactions
:
1
,
timestamp
:
100
,
blockNumber
:
200
,
},
],
transactions
:
[
'
0x454234000000112
'
,
'
0x45423400000012
'
],
}
expect
(()
=>
encodeAppendSequencerBatch
(
batch
)).
to
.
throw
(
'
Unexpected uneven hex string value!
'
)
expect
(()
=>
sequencerBatch
.
decode
(
'
0x
'
)).
to
.
throw
(
'
Incorrect function signature
'
)
})
})
})
yarn.lock
View file @
cedeb4ec
...
@@ -5683,11 +5683,6 @@ bufferutil@^4.0.1:
...
@@ -5683,11 +5683,6 @@ bufferutil@^4.0.1:
dependencies:
dependencies:
node-gyp-build "^4.2.0"
node-gyp-build "^4.2.0"
bufio@^1.0.7:
version "1.0.7"
resolved "https://registry.yarnpkg.com/bufio/-/bufio-1.0.7.tgz#b7f63a1369a0829ed64cc14edf0573b3e382a33e"
integrity sha512-bd1dDQhiC+bEbEfg56IdBv7faWa6OipMs/AFFFvtFnB3wAYjlwQpQRZ0pm6ZkgtfL0pILRXhKxOiQj6UzoMR7A==
builtin-modules@^3.0.0:
builtin-modules@^3.0.0:
version "3.2.0"
version "3.2.0"
resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-3.2.0.tgz#45d5db99e7ee5e6bc4f362e008bf917ab5049887"
resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-3.2.0.tgz#45d5db99e7ee5e6bc4f362e008bf917ab5049887"
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment