radiator 0.4.6 → 0.4.7

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
- SHA1:
3
- metadata.gz: a1109869bdcd5e344793dad14ab64e9057529ec0
4
- data.tar.gz: '0608af42e9b00b20c25356f246933071d3ba4fd5'
2
+ SHA256:
3
+ metadata.gz: 5d4835194b9dd10257a05f17429b84e542631bb4ca9baa46b4f44fc82738297b
4
+ data.tar.gz: d283de528aa0aa30bda8b74b8dff932764b6aea1cd3f14199a63a9c591d0a5ca
5
5
  SHA512:
6
- metadata.gz: 924b43fa78be2bdf26f6278b81a0f294909f2c7692bf322dcbe93e5e2ad58b23cf0954adf921e3125ad266ac546a131c6b6e9c162df60b6e084ef108c037c5db
7
- data.tar.gz: e83db7eb0a2ef39b7c9b09cb9d1007cd1a329de81c7637c346fc0b3acde618306b17ee12fecd0f24cdb9d6ed65c4225297fad41bac3bea691827a4868fdba0c3
6
+ metadata.gz: 077ec7c4bfb834f6f8009a9c96b19c6604e9a369d076765e6db10bfd6be96b052137d8284009df953786af1587aed26ba89cd76f0e8048e6a000f456c89eb232
7
+ data.tar.gz: 29e16e9272db43795c1a8000db17bfb08a2746f51aac854e0800f12b98f312fe195732304949b3300bc406b5516c029ba2cb5d69124a7aca1addb4104f84fad0
@@ -147,6 +147,8 @@ module Radiator
147
147
  'httpd://rpc.usesteem.com'
148
148
  ]
149
149
 
150
+ DEFAULT_RESTFUL_URL = 'https://anyx.io/v1'
151
+
150
152
  # @private
