Skip to content

Commit 4553e6d

Browse files
authored
Update V11 to use BigInt for bid_volume and ask_volume.
1 parent adfc2c4 commit 4553e6d

19 files changed

Lines changed: 71 additions & 73 deletions

File tree

go/go.mod

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
module github.com/smartcontractkit/data-streams-sdk/go
22

3-
go 1.22.4
3+
go 1.24.0
44

55
require (
6-
github.com/ethereum/go-ethereum v1.14.7
6+
github.com/ethereum/go-ethereum v1.16.7
77
nhooyr.io/websocket v1.8.11
88
)
99

1010
require (
11-
github.com/btcsuite/btcd/btcec/v2 v2.2.0 // indirect
11+
github.com/ProjectZKM/Ziren/crates/go-runtime/zkvm_runtime v0.0.0-20251001021608-1fe7b43fc4d6 // indirect
1212
github.com/decred/dcrd/dcrec/secp256k1/v4 v4.0.1 // indirect
13-
github.com/holiman/uint256 v1.3.0 // indirect
14-
golang.org/x/crypto v0.22.0 // indirect
15-
golang.org/x/sys v0.20.0 // indirect
13+
github.com/holiman/uint256 v1.3.2 // indirect
14+
golang.org/x/crypto v0.36.0 // indirect
15+
golang.org/x/sys v0.36.0 // indirect
1616
)

go/go.sum

Lines changed: 12 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,25 @@
1-
github.com/btcsuite/btcd/btcec/v2 v2.2.0 h1:fzn1qaOt32TuLjFlkzYSsBC35Q3KUjT1SwPxiMSCF5k=
2-
github.com/btcsuite/btcd/btcec/v2 v2.2.0/go.mod h1:U7MHm051Al6XmscBQ0BoNydpOTsFAn707034b5nY8zU=
3-
github.com/btcsuite/btcd/chaincfg/chainhash v1.0.1 h1:q0rUy8C/TYNBQS1+CGKw68tLOFYSNEs0TFnxxnS9+4U=
4-
github.com/btcsuite/btcd/chaincfg/chainhash v1.0.1/go.mod h1:7SFka0XMvUgj3hfZtydOrQY2mwhPclbT2snogU7SQQc=
1+
github.com/ProjectZKM/Ziren/crates/go-runtime/zkvm_runtime v0.0.0-20251001021608-1fe7b43fc4d6 h1:1zYrtlhrZ6/b6SAjLSfKzWtdgqK0U+HtH/VcBWh1BaU=
2+
github.com/ProjectZKM/Ziren/crates/go-runtime/zkvm_runtime v0.0.0-20251001021608-1fe7b43fc4d6/go.mod h1:ioLG6R+5bUSO1oeGSDxOV3FADARuMoytZCSX6MEMQkI=
53
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
64
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
75
github.com/decred/dcrd/crypto/blake256 v1.0.0 h1:/8DMNYp9SGi5f0w7uCm6d6M4OU2rGFK09Y2A4Xv7EE0=
86
github.com/decred/dcrd/crypto/blake256 v1.0.0/go.mod h1:sQl2p6Y26YV+ZOcSTP6thNdn47hh8kt6rqSlvmrXFAc=
97
github.com/decred/dcrd/dcrec/secp256k1/v4 v4.0.1 h1:YLtO71vCjJRCBcrPMtQ9nqBsqpA1m5sE92cU+pd5Mcc=
108
github.com/decred/dcrd/dcrec/secp256k1/v4 v4.0.1/go.mod h1:hyedUtir6IdtD/7lIxGeCxkaw7y45JueMRL4DIyJDKs=
11-
github.com/ethereum/go-ethereum v1.14.7 h1:EHpv3dE8evQmpVEQ/Ne2ahB06n2mQptdwqaMNhAT29g=
12-
github.com/ethereum/go-ethereum v1.14.7/go.mod h1:Mq0biU2jbdmKSZoqOj29017ygFrMnB5/Rifwp980W4o=
9+
github.com/ethereum/go-ethereum v1.16.7 h1:qeM4TvbrWK0UC0tgkZ7NiRsmBGwsjqc64BHo20U59UQ=
10+
github.com/ethereum/go-ethereum v1.16.7/go.mod h1:Fs6QebQbavneQTYcA39PEKv2+zIjX7rPUZ14DER46wk=
1311
github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0=
1412
github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
15-
github.com/holiman/uint256 v1.3.0 h1:4wdcm/tnd0xXdu7iS3ruNvxkWwrb4aeBQv19ayYn8F4=
16-
github.com/holiman/uint256 v1.3.0/go.mod h1:EOMSn4q6Nyt9P6efbI3bueV4e1b3dGlUCXeiRV4ng7E=
13+
github.com/holiman/uint256 v1.3.2 h1:a9EgMPSC1AAaj1SZL5zIQD3WbwTuHrMGOerLjGmM/TA=
14+
github.com/holiman/uint256 v1.3.2/go.mod h1:EOMSn4q6Nyt9P6efbI3bueV4e1b3dGlUCXeiRV4ng7E=
1715
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
1816
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
19-
github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg=
20-
github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
21-
golang.org/x/crypto v0.22.0 h1:g1v0xeRhjcugydODzvb3mEM9SQ0HGp9s/nh3COQ/C30=
22-
golang.org/x/crypto v0.22.0/go.mod h1:vr6Su+7cTlO45qkww3VDJlzDn0ctJvRgYbC2NvXHt+M=
23-
golang.org/x/sys v0.20.0 h1:Od9JTbYCk261bKm4M/mw7AklTlFYIa0bIp9BgSm1S8Y=
24-
golang.org/x/sys v0.20.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
17+
github.com/stretchr/testify v1.10.0 h1:Xv5erBjTwe/5IxqUQTdXv5kgmIvbHo3QQyRwhJsOfJA=
18+
github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
19+
golang.org/x/crypto v0.36.0 h1:AnAEvhDddvBdpY+uR+MyHmuZzzNqXSe/GvuDeob5L34=
20+
golang.org/x/crypto v0.36.0/go.mod h1:Y4J0ReaxCR1IMaabaSMugxJES1EpwhBHhv2bDHklZvc=
21+
golang.org/x/sys v0.36.0 h1:KVRy2GtZBrk1cBYA7MKu5bEZFxQk4NIDV6RLVcC8o0k=
22+
golang.org/x/sys v0.36.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
2523
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
2624
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
2725
nhooyr.io/websocket v1.8.11 h1:f/qXNc2/3DpoSZkHt1DQu6rj4zGC8JmkkLkWss0MgN0=

