cardano_wallet 0.3.20 → 0.3.23

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 14c547e38f46a65fec1d75bdf6d629881ef9aa6238cc8512171f39150a515b80
4
- data.tar.gz: ef6cb57c23cd9521fbb1303efb61a73c6149b3c4e2c0fa990ccf94892ddcf71b
3
+ metadata.gz: 124026aa429ad0ab128972a67f7611f7e2f9f3fb4b20b5fe2bf1dc8597c51f2e
4
+ data.tar.gz: 9bb4b8a26a9dc30ffce8174a1c295e55b09e140dfbe56d77812ab0448266e634
5
5
  SHA512:
6
- metadata.gz: c2d655e969090373c0b86e2e27363e1e564d86c9456f4384d75ad7acd74e207a96ba52e09f3b9fbc6f4b0825ddb58a5c1283cbb497bed5d6b5f8266811ac5c19
7
- data.tar.gz: 6e3afa0d08cc69033db5c2a01fa332bcd9ac4e4cff1d849731ce16559ead31db69aaa040e09a0992d6877be9cc51000abd2c2d3e57e126d26099c6c68b4fc736
6
+ metadata.gz: 220a1115e770c1470398fe6bb0757f673b814c673c638ea171d41c028b7ea1ee20d5a9b628b1f084ba25b51ab62cbe7b8dcb4b1287e613695c96206dd9e350eb
7
+ data.tar.gz: 96cc892b39c4631b22394d578387f2a6477328475bbea7ebfbd2e5c531be48326b864e90ba8417cef5c2c2e8e3fc29436ac66e3b7131737395e94dc8084f5b5a
@@ -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[testnet]
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: testnet
47
+ NETWORK: preview
48
48
  WALLET: dev-master
49
- NODE: alonzo-purple-1.0.1
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
- Dir.mkdir(path) unless File.exist?(path)
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://hydra.iohk.io/job/Cardano/cardano-node/cardano-deployment/latest-finished/download/1'
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}-config.json", "#{path}/#{env}-config.json")
31
- wget("#{base_url}/#{env}-byron-genesis.json", "#{path}/#{env}-byron-genesis.json")
32
- wget("#{base_url}/#{env}-alonzo-genesis.json", "#{path}/#{env}-alonzo-genesis.json")
33
- wget("#{base_url}/#{env}-shelley-genesis.json", "#{path}/#{env}-shelley-genesis.json")
34
- wget("#{base_url}/#{env}-topology.json", "#{path}/#{env}-topology.json")
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/${NETWORK}-config.json --topology /config/${NETWORK}-topology.json --database-path /data
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/${NETWORK}-byron-genesis.json --node-socket /ipc/node.socket --database /wallet-db --listen-address 0.0.0.0
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:
@@ -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['SSL_CERT_FILE']))
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
- self.class.get("/wallets/#{wid}/transactions/#{tx_id}")
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
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module CardanoWallet
4
- VERSION = '0.3.20'
4
+ VERSION = '0.3.23'
5
5
  end
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.20
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-04-20 00:00:00.000000000 Z
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.2.32
168
+ rubygems_version: 3.3.7
169
169
  signing_key:
170
170
  specification_version: 4
171
171
  summary: Ruby wrapper over cardano-wallet.