tezos_client 2.0.0 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/Gemfile.lock +57 -88
- data/README.md +23 -23
- data/lib/tezos_client/operations/operation.rb +5 -3
- data/lib/tezos_client/operations/operation_array.rb +3 -2
- data/lib/tezos_client/operations/transaction_operation.rb +1 -3
- data/lib/tezos_client/tools/convert_to_hash/pair.rb +36 -37
- data/lib/tezos_client/version.rb +1 -1
- data/lib/tezos_client.rb +5 -5
- data/tezos_client.gemspec +1 -1
- metadata +7 -7
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: d191f6b28c2a8681bc8a72dbe4dd568ae4aa1450038ad7955eaec89764b9abc9
|
|
4
|
+
data.tar.gz: a116964161e26140dd3dc4ed47c412730450ca64394854bc57b9576d8f5045b9
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 92227209a94115e2c54d8d0e70b2c21c93f8ea9d8575ae1ddd281cb2ec5e2fa0e2db533312ace225fb89ba69941bbd977c9bc1030aff47bd60e36913127ca59c
|
|
7
|
+
data.tar.gz: 11a3cb9cc888ad1aab359f72bc7a6b5c9b62c11854836e676c4ba005c974eae1d2ae05f28fcbf5cdcbb8440f105d92706496eedb10bc2c01543639a94062ee6b
|
data/Gemfile.lock
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
tezos_client (2.
|
|
4
|
+
tezos_client (2.1.0)
|
|
5
5
|
active_interaction (>= 3.8)
|
|
6
|
-
activesupport (
|
|
6
|
+
activesupport (< 7.1.0)
|
|
7
7
|
base58 (~> 0.2.3)
|
|
8
8
|
bip_mnemonic (~> 0.0.2)
|
|
9
9
|
httparty (~> 0.21.0)
|
|
@@ -14,108 +14,76 @@ PATH
|
|
|
14
14
|
GEM
|
|
15
15
|
remote: https://rubygems.org/
|
|
16
16
|
specs:
|
|
17
|
-
|
|
18
|
-
actionview (= 7.0.4.3)
|
|
19
|
-
activesupport (= 7.0.4.3)
|
|
20
|
-
rack (~> 2.0, >= 2.2.0)
|
|
21
|
-
rack-test (>= 0.6.3)
|
|
22
|
-
rails-dom-testing (~> 2.0)
|
|
23
|
-
rails-html-sanitizer (~> 1.0, >= 1.2.0)
|
|
24
|
-
actionview (7.0.4.3)
|
|
25
|
-
activesupport (= 7.0.4.3)
|
|
26
|
-
builder (~> 3.1)
|
|
27
|
-
erubi (~> 1.4)
|
|
28
|
-
rails-dom-testing (~> 2.0)
|
|
29
|
-
rails-html-sanitizer (~> 1.1, >= 1.2.0)
|
|
30
|
-
active_interaction (5.2.0)
|
|
17
|
+
active_interaction (5.3.0)
|
|
31
18
|
activemodel (>= 5.2, < 8)
|
|
32
19
|
activesupport (>= 5.2, < 8)
|
|
33
|
-
activemodel (7.0.
|
|
34
|
-
activesupport (= 7.0.
|
|
35
|
-
activesupport (7.0.
|
|
20
|
+
activemodel (7.0.8)
|
|
21
|
+
activesupport (= 7.0.8)
|
|
22
|
+
activesupport (7.0.8)
|
|
36
23
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
|
37
24
|
i18n (>= 1.6, < 2)
|
|
38
25
|
minitest (>= 5.1)
|
|
39
26
|
tzinfo (~> 2.0)
|
|
40
|
-
addressable (2.8.
|
|
27
|
+
addressable (2.8.6)
|
|
41
28
|
public_suffix (>= 2.0.2, < 6.0)
|
|
42
29
|
ast (2.4.2)
|
|
43
30
|
base58 (0.2.3)
|
|
44
|
-
bech32 (1.
|
|
31
|
+
bech32 (1.4.2)
|
|
45
32
|
thor (>= 1.1.0)
|
|
33
|
+
bigdecimal (3.1.6)
|
|
46
34
|
bip_mnemonic (0.0.4)
|
|
47
|
-
builder (3.2.4)
|
|
48
35
|
coderay (1.1.3)
|
|
49
|
-
concurrent-ruby (1.2.
|
|
50
|
-
crack (0.4.
|
|
36
|
+
concurrent-ruby (1.2.3)
|
|
37
|
+
crack (0.4.6)
|
|
38
|
+
bigdecimal
|
|
51
39
|
rexml
|
|
52
|
-
crass (1.0.6)
|
|
53
40
|
diff-lcs (1.5.0)
|
|
54
|
-
domain_name (0.
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
ffi (1.15.5)
|
|
58
|
-
hashdiff (1.0.1)
|
|
41
|
+
domain_name (0.6.20240107)
|
|
42
|
+
ffi (1.16.3)
|
|
43
|
+
hashdiff (1.1.0)
|
|
59
44
|
http-accept (1.7.0)
|
|
60
45
|
http-cookie (1.0.5)
|
|
61
46
|
domain_name (~> 0.5)
|
|
62
47
|
httparty (0.21.0)
|
|
63
48
|
mini_mime (>= 1.0.0)
|
|
64
49
|
multi_xml (>= 0.5.2)
|
|
65
|
-
i18n (1.
|
|
50
|
+
i18n (1.14.1)
|
|
66
51
|
concurrent-ruby (~> 1.0)
|
|
67
|
-
json (2.
|
|
68
|
-
|
|
69
|
-
crass (~> 1.0.2)
|
|
70
|
-
nokogiri (>= 1.5.9)
|
|
52
|
+
json (2.7.1)
|
|
53
|
+
language_server-protocol (3.17.0.3)
|
|
71
54
|
method_source (1.0.0)
|
|
72
|
-
mime-types (3.
|
|
55
|
+
mime-types (3.5.2)
|
|
73
56
|
mime-types-data (~> 3.2015)
|
|
74
|
-
mime-types-data (3.2023.
|
|
75
|
-
mini_mime (1.1.
|
|
76
|
-
minitest (5.
|
|
57
|
+
mime-types-data (3.2023.1205)
|
|
58
|
+
mini_mime (1.1.5)
|
|
59
|
+
minitest (5.21.2)
|
|
77
60
|
money-tree (0.11.2)
|
|
78
61
|
bech32 (~> 1.3)
|
|
79
62
|
openssl (~> 3.1)
|
|
80
63
|
multi_xml (0.6.0)
|
|
81
64
|
netrc (0.11.0)
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
parallel (1.23.0)
|
|
86
|
-
parser (3.2.2.0)
|
|
65
|
+
openssl (3.2.0)
|
|
66
|
+
parallel (1.24.0)
|
|
67
|
+
parser (3.3.0.5)
|
|
87
68
|
ast (~> 2.4.1)
|
|
69
|
+
racc
|
|
88
70
|
pry (0.14.2)
|
|
89
71
|
coderay (~> 1.1)
|
|
90
72
|
method_source (~> 1.0)
|
|
91
|
-
public_suffix (5.0.
|
|
92
|
-
racc (1.
|
|
93
|
-
rack (
|
|
94
|
-
rack-test (2.1.0)
|
|
95
|
-
rack (>= 1.3)
|
|
96
|
-
rails-dom-testing (2.0.3)
|
|
97
|
-
activesupport (>= 4.2.0)
|
|
98
|
-
nokogiri (>= 1.6)
|
|
99
|
-
rails-html-sanitizer (1.5.0)
|
|
100
|
-
loofah (~> 2.19, >= 2.19.1)
|
|
101
|
-
railties (7.0.4.3)
|
|
102
|
-
actionpack (= 7.0.4.3)
|
|
103
|
-
activesupport (= 7.0.4.3)
|
|
104
|
-
method_source
|
|
105
|
-
rake (>= 12.2)
|
|
106
|
-
thor (~> 1.0)
|
|
107
|
-
zeitwerk (~> 2.5)
|
|
73
|
+
public_suffix (5.0.4)
|
|
74
|
+
racc (1.7.3)
|
|
75
|
+
rack (3.0.9)
|
|
108
76
|
rainbow (3.1.1)
|
|
109
|
-
rake (13.0
|
|
77
|
+
rake (13.1.0)
|
|
110
78
|
rbnacl (7.1.1)
|
|
111
79
|
ffi
|
|
112
|
-
regexp_parser (2.
|
|
80
|
+
regexp_parser (2.9.0)
|
|
113
81
|
rest-client (2.1.0)
|
|
114
82
|
http-accept (>= 1.7.0, < 2.0)
|
|
115
83
|
http-cookie (>= 1.0.2, < 2.0)
|
|
116
84
|
mime-types (>= 1.16, < 4.0)
|
|
117
85
|
netrc (~> 0.8)
|
|
118
|
-
rexml (3.2.
|
|
86
|
+
rexml (3.2.6)
|
|
119
87
|
rspec (3.12.0)
|
|
120
88
|
rspec-core (~> 3.12.0)
|
|
121
89
|
rspec-expectations (~> 3.12.0)
|
|
@@ -125,58 +93,59 @@ GEM
|
|
|
125
93
|
rspec-expectations (3.12.3)
|
|
126
94
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
127
95
|
rspec-support (~> 3.12.0)
|
|
128
|
-
rspec-mocks (3.12.
|
|
96
|
+
rspec-mocks (3.12.6)
|
|
129
97
|
diff-lcs (>= 1.2.0, < 2.0)
|
|
130
98
|
rspec-support (~> 3.12.0)
|
|
131
|
-
rspec-support (3.12.
|
|
132
|
-
rubocop (1.
|
|
99
|
+
rspec-support (3.12.1)
|
|
100
|
+
rubocop (1.60.2)
|
|
133
101
|
json (~> 2.3)
|
|
102
|
+
language_server-protocol (>= 3.17.0)
|
|
134
103
|
parallel (~> 1.10)
|
|
135
|
-
parser (>= 3.
|
|
104
|
+
parser (>= 3.3.0.2)
|
|
136
105
|
rainbow (>= 2.2.2, < 4.0)
|
|
137
106
|
regexp_parser (>= 1.8, < 3.0)
|
|
138
107
|
rexml (>= 3.2.5, < 4.0)
|
|
139
|
-
rubocop-ast (>= 1.
|
|
108
|
+
rubocop-ast (>= 1.30.0, < 2.0)
|
|
140
109
|
ruby-progressbar (~> 1.7)
|
|
141
110
|
unicode-display_width (>= 2.4.0, < 3.0)
|
|
142
|
-
rubocop-ast (1.
|
|
111
|
+
rubocop-ast (1.30.0)
|
|
143
112
|
parser (>= 3.2.1.0)
|
|
144
|
-
rubocop-
|
|
113
|
+
rubocop-md (1.2.2)
|
|
114
|
+
rubocop (>= 1.0)
|
|
115
|
+
rubocop-minitest (0.34.5)
|
|
145
116
|
rubocop (>= 1.39, < 2.0)
|
|
117
|
+
rubocop-ast (>= 1.30.0, < 2.0)
|
|
146
118
|
rubocop-packaging (0.5.2)
|
|
147
119
|
rubocop (>= 1.33, < 2.0)
|
|
148
|
-
rubocop-performance (1.
|
|
149
|
-
rubocop (>= 1.
|
|
150
|
-
rubocop-ast (>=
|
|
151
|
-
rubocop-rails (2.
|
|
120
|
+
rubocop-performance (1.20.2)
|
|
121
|
+
rubocop (>= 1.48.1, < 2.0)
|
|
122
|
+
rubocop-ast (>= 1.30.0, < 2.0)
|
|
123
|
+
rubocop-rails (2.23.1)
|
|
152
124
|
activesupport (>= 4.2.0)
|
|
153
125
|
rack (>= 1.1)
|
|
154
126
|
rubocop (>= 1.33.0, < 2.0)
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
rubocop (>= 1.
|
|
158
|
-
rubocop-ast (>= 1.0
|
|
127
|
+
rubocop-ast (>= 1.30.0, < 2.0)
|
|
128
|
+
rubocop-rails_config (1.16.0)
|
|
129
|
+
rubocop (>= 1.57.0)
|
|
130
|
+
rubocop-ast (>= 1.26.0)
|
|
131
|
+
rubocop-md
|
|
159
132
|
rubocop-minitest (~> 0.22)
|
|
160
133
|
rubocop-packaging (~> 0.5)
|
|
161
134
|
rubocop-performance (~> 1.11)
|
|
162
135
|
rubocop-rails (~> 2.0)
|
|
163
136
|
ruby-progressbar (1.13.0)
|
|
164
|
-
thor (1.
|
|
137
|
+
thor (1.3.0)
|
|
165
138
|
tzinfo (2.0.6)
|
|
166
139
|
concurrent-ruby (~> 1.0)
|
|
167
|
-
|
|
168
|
-
unf_ext
|
|
169
|
-
unf_ext (0.0.8.2)
|
|
170
|
-
unicode-display_width (2.4.2)
|
|
140
|
+
unicode-display_width (2.5.0)
|
|
171
141
|
vcr (4.0.0)
|
|
172
|
-
webmock (3.
|
|
142
|
+
webmock (3.19.1)
|
|
173
143
|
addressable (>= 2.8.0)
|
|
174
144
|
crack (>= 0.3.2)
|
|
175
145
|
hashdiff (>= 0.4.0, < 2.0.0)
|
|
176
|
-
zeitwerk (2.6.7)
|
|
177
146
|
|
|
178
147
|
PLATFORMS
|
|
179
|
-
|
|
148
|
+
arm64-darwin-22
|
|
180
149
|
|
|
181
150
|
DEPENDENCIES
|
|
182
151
|
bundler (~> 2.1)
|
|
@@ -189,4 +158,4 @@ DEPENDENCIES
|
|
|
189
158
|
webmock
|
|
190
159
|
|
|
191
160
|
BUNDLED WITH
|
|
192
|
-
2.
|
|
161
|
+
2.4.20
|
data/README.md
CHANGED
|
@@ -4,16 +4,16 @@
|
|
|
4
4
|
|
|
5
5
|
[](https://travis-ci.org/moneytrackio/tezos_client)
|
|
6
6
|
|
|
7
|
-
Tezos Client interacts with Tezos nodes using RPC commands.
|
|
7
|
+
Tezos Client interacts with Tezos nodes using RPC commands.
|
|
8
8
|
|
|
9
9
|
## Requirements
|
|
10
10
|
|
|
11
11
|
Tezos client requires SmartPy to be installed in order to work properly.
|
|
12
|
-
To install it on Linux, you can basically follow the steps coded in travis-script folder.
|
|
12
|
+
To install it on Linux, you can basically follow the steps coded in travis-script folder.
|
|
13
13
|
|
|
14
|
-
## Dependency
|
|
14
|
+
## Dependency
|
|
15
15
|
|
|
16
|
-
### michelson-to-micheline
|
|
16
|
+
### michelson-to-micheline
|
|
17
17
|
```bash
|
|
18
18
|
sudo apt-get install nodejs
|
|
19
19
|
npm i -g michelson-to-micheline
|
|
@@ -37,7 +37,7 @@ npm install -g typescript
|
|
|
37
37
|
Add this line to your application's Gemfile:
|
|
38
38
|
|
|
39
39
|
```ruby
|
|
40
|
-
gem
|
|
40
|
+
gem "tezos_client"
|
|
41
41
|
```
|
|
42
42
|
|
|
43
43
|
And then execute:
|
|
@@ -54,13 +54,13 @@ Or install it yourself as:
|
|
|
54
54
|
|
|
55
55
|
Generate a perfectly random key pair:
|
|
56
56
|
|
|
57
|
-
```ruby
|
|
58
|
-
client = TezosClient.new
|
|
57
|
+
```ruby
|
|
58
|
+
client = TezosClient.new
|
|
59
59
|
key = subject.generate_key
|
|
60
60
|
expect(key[:address]).to eq "tz1RfnzRopJXH32SSDap2wMYGULBAnmHxdP1"
|
|
61
61
|
# => {
|
|
62
|
-
# secret_key: "edsk4T2fHv5RLL3VSXHz82SQiyFx7vZ4wwtA2u67AvAaw5yqNEvuU2",
|
|
63
|
-
# public_key: "edpkuncp7KSVhV57Qg7odwhMFcnAHnNrMppbitBPKBfvdg6fFVeNjr",
|
|
62
|
+
# secret_key: "edsk4T2fHv5RLL3VSXHz82SQiyFx7vZ4wwtA2u67AvAaw5yqNEvuU2",
|
|
63
|
+
# public_key: "edpkuncp7KSVhV57Qg7odwhMFcnAHnNrMppbitBPKBfvdg6fFVeNjr",
|
|
64
64
|
# address: "tz1a97x7GAvMDyrwwKTLQo131CoidXyUef48"
|
|
65
65
|
# }
|
|
66
66
|
```
|
|
@@ -68,11 +68,11 @@ key = subject.generate_key
|
|
|
68
68
|
Generate a key pair from a seed and a BIP 44 Path:
|
|
69
69
|
|
|
70
70
|
```ruby
|
|
71
|
-
key = subject.generate_key(wallet_seed:"000102030405060708090a0b0c0d0e0f", path: "m/44'/1729'/0'/0'/0'")
|
|
71
|
+
key = subject.generate_key(wallet_seed: "000102030405060708090a0b0c0d0e0f", path: "m/44'/1729'/0'/0'/0'")
|
|
72
72
|
expect(key[:address]).to eq "tz1RfnzRopJXH32SSDap2wMYGULBAnmHxdP1"
|
|
73
73
|
# => {
|
|
74
|
-
# secret_key: "edsk4T2fHv5RLL3VSXHz82SQiyFx7vZ4wwtA2u67AvAaw5yqNEvuU2",
|
|
75
|
-
# public_key: "edpkuncp7KSVhV57Qg7odwhMFcnAHnNrMppbitBPKBfvdg6fFVeNjr",
|
|
74
|
+
# secret_key: "edsk4T2fHv5RLL3VSXHz82SQiyFx7vZ4wwtA2u67AvAaw5yqNEvuU2",
|
|
75
|
+
# public_key: "edpkuncp7KSVhV57Qg7odwhMFcnAHnNrMppbitBPKBfvdg6fFVeNjr",
|
|
76
76
|
# address: "tz1a97x7GAvMDyrwwKTLQo131CoidXyUef48"
|
|
77
77
|
# }
|
|
78
78
|
```
|
|
@@ -80,12 +80,12 @@ Generate a key pair from a BIP-39 mnemonic sentence and a BIP 44 Path:
|
|
|
80
80
|
|
|
81
81
|
```ruby
|
|
82
82
|
key = subject.generate_key(
|
|
83
|
-
mnemonic: "below dove cushion divide future artefact orange congress maple fiscal flower enable",
|
|
83
|
+
mnemonic: "below dove cushion divide future artefact orange congress maple fiscal flower enable",
|
|
84
84
|
path: "m/44'/1729'/0'/0'/0'")
|
|
85
85
|
expect(key[:address]).to eq "tz1RfnzRopJXH32SSDap2wMYGULBAnmHxdP1"
|
|
86
86
|
# => {
|
|
87
|
-
# secret_key: "edsk4T2fHv5RLL3VSXHz82SQiyFx7vZ4wwtA2u67AvAaw5yqNEvuU2",
|
|
88
|
-
# public_key: "edpkuncp7KSVhV57Qg7odwhMFcnAHnNrMppbitBPKBfvdg6fFVeNjr",
|
|
87
|
+
# secret_key: "edsk4T2fHv5RLL3VSXHz82SQiyFx7vZ4wwtA2u67AvAaw5yqNEvuU2",
|
|
88
|
+
# public_key: "edpkuncp7KSVhV57Qg7odwhMFcnAHnNrMppbitBPKBfvdg6fFVeNjr",
|
|
89
89
|
# address: "tz1a97x7GAvMDyrwwKTLQo131CoidXyUef48"
|
|
90
90
|
# }
|
|
91
91
|
```
|
|
@@ -93,28 +93,28 @@ key = subject.generate_key(
|
|
|
93
93
|
|
|
94
94
|
### Transfer funds
|
|
95
95
|
|
|
96
|
-
```ruby
|
|
97
|
-
client = TezosClient.new
|
|
96
|
+
```ruby
|
|
97
|
+
client = TezosClient.new
|
|
98
98
|
|
|
99
99
|
client.transfer(
|
|
100
100
|
amount: 1,
|
|
101
101
|
from: "tz1ZWiiPXowuhN1UqNGVTrgNyf5tdxp4XUUq",
|
|
102
102
|
to: "tz1ZWiiPXowuhN1UqNGVTrgNyf5tdxp4XUUq",
|
|
103
103
|
secret_key: "edsk4EcqupPmaebat5mP57ZQ3zo8NDkwv8vQmafdYZyeXxrSc72pjN"
|
|
104
|
-
)
|
|
104
|
+
)
|
|
105
105
|
```
|
|
106
106
|
|
|
107
107
|
### Call a contract
|
|
108
108
|
|
|
109
109
|
```ruby
|
|
110
|
-
client = TezosClient.new
|
|
110
|
+
client = TezosClient.new
|
|
111
111
|
client.transfer(
|
|
112
112
|
amount: 5,
|
|
113
113
|
from: "tz1ZWiiPXowuhN1UqNGVTrgNyf5tdxp4XUUq",
|
|
114
114
|
to: "KT1MZTrMDPB42P9yvjf7Cy8Lkjxjj4jetbCt",
|
|
115
115
|
secret_key: "edsk4EcqupPmaebat5mP57ZQ3zo8NDkwv8vQmafdYZyeXxrSc72pjN",
|
|
116
116
|
parameters: '"pro"'
|
|
117
|
-
)
|
|
117
|
+
)
|
|
118
118
|
```
|
|
119
119
|
|
|
120
120
|
### Originate a contract written in SmartPy
|
|
@@ -123,8 +123,8 @@ client.transfer(
|
|
|
123
123
|
script = File.expand_path("./spec/fixtures/demo.py")
|
|
124
124
|
source = "tz1ZWiiPXowuhN1UqNGVTrgNyf5tdxp4XUUq"
|
|
125
125
|
secret_key = "edsk4EcqupPmaebat5mP57ZQ3zo8NDkwv8vQmafdYZyeXxrSc72pjN"
|
|
126
|
-
amount =
|
|
127
|
-
init_params= "MyContract()"
|
|
126
|
+
amount = 0
|
|
127
|
+
init_params = "MyContract()"
|
|
128
128
|
client = TezosClient.new
|
|
129
129
|
|
|
130
130
|
res = client.originate_contract(
|
|
@@ -133,7 +133,7 @@ res = client.originate_contract(
|
|
|
133
133
|
script: script,
|
|
134
134
|
secret_key: secret_key,
|
|
135
135
|
init_params: init_params
|
|
136
|
-
)
|
|
136
|
+
)
|
|
137
137
|
|
|
138
138
|
puts "Origination operation: #{res[:operation_id]}"
|
|
139
139
|
puts "Contract address: #{res[:originated_contract]}"
|
|
@@ -22,9 +22,11 @@ class TezosClient
|
|
|
22
22
|
|
|
23
23
|
def operation_mgr
|
|
24
24
|
@operation_mgr ||= OperationMgr.new(
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
25
|
+
**operation_options.merge(
|
|
26
|
+
rpc_interface: rpc_interface,
|
|
27
|
+
rpc_operation_args: rpc_operation_args,
|
|
28
|
+
)
|
|
29
|
+
)
|
|
28
30
|
end
|
|
29
31
|
|
|
30
32
|
def operation_options
|
|
@@ -5,8 +5,9 @@ class TezosClient
|
|
|
5
5
|
def post_initialize(operations:, **args)
|
|
6
6
|
@raw_operations = operations.map do |operation|
|
|
7
7
|
operation_kind = operation.delete(:kind)
|
|
8
|
-
operation_klass(operation_kind)
|
|
9
|
-
|
|
8
|
+
operation_object = operation_klass(operation_kind)
|
|
9
|
+
operation_object.new(
|
|
10
|
+
**operation.merge(
|
|
10
11
|
from: @args.fetch(:from),
|
|
11
12
|
rpc_interface: rpc_interface,
|
|
12
13
|
counter: 0 # will be set by raw_operation_array
|
|
@@ -17,48 +17,47 @@ class TezosClient
|
|
|
17
17
|
end
|
|
18
18
|
|
|
19
19
|
private
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
20
|
+
def normalized_type
|
|
21
|
+
if type[:args].size > 2
|
|
22
|
+
{
|
|
23
|
+
prim: "pair",
|
|
24
|
+
args: [
|
|
25
|
+
type[:args][0],
|
|
26
|
+
{
|
|
27
|
+
prim: "pair",
|
|
28
|
+
args: type[:args][1..nil]
|
|
29
|
+
}
|
|
30
|
+
]
|
|
31
|
+
}
|
|
32
|
+
else
|
|
33
|
+
type
|
|
34
|
+
end
|
|
35
35
|
end
|
|
36
|
-
end
|
|
37
36
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
37
|
+
def expanded_data
|
|
38
|
+
if data.is_a?(Array)
|
|
39
|
+
{ prim: "Pair", args: data }
|
|
40
|
+
else
|
|
41
|
+
data
|
|
42
|
+
end
|
|
43
43
|
end
|
|
44
|
-
end
|
|
45
44
|
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
45
|
+
def normalized_data
|
|
46
|
+
if expanded_data[:args].size > 2
|
|
47
|
+
{
|
|
48
|
+
prim: "Pair",
|
|
49
|
+
args: [
|
|
50
|
+
expanded_data[:args][0],
|
|
51
|
+
{
|
|
52
|
+
prim: "Pair",
|
|
53
|
+
args: expanded_data[:args][1..nil]
|
|
54
|
+
}
|
|
55
|
+
]
|
|
56
|
+
}
|
|
57
|
+
else
|
|
58
|
+
expanded_data
|
|
59
|
+
end
|
|
60
60
|
end
|
|
61
|
-
end
|
|
62
61
|
end
|
|
63
62
|
end
|
|
64
63
|
end
|
data/lib/tezos_client/version.rb
CHANGED
data/lib/tezos_client.rb
CHANGED
|
@@ -97,7 +97,7 @@ class TezosClient
|
|
|
97
97
|
**args
|
|
98
98
|
)
|
|
99
99
|
|
|
100
|
-
operation = OriginationOperation.new(origination_args)
|
|
100
|
+
operation = OriginationOperation.new(**origination_args)
|
|
101
101
|
res = broadcast_operation(operation: operation, dry_run: dry_run)
|
|
102
102
|
|
|
103
103
|
res.merge(
|
|
@@ -167,7 +167,7 @@ class TezosClient
|
|
|
167
167
|
end
|
|
168
168
|
|
|
169
169
|
def build_transaction(dry_run: false, entrypoint:, params:, params_type:, **args)
|
|
170
|
-
transfer_args = transfer_args(dry_run: dry_run, entrypoint: entrypoint, params: params, params_type:params_type, **args)
|
|
170
|
+
transfer_args = transfer_args(dry_run: dry_run, entrypoint: entrypoint, params: params, params_type: params_type, **args)
|
|
171
171
|
|
|
172
172
|
transaction = TransactionOperation.new(
|
|
173
173
|
rpc_interface: rpc_interface,
|
|
@@ -181,10 +181,10 @@ class TezosClient
|
|
|
181
181
|
transfer_args = transfer_args(dry_run: dry_run,
|
|
182
182
|
entrypoint: entrypoint,
|
|
183
183
|
params: params,
|
|
184
|
-
params_type:params_type,
|
|
184
|
+
params_type: params_type,
|
|
185
185
|
**args)
|
|
186
186
|
|
|
187
|
-
transfer(transfer_args)
|
|
187
|
+
transfer(**transfer_args)
|
|
188
188
|
end
|
|
189
189
|
|
|
190
190
|
def select_entrypoint(contract_address:, entrypoint:)
|
|
@@ -320,7 +320,7 @@ class TezosClient
|
|
|
320
320
|
|
|
321
321
|
def contract_interface(script)
|
|
322
322
|
case script.to_s
|
|
323
|
-
when /[A-Za-z_
|
|
323
|
+
when /[A-Za-z_\/-]*.py/
|
|
324
324
|
smartpy_interface
|
|
325
325
|
when nil
|
|
326
326
|
raise "script var unset"
|
data/tezos_client.gemspec
CHANGED
|
@@ -46,7 +46,7 @@ Gem::Specification.new do |spec|
|
|
|
46
46
|
spec.add_dependency "httparty", "~> 0.21.0"
|
|
47
47
|
spec.add_dependency "rbnacl", "~> 7.1"
|
|
48
48
|
spec.add_dependency "rest-client", "~> 2.1"
|
|
49
|
-
spec.add_dependency "activesupport", "
|
|
49
|
+
spec.add_dependency "activesupport", "< 7.1.0"
|
|
50
50
|
spec.add_dependency "money-tree", "~> 0.11.2"
|
|
51
51
|
spec.add_dependency "bip_mnemonic", "~> 0.0.2"
|
|
52
52
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: tezos_client
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.
|
|
4
|
+
version: 2.1.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Pierre Michard
|
|
@@ -10,7 +10,7 @@ authors:
|
|
|
10
10
|
autorequire:
|
|
11
11
|
bindir: exe
|
|
12
12
|
cert_chain: []
|
|
13
|
-
date:
|
|
13
|
+
date: 2024-02-07 00:00:00.000000000 Z
|
|
14
14
|
dependencies:
|
|
15
15
|
- !ruby/object:Gem::Dependency
|
|
16
16
|
name: bundler
|
|
@@ -184,16 +184,16 @@ dependencies:
|
|
|
184
184
|
name: activesupport
|
|
185
185
|
requirement: !ruby/object:Gem::Requirement
|
|
186
186
|
requirements:
|
|
187
|
-
- - "
|
|
187
|
+
- - "<"
|
|
188
188
|
- !ruby/object:Gem::Version
|
|
189
|
-
version:
|
|
189
|
+
version: 7.1.0
|
|
190
190
|
type: :runtime
|
|
191
191
|
prerelease: false
|
|
192
192
|
version_requirements: !ruby/object:Gem::Requirement
|
|
193
193
|
requirements:
|
|
194
|
-
- - "
|
|
194
|
+
- - "<"
|
|
195
195
|
- !ruby/object:Gem::Version
|
|
196
|
-
version:
|
|
196
|
+
version: 7.1.0
|
|
197
197
|
- !ruby/object:Gem::Dependency
|
|
198
198
|
name: money-tree
|
|
199
199
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -335,7 +335,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
335
335
|
- !ruby/object:Gem::Version
|
|
336
336
|
version: '0'
|
|
337
337
|
requirements: []
|
|
338
|
-
rubygems_version: 3.
|
|
338
|
+
rubygems_version: 3.5.5
|
|
339
339
|
signing_key:
|
|
340
340
|
specification_version: 4
|
|
341
341
|
summary: Wrapper to the tezos client.
|