Skip to content

Commit be3e953

Browse files
committed
w3 playground added
1 parent 67fbc38 commit be3e953

File tree

4 files changed

+241
-149
lines changed

4 files changed

+241
-149
lines changed

cmd/robot/main.go

+1-4
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,7 @@ import (
1313
)
1414

1515
func main() {
16-
glogger := log.NewGlogHandler(log.StreamHandler(os.Stderr, log.TerminalFormat(true)))
17-
glogger.Verbosity(log.LvlInfo)
18-
glogger.Vmodule("")
19-
log.Root().SetHandler(glogger)
16+
log.SetDefault(log.NewLogger(log.NewTerminalHandlerWithLevel(os.Stderr, log.LevelInfo, true)))
2017

2118
cfg := &params.DefaultConfig
2219
cfg.DataDir = ".storage"

cmd/w3/main.go

+34
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
package main
2+
3+
import (
4+
"fmt"
5+
"math/big"
6+
7+
"github.com/lmittmann/w3"
8+
"github.com/lmittmann/w3/module/eth"
9+
)
10+
11+
func main() {
12+
addr := w3.A("0x0000000000000000000000000000000000000000")
13+
14+
// 1. Connect to an RPC endpoint
15+
client, err := w3.Dial("http://mainnet.cortexlabs.ai:30089")
16+
if err != nil {
17+
// handle error
18+
}
19+
defer client.Close()
20+
21+
// 2. Make a batch request
22+
var (
23+
balance big.Int
24+
nonce uint64
25+
)
26+
if err := client.Call(
27+
eth.Balance(addr, nil).Returns(&balance),
28+
eth.Nonce(addr, nil).Returns(&nonce),
29+
); err != nil {
30+
// handle error
31+
}
32+
33+
fmt.Printf("balance: %s\nnonce: %d\n", w3.FromWei(&balance, 18), nonce)
34+
}

go.mod

+56-45
Original file line numberDiff line numberDiff line change
@@ -1,75 +1,86 @@
11
module github.com/CortexFoundation/robot
22

3-
go 1.20
3+
go 1.22
44

55
require (
6-
github.com/CortexFoundation/CortexTheseus v1.10.46
7-
github.com/CortexFoundation/merkletree v0.0.0-20230724124840-b6e80265a137
8-
github.com/CortexFoundation/torrentfs v1.0.54-0.20230828094241-b6396d4130ec
9-
github.com/google/uuid v1.3.0
6+
github.com/CortexFoundation/CortexTheseus v1.10.57
7+
github.com/CortexFoundation/merkletree v0.0.0-20240407093305-416581a62b5b
8+
github.com/CortexFoundation/torrentfs v1.0.67-0.20240703134323-0ee180ef2189
9+
github.com/google/uuid v1.6.0
1010
github.com/hashicorp/golang-lru/v2 v2.0.7
11-
github.com/ucwong/golang-kv v1.0.23-0.20230827081935-0ebb6ae028c9
12-
go.etcd.io/bbolt v1.3.7
11+
github.com/lmittmann/w3 v0.16.7
12+
github.com/ucwong/golang-kv v1.0.24-0.20240703114233-0d621ebd0815
13+
go.etcd.io/bbolt v1.3.10
1314
)
1415

1516
require (
1617
github.com/DataDog/zstd v1.5.6-0.20230622172052-ea68dcab66c0 // indirect
17-
github.com/antlabs/stl v0.0.1 // indirect
18-
github.com/antlabs/timer v0.0.11 // indirect
18+
github.com/Microsoft/go-winio v0.6.2 // indirect
19+
github.com/antlabs/stl v0.0.2 // indirect
20+
github.com/antlabs/timer v0.1.4 // indirect
1921
github.com/beorn7/perks v1.0.1 // indirect
22+
github.com/bits-and-blooms/bitset v1.13.0 // indirect
23+
github.com/btcsuite/btcd/btcec/v2 v2.3.3 // indirect
2024
github.com/bwmarrin/snowflake v0.3.0 // indirect
21-
github.com/cespare/xxhash/v2 v2.2.0 // indirect
22-
github.com/cockroachdb/errors v1.10.0 // indirect
25+
github.com/cespare/xxhash/v2 v2.3.0 // indirect
26+
github.com/cockroachdb/errors v1.11.3 // indirect
27+
github.com/cockroachdb/fifo v0.0.0-20240616162244-4768e80dfb9a // indirect
2328
github.com/cockroachdb/logtags v0.0.0-20230118201751-21c54148d20b // indirect
24-
github.com/cockroachdb/pebble v0.0.0-20230826001808-0b401ee526b8 // indirect
29+
github.com/cockroachdb/pebble v1.1.1 // indirect
2530
github.com/cockroachdb/redact v1.1.5 // indirect
2631
github.com/cockroachdb/tokenbucket v0.0.0-20230807174530-cc333fc44b06 // indirect
27-
github.com/deckarep/golang-set/v2 v2.3.1 // indirect
28-
github.com/dgraph-io/badger/v4 v4.2.1-0.20230808010956-340ba1ae4c03 // indirect
32+
github.com/consensys/bavard v0.1.13 // indirect
33+
github.com/consensys/gnark-crypto v0.12.1 // indirect
34+
github.com/crate-crypto/go-kzg-4844 v1.0.0 // indirect
35+
github.com/deckarep/golang-set/v2 v2.6.0 // indirect
36+
github.com/decred/dcrd/dcrec/secp256k1/v4 v4.3.0 // indirect
37+
github.com/dgraph-io/badger/v4 v4.2.1-0.20240119135526-6acc8e801739 // indirect
2938
github.com/dgraph-io/ristretto v0.1.1 // indirect
3039
github.com/dustin/go-humanize v1.0.1 // indirect
31-
github.com/emirpasic/gods v1.18.1 // indirect
32-
github.com/getsentry/sentry-go v0.22.0 // indirect
33-
github.com/go-ole/go-ole v1.2.6 // indirect
34-
github.com/go-stack/stack v1.8.1 // indirect
35-
github.com/gofrs/flock v0.8.1 // indirect
40+
github.com/ethereum/c-kzg-4844 v1.0.2 // indirect
41+
github.com/ethereum/go-ethereum v1.14.6 // indirect
42+
github.com/getsentry/sentry-go v0.28.1 // indirect
43+
github.com/go-ole/go-ole v1.3.0 // indirect
44+
github.com/gofrs/flock v0.12.0 // indirect
3645
github.com/gogo/protobuf v1.3.2 // indirect
37-
github.com/golang/glog v1.1.1 // indirect
46+
github.com/golang/glog v1.2.1 // indirect
3847
github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da // indirect
39-
github.com/golang/protobuf v1.5.3 // indirect
48+
github.com/golang/protobuf v1.5.4 // indirect
4049
github.com/golang/snappy v0.0.5-0.20220116011046-fa5810519dcb // indirect
41-
github.com/google/flatbuffers v23.5.26+incompatible // indirect
42-
github.com/gorilla/websocket v1.5.0 // indirect
43-
github.com/holiman/uint256 v1.2.3 // indirect
44-
github.com/klauspost/compress v1.16.7 // indirect
50+
github.com/google/flatbuffers v24.3.25+incompatible // indirect
51+
github.com/gorilla/websocket v1.5.3 // indirect
52+
github.com/holiman/uint256 v1.2.4 // indirect
53+
github.com/klauspost/compress v1.17.9 // indirect
4554
github.com/kr/pretty v0.3.1 // indirect
4655
github.com/kr/text v0.2.0 // indirect
47-
github.com/matttproud/golang_protobuf_extensions v1.0.4 // indirect
48-
github.com/nutsdb/nutsdb v0.13.2-0.20230824154404-d1808de99379 // indirect
56+
github.com/mmcloughlin/addchain v0.4.0 // indirect
57+
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
58+
github.com/nutsdb/nutsdb v1.0.4 // indirect
4959
github.com/pkg/errors v0.9.1 // indirect
50-
github.com/prometheus/client_golang v1.16.0 // indirect
51-
github.com/prometheus/client_model v0.4.0 // indirect
52-
github.com/prometheus/common v0.44.0 // indirect
53-
github.com/prometheus/procfs v0.11.0 // indirect
54-
github.com/rogpeppe/go-internal v1.11.0 // indirect
55-
github.com/rosedblabs/go-immutable-radix/v2 v2.0.1-0.20230614125820-f2a7bc058c90 // indirect
56-
github.com/rosedblabs/rosedb/v2 v2.2.2 // indirect
57-
github.com/rosedblabs/wal v1.3.1 // indirect
60+
github.com/prometheus/client_golang v1.19.1 // indirect
61+
github.com/prometheus/client_model v0.6.1 // indirect
62+
github.com/prometheus/common v0.55.0 // indirect
63+
github.com/prometheus/procfs v0.15.1 // indirect
64+
github.com/rogpeppe/go-internal v1.12.0 // indirect
5865
github.com/shirou/gopsutil v3.21.11+incompatible // indirect
66+
github.com/supranational/blst v0.3.12 // indirect
5967
github.com/syndtr/goleveldb v1.0.1-0.20220721030215-126854af5e6d // indirect
60-
github.com/tidwall/btree v1.6.0 // indirect
61-
github.com/tklauser/go-sysconf v0.3.11 // indirect
62-
github.com/tklauser/numcpus v0.6.1 // indirect
68+
github.com/tidwall/btree v1.7.0 // indirect
69+
github.com/tklauser/go-sysconf v0.3.14 // indirect
70+
github.com/tklauser/numcpus v0.8.0 // indirect
6371
github.com/ucwong/go-ttlmap v1.0.2-0.20221020173635-331e7ddde2bb // indirect
6472
github.com/xujiajun/mmap-go v1.0.1 // indirect
6573
github.com/xujiajun/utils v0.0.0-20220904132955-5f7c5b914235 // indirect
66-
github.com/yusufpapurcu/wmi v1.2.3 // indirect
74+
github.com/yusufpapurcu/wmi v1.2.4 // indirect
6775
go.opencensus.io v0.24.0 // indirect
68-
golang.org/x/crypto v0.11.0 // indirect
69-
golang.org/x/exp v0.0.0-20230713183714-613f0c0eb8a1 // indirect
70-
golang.org/x/net v0.12.0 // indirect
71-
golang.org/x/sys v0.11.0 // indirect
72-
golang.org/x/text v0.11.0 // indirect
73-
google.golang.org/protobuf v1.31.0 // indirect
76+
golang.org/x/crypto v0.24.0 // indirect
77+
golang.org/x/exp v0.0.0-20240613232115-7f521ea00fb8 // indirect
78+
golang.org/x/net v0.26.0 // indirect
79+
golang.org/x/sync v0.7.0 // indirect
80+
golang.org/x/sys v0.21.0 // indirect
81+
golang.org/x/text v0.16.0 // indirect
82+
golang.org/x/time v0.5.0 // indirect
83+
google.golang.org/protobuf v1.34.2 // indirect
7484
gopkg.in/natefinch/npipe.v2 v2.0.0-20160621034901-c1b8fa8bdcce // indirect
85+
rsc.io/tmplfunc v0.0.3 // indirect
7586
)

0 commit comments

Comments
 (0)