cardano_wallet 0.3.20 → 0.3.23
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/tests.yml +3 -3
- data/Rakefile +7 -7
- data/docker-compose.yml +2 -2
- data/lib/cardano_wallet/base.rb +1 -1
- data/lib/cardano_wallet/shared.rb +50 -0
- data/lib/cardano_wallet/shelley.rb +3 -2
- data/lib/cardano_wallet/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 124026aa429ad0ab128972a67f7611f7e2f9f3fb4b20b5fe2bf1dc8597c51f2e
|
4
|
+
data.tar.gz: 9bb4b8a26a9dc30ffce8174a1c295e55b09e140dfbe56d77812ab0448266e634
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 220a1115e770c1470398fe6bb0757f673b814c673c638ea171d41c028b7ea1ee20d5a9b628b1f084ba25b51ab62cbe7b8dcb4b1287e613695c96206dd9e350eb
|
7
|
+
data.tar.gz: 96cc892b39c4631b22394d578387f2a6477328475bbea7ebfbd2e5c531be48326b864e90ba8417cef5c2c2e8e3fc29436ac66e3b7131737395e94dc8084f5b5a
|
data/.github/workflows/tests.yml
CHANGED
@@ -25,7 +25,7 @@ jobs:
|
|
25
25
|
run: rubocop
|
26
26
|
|
27
27
|
- name: Get recent configs
|
28
|
-
run: bundle exec rake get_latest_configs[
|
28
|
+
run: bundle exec rake get_latest_configs[$NETWORK]
|
29
29
|
|
30
30
|
- name: Set up cardano-wallet and cardano-node
|
31
31
|
run: |
|
@@ -44,6 +44,6 @@ jobs:
|
|
44
44
|
env:
|
45
45
|
CI: true
|
46
46
|
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
47
|
-
NETWORK:
|
47
|
+
NETWORK: preview
|
48
48
|
WALLET: dev-master
|
49
|
-
NODE:
|
49
|
+
NODE: 1.35.3
|
data/Rakefile
CHANGED
@@ -17,19 +17,19 @@ def wget(url, file = nil)
|
|
17
17
|
end
|
18
18
|
|
19
19
|
def mk_dir(path)
|
20
|
-
|
20
|
+
FileUtils.mkdir_p(path)
|
21
21
|
end
|
22
22
|
|
23
23
|
task :get_latest_configs, [:env] do |_, args|
|
24
24
|
puts "\n >> Get latest configs for '#{args[:env]}'"
|
25
25
|
|
26
|
-
base_url = 'https://
|
26
|
+
base_url = 'https://book.world.dev.cardano.org/environments'
|
27
27
|
env = args[:env]
|
28
28
|
path = File.join(Dir.pwd, 'configs')
|
29
29
|
mk_dir(path)
|
30
|
-
wget("#{base_url}/#{env}
|
31
|
-
wget("#{base_url}/#{env}
|
32
|
-
wget("#{base_url}/#{env}
|
33
|
-
wget("#{base_url}/#{env}
|
34
|
-
wget("#{base_url}/#{env}
|
30
|
+
wget("#{base_url}/#{env}/config.json", "#{path}/config.json")
|
31
|
+
wget("#{base_url}/#{env}/byron-genesis.json", "#{path}/byron-genesis.json")
|
32
|
+
wget("#{base_url}/#{env}/alonzo-genesis.json", "#{path}/alonzo-genesis.json")
|
33
|
+
wget("#{base_url}/#{env}/shelley-genesis.json", "#{path}/shelley-genesis.json")
|
34
|
+
wget("#{base_url}/#{env}/topology.json", "#{path}/topology.json")
|
35
35
|
end
|
data/docker-compose.yml
CHANGED
@@ -7,7 +7,7 @@ services:
|
|
7
7
|
- ~/node-db-nightly-docker:/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/config.json --topology /config/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/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/base.rb
CHANGED
@@ -23,7 +23,7 @@ module CardanoWallet
|
|
23
23
|
|
24
24
|
unless opt[:cacert].empty?
|
25
25
|
ENV['SSL_CERT_FILE'] = opt[:cacert]
|
26
|
-
self.class.ssl_ca_file(File.read(ENV
|
26
|
+
self.class.ssl_ca_file(File.read(ENV.fetch('SSL_CERT_FILE', nil)))
|
27
27
|
end
|
28
28
|
self.class.pem(File.read(opt[:pem])) unless opt[:pem].empty?
|
29
29
|
|
@@ -26,6 +26,56 @@ module CardanoWallet
|
|
26
26
|
def addresses
|
27
27
|
Addresses.new @opt
|
28
28
|
end
|
29
|
+
|
30
|
+
# @see https://input-output-hk.github.io/cardano-wallet/api/edge/#tag/Shared-Transactions
|
31
|
+
def transactions
|
32
|
+
Transactions.new @opt
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
# API for Transactions
|
37
|
+
# @see https://input-output-hk.github.io/cardano-wallet/api/edge/#tag/Shared-Transactions
|
38
|
+
class Transactions < Base
|
39
|
+
# Construct transaction
|
40
|
+
# @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/constructSharedTransaction
|
41
|
+
# @param wid [String] source wallet id
|
42
|
+
# @param payments [Array of Hashes] full payments payload with assets
|
43
|
+
# @param withdrawal [String or Array] 'self' or mnemonic sentence
|
44
|
+
# @param metadata [Hash] special metadata JSON subset format (cf: https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/postTransaction)
|
45
|
+
# @param mint [Array of Hashes] mint object
|
46
|
+
# @param delegations [Array of Hashes] delegations object
|
47
|
+
# @param validity_interval [Hash] validity_interval object
|
48
|
+
def construct(wid,
|
49
|
+
payments = nil,
|
50
|
+
withdrawal = nil,
|
51
|
+
metadata = nil,
|
52
|
+
delegations = nil,
|
53
|
+
mint = nil,
|
54
|
+
validity_interval = nil)
|
55
|
+
payload = {}
|
56
|
+
payload[:payments] = payments if payments
|
57
|
+
payload[:withdrawal] = withdrawal if withdrawal
|
58
|
+
payload[:metadata] = metadata if metadata
|
59
|
+
payload[:mint_burn] = mint if mint
|
60
|
+
payload[:delegations] = delegations if delegations
|
61
|
+
payload[:validity_interval] = validity_interval if validity_interval
|
62
|
+
|
63
|
+
self.class.post("/shared-wallets/#{wid}/transactions-construct",
|
64
|
+
body: payload.to_json,
|
65
|
+
headers: { 'Content-Type' => 'application/json' })
|
66
|
+
end
|
67
|
+
|
68
|
+
# Decode transaction
|
69
|
+
# @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/decodeSharedTransaction
|
70
|
+
# @param wid [String] source wallet id
|
71
|
+
# @param transaction [String] CBOR base64|base16 encoded transaction
|
72
|
+
def decode(wid, transaction)
|
73
|
+
payload = {}
|
74
|
+
payload[:transaction] = transaction
|
75
|
+
self.class.post("/shared-wallets/#{wid}/transactions-decode",
|
76
|
+
body: payload.to_json,
|
77
|
+
headers: { 'Content-Type' => 'application/json' })
|
78
|
+
end
|
29
79
|
end
|
30
80
|
|
31
81
|
# API for Addresses
|
@@ -362,8 +362,9 @@ module CardanoWallet
|
|
362
362
|
|
363
363
|
# Get tx by id
|
364
364
|
# @see https://input-output-hk.github.io/cardano-wallet/api/edge/#operation/getTransaction
|
365
|
-
def get(wid, tx_id)
|
366
|
-
|
365
|
+
def get(wid, tx_id, query = {})
|
366
|
+
query_formatted = query.empty? ? '' : Utils.to_query(query)
|
367
|
+
self.class.get("/wallets/#{wid}/transactions/#{tx_id}#{query_formatted}")
|
367
368
|
end
|
368
369
|
|
369
370
|
# List all wallet's transactions
|
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.3.
|
4
|
+
version: 0.3.23
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Piotr Stachyra
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-08-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: httparty
|
@@ -165,7 +165,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
165
165
|
- !ruby/object:Gem::Version
|
166
166
|
version: '0'
|
167
167
|
requirements: []
|
168
|
-
rubygems_version: 3.
|
168
|
+
rubygems_version: 3.3.7
|
169
169
|
signing_key:
|
170
170
|
specification_version: 4
|
171
171
|
summary: Ruby wrapper over cardano-wallet.
|