ctfc 0.3.1 → 0.4.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6df1fb47102b8c5c62d4340a69adf54db78ee380e8d0b88cf2b3201ad2229acb
4
- data.tar.gz: 6302f744ba17f497fbd35bff59e695443bd74eec481b357462f70b3d049531a7
3
+ metadata.gz: 409d75b59775b440b646f56056d957339253c550befff121d954373b4e26634f
4
+ data.tar.gz: 5c11ef13d7da7fb6dcfac08b0985620d9104100db0851a3760066d08b261d84b
5
5
  SHA512:
6
- metadata.gz: 050abfa5bf9c9dd8b3444c1e89dca6af824b2cc4d2b215dd4e991058026e8b7dbf018231601d0b9d6e8f221eee5cffbd77f4b38dd53bdf8787f21cb9d2e0713a
7
- data.tar.gz: 862f70090801ffedd6e9a01b06f1a341f2d771673b685868c87c683a542f09da7bb2cb03c039897b34b75bbb0638369ec42634c9e63a6c988baae5a9d4fb7341
6
+ metadata.gz: 2a6011b38fb81898fae7a59d54e512104b7e8bee9f15d38d5f716d6680a62bf07e6beb6d67615c4486bb971f2ac8db8c9652ceb7f0328145f484e36e6ee362ea
7
+ data.tar.gz: c2cecff14b934c6cfb467933528329be3ad79ed5e5a5205a4448e587d7d2f1a185e6c10e24d858dc6f76b2e019a9242f8d7d6e13a516d71535f0819b6ce540e6
data/LICENSE CHANGED
@@ -1,3 +1,9 @@
1
+ ##
2
+ # CTFC gem is copyrighted under MIT license.
3
+ # From version `0.4.1`, first stable Open Source version, gem `colorize` was removed
4
+ # to keep it all under MIT.
5
+ ##
6
+
1
7
  MIT License
2
8
 
3
9
  Copyright (c) 2022 alx3dev
