crea-ruby 0.0.1

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.
Files changed (76) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +55 -0
  3. data/CONTRIBUTING.md +79 -0
  4. data/Gemfile +3 -0
  5. data/LICENSE +22 -0
  6. data/README.md +234 -0
  7. data/Rakefile +332 -0
  8. data/crea-ruby.gemspec +39 -0
  9. data/gource.sh +6 -0
  10. data/lib/crea.rb +85 -0
  11. data/lib/crea/api.rb +208 -0
  12. data/lib/crea/base_error.rb +218 -0
  13. data/lib/crea/block_api.rb +78 -0
  14. data/lib/crea/broadcast.rb +1334 -0
  15. data/lib/crea/chain_config.rb +36 -0
  16. data/lib/crea/formatter.rb +14 -0
  17. data/lib/crea/jsonrpc.rb +108 -0
  18. data/lib/crea/marshal.rb +231 -0
  19. data/lib/crea/mixins/jsonable.rb +37 -0
  20. data/lib/crea/mixins/retriable.rb +58 -0
  21. data/lib/crea/mixins/serializable.rb +45 -0
  22. data/lib/crea/operation.rb +141 -0
  23. data/lib/crea/operation/account_create.rb +10 -0
  24. data/lib/crea/operation/account_create_with_delegation.rb +12 -0
  25. data/lib/crea/operation/account_update.rb +8 -0
  26. data/lib/crea/operation/account_witness_proxy.rb +4 -0
  27. data/lib/crea/operation/account_witness_vote.rb +5 -0
  28. data/lib/crea/operation/cancel_transfer_from_savings.rb +4 -0
  29. data/lib/crea/operation/challenge_authority.rb +5 -0
  30. data/lib/crea/operation/change_recovery_account.rb +5 -0
  31. data/lib/crea/operation/claim_account.rb +5 -0
  32. data/lib/crea/operation/claim_reward_balance.rb +6 -0
  33. data/lib/crea/operation/comment.rb +9 -0
  34. data/lib/crea/operation/comment_options.rb +10 -0
  35. data/lib/crea/operation/convert.rb +5 -0
  36. data/lib/crea/operation/create_claimed_account.rb +10 -0
  37. data/lib/crea/operation/custom.rb +5 -0
  38. data/lib/crea/operation/custom_binary.rb +8 -0
  39. data/lib/crea/operation/custom_json.rb +6 -0
  40. data/lib/crea/operation/decline_voting_rights.rb +4 -0
  41. data/lib/crea/operation/delegate_vesting_shares.rb +5 -0
  42. data/lib/crea/operation/delete_comment.rb +4 -0
  43. data/lib/crea/operation/escrow_approve.rb +8 -0
  44. data/lib/crea/operation/escrow_dispute.rb +7 -0
  45. data/lib/crea/operation/escrow_release.rb +10 -0
  46. data/lib/crea/operation/escrow_transfer.rb +12 -0
  47. data/lib/crea/operation/feed_publish.rb +4 -0
  48. data/lib/crea/operation/limit_order_cancel.rb +4 -0
  49. data/lib/crea/operation/limit_order_create.rb +8 -0
  50. data/lib/crea/operation/limit_order_create2.rb +8 -0
  51. data/lib/crea/operation/prove_authority.rb +4 -0
  52. data/lib/crea/operation/recover_account.rb +6 -0
  53. data/lib/crea/operation/report_over_production.rb +5 -0
  54. data/lib/crea/operation/request_account_recovery.rb +6 -0
  55. data/lib/crea/operation/reset_account.rb +5 -0
  56. data/lib/crea/operation/set_reset_account.rb +5 -0
  57. data/lib/crea/operation/set_withdraw_vesting_route.rb +6 -0
  58. data/lib/crea/operation/transfer.rb +6 -0
  59. data/lib/crea/operation/transfer_from_savings.rb +7 -0
  60. data/lib/crea/operation/transfer_to_savings.rb +6 -0
  61. data/lib/crea/operation/transfer_to_vesting.rb +5 -0
  62. data/lib/crea/operation/vote.rb +6 -0
  63. data/lib/crea/operation/withdraw_vesting.rb +4 -0
  64. data/lib/crea/operation/witness_set_properties.rb +5 -0
  65. data/lib/crea/operation/witness_update.rb +7 -0
  66. data/lib/crea/rpc/base_client.rb +179 -0
  67. data/lib/crea/rpc/http_client.rb +143 -0
  68. data/lib/crea/rpc/thread_safe_http_client.rb +35 -0
  69. data/lib/crea/stream.rb +385 -0
  70. data/lib/crea/transaction.rb +96 -0
  71. data/lib/crea/transaction_builder.rb +393 -0
  72. data/lib/crea/type/amount.rb +107 -0
  73. data/lib/crea/type/base_type.rb +10 -0
  74. data/lib/crea/utils.rb +17 -0
  75. data/lib/crea/version.rb +4 -0
  76. metadata +478 -0
