utxoracle 0.1.0 → 0.1.2
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/.gitignore +0 -1
- data/Gemfile.lock +118 -0
- data/README.md +49 -1
- data/lib/utxoracle/version.rb +1 -1
- data/utxoracle.gemspec +4 -1
- metadata +7 -4
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 67eaa4acc24cbf01576008bdee1c59500e47414cad85659c8de61ed36a449d3d
|
|
4
|
+
data.tar.gz: 97cad75e237b1035658a22d16491e942e18a0d117370e6989ff548ab57c36b50
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 9e35a7ab04066040e193c82f1e5be4e9a2a201be088328d285214e75b82efc59cc6e95a5aef2290edbaccb490b89c5e4fac603a3e310271f7a6f0c735937418e
|
|
7
|
+
data.tar.gz: 00efe8ea4e0e8eeb285ffb2da3a3fe9c1fc6b2581f0ce0a8968f65ae117fedf6d335b4125a20bedfedab6093ecafb0f1f581d17d94be39dc80d2cbeefabd8ddf
|
data/.gitignore
CHANGED
data/Gemfile.lock
ADDED
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
PATH
|
|
2
|
+
remote: .
|
|
3
|
+
specs:
|
|
4
|
+
utxoracle (0.1.2)
|
|
5
|
+
cleanrpc (~> 0.0.2)
|
|
6
|
+
typhoeus (~> 1.4.0)
|
|
7
|
+
|
|
8
|
+
GEM
|
|
9
|
+
remote: https://rubygems.org/
|
|
10
|
+
specs:
|
|
11
|
+
ansi (1.5.0)
|
|
12
|
+
ast (2.4.2)
|
|
13
|
+
cleanrpc (0.0.3)
|
|
14
|
+
coderay (1.1.3)
|
|
15
|
+
diff-lcs (1.5.1)
|
|
16
|
+
docile (1.4.0)
|
|
17
|
+
ethon (0.16.0)
|
|
18
|
+
ffi (>= 1.15.0)
|
|
19
|
+
ffi (1.17.0)
|
|
20
|
+
ffi (1.17.0-aarch64-linux-gnu)
|
|
21
|
+
ffi (1.17.0-aarch64-linux-musl)
|
|
22
|
+
ffi (1.17.0-arm-linux-gnu)
|
|
23
|
+
ffi (1.17.0-arm-linux-musl)
|
|
24
|
+
ffi (1.17.0-arm64-darwin)
|
|
25
|
+
ffi (1.17.0-x86-linux-gnu)
|
|
26
|
+
ffi (1.17.0-x86-linux-musl)
|
|
27
|
+
ffi (1.17.0-x86_64-darwin)
|
|
28
|
+
ffi (1.17.0-x86_64-linux-gnu)
|
|
29
|
+
ffi (1.17.0-x86_64-linux-musl)
|
|
30
|
+
json (2.7.2)
|
|
31
|
+
language_server-protocol (3.17.0.3)
|
|
32
|
+
method_source (1.1.0)
|
|
33
|
+
parallel (1.25.1)
|
|
34
|
+
parser (3.3.3.0)
|
|
35
|
+
ast (~> 2.4.1)
|
|
36
|
+
racc
|
|
37
|
+
pry (0.14.2)
|
|
38
|
+
coderay (~> 1.1)
|
|
39
|
+
method_source (~> 1.0)
|
|
40
|
+
racc (1.8.0)
|
|
41
|
+
rainbow (3.1.1)
|
|
42
|
+
rake (13.2.1)
|
|
43
|
+
regexp_parser (2.9.2)
|
|
44
|
+
rexml (3.3.0)
|
|
45
|
+
strscan
|
|
46
|
+
rspec (3.13.0)
|
|
47
|
+
rspec-core (~> 3.13.0)
|
|
48
|
+
rspec-expectations (~> 3.13.0)
|
|
49
|
+
rspec-mocks (~> 3.13.0)
|
|
50
|
+
rspec-core (3.13.0)
|
|
51
|
+
rspec-support (~> 3.13.0)
|
|
52
|
+
rspec-expectations (3.13.1)
|
|
53
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
|
54
|
+
rspec-support (~> 3.13.0)
|
|
55
|
+
rspec-mocks (3.13.1)
|
|
56
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
|
57
|
+
rspec-support (~> 3.13.0)
|
|
58
|
+
rspec-support (3.13.1)
|
|
59
|
+
rubocop (1.64.1)
|
|
60
|
+
json (~> 2.3)
|
|
61
|
+
language_server-protocol (>= 3.17.0)
|
|
62
|
+
parallel (~> 1.10)
|
|
63
|
+
parser (>= 3.3.0.2)
|
|
64
|
+
rainbow (>= 2.2.2, < 4.0)
|
|
65
|
+
regexp_parser (>= 1.8, < 3.0)
|
|
66
|
+
rexml (>= 3.2.5, < 4.0)
|
|
67
|
+
rubocop-ast (>= 1.31.1, < 2.0)
|
|
68
|
+
ruby-progressbar (~> 1.7)
|
|
69
|
+
unicode-display_width (>= 2.4.0, < 3.0)
|
|
70
|
+
rubocop-ast (1.31.3)
|
|
71
|
+
parser (>= 3.3.1.0)
|
|
72
|
+
rubocop-rspec (3.0.1)
|
|
73
|
+
rubocop (~> 1.61)
|
|
74
|
+
ruby-progressbar (1.13.0)
|
|
75
|
+
simplecov (0.22.0)
|
|
76
|
+
docile (~> 1.1)
|
|
77
|
+
simplecov-html (~> 0.11)
|
|
78
|
+
simplecov_json_formatter (~> 0.1)
|
|
79
|
+
simplecov-console (0.9.1)
|
|
80
|
+
ansi
|
|
81
|
+
simplecov
|
|
82
|
+
terminal-table
|
|
83
|
+
simplecov-html (0.12.3)
|
|
84
|
+
simplecov_json_formatter (0.1.4)
|
|
85
|
+
stackprof (0.2.26)
|
|
86
|
+
strscan (3.1.0)
|
|
87
|
+
terminal-table (3.0.2)
|
|
88
|
+
unicode-display_width (>= 1.1.1, < 3)
|
|
89
|
+
typhoeus (1.4.1)
|
|
90
|
+
ethon (>= 0.9.0)
|
|
91
|
+
unicode-display_width (2.5.0)
|
|
92
|
+
|
|
93
|
+
PLATFORMS
|
|
94
|
+
aarch64-linux-gnu
|
|
95
|
+
aarch64-linux-musl
|
|
96
|
+
arm-linux-gnu
|
|
97
|
+
arm-linux-musl
|
|
98
|
+
arm64-darwin
|
|
99
|
+
ruby
|
|
100
|
+
x86-linux-gnu
|
|
101
|
+
x86-linux-musl
|
|
102
|
+
x86_64-darwin
|
|
103
|
+
x86_64-linux-gnu
|
|
104
|
+
x86_64-linux-musl
|
|
105
|
+
|
|
106
|
+
DEPENDENCIES
|
|
107
|
+
pry
|
|
108
|
+
rake
|
|
109
|
+
rspec
|
|
110
|
+
rubocop
|
|
111
|
+
rubocop-rspec
|
|
112
|
+
simplecov
|
|
113
|
+
simplecov-console
|
|
114
|
+
stackprof
|
|
115
|
+
utxoracle!
|
|
116
|
+
|
|
117
|
+
BUNDLED WITH
|
|
118
|
+
2.5.7
|
data/README.md
CHANGED
|
@@ -19,6 +19,7 @@ The purpose of releasing Utxoracle as a Gem is multi-fold:
|
|
|
19
19
|
- [Usage](#usage)
|
|
20
20
|
* [Requiring the gem](#requiring-the-gem)
|
|
21
21
|
* [Fetching Price](#fetching-price)
|
|
22
|
+
- [Performance](#performance)
|
|
22
23
|
- [Development](#development)
|
|
23
24
|
- [Contributing](#contributing)
|
|
24
25
|
- [License](#license)
|
|
@@ -92,6 +93,53 @@ blocks_on_this_day: 165
|
|
|
92
93
|
Price Estimate: $27,045
|
|
93
94
|
```
|
|
94
95
|
|
|
96
|
+
## Performance
|
|
97
|
+
|
|
98
|
+
Without optimization at the algorithmic/implementation level, UTXOracle.rb is able to compute prices for an entire month in ~10 minutes using native Ruby threads.
|
|
99
|
+
|
|
100
|
+
Results on 3Ghz 6-Core Intel i5
|
|
101
|
+
|
|
102
|
+
For October 2023:
|
|
103
|
+
```ruby
|
|
104
|
+
$ ./bin/benchmark/run_range aUser aPassword 127.0.0.1 8332 2023-10-01 2023-11-01
|
|
105
|
+
[1] pry(main)> ret.sort
|
|
106
|
+
=> [[2023-10-01 00:00:00 -0400, 27364],
|
|
107
|
+
[2023-10-02 00:00:00 -0400, 28345],
|
|
108
|
+
[2023-10-03 00:00:00 -0400, 27696],
|
|
109
|
+
[2023-10-04 00:00:00 -0400, 27712],
|
|
110
|
+
[2023-10-05 00:00:00 -0400, 27725],
|
|
111
|
+
[2023-10-06 00:00:00 -0400, 28021],
|
|
112
|
+
[2023-10-07 00:00:00 -0400, 28311],
|
|
113
|
+
[2023-10-08 00:00:00 -0400, 28308],
|
|
114
|
+
[2023-10-09 00:00:00 -0400, 28000],
|
|
115
|
+
[2023-10-10 00:00:00 -0400, 27708],
|
|
116
|
+
[2023-10-11 00:00:00 -0400, 27373],
|
|
117
|
+
[2023-10-12 00:00:00 -0400, 27045],
|
|
118
|
+
[2023-10-13 00:00:00 -0400, 27058],
|
|
119
|
+
[2023-10-14 00:00:00 -0400, 27077],
|
|
120
|
+
[2023-10-15 00:00:00 -0400, 27093],
|
|
121
|
+
[2023-10-16 00:00:00 -0400, 28357],
|
|
122
|
+
[2023-10-17 00:00:00 -0400, 28664],
|
|
123
|
+
[2023-10-18 00:00:00 -0400, 28658],
|
|
124
|
+
[2023-10-19 00:00:00 -0400, 28690],
|
|
125
|
+
[2023-10-20 00:00:00 -0400, 29704],
|
|
126
|
+
[2023-10-21 00:00:00 -0400, 30034],
|
|
127
|
+
[2023-10-22 00:00:00 -0400, 30333],
|
|
128
|
+
[2023-10-23 00:00:00 -0400, 31069],
|
|
129
|
+
[2023-10-24 00:00:00 -0400, 34468],
|
|
130
|
+
[2023-10-25 00:00:00 -0400, 34858],
|
|
131
|
+
[2023-10-26 00:00:00 -0400, 34484],
|
|
132
|
+
[2023-10-27 00:00:00 -0400, 34114],
|
|
133
|
+
[2023-10-28 00:00:00 -0400, 34438],
|
|
134
|
+
[2023-10-29 00:00:00 -0400, 34841],
|
|
135
|
+
[2023-10-30 00:00:00 -0400, 34840],
|
|
136
|
+
[2023-10-31 00:00:00 -0400, 34829]]
|
|
137
|
+
[2] pry(main)> time
|
|
138
|
+
=> #<Benchmark::Tms:0x0000000110ddd310 @cstime=0.0, @cutime=0.0, @label="", @real=643.9174029999995, @stime=87.356026, @total=647.7391030000001, @utime=560.3830770000001>
|
|
139
|
+
|
|
140
|
+
# 643 seconds, or 10.7 minutes.
|
|
141
|
+
```
|
|
142
|
+
|
|
95
143
|
|
|
96
144
|
## Development
|
|
97
145
|
|
|
@@ -124,7 +172,7 @@ rake spec # Run RSpec code examples
|
|
|
124
172
|
|
|
125
173
|
## Contributing
|
|
126
174
|
|
|
127
|
-
Bug reports and pull requests are welcome on GitHub at https://github.com/
|
|
175
|
+
Bug reports and pull requests are welcome on GitHub at https://github.com/BrantaOps/UTXOracle.
|
|
128
176
|
|
|
129
177
|
## License
|
|
130
178
|
|
data/lib/utxoracle/version.rb
CHANGED
data/utxoracle.gemspec
CHANGED
|
@@ -13,10 +13,13 @@ Gem::Specification.new do |spec|
|
|
|
13
13
|
|
|
14
14
|
spec.summary = 'Offline price oracle for Bitcoin.'
|
|
15
15
|
spec.description = 'Offline price oracle for Bitcoin. Offers programmable data providers (Bitcoin node, mempool, etc). Can be used from commandline, or integrated into existing ruby stacks.'
|
|
16
|
-
spec.homepage = 'https://github.com/
|
|
16
|
+
spec.homepage = 'https://github.com/BrantaOps/UTXOracle'
|
|
17
17
|
spec.license = 'MIT'
|
|
18
18
|
spec.required_ruby_version = '>= 3.1.0'
|
|
19
19
|
|
|
20
|
+
spec.metadata['homepage_uri'] = spec.homepage
|
|
21
|
+
spec.metadata['source_code_uri'] = 'https://github.com/BrantaOps/UTXOracle'
|
|
22
|
+
|
|
20
23
|
spec.files = `git ls-files`.split("\n")
|
|
21
24
|
spec.bindir = 'bin'
|
|
22
25
|
spec.require_path = 'lib'
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: utxoracle
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.2
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Keith Gardner
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2024-06-14 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: cleanrpc
|
|
@@ -161,6 +161,7 @@ files:
|
|
|
161
161
|
- ".gitignore"
|
|
162
162
|
- ".ruby-version"
|
|
163
163
|
- Gemfile
|
|
164
|
+
- Gemfile.lock
|
|
164
165
|
- LICENSE
|
|
165
166
|
- README.md
|
|
166
167
|
- Rakefile
|
|
@@ -181,10 +182,12 @@ files:
|
|
|
181
182
|
- spec/utxoracle/oracle_spec.rb
|
|
182
183
|
- spec/utxoracle_spec.rb
|
|
183
184
|
- utxoracle.gemspec
|
|
184
|
-
homepage: https://github.com/
|
|
185
|
+
homepage: https://github.com/BrantaOps/UTXOracle
|
|
185
186
|
licenses:
|
|
186
187
|
- MIT
|
|
187
|
-
metadata:
|
|
188
|
+
metadata:
|
|
189
|
+
homepage_uri: https://github.com/BrantaOps/UTXOracle
|
|
190
|
+
source_code_uri: https://github.com/BrantaOps/UTXOracle
|
|
188
191
|
post_install_message:
|
|
189
192
|
rdoc_options: []
|
|
190
193
|
require_paths:
|