data/README.md CHANGED
@@ -1,19 +1,29 @@
1
- # About
1
+ [**NOTE:**](https://www.github.com/alx3dev/ctfc/LICENSE_DEPENDENCIES.md)
2
+ >Removed gem `colorize` to allow **MIT** license.
3
+ >All comits from `v-0.4.0` must be signed and tagged **verified**.
4
+
2
5
 
6
+ # About
3
7
  Convert any crypto to fiat currency, gather all data and/or save in `.csv` table.
4
8
  For now only prices are printed/saved, while all data remain easily accessible from variable (for developers).
5
9
 
6
10
 
7
11
  # How to install
12
+ Make sure you have ruby and git installed
8
13
 
9
- Make sure you have ruby and git installed:
10
-
14
+ Install from source:
11
15
  ```bash
12
16
  git clone https://github.com/alx3dev/ctfc.git
13
17
  cd ctfc && bundle install
14
18
  ```
15
-
19
+
20
+ Install from rubygems:
21
+
22
+ ```bash
23
+ gem install ctfc
24
+ ```
16
25
  # How to run
26
+ - **Read documentation on:** https://rubydoc.info/gems/ctfc/CTFC/Data
17
27
 
18
28
  ```bash
19
29
  ruby bin/ctfc fiat_1 fiat_2 fiat_3
@@ -21,113 +31,147 @@ ruby bin/ctfc fiat_1 fiat_2 fiat_3
21
31
 
22
32
  This command also accept multiple arguments:
23
33
 
24
- - `--no-save` - do not save `.csv.` output
25
- - `--no-print` - do not print terminal output
26
- - `--coins` - coins to scrap (default: BTC, LTC, XMR, ETH, BCH, ZEC )
27
- - `--help` - help menu
34
+ - `--no-save` - do not save `.csv.` output
35
+ - `--no-print` - do not print terminal output
36
+ - `--coins` - coins to scrap (default: BTC, LTC, XMR, ETH, BCH, ZEC )
37
+ - `--loop` - repeat script N times (default 1)
38
+ - `--wait` - wait N seconds between loops (default 0)
39
+ - `--help` - help menu
28
40
 
29
41
 
30
42
  # Script Examples
31
-
32
43
  1 - Run script without arguments (default options)
33
44
 
34
- ```
45
+ ```ruby
35
46
  ruby bin/ctfc
36
47
 
37
- @return:
38
- print EUR rates for default coins (BTC, LTC, XMR, ETH, BCH, ZEC)
39
- do not save '.csv' table
40
- ```
48
+ => return:
49
+ print EUR rates for default coins (BTC, LTC, XMR, ETH, BCH, ZEC)
50
+ do not save '.csv' table
51
+ ```
41
52
 
42
53
 
43
54
  2 - Add fiat currencies as arguments
44
55
 
45
- ```
56
+ ```ruby
46
57
  ruby bin/ctfc eur usd rsd
47
58
 
48
- @return:
49
- print EUR, USD, RSD rates for default coins
50
- save data in '.csv' table with pattern: 'crypto_CURRENCY.csv'
51
- -> './crypto_eur.csv', './crypto_usd.csv', './crypto_rsd.csv'
59
+ => return:
60
+ print EUR, USD, RSD rates for default coins
61
+ save data in '.csv' table with pattern: 'crypto_#{CURRENCY}.csv'
62
+ -> './crypto_eur.csv', './crypto_usd.csv', './crypto_rsd.csv'
52
63
  ```
53
64
 
54
- 3 - Use `--no-save` and/or `--no-print`
65
+ 3 - Use `--no-save`, `--no-print`, `--loop`, `--wait`
55
66
 
56
- ```
67
+ ```ruby
57
68
  ruby bin/ctfc eur --no-print --coins btc xmr ltc
58
69
 
59
- @return:
60
- save EUR rates for BTC, XMR and LTC
61
- do not print output
70
+ => return:
71
+ save EUR rates for BTC, XMR and LTC
72
+ do not print output
62
73
 
63
74
 
64
75
  ruby bin/ctfc rsd --no-save --coins btc xmr
65
76
 
66
- @return:
67
- print RSD rates for BTC and XMR
68
-
77
+ => return:
78
+ print RSD rates for BTC and XMR
79
+
80
+
81
+ # added in version 0.4.0
82
+ ruby bin/ctfc rsd --no-print --loop 1440 --wait 60
83
+
84
+ => return:
85
+ save RSD rates without print, run each minute for 24 hours
69
86
  ```
70
87
 
71
88
 
72
89
  # Developer Examples
73
-
74
-
75
90
  ```ruby
76
- # define coins to scrap
91
+ # define coins to scrap
77
92
  COINS = %w[ BTC XMR LTC ETH ]
78
93
 
79
- # initialize Data class
80
- # DEPRECEATED - use Ctfc.new instead
81
- @data = CTFC::Data.new :eur, save: false, print: false, coins: COINS
82
- @return CTFC::Data object with data to perform request
83
- => #<CTFC::Data:0x000055715a6ce898 @coins=["BTC", "LTC", "XMR", "ETH", "BCH", "ZEC"], @currency="EUR", @print=true, @save=false>
94
+ # initialize Data class
95
+ @data = Ctfc.new :eur, save: false, print: false, coins: COINS
96
+ => return Ctfc object to work with
97
+ -> #<Ctfc:0x000055b5c8b61a38 @coins=["BTC", "LTC", "XMR", "ETH", "BCH", "ZEC"], @fiat="EUR", @print=true, @save=true>
84
98
 
85
- # execute request
99
+ # execute request
86
100
  @data.get
87
- @return Hash with upcase string coins as keys, and float prices
88
- => {"BTC"=>36760.11, "XMR"=>169.55, "LTC"=>114.4, "ETH"=>2746.22}
101
+ => return Hash with upcase string coins as keys, and float prices
102
+ -> {"BTC"=>36760.11, "XMR"=>169.55, "LTC"=>114.4, "ETH"=>2746.22}
89
103
 
90
- # now you can use ::Data instance methods
104
+ # now you can use ::Data instance methods
91
105
  @data.response
92
- @return RestClient response to cryptocomare API
93
- => <RestClient::Response 200 "{\"RAW\":{\"BT...">
94
-
106
+ => return RestClient response to cryptocomare API
107
+ -> <RestClient::Response 200 "{\"RAW\":{\"BT...">
108
+
109
+ # check request url
95
110
  @data.url
96
- @return Cryptocompare API url
97
- => "https://min-api.cryptocompare.com/data/pricemultifull?fsyms=BTC&fsyms=LTC&fsyms=XMR&fsyms=ETH&fsyms=BCH&fsyms=ZEC&tsyms=EUR"
98
-
111
+ => return Cryptocompare API url
112
+ -> "https://min-api.cryptocompare.com/data/pricemultifull?fsyms=BTC&fsyms=LTC&fsyms=XMR&fsyms=ETH&fsyms=BCH&fsyms=ZEC&tsyms=EUR"
113
+
114
+ # name of csv table (saved in working directory)
99
115
  @data.table
100
- @return '.csv' table name
101
- => 'ctfc_eur.csv'
102
-
116
+ => return '.csv' table name
117
+ -> 'ctfc_eur.csv'
118
+
119
+ # array of coins to work with
103
120
  @data.coins
104
- @return coins for scrap, also allow setter method @data.coins = [...]
105
- => ['BTC', 'XMR', 'LTC', 'ETH']
106
-
121
+ => return coins for scrap, also allow setter method @data.coins = [...]
122
+ -> ['BTC', 'XMR', 'LTC', 'ETH']
123
+
124
+ # get all data about all coins (json api response)
107
125
  @data.data
108
- @return all data returned by cryptocompare API
109
- => ... ... ...
126
+ => return all data returned by cryptocompare API
127
+ -> {"RAW"=>
128
+ {"BTC"=>
129
+ {"EUR"=>
130
+ {"TYPE"=>"5",
131
+ "MARKET"=>"CCCAGG",
132
+ "FROMSYMBOL"=>"BTC",
133
+ "TOSYMBOL"=>"EUR",
134
+ "FLAGS"=>"2049",
135
+ "PRICE"=>33851.17,
136
+ "LASTUPDATE"=>1642773847,
137
+ "MEDIAN"=>33853.8,
138
+ "LASTVOLUME"=>0.1,
139
+ "LASTVOLUMETO"=>3384.3676,
140
+ "LASTTRADEID"=>"2024043",
141
+ ... ... ... ... ... ... ...
110
142
 
111
143
 
112
144
  TO BE CONTINIUED ...
113
145
  ```
114
146
 
115
- **Class methods added in Version-0.2.1**
147
+ **Class methods as shortcuts:**
116
148
 
117
149
  ```ruby
118
- # Ctfc class extend CTFC::Data, for easier work:
150
+ # get default coins in EUR, save output without printing
151
+ prices = Ctfc.to :eur, print: false
119
152
 
120
- prices = Ctfc.new :eur, print: false
153
+ # get default coins in RSD, print output, don't save
154
+ Ctfc.to :rsd, save: false
155
+
156
+ # For those who don't like name `Ctfc`, you can use `Crypto` too:
157
+ prices = Crypto.to :eur, coins: %w[BTC XMR]
158
+ ```
121
159
 
122
- # Class method `#to` was added as shortcut:
160
+ # Tests
161
+ To run tests use `./check-syntax.sh`.
162
+ This command will run rubocop for code inspection, but with some errors hidden by `.rubocop_todo.yml`. Using check-syntax script, all test should pass.
123
163
 
124
- Ctfc.to :rsd, save: false
125
164
 
126
- # For those who don't like name `Ctfc`, you can use `Crypto` too:
165
+ # Contribution
166
+ Any contribution is highly appreciated, as long as you follow Code of Conduct.
127
167
 
128
- prices = Crypto.to :eur, coins: %w[BTC XMR]
168
+ - Fork repository
169
+ - Make your changes
170
+ - Write tests
171
+ - Submit pull request
129
172
 
130
- ```
131
-
132
- # TO-DO:
133
- Write documentation, examples and use-cases as gem dependency
173
+ # License
174
+ Don't be a dick - it's MIT.
175
+
176
+ # To-Do:
177
+ See **Projects**
data/bin/ctfc CHANGED
@@ -5,7 +5,8 @@ require_relative '../lib/ctfc'
5
5
  require 'optimist'
6
6
 
7
7
  opts = Optimist.options do
8
- version "Software Version: #{CTFC::VERSION}"
8
+ version "Crypto To Fiat Currency\n".cyan.bold \
9
+ + "Gem Version: #{CTFC::VERSION}"
9
10
 
10
11
  banner ''
11
12
  banner ' Enter fiat currencies with/out additional arguments:'
@@ -14,26 +15,42 @@ opts = Optimist.options do
14
15
  banner ' ruby bin/ctfc eur usd --no-save --coins btc xmr ltc'
15
16
  banner ''
16
17
 
17
- opt :coins, 'Set crypto coins', default: CTFC::CONFIG::COINS
18
- opt :no_save, "Do not save '.csv' output"
19
- opt :no_print, 'Do not print terminal output'
18
+ opt :coins, 'Set crypto coins', default: CTFC::CONFIG::COINS
19
+ opt :no_save, "Do not save '.csv' output"
20
+ opt :no_print, 'Do not print terminal output'
21
+ opt :loop, 'Run script N times', default: 1, type: :integer
22
+ opt :wait, 'Wait N seconds between loop', default: 0, type: :integer
20
23
  end
21
24
 
22
25
  save = opts[:no_save] ? false : true
23
26
  print = opts[:no_print] ? false : true
24
27
 
28
+ @crypto = Ctfc.new
29
+
25
30
  if ARGV.empty?
26
31
 
27
- Crypto.to :eur, save: false, print: true
32
+ @crypto.get(:eur, save: false)
28
33
 
29
34
  else
30
35
 
31
- ARGV.each do |fiat|
32
- next if opts.include? fiat.downcase
36
+ opts[:loop].times do
37
+ ARGV.each do |fiat|
38
+ next if opts.include?(fiat.downcase)
39
+
40
+ @crypto.get(fiat,
41
+ save: save,
42
+ print: print,
43
+ coins: opts.coins)
44
+ sleep 1 # wait between requests
45
+ end
46
+
47
+ # end if no `--loop` arg
48
+ next unless opts[:loop] > 1
49
+
50
+ # pause between loops
51
+ sleep opts[:wait]
33
52
 
34
- Ctfc.to(fiat,
35
- save: save,
36
- print: print,
37
- coins: opts.coins)
53
+ # clear screan - depending on OS
54
+ system 'clear' or system 'cls'
38
55
  end
39
56
  end
data/ctfc.gemspec CHANGED
@@ -5,31 +5,44 @@ require_relative './lib/ctfc/version'
5
5
  Gem::Specification.new do |s|
6
6
  s.name = 'ctfc'
7
7
  s.version = CTFC::VERSION
8
- s.summary = 'Crypto to Fiat currency data gathering'
9
- s.description = 'Convert any crypto to fiat currency and/or save in csv table.'
8
+ s.summary = 'Cryptocurrency to Fiat values, get data and save prices.'
9
+ s.description = <<~DESCRIPTION
10
+ Convert any cryptocurrency to any fiat value, export data to csv table.
11
+ Print colorized terminal output.
12
+ DESCRIPTION
10
13
 
11
14
  s.license = 'MIT'
12
15
  s.authors = 'alx3dev'
13
16
  s.homepage = 'https://github.com/alx3dev/ctfc'
14
17
 
15
18
  s.bindir = 'bin'
16
- s.require_paths = ['lib']
17
- s.executables = ['ctfc']
19
+ s.require_paths = 'lib'
20
+ s.executables = 'ctfc'
18
21
 
19
22
  s.metadata['homepage_uri'] = 'https://github.com/alx3dev/ctfc'
20
23
  s.metadata['source_code_uri'] = 'https://github.com/alx3dev/ctfc'
21
24
  s.metadata['bug_tracker_uri'] = 'https://github.com/alx3dev/ctfc/issues'
22
-
23
- s.files = ['bin/ctfc', 'bin/console', 'lib/ctfc.rb', 'LICENSE', 'README.md', 'ctfc.gemspec',
24
- 'lib/ctfc/config.rb', 'lib/ctfc/version.rb', 'lib/ctfc/base.rb']
25
+ s.metadata['documentation_uri'] = "https://rubydoc.info/gems/#{s.name}"
26
+ s.metadata['rubygems_mfa_required'] = 'true'
27
+
28
+ s.files = %w[ bin/ctfc
29
+ bin/console
30
+ lib/ctfc.rb
31
+ lib/ctfc/version.rb
32
+ lib/ctfc/base.rb
33
+ lib/ctfc/config.rb
34
+ LICENSE
35
+ README.md
36
+ ctfc.gemspec]
25
37
 
26
38
  s.required_ruby_version = '>= 3.0.1'
27
39
 
28
- s.add_runtime_dependency 'colorize', '~> 0.8.1'
29
40
  s.add_runtime_dependency 'optimist', '~> 3.0.1'
30
41
  s.add_runtime_dependency 'rest-client', '~> 2.1.0'
42
+ s.add_runtime_dependency 'kolorit', '~> 0.1.3'
31
43
 
32
44
  s.add_development_dependency 'bundler', '~> 2.2.9'
33
45
  s.add_development_dependency 'pry', '~> 0.14.1'
34
46
  s.add_development_dependency 'rake', '~> 13.0.3'
47
+ s.add_development_dependency 'rspec', '~> 3.10.0'
35
48
  end
data/lib/ctfc/base.rb CHANGED
@@ -5,15 +5,23 @@ require_relative 'version'
5
5
 
6
6
  require 'json'
7
7
  require 'csv'
8
- require 'colorize'
8
+ require 'kolorit'
9
9
  require 'rest-client'
10
10
 
11
+ ##
12
+ # Module **CTFC** keep everything together. **CTFC::CONFIG** module for default setup,
13
+ # and **CTFC::Data** class for actual request execution. For instance methods look
14
+ # at **CTFC::Data**, for class methods look at **Ctfc**.
15
+ #
16
+ # @see CTFC::Data
17
+ # @see Ctfc
18
+ #
11
19
  module CTFC
12
20
  ##
13
21
  # Data class keep all the logic to send request, receive response,
14
22
  # and everything between. Class Ctfc extend CTFC::Data, for easier work.
15
23
  #
16
- # @note Instead of using CTFC::Data.new, recommended way is to call Ctfc.new
24
+ # @note Instead of using CTFC::Data.new, you can also call Ctfc.new
17
25
  #
18
26
  class Data
19
27
  include CONFIG
@@ -25,7 +33,6 @@ module CTFC
25
33
 
26
34
  ##
27
35
  # @example Initialization example
28
- #
29
36
  # @data = CTFC::Data.new :eur, save: true
30
37
  #
31
38
  # @param [Symbol] currency **Optional**. Define fiat currency.
@@ -35,7 +42,7 @@ module CTFC
35
42
  # @option opts [Boolean] save **Optional**. Save `.csv` output.
36
43
  # @option opts [Array] coins **Optional**. Define coins to scrap.
37
44
  #
38
- # @return [Object] Data object to work with
45
+ # @return [Data] Data object to work with
39
46
  #
40
47
  def initialize(currency = :eur, opts = {})
41
48
  @fiat = currency.to_s.upcase
@@ -45,17 +52,19 @@ module CTFC
45
52
  end
46
53
 
47
54
  ##
48
- # @example Get fiat prices for previous config
55
+ # @example Get fiat prices for initialized config
49
56
  #
50
57
  # @data.get
51
58
  #
52
- # @example Get prices and change previous config "on-the-fly"
59
+ # @example Get prices and change initialized config "on-the-fly"
53
60
  #
54
61
  # @data.get :usd, save: false, coins: %w[BTC XMR ETH]
55
62
  #
56
63
  # @param [Symbol || String] currency **Optional**. Change fiat currency and execute request.
57
64
  # @param [Hash] opts **Optional**. Options hash to change config 'on-the-fly' - see #initialize.
58
65
  #
66
+ # @return [Hash || false] Hash of coins and fiat values, or false if all requests fail
67
+ #
59
68
  def get(currency = nil, opts = {})
60
69
  @fiat = currency.to_s.upcase unless currency.nil?
61
70
  @coins = opts[:coins] unless opts[:coins].nil?
@@ -104,7 +113,7 @@ module CTFC
104
113
  # @return [true || false]
105
114
  #
106
115
  def save=(opt)
107
- @save = opt.is_a?(TrueClass) ? true : false
116
+ @save = opt.is_a?(TrueClass)
108
117
  end
109
118
 
110
119
  ##
@@ -113,7 +122,7 @@ module CTFC
113
122
  # @return [true || false]
114
123
  #
115
124
  def print=(opt)
116
- @print = opt.is_a?(TrueClass) ? true : false
125
+ @print = opt.is_a?(TrueClass)
117
126
  end
118
127
 
119
128
  ##
@@ -134,10 +143,9 @@ module CTFC
134
143
  process_data
135
144
  @prices
136
145
  rescue StandardError
137
- @count += 1
138
-
139
- if @count >= MAX_RETRY
146
+ if (@count += 1) >= MAX_RETRY
140
147
  puts @response.to_s.split(',')
148
+ false
141
149
  else
142
150
  do_rest_request
143
151
  end
@@ -159,8 +167,8 @@ module CTFC
159
167
  end
160
168
 
161
169
  def prepare_uri
162
- @prices = Hash.new {}
163
- @data_array = Array.new []
170
+ @prices = {}
171
+ @data_array = []
164
172
  coin_uri = String.new ''
165
173
  @coins.collect { |coin| coin_uri << "fsyms=#{coin}&" }
166
174
  @url = URL + "#{coin_uri}tsyms=#{@fiat}"
@@ -169,13 +177,13 @@ module CTFC
169
177
  def print_fiat_values
170
178
  return unless print?
171
179
 
172
- 30.times { print '='.green }
180
+ 30.times { print '='.cyan }
173
181
  puts ''
174
- puts "#{'['.green}#{@fiat.to_s.upcase.yellow.bold}#{']'.green} conversion rate"
175
- 30.times { print '='.green }
182
+ puts "#{'['.cyan.bold}#{@fiat.to_s.upcase.yellow.bold}#{']'.cyan.bold} conversion rate"
183
+ 30.times { print '='.cyan }
176
184
  puts ''
177
185
  @prices.each do |name, value|
178
- print '['.yellow.bold + name.to_s.green.bold + ']'.yellow.bold
186
+ print '['.yellow.bold + name.to_s.cyan.bold + ']'.yellow.bold
179
187
  puts ": #{value}".bold
180
188
  end
181
189
  end
data/lib/ctfc/version.rb CHANGED
@@ -1,5 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module CTFC
4
- VERSION = '0.3.1'
4
+ # gem version
5
+ VERSION = '0.4.2'
5
6
  end
data/lib/ctfc.rb CHANGED
@@ -6,6 +6,8 @@ require_relative 'ctfc/base'
6
6
  # For easier job use Ctfc, instead of typing CTFC::Data.
7
7
  # You can define default coins with Ctfc::COINS=
8
8
  #
9
+ # @note For instance methods look at CTFC::Data.
10
+ #
9
11
  class Ctfc < CTFC::Data
10
12
  ##
11
13
  # @todo Allow Ctfc to use proxy and/or tor
metadata CHANGED
@@ -1,57 +1,57 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ctfc
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.1
4
+ version: 0.4.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - alx3dev
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-01-20 00:00:00.000000000 Z
11
+ date: 2022-01-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: colorize
14
+ name: optimist
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 0.8.1
19
+ version: 3.0.1
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 0.8.1
26
+ version: 3.0.1
27
27
  - !ruby/object:Gem::Dependency
28
- name: optimist
28
+ name: rest-client
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 3.0.1
33
+ version: 2.1.0
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 3.0.1
40
+ version: 2.1.0
41
41
  - !ruby/object:Gem::Dependency
42
- name: rest-client
42
+ name: kolorit
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 2.1.0
47
+ version: 0.1.3
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 2.1.0
54
+ version: 0.1.3
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: bundler
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -94,7 +94,23 @@ dependencies:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
96
  version: 13.0.3
97
- description: Convert any crypto to fiat currency and/or save in csv table.
97
+ - !ruby/object:Gem::Dependency
98
+ name: rspec
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: 3.10.0
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: 3.10.0
111
+ description: |
112
+ Convert any cryptocurrency to any fiat value, export data to csv table.
113
+ Print colorized terminal output.
98
114
  email:
99
115
  executables:
100
116
  - ctfc
@@ -117,6 +133,8 @@ metadata:
117
133
  homepage_uri: https://github.com/alx3dev/ctfc
118
134
  source_code_uri: https://github.com/alx3dev/ctfc
119
135
  bug_tracker_uri: https://github.com/alx3dev/ctfc/issues
136
+ documentation_uri: https://rubydoc.info/gems/ctfc
137
+ rubygems_mfa_required: 'true'
120
138
  post_install_message:
121
139
  rdoc_options: []
122
140
  require_paths:
@@ -135,5 +153,5 @@ requirements: []
135
153
  rubygems_version: 3.2.32
136
154
  signing_key:
137
155
  specification_version: 4
138
- summary: Crypto to Fiat currency data gathering
156
+ summary: Cryptocurrency to Fiat values, get data and save prices.
139
157
  test_files: []