go/report/report_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -458,9 +458,9 @@ var v11Data = v11.Data{
458458
Mid: big.NewInt(103),
459459
LastSeenTimestampNs: uint64(time.Now().Unix()),
460460
Bid: big.NewInt(101),
461-
BidVolume: 10002,
461+
BidVolume: big.NewInt(10002),
462462
Ask: big.NewInt(105),
463-
AskVolume: 10001,
463+
AskVolume: big.NewInt(10001),
464464
LastTradedPrice: big.NewInt(103),
465465
MarketStatus: common.MarketStatusOpen,
466466
}

go/report/v11/data.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,9 @@ func Schema() abi.Arguments {
3131
{Name: "mid", Type: mustNewType("int192")},
3232
{Name: "lastSeenTimestampNs", Type: mustNewType("uint64")},
3333
{Name: "bid", Type: mustNewType("int192")},
34-
{Name: "bidVolume", Type: mustNewType("uint64")},
34+
{Name: "bidVolume", Type: mustNewType("int192")},
3535
{Name: "ask", Type: mustNewType("int192")},
36-
{Name: "askVolume", Type: mustNewType("uint64")},
36+
{Name: "askVolume", Type: mustNewType("int192")},
3737
{Name: "lastTradedPrice", Type: mustNewType("int192")},
3838
{Name: "marketStatus", Type: mustNewType("uint32")},
3939
}
@@ -51,9 +51,9 @@ type Data struct {
5151
Mid *big.Int
5252
LastSeenTimestampNs uint64
5353
Bid *big.Int
54-
BidVolume uint64
54+
BidVolume *big.Int
5555
Ask *big.Int
56-
AskVolume uint64
56+
AskVolume *big.Int
5757
LastTradedPrice *big.Int
5858
MarketStatus uint32
5959
}