151
153
  POST_HEADERS = {
152
154
  'Content-Type' => 'application/json',
@@ -163,6 +165,13 @@ module Radiator
163
165
  end
164
166
  end
165
167
 
168
+ def self.default_restful_url(chain)
169
+ case chain.to_sym
170
+ when :steem then DEFAULT_RESTFUL_URL
171
+ else; raise ApiError, "Unsupported chain: #{chain}"
172
+ end
173
+ end
174
+
166
175
  def self.default_failover_urls(chain)
167
176
  case chain.to_sym
168
177
  when :steem then DEFAULT_STEEM_FAILOVER_URLS
@@ -190,6 +199,7 @@ module Radiator
190
199
  @password = options[:password]
191
200
  @chain = options[:chain] || :steem
192
201
  @url = options[:url] || Api::default_url(@chain)
202
+ @restful_url = options[:restful_url] || Api::default_restful_url(@chain)
193
203
  @preferred_url = @url.dup
194
204
  @failover_urls = options[:failover_urls]
195
205
  @debug = !!options[:debug]
@@ -789,15 +799,23 @@ module Radiator
789
799
 
790
800
  if @recover_transactions_on_error
791
801
  begin
792
- # Node operators often disable this operation.
793
- api.get_transaction(parser.trx_id) do |tx|
794
- if !!tx
795
- response[:result][:block_num] = tx.block_num
796
- response[:result][:trx_num] = tx.transaction_num
797
- response[:recovered_by] = http_id
798
- response.delete('error') # no need for this, now
802
+ if !!@restful_url
803
+ JSON[open("#{@restful_url}/account_history_api/get_transaction?id=#{parser.trx_id}").read].tap do |tx|
804
+ response[:result][:block_num] = tx['block_num']
805
+ response[:result][:trx_num] = tx['transaction_num']
806
+ end
807
+ else
808
+ # Node operators often disable this operation.
809
+ api.get_transaction(parser.trx_id) do |tx|
810
+ if !!tx
811
+ response[:result][:block_num] = tx.block_num
812
+ response[:result][:trx_num] = tx.transaction_num
813
+ end
799
814
  end
800
815
  end
816
+
817
+ response[:recovered_by] = http_id
818
+ response.delete('error') # no need for this, now
801
819
  rescue
802
820
  debug "Couldn't find block for trx_id: #{parser.trx_id}, giving up."
803
821
  end
@@ -147,6 +147,19 @@ module Radiator
147
147
  def use_condenser_namespace?
148
148
  !!@use_condenser_namespace
149
149
  end
150
+
151
+ def inspect
152
+ properties = %w(
153
+ url ref_block_num ref_block_prefix expiration chain
154
+ use_condenser_namespace immutable_expiration payload
155
+ ).map do |prop|
156
+ if !!(v = instance_variable_get("@#{prop}"))
157
+ "@#{prop}=#{v}"
158
+ end
159
+ end.compact.join(', ')
160
+
161
+ "#<#{self.class.name} [#{properties}]>"
162
+ end
150
163
  private
151
164
  def broadcast_payload(payload)
152
165
  if use_condenser_namespace?
@@ -3,20 +3,21 @@ module Radiator
3
3
 
4
4
  # See: https://github.com/xeroc/piston-lib/blob/34a7525cee119ec9b24a99577ede2d54466fca0e/steembase/operations.py
5
5
  class Amount < Serializer
6
+ attr_reader :amount, :precision, :nai, :asset
7
+
6
8
  def initialize(value)
7
9
  super(:amount, value)
8
10
 
9
11
  case value
10
12
  when ::Array
11
- a, p, t = value
12
- @asset = case t
13
+ a, @precision, @nai = value
14
+ @asset = case @nai
13
15
  when '@@000000013' then 'SBD'
14
16
  when '@@000000021' then 'STEEM'
15
17
  when '@@000000037' then 'VESTS'
16
18
  else; raise TypeError, "Asset #{@asset} unknown."
17
19
  end
18
- @precision = p
19
- @amount = "%.#{p}f" % (a.to_f / 10 ** p)
20
+ @amount = "%.#{@precision}f" % (a.to_f / 10 ** @precision)
20
21
  else
21
22
  @amount, @asset = value.strip.split(' ')
22
23
  @precision = case @asset
@@ -7,7 +7,14 @@ module Radiator
7
7
  end
8
8
 
9
9
  def to_bytes
10
- pakArr([]) + pakHash(@value)
10
+ #set sz 1, op type 0, see
11
+ #https://github.com/steemit/steem-js/blob/733332d09582e95c0ea868a6ac5b6ee8a1f115ee/src/auth/serializer/src/operations.js#L355
12
+ varint(1) + varint(0) + varint(@value.size) + @value.map do |b|
13
+ case b
14
+ when ::Array then pakStr(b.first.to_s) + pakS(b.last)
15
+ else; pakStr(b.keys.first.to_s) + pakS(b.values.first)
16
+ end
17
+ end.join
11
18
  end
12
19
 
13
20
  def to_h
@@ -1,4 +1,4 @@
1
1
  module Radiator
2
- VERSION = '0.4.6'
2
+ VERSION = '0.4.7'
3
3
  AGENT_ID = "radiator/#{VERSION}"
4
4
  end
@@ -22,10 +22,10 @@ Gem::Specification.new do |spec|
22
22
  spec.add_development_dependency 'minitest', '~> 5.10', '>= 5.10.3'
23
23
  spec.add_development_dependency 'minitest-line', '~> 0.6.3'
24
24
  spec.add_development_dependency 'minitest-proveit', '~> 1.0', '>= 1.0.0'
25
- spec.add_development_dependency 'webmock', '~> 3.1', '>= 3.1.0'
26
- spec.add_development_dependency 'simplecov', '~> 0.16.1'
27
- spec.add_development_dependency 'vcr', '~> 4.0', '>= 4.0.0'
28
- spec.add_development_dependency 'yard', '~> 0.9.9'
25
+ spec.add_development_dependency 'webmock', '~> 3.6', '>= 3.6.0'
26
+ spec.add_development_dependency 'simplecov', '~> 0.17.0'
27
+ spec.add_development_dependency 'vcr', '~> 5.0', '>= 5.0.0'
28
+ spec.add_development_dependency 'yard', '~> 0.9.20'
29
29
  spec.add_development_dependency 'pry', '~> 0.11', '>= 0.11.3'
30
30
  spec.add_development_dependency 'rb-readline', '~> 0.5', '>= 0.5.5'
31
31
  spec.add_development_dependency 'irb', '~> 1.0', '>= 1.0.0'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: radiator
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.6
4
+ version: 0.4.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Anthony Martin
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-05-25 00:00:00.000000000 Z
11
+ date: 2019-07-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -110,68 +110,68 @@ dependencies:
110
110
  requirements:
111
111
  - - "~>"
112
112
  - !ruby/object:Gem::Version
113
- version: '3.1'
113
+ version: '3.6'
114
114
  - - ">="
115
115
  - !ruby/object:Gem::Version
116
- version: 3.1.0
116
+ version: 3.6.0
117
117
  type: :development
118
118
  prerelease: false
119
119
  version_requirements: !ruby/object:Gem::Requirement
120
120
  requirements:
121
121
  - - "~>"
122
122
  - !ruby/object:Gem::Version
123
- version: '3.1'
123
+ version: '3.6'
124
124
  - - ">="
125
125
  - !ruby/object:Gem::Version
126
- version: 3.1.0
126
+ version: 3.6.0
127
127
  - !ruby/object:Gem::Dependency
128
128
  name: simplecov
129
129
  requirement: !ruby/object:Gem::Requirement
130
130
  requirements:
131
131
  - - "~>"
132
132
  - !ruby/object:Gem::Version
133
- version: 0.16.1
133
+ version: 0.17.0
134
134
  type: :development
135
135
  prerelease: false
136
136
  version_requirements: !ruby/object:Gem::Requirement
137
137
  requirements:
138
138
  - - "~>"
139
139
  - !ruby/object:Gem::Version
140
- version: 0.16.1
140
+ version: 0.17.0
141
141
  - !ruby/object:Gem::Dependency
142
142
  name: vcr
143
143
  requirement: !ruby/object:Gem::Requirement
144
144
  requirements:
145
145
  - - "~>"
146
146
  - !ruby/object:Gem::Version
147
- version: '4.0'
147
+ version: '5.0'
148
148
  - - ">="
149
149
  - !ruby/object:Gem::Version
150
- version: 4.0.0
150
+ version: 5.0.0
151
151
  type: :development
152
152
  prerelease: false
153
153
  version_requirements: !ruby/object:Gem::Requirement
154
154
  requirements:
155
155
  - - "~>"
156
156
  - !ruby/object:Gem::Version
157
- version: '4.0'
157
+ version: '5.0'
158
158
  - - ">="
159
159
  - !ruby/object:Gem::Version
160
- version: 4.0.0
160
+ version: 5.0.0
161
161
  - !ruby/object:Gem::Dependency
162
162
  name: yard
163
163
  requirement: !ruby/object:Gem::Requirement
164
164
  requirements:
165
165
  - - "~>"
166
166
  - !ruby/object:Gem::Version
167
- version: 0.9.9
167
+ version: 0.9.20
168
168
  type: :development
169
169
  prerelease: false
170
170
  version_requirements: !ruby/object:Gem::Requirement
171
171
  requirements:
172
172
  - - "~>"
173
173
  - !ruby/object:Gem::Version
174
- version: 0.9.9
174
+ version: 0.9.20
175
175
  - !ruby/object:Gem::Dependency
176
176
  name: pry
177
177
  requirement: !ruby/object:Gem::Requirement
@@ -451,7 +451,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
451
451
  version: '0'
452
452
  requirements: []
453
453
  rubyforge_project:
454
- rubygems_version: 2.6.14
454
+ rubygems_version: 2.7.7
455
455
  signing_key:
456
456
  specification_version: 4
457
457
  summary: STEEM RPC Ruby Client