cardano_wallet 0.1.4 → 0.1.9
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/.github/workflows/nightly.yml +3 -3
- data/.github/workflows/tests.yml +2 -2
- data/cardano_wallet.gemspec +1 -1
- data/dev +1 -1
- data/docker-compose-shelley.yml +2 -2
- data/lib/cardano_wallet/byron.rb +36 -0
- data/lib/cardano_wallet/shelley.rb +19 -9
- data/lib/cardano_wallet/version.rb +1 -1
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: aac2a09241bb9761fcd14be27d36baf749e7bce4211f0b153e01f086412fc7c7
|
4
|
+
data.tar.gz: 3a4accd8dc3e07e157cea62b640f934c703ccbf566a83ba3cd8012d017ed048a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d60a9175cac06389aa7ba70531a2b96be7611beff90eb28fc9a36f44e91e748ee6beee8d50ee9b9efc43340b101ee459752ef0e89c41d387558e3133810bb496
|
7
|
+
data.tar.gz: ce86f1f1c8cd233785cf12be8c90924ba2af63c6579590deed845e53fd5cd0dc97dc66b043c62392b962f2f136de6a324a6a83bb9866af835c3963f6d65df454
|
@@ -12,7 +12,7 @@ jobs:
|
|
12
12
|
steps:
|
13
13
|
- uses: actions/checkout@v2
|
14
14
|
- name: Set up cardano-wallet
|
15
|
-
run: NODE_CONFIG_PATH=`pwd`/spec/
|
15
|
+
run: NODE_CONFIG_PATH=`pwd`/spec/testnet docker-compose -f docker-compose-shelley.yml up --detach
|
16
16
|
- name: Set up Ruby
|
17
17
|
# To automatically get bug fixes and new Ruby versions for ruby/setup-ruby,
|
18
18
|
# change this to (see https://github.com/ruby/setup-ruby#versioning):
|
@@ -25,10 +25,10 @@ jobs:
|
|
25
25
|
- name: Wait until node is synced
|
26
26
|
run: bundle exec rake wait_until_node_synced
|
27
27
|
- name: Run all tests
|
28
|
-
run: bundle exec rspec
|
28
|
+
run: bundle exec rspec .
|
29
29
|
env:
|
30
30
|
CI: true
|
31
31
|
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
32
32
|
NETWORK: testnet
|
33
33
|
WALLET: dev-master-shelley
|
34
|
-
NODE:
|
34
|
+
NODE: 1.19.0
|
data/.github/workflows/tests.yml
CHANGED
@@ -21,7 +21,7 @@ jobs:
|
|
21
21
|
steps:
|
22
22
|
- uses: actions/checkout@v2
|
23
23
|
- name: Set up cardano-wallet
|
24
|
-
run: NODE_CONFIG_PATH=`pwd`/spec/
|
24
|
+
run: NODE_CONFIG_PATH=`pwd`/spec/testnet docker-compose -f docker-compose-shelley.yml up --detach
|
25
25
|
- name: Set up Ruby
|
26
26
|
# To automatically get bug fixes and new Ruby versions for ruby/setup-ruby,
|
27
27
|
# change this to (see https://github.com/ruby/setup-ruby#versioning):
|
@@ -38,4 +38,4 @@ jobs:
|
|
38
38
|
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
39
39
|
NETWORK: testnet
|
40
40
|
WALLET: dev-master-shelley
|
41
|
-
NODE:
|
41
|
+
NODE: 1.19.0
|
data/cardano_wallet.gemspec
CHANGED
@@ -32,7 +32,7 @@ Gem::Specification.new do |spec|
|
|
32
32
|
spec.add_development_dependency 'rake', '~> 12.3'
|
33
33
|
spec.add_development_dependency 'rspec', '~> 3.7'
|
34
34
|
spec.add_development_dependency 'bip_mnemonic', '~> 0.0.4'
|
35
|
-
spec.add_development_dependency 'codecov'
|
35
|
+
spec.add_development_dependency 'codecov', '~> 0.2.8'
|
36
36
|
spec.add_development_dependency 'simplecov'
|
37
37
|
|
38
38
|
end
|
data/dev
CHANGED
@@ -1 +1 @@
|
|
1
|
-
NETWORK=testnet WALLET=dev-master-
|
1
|
+
NETWORK=testnet WALLET=dev-master-shelley NODE=1.19.0 NODE_CONFIG_PATH=`pwd`/spec/testnet docker-compose -f docker-compose-shelley.yml $1
|
data/docker-compose-shelley.yml
CHANGED
@@ -7,7 +7,7 @@ services:
|
|
7
7
|
- node-db:/data
|
8
8
|
- node-ipc:/ipc
|
9
9
|
- ${NODE_CONFIG_PATH}:/config
|
10
|
-
command: run --socket-path /ipc/node.socket --config /config
|
10
|
+
command: run --socket-path /ipc/node.socket --config /config/${NETWORK}-config.json --topology /config/${NETWORK}-topology.json --database-path /data
|
11
11
|
restart: on-failure
|
12
12
|
|
13
13
|
cardano-wallet:
|
@@ -18,7 +18,7 @@ services:
|
|
18
18
|
- ${NODE_CONFIG_PATH}:/config
|
19
19
|
ports:
|
20
20
|
- 8090:8090
|
21
|
-
command: serve --testnet /config
|
21
|
+
command: serve --testnet /config/${NETWORK}-byron-genesis.json --node-socket /ipc/node.socket --database /wallet-db --listen-address 0.0.0.0
|
22
22
|
restart: on-failure
|
23
23
|
|
24
24
|
volumes:
|
data/lib/cardano_wallet/byron.rb
CHANGED
@@ -22,6 +22,12 @@ module CardanoWallet
|
|
22
22
|
Addresses.new @opt
|
23
23
|
end
|
24
24
|
|
25
|
+
# API for CoinSelections
|
26
|
+
# @see https://input-output-hk.github.io/cardano-wallet/api/edge/#tag/Byron-Coin-Selections
|
27
|
+
def coin_selections
|
28
|
+
CoinSelections.new @opt
|
29
|
+
end
|
30
|
+
|
25
31
|
# Get API for Byron transactions
|
26
32
|
# @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/postByronTransactionFee
|
27
33
|
def transactions
|
@@ -152,6 +158,36 @@ module CardanoWallet
|
|
152
158
|
self.class.put("/byron-wallets/#{wid}/addresses/#{addr_id}")
|
153
159
|
end
|
154
160
|
|
161
|
+
# Import addresses to Byron wallet.
|
162
|
+
# @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/importAddresses
|
163
|
+
# @param wid [String] wallet id
|
164
|
+
# @param addresses [Array] array of addresses
|
165
|
+
def bulk_import(wid, addresses)
|
166
|
+
self.class.put("/byron-wallets/#{wid}/addresses",
|
167
|
+
:body => { :addresses => addresses
|
168
|
+
}.to_json,
|
169
|
+
:headers => { 'Content-Type' => 'application/json' } )
|
170
|
+
end
|
171
|
+
end
|
172
|
+
|
173
|
+
# API for CoinSelections
|
174
|
+
# @see https://input-output-hk.github.io/cardano-wallet/api/edge/#tag/Byron-Coin-Selections
|
175
|
+
class CoinSelections < Base
|
176
|
+
def initialize opt
|
177
|
+
super
|
178
|
+
end
|
179
|
+
|
180
|
+
# Show random coin selection for particular payment
|
181
|
+
# @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/byronSelectCoins
|
182
|
+
#
|
183
|
+
# @example
|
184
|
+
# random(wid, {address1: 123, address2: 456})
|
185
|
+
def random(wid, payments)
|
186
|
+
payments_formatted = Utils.format_payments(payments)
|
187
|
+
self.class.post("/byron-wallets/#{wid}/coin-selections/random",
|
188
|
+
:body => {:payments => payments_formatted}.to_json,
|
189
|
+
:headers => { 'Content-Type' => 'application/json' })
|
190
|
+
end
|
155
191
|
end
|
156
192
|
|
157
193
|
# Byron transactions
|
@@ -195,28 +195,38 @@ module CardanoWallet
|
|
195
195
|
# @param wid [String] source wallet id
|
196
196
|
# @param passphrase [String] source wallet's passphrase
|
197
197
|
# @param payments [Hash] addres, amount pair
|
198
|
+
# @param withdrawal [String or Array] 'self' or mnemonic sentence
|
199
|
+
# @param metadata [Hash] special metadata JSON subset format (cf: https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/postTransaction)
|
198
200
|
#
|
199
201
|
# @example
|
200
|
-
# create(wid, passphrase, {addr1: 1000000})
|
201
|
-
def create(wid, passphrase, payments)
|
202
|
+
# create(wid, passphrase, {addr1: 1000000}, 'self', {"1": "abc"})
|
203
|
+
def create(wid, passphrase, payments, withdrawal = nil, metadata = nil)
|
202
204
|
payments_formatted = Utils.format_payments(payments)
|
205
|
+
payload = { :payments => payments_formatted,
|
206
|
+
:passphrase => passphrase
|
207
|
+
}
|
208
|
+
payload[:withdrawal] = withdrawal if withdrawal
|
209
|
+
payload[:metadata] = metadata if metadata
|
210
|
+
|
203
211
|
self.class.post("/wallets/#{wid}/transactions",
|
204
|
-
:body =>
|
205
|
-
:passphrase => passphrase
|
206
|
-
}.to_json,
|
212
|
+
:body => payload.to_json,
|
207
213
|
:headers => { 'Content-Type' => 'application/json' } )
|
208
|
-
|
209
214
|
end
|
210
215
|
|
211
216
|
# Estimate fees for transaction
|
212
217
|
# @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/postTransactionFee
|
213
218
|
#
|
214
219
|
# @example
|
215
|
-
# payment_fees(wid, {addr1: 1000000})
|
216
|
-
def payment_fees(wid, payments)
|
220
|
+
# payment_fees(wid, {addr1: 1000000}, {"1": "abc"})
|
221
|
+
def payment_fees(wid, payments, withdrawal = nil, metadata = nil)
|
217
222
|
payments_formatted = Utils.format_payments(payments)
|
223
|
+
payload = { :payments => payments_formatted }
|
224
|
+
|
225
|
+
payload[:withdrawal] = withdrawal if withdrawal
|
226
|
+
payload[:metadata] = metadata if metadata
|
227
|
+
|
218
228
|
self.class.post("/wallets/#{wid}/payment-fees",
|
219
|
-
:body =>
|
229
|
+
:body => payload.to_json,
|
220
230
|
:headers => { 'Content-Type' => 'application/json' } )
|
221
231
|
end
|
222
232
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cardano_wallet
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Piotr Stachyra
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-09-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: httparty
|
@@ -70,16 +70,16 @@ dependencies:
|
|
70
70
|
name: codecov
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
|
-
- - "
|
73
|
+
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version:
|
75
|
+
version: 0.2.8
|
76
76
|
type: :development
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
|
-
- - "
|
80
|
+
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version:
|
82
|
+
version: 0.2.8
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
84
|
name: simplecov
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|