@@ -0,0 +1,10 @@
1
+ module Crea
2
+ module Type
3
+ class BaseType
4
+ def initialize(key, value)
5
+ @key = key
6
+ @value = value
7
+ end
8
+ end
9
+ end
10
+ end
data/lib/crea/utils.rb ADDED
@@ -0,0 +1,17 @@
1
+ module Crea
2
+ module Utils
3
+ def hexlify(s)
4
+ a = []
5
+ if s.respond_to? :each_byte
6
+ s.each_byte { |b| a << sprintf('%02X', b) }
7
+ else
8
+ s.each { |b| a << sprintf('%02X', b) }
9
+ end
10
+ a.join.downcase
11
+ end
12
+
13
+ def unhexlify(s)
14
+ s.split.pack('H*')
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,4 @@
1
+ module Crea
2
+ VERSION = '0.0.1'
3
+ AGENT_ID = "crea-ruby/#{VERSION}"
4
+ end
metadata ADDED
@@ -0,0 +1,478 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: crea-ruby
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Creativechain FDN
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2019-02-12 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '2.0'
20
+ - - ">="
21
+ - !ruby/object:Gem::Version
22
+ version: 2.0.1
23
+ type: :development
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - "~>"
28
+ - !ruby/object:Gem::Version
29
+ version: '2.0'
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: 2.0.1
33
+ - !ruby/object:Gem::Dependency
34
+ name: rake
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - "~>"
38
+ - !ruby/object:Gem::Version
39
+ version: '12.3'
40
+ - - ">="
41
+ - !ruby/object:Gem::Version
42
+ version: 12.3.0
43
+ type: :development
44
+ prerelease: false
45
+ version_requirements: !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - "~>"
48
+ - !ruby/object:Gem::Version
49
+ version: '12.3'
50
+ - - ">="
51
+ - !ruby/object:Gem::Version
52
+ version: 12.3.0
53
+ - !ruby/object:Gem::Dependency
54
+ name: minitest
55
+ requirement: !ruby/object:Gem::Requirement
56
+ requirements:
57
+ - - "~>"
58
+ - !ruby/object:Gem::Version
59
+ version: '5.10'
60
+ - - ">="
61
+ - !ruby/object:Gem::Version
62
+ version: 5.10.3
63
+ type: :development
64
+ prerelease: false
65
+ version_requirements: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - "~>"
68
+ - !ruby/object:Gem::Version
69
+ version: '5.10'
70
+ - - ">="
71
+ - !ruby/object:Gem::Version
72
+ version: 5.10.3
73
+ - !ruby/object:Gem::Dependency
74
+ name: minitest-line
75
+ requirement: !ruby/object:Gem::Requirement
76
+ requirements:
77
+ - - "~>"
78
+ - !ruby/object:Gem::Version
79
+ version: '0.6'
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: 0.6.4
83
+ type: :development
84
+ prerelease: false
85
+ version_requirements: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '0.6'
90
+ - - ">="
91
+ - !ruby/object:Gem::Version
92
+ version: 0.6.4
93
+ - !ruby/object:Gem::Dependency
94
+ name: minitest-proveit
95
+ requirement: !ruby/object:Gem::Requirement
96
+ requirements:
97
+ - - "~>"
98
+ - !ruby/object:Gem::Version
99
+ version: '1.0'
100
+ - - ">="
101
+ - !ruby/object:Gem::Version
102
+ version: 1.0.0
103
+ type: :development
104
+ prerelease: false
105
+ version_requirements: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - "~>"
108
+ - !ruby/object:Gem::Version
109
+ version: '1.0'
110
+ - - ">="
111
+ - !ruby/object:Gem::Version
112
+ version: 1.0.0
113
+ - !ruby/object:Gem::Dependency
114
+ name: webmock
115
+ requirement: !ruby/object:Gem::Requirement
116
+ requirements:
117
+ - - "~>"
118
+ - !ruby/object:Gem::Version
119
+ version: '3.3'
120
+ - - ">="
121
+ - !ruby/object:Gem::Version
122
+ version: 3.3.0
123
+ type: :development
124
+ prerelease: false
125
+ version_requirements: !ruby/object:Gem::Requirement
126
+ requirements:
127
+ - - "~>"
128
+ - !ruby/object:Gem::Version
129
+ version: '3.3'
130
+ - - ">="
131
+ - !ruby/object:Gem::Version
132
+ version: 3.3.0
133
+ - !ruby/object:Gem::Dependency
134
+ name: simplecov
135
+ requirement: !ruby/object:Gem::Requirement
136
+ requirements:
137
+ - - "~>"
138
+ - !ruby/object:Gem::Version
139
+ version: '0.15'
140
+ - - ">="
141
+ - !ruby/object:Gem::Version
142
+ version: 0.15.1
143
+ type: :development
144
+ prerelease: false
145
+ version_requirements: !ruby/object:Gem::Requirement
146
+ requirements:
147
+ - - "~>"
148
+ - !ruby/object:Gem::Version
149
+ version: '0.15'
150
+ - - ">="
151
+ - !ruby/object:Gem::Version
152
+ version: 0.15.1
153
+ - !ruby/object:Gem::Dependency
154
+ name: vcr
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - "~>"
158
+ - !ruby/object:Gem::Version
159
+ version: '4.0'
160
+ - - ">="
161
+ - !ruby/object:Gem::Version
162
+ version: 4.0.0
163
+ type: :development
164
+ prerelease: false
165
+ version_requirements: !ruby/object:Gem::Requirement
166
+ requirements:
167
+ - - "~>"
168
+ - !ruby/object:Gem::Version
169
+ version: '4.0'
170
+ - - ">="
171
+ - !ruby/object:Gem::Version
172
+ version: 4.0.0
173
+ - !ruby/object:Gem::Dependency
174
+ name: yard
175
+ requirement: !ruby/object:Gem::Requirement
176
+ requirements:
177
+ - - "~>"
178
+ - !ruby/object:Gem::Version
179
+ version: '0.9'
180
+ - - ">="
181
+ - !ruby/object:Gem::Version
182
+ version: 0.9.12
183
+ type: :development
184
+ prerelease: false
185
+ version_requirements: !ruby/object:Gem::Requirement
186
+ requirements:
187
+ - - "~>"
188
+ - !ruby/object:Gem::Version
189
+ version: '0.9'
190
+ - - ">="
191
+ - !ruby/object:Gem::Version
192
+ version: 0.9.12
193
+ - !ruby/object:Gem::Dependency
194
+ name: pry
195
+ requirement: !ruby/object:Gem::Requirement
196
+ requirements:
197
+ - - "~>"
198
+ - !ruby/object:Gem::Version
199
+ version: '0.11'
200
+ - - ">="
201
+ - !ruby/object:Gem::Version
202
+ version: 0.11.3
203
+ type: :development
204
+ prerelease: false
205
+ version_requirements: !ruby/object:Gem::Requirement
206
+ requirements:
207
+ - - "~>"
208
+ - !ruby/object:Gem::Version
209
+ version: '0.11'
210
+ - - ">="
211
+ - !ruby/object:Gem::Version
212
+ version: 0.11.3
213
+ - !ruby/object:Gem::Dependency
214
+ name: awesome_print
215
+ requirement: !ruby/object:Gem::Requirement
216
+ requirements:
217
+ - - "~>"
218
+ - !ruby/object:Gem::Version
219
+ version: '1.8'
220
+ - - ">="
221
+ - !ruby/object:Gem::Version
222
+ version: 1.8.0
223
+ type: :development
224
+ prerelease: false
225
+ version_requirements: !ruby/object:Gem::Requirement
226
+ requirements:
227
+ - - "~>"
228
+ - !ruby/object:Gem::Version
229
+ version: '1.8'
230
+ - - ">="
231
+ - !ruby/object:Gem::Version
232
+ version: 1.8.0
233
+ - !ruby/object:Gem::Dependency
234
+ name: json
235
+ requirement: !ruby/object:Gem::Requirement
236
+ requirements:
237
+ - - "~>"
238
+ - !ruby/object:Gem::Version
239
+ version: '2.1'
240
+ - - ">="
241
+ - !ruby/object:Gem::Version
242
+ version: 2.1.0
243
+ type: :runtime
244
+ prerelease: false
245
+ version_requirements: !ruby/object:Gem::Requirement
246
+ requirements:
247
+ - - "~>"
248
+ - !ruby/object:Gem::Version
249
+ version: '2.1'
250
+ - - ">="
251
+ - !ruby/object:Gem::Version
252
+ version: 2.1.0
253
+ - !ruby/object:Gem::Dependency
254
+ name: logging
255
+ requirement: !ruby/object:Gem::Requirement
256
+ requirements:
257
+ - - "~>"
258
+ - !ruby/object:Gem::Version
259
+ version: '2.2'
260
+ - - ">="
261
+ - !ruby/object:Gem::Version
262
+ version: 2.2.0
263
+ type: :runtime
264
+ prerelease: false
265
+ version_requirements: !ruby/object:Gem::Requirement
266
+ requirements:
267
+ - - "~>"
268
+ - !ruby/object:Gem::Version
269
+ version: '2.2'
270
+ - - ">="
271
+ - !ruby/object:Gem::Version
272
+ version: 2.2.0
273
+ - !ruby/object:Gem::Dependency
274
+ name: hashie
275
+ requirement: !ruby/object:Gem::Requirement
276
+ requirements:
277
+ - - "~>"
278
+ - !ruby/object:Gem::Version
279
+ version: '3.5'
280
+ - - ">="
281
+ - !ruby/object:Gem::Version
282
+ version: 3.5.7
283
+ type: :runtime
284
+ prerelease: false
285
+ version_requirements: !ruby/object:Gem::Requirement
286
+ requirements:
287
+ - - "~>"
288
+ - !ruby/object:Gem::Version
289
+ version: '3.5'
290
+ - - ">="
291
+ - !ruby/object:Gem::Version
292
+ version: 3.5.7
293
+ - !ruby/object:Gem::Dependency
294
+ name: bitcoin-ruby
295
+ requirement: !ruby/object:Gem::Requirement
296
+ requirements:
297
+ - - "~>"
298
+ - !ruby/object:Gem::Version
299
+ version: '0.0'
300
+ - - ">="
301
+ - !ruby/object:Gem::Version
302
+ version: 0.0.18
303
+ type: :runtime
304
+ prerelease: false
305
+ version_requirements: !ruby/object:Gem::Requirement
306
+ requirements:
307
+ - - "~>"
308
+ - !ruby/object:Gem::Version
309
+ version: '0.0'
310
+ - - ">="
311
+ - !ruby/object:Gem::Version
312
+ version: 0.0.18
313
+ - !ruby/object:Gem::Dependency
314
+ name: ffi
315
+ requirement: !ruby/object:Gem::Requirement
316
+ requirements:
317
+ - - "~>"
318
+ - !ruby/object:Gem::Version
319
+ version: '1.9'
320
+ - - ">="
321
+ - !ruby/object:Gem::Version
322
+ version: 1.9.23
323
+ type: :runtime
324
+ prerelease: false
325
+ version_requirements: !ruby/object:Gem::Requirement
326
+ requirements:
327
+ - - "~>"
328
+ - !ruby/object:Gem::Version
329
+ version: '1.9'
330
+ - - ">="
331
+ - !ruby/object:Gem::Version
332
+ version: 1.9.23
333
+ - !ruby/object:Gem::Dependency
334
+ name: bindata
335
+ requirement: !ruby/object:Gem::Requirement
336
+ requirements:
337
+ - - "~>"
338
+ - !ruby/object:Gem::Version
339
+ version: '2.4'
340
+ - - ">="
341
+ - !ruby/object:Gem::Version
342
+ version: 2.4.4
343
+ type: :runtime
344
+ prerelease: false
345
+ version_requirements: !ruby/object:Gem::Requirement
346
+ requirements:
347
+ - - "~>"
348
+ - !ruby/object:Gem::Version
349
+ version: '2.4'
350
+ - - ">="
351
+ - !ruby/object:Gem::Version
352
+ version: 2.4.4
353
+ - !ruby/object:Gem::Dependency
354
+ name: base58
355
+ requirement: !ruby/object:Gem::Requirement
356
+ requirements:
357
+ - - "~>"
358
+ - !ruby/object:Gem::Version
359
+ version: '0.2'
360
+ - - ">="
361
+ - !ruby/object:Gem::Version
362
+ version: 0.2.3
363
+ type: :runtime
364
+ prerelease: false
365
+ version_requirements: !ruby/object:Gem::Requirement
366
+ requirements:
367
+ - - "~>"
368
+ - !ruby/object:Gem::Version
369
+ version: '0.2'
370
+ - - ">="
371
+ - !ruby/object:Gem::Version
372
+ version: 0.2.3
373
+ description: Client for accessing the Crea blockchain.
374
+ email:
375
+ - info@creativechain.com
376
+ executables: []
377
+ extensions: []
378
+ extra_rdoc_files: []
379
+ files:
380
+ - ".gitignore"
381
+ - CONTRIBUTING.md
382
+ - Gemfile
383
+ - LICENSE
384
+ - README.md
385
+ - Rakefile
386
+ - crea-ruby.gemspec
387
+ - gource.sh
388
+ - lib/crea.rb
389
+ - lib/crea/api.rb
390
+ - lib/crea/base_error.rb
391
+ - lib/crea/block_api.rb
392
+ - lib/crea/broadcast.rb
393
+ - lib/crea/chain_config.rb
394
+ - lib/crea/formatter.rb
395
+ - lib/crea/jsonrpc.rb
396
+ - lib/crea/marshal.rb
397
+ - lib/crea/mixins/jsonable.rb
398
+ - lib/crea/mixins/retriable.rb
399
+ - lib/crea/mixins/serializable.rb
400
+ - lib/crea/operation.rb
401
+ - lib/crea/operation/account_create.rb
402
+ - lib/crea/operation/account_create_with_delegation.rb
403
+ - lib/crea/operation/account_update.rb
404
+ - lib/crea/operation/account_witness_proxy.rb
405
+ - lib/crea/operation/account_witness_vote.rb
406
+ - lib/crea/operation/cancel_transfer_from_savings.rb
407
+ - lib/crea/operation/challenge_authority.rb
408
+ - lib/crea/operation/change_recovery_account.rb
409
+ - lib/crea/operation/claim_account.rb
410
+ - lib/crea/operation/claim_reward_balance.rb
411
+ - lib/crea/operation/comment.rb
412
+ - lib/crea/operation/comment_options.rb
413
+ - lib/crea/operation/convert.rb
414
+ - lib/crea/operation/create_claimed_account.rb
415
+ - lib/crea/operation/custom.rb
416
+ - lib/crea/operation/custom_binary.rb
417
+ - lib/crea/operation/custom_json.rb
418
+ - lib/crea/operation/decline_voting_rights.rb
419
+ - lib/crea/operation/delegate_vesting_shares.rb
420
+ - lib/crea/operation/delete_comment.rb
421
+ - lib/crea/operation/escrow_approve.rb
422
+ - lib/crea/operation/escrow_dispute.rb
423
+ - lib/crea/operation/escrow_release.rb
424
+ - lib/crea/operation/escrow_transfer.rb
425
+ - lib/crea/operation/feed_publish.rb
426
+ - lib/crea/operation/limit_order_cancel.rb
427
+ - lib/crea/operation/limit_order_create.rb
428
+ - lib/crea/operation/limit_order_create2.rb
429
+ - lib/crea/operation/prove_authority.rb
430
+ - lib/crea/operation/recover_account.rb
431
+ - lib/crea/operation/report_over_production.rb
432
+ - lib/crea/operation/request_account_recovery.rb
433
+ - lib/crea/operation/reset_account.rb
434
+ - lib/crea/operation/set_reset_account.rb
435
+ - lib/crea/operation/set_withdraw_vesting_route.rb
436
+ - lib/crea/operation/transfer.rb
437
+ - lib/crea/operation/transfer_from_savings.rb
438
+ - lib/crea/operation/transfer_to_savings.rb
439
+ - lib/crea/operation/transfer_to_vesting.rb
440
+ - lib/crea/operation/vote.rb
441
+ - lib/crea/operation/withdraw_vesting.rb
442
+ - lib/crea/operation/witness_set_properties.rb
443
+ - lib/crea/operation/witness_update.rb
444
+ - lib/crea/rpc/base_client.rb
445
+ - lib/crea/rpc/http_client.rb
446
+ - lib/crea/rpc/thread_safe_http_client.rb
447
+ - lib/crea/stream.rb
448
+ - lib/crea/transaction.rb
449
+ - lib/crea/transaction_builder.rb
450
+ - lib/crea/type/amount.rb
451
+ - lib/crea/type/base_type.rb
452
+ - lib/crea/utils.rb
453
+ - lib/crea/version.rb
454
+ homepage: https://github.com/creativechain/crea-ruby
455
+ licenses:
456
+ - MIT
457
+ metadata: {}
458
+ post_install_message:
459
+ rdoc_options: []
460
+ require_paths:
461
+ - lib
462
+ required_ruby_version: !ruby/object:Gem::Requirement
463
+ requirements:
464
+ - - ">="
465
+ - !ruby/object:Gem::Version
466
+ version: '0'
467
+ required_rubygems_version: !ruby/object:Gem::Requirement
468
+ requirements:
469
+ - - ">="
470
+ - !ruby/object:Gem::Version
471
+ version: '0'
472
+ requirements: []
473
+ rubyforge_project:
474
+ rubygems_version: 2.7.6
475
+ signing_key:
476
+ specification_version: 4
477
+ summary: Crea Ruby Client
478
+ test_files: []