go/report/v11/data_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,9 +22,9 @@ func TestData(t *testing.T) {
2222
Mid: big.NewInt(103),
2323
LastSeenTimestampNs: uint64(time.Now().Unix()),
2424
Bid: big.NewInt(101),
25-
BidVolume: 10002,
25+
BidVolume: big.NewInt(10002),
2626
Ask: big.NewInt(105),
27-
AskVolume: 10001,
27+
AskVolume: big.NewInt(10001),
2828
LastTradedPrice: big.NewInt(103),
2929
MarketStatus: common.MarketStatusOpen,
3030
}

rust/Cargo.lock

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

rust/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@ Add the following to your `Cargo.toml`:
2020

2121
```toml
2222
[dependencies]
23-
chainlink-data-streams-report = "1.2.0"
24-
chainlink-data-streams-sdk = { version = "1.2.0", features = ["full"] }
23+
chainlink-data-streams-report = "1.2.1"
24+
chainlink-data-streams-sdk = { version = "1.2.1", features = ["full"] }
2525
```
2626

2727
#### Features

rust/crates/report/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "chainlink-data-streams-report"
3-
version = "1.2.0"
3+
version = "1.2.1"
44
edition = "2021"
55
description = "Chainlink Data Streams Report"
66
license = "MIT"

