These 29 commits are when the Protocol Buffers files have changed:
| Commit: | be5e60e | |
|---|---|---|
| Author: | zhi | |
| Committer: | zhi | |
add eth typed-tx support via TX_CONTAINER encoding Mirrors the iotex-antenna-go #113 PR. Lets callers send Ethereum typed transactions (Legacy / AccessList / DynamicFee / Blob / SetCode) through the iotex SDK. The signing path builds a go-ethereum-style Transaction, secp256k1-signs it with the existing `elliptic` keypair, serializes to raw bytes, and wraps the bytes verbatim in iotextypes.TxContainer with Encoding_TX_CONTAINER. The node decodes the raw tx with go-ethereum directly -- no proto-field reconstruction. Proto (additive only, no field-number conflicts with v0.7.1): Adds messages TxContainer, AccessTuple, BlobTxSidecar, BlobTxData, SetCodeAuthorization and the Encoding enum. Adds ActionCore fields chainID/gasTipCap/gasFeeCap/blobTxData/accessList/txContainer/ txType/setCodeAuthList and Action.encoding. The protogen/.d.ts and .js bindings are regenerated with the same protoc-gen-grpc-web toolchain previously used. New code: - src/action/typed-tx.ts: typed-tx builder + secp256k1 signer + extractEthTxSig + txContainerHash + ioAddressToEth. - src/action/envelop.ts: Envelop carries typed-tx fields; SealedEnvelop.sign dispatches to a new signTxContainer when txType > 0. For TX_CONTAINER actions, .hash() returns keccak256(raw) -- matching the eth tx hash. - src/rpc-method/types.ts: IActionCore + IAction extended; toAction writes the new proto fields, and when a txContainer is present it short-circuits the oneof body setters that would otherwise clear it. - Public API: TransferRequest, ContractRequest, ExecuteContractRequest, MethodExecuteParameter, Contract.deploy all accept typed-tx options via a shared TypedTxOptions interface. - Iotx.sendTransfer / deployContract / executeContract forward the new options through to TransferMethod / ExecutionMethod, which apply them onto the envelop before signing. Dependencies: Adds ethers ^6.16.0 as a runtime dep -- the underlying Transaction class is the canonical reference for typed-tx wire format. Reused for serialization/parsing; signing still goes through the existing elliptic-based secp256k1. Tests: Adds 32 ava cases in src/action/__test__/typed-tx.test.ts covering: - signature recovery: signed tx parses back to TEST_ADDR for all five tx types (the load-bearing crypto check) - V-byte normalization: legacy and typed both produce 27/28 - per-type round-trip through serialized bytes - toAction proto plumbing for access-list, dynamic-fee, blob, setcode - end-to-end caller routing: TransferMethod and ExecutionMethod with txType set produce TX_CONTAINER actions; without txType, they keep the iotex protobuf path - edge cases: legacy contract creation (to=null), sidecar length mismatch throws, bad bech32 / wrong-prefix address throws, determinism (signing twice yields byte-identical output) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
The documentation is generated from this commit.
| Commit: | 8c9c684 | |
|---|---|---|
| Author: | ququzone | |
| Committer: | Xueping Yang | |
upgrade proto and generated code
| Commit: | 5018405 | |
|---|---|---|
| Author: | ququzone | |
| Committer: | XuePing Yang | |
upgrade proto
| Commit: | 65332ea | |
|---|---|---|
| Author: | maswalker | |
readContractStorage
| Commit: | 486db14 | |
|---|---|---|
| Author: | maswalker | |
add gasLimit/gasPrice in readContractRequest
| Commit: | 9be05d5 | |
|---|---|---|
| Author: | maswalker | |
update proto
| Commit: | 25ad593 | |
|---|---|---|
| Author: | maswalker | |
change proto
| Commit: | dc81ee1 | |
|---|---|---|
| Author: | maswalker | |
support node change
| Commit: | a2e86da | |
|---|---|---|
| Author: | ququzone | |
update proto
| Commit: | 209a7de | |
|---|---|---|
| Author: | ququzone | |
update proto with encoding
| Commit: | d9670ee | |
|---|---|---|
| Author: | ququzone | |
remove chainId to action core
| Commit: | 5e9235f | |
|---|---|---|
| Author: | ququzone | |
update proto
| Commit: | 98436ab | |
|---|---|---|
| Author: | Xueping Yang | |
upgrade protoc
| Commit: | 7e2f412 | |
|---|---|---|
| Author: | koseoyoung | |
| Committer: | XuePing Yang | |
update grpc,protoc version and update getLogsAPI
| Commit: | 847de9c | |
|---|---|---|
| Author: | Hung Le | |
| Committer: | XuePing Yang | |
update readstate proto
| Commit: | 0970cfb | |
|---|---|---|
| Author: | XuePing Yang | |
| Committer: | GitHub | |
complete read state api (#376)
| Commit: | ebd496d | |
|---|---|---|
| Author: | ququzone | |
| Committer: | XuePing Yang | |
upgrade proto and gen code
| Commit: | 783f682 | |
|---|---|---|
| Author: | Seoyoung Ko | |
| Committer: | Tian Pan | |
Update error status proto (#324) * update_error_status_proto * add receipt error status * generated pb * remove log
| Commit: | af0e8c8 | |
|---|---|---|
| Author: | ququzone | |
| Committer: | XuePing Yang | |
update proto to 0.7.2
| Commit: | d0ad2b1 | |
|---|---|---|
| Author: | ququzone | |
upgrade proto
| Commit: | 787edbb | |
|---|---|---|
| Author: | XuePing Yang | |
| Committer: | Tian Pan | |
Update proto to iotex-proto v0.2.0 (#225) * update proto * fix spell bug * complete ReadContract * change contract test
| Commit: | 5d5ace1 | |
|---|---|---|
| Author: | Tian Pan | |
| Committer: | Tian Pan | |
bump protos and adjust timeout
| Commit: | bdb1bf7 | |
|---|---|---|
| Author: | Hung Le | |
| Committer: | Tian Pan | |
Update receipt (#134) * update receipt * update receipt * bump version * remove comment
| Commit: | ca6c61e | |
|---|---|---|
| Author: | Tian Pan | |
update proto
| Commit: | 55ebbf1 | |
|---|---|---|
| Author: | Tian Pan | |
| Committer: | Tian Pan | |
bump proto
| Commit: | 38a529f | |
|---|---|---|
| Author: | Tian Pan | |
| Committer: | GitHub | |
update proto (#82)
| Commit: | 47d0783 | |
|---|---|---|
| Author: | xiaxiangzhou | |
| Committer: | Tian Pan | |
update latest proto (#61) * proto update * build latest proto
| Commit: | 43a7d99 | |
|---|---|---|
| Author: | Tian Pan | |
update proto
| Commit: | 340217b | |
|---|---|---|
| Author: | Tian Pan | |
add js boilerplate and proto defs