rust/crates/report/src/report.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,7 @@ pub fn decode_full_report(payload: &[u8]) -> Result<(Vec<[u8; 32]>, Vec<u8>), Re
127127
mod tests {
128128
use super::*;
129129
use crate::report::{
130-
v1::ReportDataV1, v10::ReportDataV10, v11::ReportDataV11, v11::ReportDataV12,
130+
v1::ReportDataV1, v10::ReportDataV10, v11::ReportDataV11, v12::ReportDataV12,
131131
v13::ReportDataV13, v2::ReportDataV2, v3::ReportDataV3, v4::ReportDataV4, v5::ReportDataV5,
132132
v6::ReportDataV6, v7::ReportDataV7, v8::ReportDataV8, v9::ReportDataV9,
133133
};
@@ -389,9 +389,9 @@ mod tests {
389389
mid: BigInt::from(MOCK_MID).checked_mul(&multiplier).unwrap(),
390390
last_seen_timestamp_ns: MOCK_LAST_SEEN_TIMESTAMP_NS,
391391
bid: BigInt::from(MOCK_BID).checked_mul(&multiplier).unwrap(),
392-
bid_volume: MOCK_BID_VOLUME,
392+
bid_volume: BigInt::from(MOCK_BID_VOLUME).checked_mul(&multiplier).unwrap(),
393393
ask: BigInt::from(MOCK_ASK).checked_mul(&multiplier).unwrap(),
394-
ask_volume: MOCK_ASK_VOLUME,
394+
ask_volume: BigInt::from(MOCK_ASK_VOLUME).checked_mul(&multiplier).unwrap(),
395395
last_traded_price: BigInt::from(MOCK_LAST_TRADED_PRICE)
396396
.checked_mul(&multiplier)
397397
.unwrap(),
@@ -817,9 +817,9 @@ mod tests {
817817
"00000000000000000000000000000000000000000000000c5c22b80115100000", // mid: 228 * 10^18
818818
"00000000000000000000000000000000000000000000000017dab580a9887800", // last_seen_timestamp_ns
819819
"00000000000000000000000000000000000000000000000c4e42014d6dac0000", // bid: 227 * 10^18
820-
"00000000000000000000000000000000000000000000000000000000000004b0", // bid_volume: 1200
820+
"0000000000000000000000000000000000000000000000410d586a20a4c00000", // bid_volume: 1200
821821
"00000000000000000000000000000000000000000000000c6a036eb4bc740000", // ask: 229 * 10^18
822-
"00000000000000000000000000000000000000000000000000000000000005dc", // ask_volume: 1500
822+
"00000000000000000000000000000000000000000000005150ae84a8cdf00000", // ask_volume: 1500
823823
"00000000000000000000000000000000000000000000000c5c22b80115100000", // last_traded_price: 228 * 10^18
824824
"0000000000000000000000000000000000000000000000000000000000000002", // market_status: 2 (open)
825825
];

rust/crates/report/src/report/v11.rs

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,9 @@ use num_bigint::BigInt;
3535
/// int192 mid;
3636
/// uint64 last_seen_timestamp_ns;
3737
/// int192 bid;
38-
/// uint64 bid_volume;
38+
/// int192 bid_volume;
3939
/// int192 ask;
40-
/// uint64 ask_volume;
40+
/// int192 ask_volume;
4141
/// int192 last_traded_price;
4242
/// uint32 market_status;
4343
/// }
@@ -53,9 +53,9 @@ pub struct ReportDataV11 {
5353
pub mid: BigInt,
5454
pub last_seen_timestamp_ns: u64,
5555
pub bid: BigInt,
56-
pub bid_volume: u64,
56+
pub bid_volume: BigInt,
5757
pub ask: BigInt,
58-
pub ask_volume: u64,
58+
pub ask_volume: BigInt,
5959
pub last_traded_price: BigInt,
6060
pub market_status: u32,
6161
}
@@ -91,9 +91,9 @@ impl ReportDataV11 {
9191
let mid = ReportBase::read_int192(data, 6 * ReportBase::WORD_SIZE)?;
9292
let last_seen_timestamp_ns = ReportBase::read_uint64(data, 7 * ReportBase::WORD_SIZE)?;
9393
let bid = ReportBase::read_int192(data, 8 * ReportBase::WORD_SIZE)?;
94-
let bid_volume = ReportBase::read_uint64(data, 9 * ReportBase::WORD_SIZE)?;
94+
let bid_volume = ReportBase::read_int192(data, 9 * ReportBase::WORD_SIZE)?;
9595
let ask = ReportBase::read_int192(data, 10 * ReportBase::WORD_SIZE)?;
96-
let ask_volume = ReportBase::read_uint64(data, 11 * ReportBase::WORD_SIZE)?;
96+
let ask_volume = ReportBase::read_int192(data, 11 * ReportBase::WORD_SIZE)?;
9797
let last_traded_price = ReportBase::read_int192(data, 12 * ReportBase::WORD_SIZE)?;
9898
let market_status = ReportBase::read_uint32(data, 13 * ReportBase::WORD_SIZE)?;
9999

@@ -136,9 +136,9 @@ impl ReportDataV11 {
136136
buffer.extend_from_slice(&ReportBase::encode_int192(&self.mid)?);
137137
buffer.extend_from_slice(&ReportBase::encode_uint64(self.last_seen_timestamp_ns)?);
138138
buffer.extend_from_slice(&ReportBase::encode_int192(&self.bid)?);
139-
buffer.extend_from_slice(&ReportBase::encode_uint64(self.bid_volume)?);
139+
buffer.extend_from_slice(&ReportBase::encode_int192(&self.bid_volume)?);
140140
buffer.extend_from_slice(&ReportBase::encode_int192(&self.ask)?);
141-
buffer.extend_from_slice(&ReportBase::encode_uint64(self.ask_volume)?);
141+
buffer.extend_from_slice(&ReportBase::encode_int192(&self.ask_volume)?);
142142
buffer.extend_from_slice(&ReportBase::encode_int192(&self.last_traded_price)?);
143143
buffer.extend_from_slice(&ReportBase::encode_uint32(self.market_status)?);
144144

@@ -173,9 +173,9 @@ mod tests {
173173
let expected_mid = BigInt::from(MOCK_MID).checked_mul(&multiplier).unwrap();
174174
let expected_last_seen_timestamp_ns: u64 = MOCK_LAST_SEEN_TIMESTAMP_NS;
175175
let expected_bid = BigInt::from(MOCK_BID).checked_mul(&multiplier).unwrap();
176-
let expected_bid_volume: u64 = MOCK_BID_VOLUME;
176+
let expected_bid_volume = BigInt::from(MOCK_BID_VOLUME).checked_mul(&multiplier).unwrap();
177177
let expected_ask = BigInt::from(MOCK_ASK).checked_mul(&multiplier).unwrap();
178-
let expected_ask_volume: u64 = MOCK_ASK_VOLUME;
178+
let expected_ask_volume = BigInt::from(MOCK_ASK_VOLUME).checked_mul(&multiplier).unwrap();
179179
let expected_last_traded_price = BigInt::from(MOCK_LAST_TRADED_PRICE)
180180
.checked_mul(&multiplier)
181181
.unwrap();

0 commit comments

Comments
 (0)