zillabyte-cli 0.0.9 → 0.0.10

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,15 +1,15 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
3
  metadata.gz: !binary |-
4
- YTVkNDVmMWE1NWJiMzhmMTk5M2IxOGJkZDExYjIxMTY3MGRiNDBjMg==
4
+ MjgyYWY1MTY5MmQ1ZTRhZWMyNTEyMzExMWIwODViZjc2NzFjYzZkZQ==
5
5
  data.tar.gz: !binary |-
6
- ZGEyMjU3NjM5MTE0NWE1N2I4ZDdkZjZlNTk2NmQzNzYzYmI2ZGZkYw==
6
+ NDNjOTk0MzU3NmNkZDZiMjIzYmEwYmQ1YjQzODM2M2QxZDU1M2E5Yg==
7
7
  !binary "U0hBNTEy":
8
8
  metadata.gz: !binary |-
9
- NDk2ZTcyMjk1ODg5NTE3NTU0ZGFmNDlkYTY4MWIzOGEyYjEyYjJlNDk0YTI2
10
- OTAwYmRkMWU1MzliOWYyMmIyZWFjMTFiZWI0NWE0NmUzZTA3Y2Y4ZTkyNjMz
11
- ODBkYWQ1ZDA1MjkzZGE1NTg5MDA0NzMwZmFhYzNhNmRlYzBiNTY=
9
+ ZWU1MTJjZmRhMGIwM2U2YmJlMmIxYjQyOTk1ZmE0Njk3NDZmNzE5OGFhNjZh
10
+ NjQ4NzM2M2VmOTllYTUxNjNiNGU1MjQxNjIyMjIzM2IzMjI5ODkyNmQ0YTIx
11
+ ZDkzZjA5OTZlMDdkMDY5MzFjNTllZTBkZWY5MWNhNDk2ZjQxODc=
12
12
  data.tar.gz: !binary |-
13
- MjI3YzIzNGMzMjkzY2JjNjZmMjc2YzU4MDU3Y2RlNTQzYjE0OTYzN2VhNTc4
14
- ZWRmMGZhMjc2M2FiYjkwYTc1OGY2YzUwNjM3YmRiOTU1NzA2OWFiNzBiNWU4
15
- YTRjYTNiMzQyYWM5ZmVhZjdlZDY1MjI5ZDJkNjUzZjc3OWU1NTE=
13
+ NzIzM2I1OGU0YTA4ZGYwMDYzZDZlMTU0NzBjNTY3N2RjNzc5ZGUxMjNjZTY2
14
+ MGYwNzAzNDFiYWQwZWYxOTc3YTljNjhlY2NhNjU0NWRhNmIxNzIzMTA4ZWRi
15
+ MTZkNGUxZjNmNjNmYjI4YzczNzk2MGNmOGJmNTAwMTQ2NDYyZGE=
@@ -1,5 +1,5 @@
1
1
  module Zillabyte
2
2
  module CLI
3
- VERSION = "0.0.9"
3
+ VERSION = "0.0.10"
4
4
  end
5
5
  end
@@ -67,8 +67,16 @@ class Zillabyte::API::Data < Zillabyte::API::Base
67
67
  end
68
68
 
69
69
 
70
-
71
-
70
+ def delete(id, option={})
71
+
72
+ res = @api.request(
73
+ :expects => 200,
74
+ :method => :delete,
75
+ :path => "/relations/#{id}"
76
+ )
77
+
78
+ res.body
79
+ end
72
80
 
73
81
 
74
82
  # POST /datasets/1/append
@@ -1,5 +1,4 @@
1
1
  require 'net/http'
2
- require 'mkfifo'
3
2
  require 'zillabyte/cli/config'
4
3
 
5
4
  class Zillabyte::API::Flows < Zillabyte::API::Base
@@ -214,7 +213,7 @@ class Zillabyte::API::Flows < Zillabyte::API::Base
214
213
  end
215
214
  when "js"
216
215
  # command = "#{Zillabyte::API::CASPERJS_BIN} #{Zillabyte::API::API_CLIENT_JS} \"#{full_script}\" --info"
217
- command = "cd \"#{dir}\"; NODE_PATH=~/zb1/multilang/js #{Zillabyte::API::NODEJS_BIN} \"#{full_script}\" #{arg} #{stderr}"
216
+ command = "cd \"#{dir}\"; NODE_PATH=~/zb1/multilang/js/src/lib #{Zillabyte::API::NODEJS_BIN} \"#{full_script}\" #{arg} #{stderr}"
218
217
  else
219
218
  progress.error "unsupported language: #{hash["language"]}" if progress
220
219
  return nil
@@ -299,11 +299,16 @@ class Zillabyte::Command::Flows < Zillabyte::Command::Base
299
299
  if node['matches'] or node["relation"]
300
300
  matches = node['matches'] || (node["relation"]["query"])
301
301
  op_display.call "Grabbing remote data"
302
- res = api.query.agnostic(matches)["rows"]
303
- if(res.nil? or res.length == 0)
302
+
303
+ res = api.query.agnostic(matches)
304
+ rows = res["rows"]
305
+ column_aliases = res["column_aliases"]
306
+
307
+
308
+ if(rows.nil? or rows.length == 0)
304
309
  raise NameError, "Could not find data that matches your 'matches' clause"
305
310
  end
306
- res.each do |tuple|
311
+ rows.each do |tuple|
307
312
  values = {}
308
313
  meta = {}
309
314
  tuple.each do |k, v|
@@ -315,7 +320,7 @@ class Zillabyte::Command::Flows < Zillabyte::Command::Base
315
320
  values[k] = v
316
321
  end
317
322
  end
318
- read_msg = {"tuple" => values, "meta" => meta}.to_json
323
+ read_msg = {"tuple" => values, "meta" => meta, "column_aliases" => column_aliases}.to_json
319
324
  op_display.call "emit tuple: #{values} #{meta}"
320
325
  stream_messages[default_stream] ||= []
321
326
  stream_messages[default_stream] << read_msg
@@ -669,7 +674,7 @@ class Zillabyte::Command::Flows < Zillabyte::Command::Base
669
674
 
670
675
  when "js"
671
676
  # cmd = "#{Zillabyte::API::CASPERJS_BIN} #{Zillabyte::API::API_CLIENT_JS} \"#{full_script}\" #{arg}"
672
- cmd = "cd \"#{dir}\"; NODE_PATH=~/zb1/multilang/js #{Zillabyte::API::NODEJS_BIN} \"#{full_script}\" #{arg} #{stderr_opt}"
677
+ cmd = "cd \"#{dir}\"; NODE_PATH=~/zb1/multilang/js/src/lib #{Zillabyte::API::NODEJS_BIN} \"#{full_script}\" #{arg} #{stderr_opt}"
673
678
 
674
679
  else
675
680
  error "no language specified"
@@ -84,7 +84,7 @@ private
84
84
  puts
85
85
  summary_for_namespaces(additional_namespaces)
86
86
  puts
87
- puts "For help getting started, visit http://www.developers.zillabyte.com."
87
+ puts "For help getting started, visit http://docs.zillabyte.com."
88
88
  puts
89
89
  end
90
90
 
@@ -39,9 +39,19 @@ class Zillabyte::Command::Query < Zillabyte::Command::Base
39
39
  filtered = []
40
40
  headings = []
41
41
  if res['rows'].first
42
- headings = res['rows'].first.keys
42
+ concrete_headings = res['rows'].first.keys
43
+ concrete_headings.each do |ch|
44
+ has_alias = false
45
+ res['column_aliases'].each do |al|
46
+ if(al["concrete_name"] == ch)
47
+ headings << al["alias"]
48
+ has_alias = true
49
+ end
50
+ end
51
+ headings << ch if !has_alias
52
+ end
43
53
  rows = res['rows'].each do |obj|
44
- new_row = headings.map do |heading|
54
+ new_row = concrete_headings.map do |heading|
45
55
  obj[heading]
46
56
  end
47
57
  unless seen[new_row.to_s]
@@ -109,14 +119,23 @@ class Zillabyte::Command::Query < Zillabyte::Command::Base
109
119
  headings = []
110
120
  filtered = []
111
121
  if res['rows'].first
112
- headings = res['rows'].first.keys
122
+ concrete_headings = res['rows'].first.keys
123
+ concrete_headings.each do |ch|
124
+ has_alias = false
125
+ res['column_aliases'].each do |al|
126
+ if(al["concrete_name"] == ch)
127
+ headings << al["alias"]
128
+ has_alias = true
129
+ end
130
+ end
131
+ headings << ch if !has_alias
132
+ end
113
133
  rows = res['rows'].each do |obj|
114
-
115
134
  # if obj['since']
116
135
  # opts[:since] = [obj['since'], opts[:since]].compact.max
117
136
  # end
118
137
 
119
- new_row = headings.map do |heading|
138
+ new_row = concrete_headings.map do |heading|
120
139
  if options[:no_truncation]
121
140
  obj[heading]
122
141
  else
@@ -169,4 +188,4 @@ class Zillabyte::Command::Query < Zillabyte::Command::Base
169
188
 
170
189
 
171
190
 
172
- end
191
+ end
@@ -45,6 +45,34 @@ class Zillabyte::Command::Relations < Zillabyte::Command::Base
45
45
  alias_command "relation:list", "relations:list"
46
46
 
47
47
 
48
+ # relations:delete ID
49
+ #
50
+ # deletes a relation
51
+ #
52
+ # -f, --force # Delete without asking for confirmation
53
+ def delete
54
+ id = options[:id] || shift_argument
55
+ forced = options[:force]
56
+ if not forced
57
+ while true
58
+
59
+ display "This operation cannot be undone. Are you sure you want to delete this relation? (yes/no):", false
60
+ confirm = ask
61
+ break if confirm == "yes" || confirm == "no"
62
+ display "Please enter 'yes' to delete the relation or 'no' to exit"
63
+ end
64
+ end
65
+
66
+ confirmed = forced || confirm == "yes"
67
+
68
+ if confirmed
69
+ response = api.data.delete(id)
70
+ display response["body"]
71
+ end
72
+
73
+
74
+ end
75
+
48
76
 
49
77
  # relations:status RELATION
50
78
  #
@@ -98,25 +126,32 @@ class Zillabyte::Command::Relations < Zillabyte::Command::Base
98
126
  # creates a new relation
99
127
  #
100
128
  # --schema SCHEMA # a JSON array of column types
101
- # --semantics SEMANTICS # a JSON array of semantics within the relation
102
129
  # --public # Make the relation public
103
130
  #
104
131
  def create
105
132
 
106
133
  name = options[:name] || shift_argument
134
+ file = options[:file] || shift_argument || nil
135
+ type = options[:type] || nil
136
+
107
137
  error "no name given" if name.nil?
108
138
 
109
139
  schema = JSON.parse(options[:schema]) if options[:schema]
110
- semantics = JSON.parse(options[:semantics]) if options[:semantics]
111
140
  is_public = options[:public] || false
112
141
 
113
- hash = set_relation_properties(schema,semantics,is_public)
142
+ hash = set_relation_properties(schema,is_public)
143
+ if file
144
+ type ||= File.extname(file).gsub(".", "")
145
+ rows = sanity_check_file(file,type, {"columns" => hash[:schema]})
146
+ hash[:rows] = rows
147
+ end
148
+
114
149
  res = api.data.create name, hash
115
150
 
116
151
  if res['error']
117
152
  display "error: #{res['error_message']}"
118
153
  else
119
- display "relation ##{res['id']} #{res['action']}. size: #{res['size']}"
154
+ display "relation ##{res['id']} #{res['action']}. size: #{res['size'] || 0} rows."
120
155
  end
121
156
 
122
157
  end
@@ -167,13 +202,24 @@ class Zillabyte::Command::Relations < Zillabyte::Command::Base
167
202
  res = self.api.data.get(name)
168
203
 
169
204
  if res["rows"].size > 0
170
-
171
- headings = res["rows"].first.keys
172
- headings.delete("id")
205
+ headings = []
206
+ concrete_headings = res["rows"].first.keys
207
+ concrete_headings.delete("id")
208
+ concrete_headings.each do |ch|
209
+ has_alias = false
210
+ res['column_aliases'].each do |al|
211
+ if(al["concrete_name"] == ch)
212
+ headings << al["alias"]
213
+ has_alias = true
214
+ end
215
+ end
216
+ headings << ch if !has_alias
217
+ end
218
+
173
219
  table = Terminal::Table.new :headings => headings
174
220
  res["rows"].each do |obj|
175
221
 
176
- new_row = headings.map do |heading|
222
+ new_row = concrete_headings.map do |heading|
177
223
  if options[:no_truncation]
178
224
  obj[heading]
179
225
  else
@@ -216,7 +262,7 @@ class Zillabyte::Command::Relations < Zillabyte::Command::Base
216
262
  relations = options[:relations]
217
263
  is_public = options[:public] || false
218
264
 
219
- hash = set_dataset_properties(schema,relations,is_public)
265
+ hash = set_relation_properties(schema,relations,is_public)
220
266
  res = api.data.create name, hash
221
267
 
222
268
  type = options[:type]
@@ -233,75 +279,45 @@ class Zillabyte::Command::Relations < Zillabyte::Command::Base
233
279
 
234
280
  private
235
281
 
236
- def set_dataset_properties(schema,relations,is_public)
282
+ def set_relation_properties(schema,is_public)
237
283
  valid_types=["STRING", "NUMERIC", "FLOAT"]
284
+ meta_names=["confidence", "since", "source"]
238
285
  if schema.nil?
239
286
  schema = []
240
287
 
241
288
  # Get the column types (required)
242
- index = 0
289
+ index = 1
290
+ display "Please enter column names and types:\n", false
291
+ already_aliased = {}
243
292
  while true
244
-
245
- display "type for column v#{index} [#{valid_types.join(', ')}] (empty when done):", false
246
- type = ask.upcase
247
- break if type == "" || type.nil?
248
- unless valid_types.member?(type)
249
- warn "invalid type: #{type}"
293
+
294
+ display "Column #{index} name (empty when done): ", false
295
+ cname = ask.strip
296
+ break if cname == "" || cname.nil?
297
+ if((cname[0].downcase == "v" and cname[1...-1].respond_to?("to_i") and cname[1...-1].to_i >= 0) or meta_names.member?(cname.downcase))
298
+ warn "\"v[number]\", \"confidence\", \"since\" and \"source\" are special names in Zillabyte. Please name your column name something else."
299
+ next
300
+ end
301
+ if(already_aliased[cname])
302
+ warn "Column name defined previously. Please use unique column names."
303
+ next
304
+ end
305
+
306
+ display "Type for column #{index} [#{valid_types.join(', ')}]: ", false
307
+ ctype = ask.upcase
308
+ unless valid_types.member?(ctype)
309
+ warn "invalid type: #{ctype}"
250
310
  next
251
311
  end
252
- index += 1
253
- schema << type
312
+ index += 1
313
+ schema << {cname => ctype}
314
+ already_aliased[cname] = 1
254
315
  end
255
316
 
256
317
  display "using schema: #{schema.to_json}"
257
318
 
258
319
  end
259
-
260
- if relations.nil?
261
-
262
- # Get the semantics (inner relations)
263
- relations = []
264
- display "would you like to define relations on your dataset? (yes/No): ", false
265
- if ['y', 'yes'].include?(ask.downcase)
266
-
267
- # Display the first bit of the taple
268
- display Terminal::Table.new(:rows => [schema], :headings => schema.size.times.map{|i| "v#{i}"}).to_s
269
-
270
- # Start collection relations
271
- while true
272
- display "relation predicate (ex: \"(company v0)\", \"(coordinates v1 v2)\"): ", false
273
- input = ask
274
- break if input.nil? || input == ""
275
-
276
- pred = input.gsub("(","").gsub(")", "").split(/\s+/)
277
- pred_name = pred[0]
278
- pred_cols = pred[1..-1]
279
- pred_cols.each_with_index do |col, pred_index|
280
- m = /v(\d+)/.match(col)
281
- if m.nil?
282
- warn "the predicate variables must be of the form \"v[1-10]\""
283
- next
284
- end
285
-
286
- column = m[1].to_i
287
- if column >= schema.size
288
- warn "the variable #{col} is out of range"
289
- next
290
- end
291
-
292
- # Otherwise, successful
293
- relations[column] ||= []
294
- relations[column] << "#{pred_name}.#{pred_index}"
295
- end
296
-
297
- end
298
-
299
- # Show them what the relation looks like
300
- display "using relation: #{relations.to_json}"
301
-
302
- end
303
- end
304
- {:schema => schema, :relations => relations, :public => is_public}
320
+ {:schema => schema, :public => is_public}
305
321
  end
306
322
 
307
323
  def sanity_check_file(file,type,dataset)
@@ -1,3 +1,4 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gem "zillabyte"
1
4
 
2
- gem "zillabyte", :path => "~/zb1/multilang/"
3
- gem "zillabyte-cli", :path => "~/zb1/cli/"
@@ -22,7 +22,10 @@ Zillabyte.simple_function do |fn|
22
22
  url = tuple['v0']
23
23
  html = tuple['v1']
24
24
 
25
- # does this page contains the 'hello world' phrase? If so, emit it
25
+ # For the purpose of this test, to show results from the test set,
26
+ # we'll loosen the search to include either hello or world
27
+ # instead of
28
+ # if html.include?('hello world')
26
29
  if html.include?('hello') or html.include?('world')
27
30
  controller.emit("URL" => url)
28
31
  end
@@ -20,23 +20,18 @@ Gem::Specification.new do |spec|
20
20
  end
21
21
  spec.require_paths = ["lib"]
22
22
 
23
- spec.add_development_dependency "bundler", "~> 1.3"
24
23
  spec.add_development_dependency "rake"
25
24
 
26
25
  spec.add_dependency "netrc", "~> 0.7.7"
27
26
  spec.add_dependency "rest-client", "~> 1.6.1"
28
27
 
29
- spec.add_dependency "excon"
30
- spec.add_dependency "terminal-table"
28
+ spec.add_dependency "excon", "~> 0.31"
29
+ spec.add_dependency "terminal-table", "~> 1.4"
31
30
  spec.add_dependency "activesupport", "~> 3.2.11"
32
31
 
33
- spec.add_dependency "colorize"
34
- spec.add_dependency "chronic"
35
- spec.add_dependency "ascii_charts"
36
- spec.add_dependency "indentation"
37
-
38
- spec.add_dependency "bundler"
39
-
40
- spec.add_dependency "mkfifo"
41
-
32
+ spec.add_dependency "bundler", "~> 1.3"
33
+ spec.add_dependency "colorize", "~> 0.6"
34
+ spec.add_dependency "chronic", "~> 0.10"
35
+ spec.add_dependency "ascii_charts", "~> 0.9.1"
36
+ spec.add_dependency "indentation", "~> 0.1"
42
37
  end
metadata CHANGED
@@ -1,29 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zillabyte-cli
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.9
4
+ version: 0.0.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - zillabyte
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-02-11 00:00:00.000000000 Z
11
+ date: 2014-02-13 00:00:00.000000000 Z
12
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: '1.3'
20
- type: :development
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - ~>
25
- - !ruby/object:Gem::Version
26
- version: '1.3'
27
13
  - !ruby/object:Gem::Dependency
28
14
  name: rake
29
15
  requirement: !ruby/object:Gem::Requirement
@@ -70,30 +56,30 @@ dependencies:
70
56
  name: excon
71
57
  requirement: !ruby/object:Gem::Requirement
72
58
  requirements:
73
- - - ! '>='
59
+ - - ~>
74
60
  - !ruby/object:Gem::Version
75
- version: '0'
61
+ version: '0.31'
76
62
  type: :runtime
77
63
  prerelease: false
78
64
  version_requirements: !ruby/object:Gem::Requirement
79
65
  requirements:
80
- - - ! '>='
66
+ - - ~>
81
67
  - !ruby/object:Gem::Version
82
- version: '0'
68
+ version: '0.31'
83
69
  - !ruby/object:Gem::Dependency
84
70
  name: terminal-table
85
71
  requirement: !ruby/object:Gem::Requirement
86
72
  requirements:
87
- - - ! '>='
73
+ - - ~>
88
74
  - !ruby/object:Gem::Version
89
- version: '0'
75
+ version: '1.4'
90
76
  type: :runtime
91
77
  prerelease: false
92
78
  version_requirements: !ruby/object:Gem::Requirement
93
79
  requirements:
94
- - - ! '>='
80
+ - - ~>
95
81
  - !ruby/object:Gem::Version
96
- version: '0'
82
+ version: '1.4'
97
83
  - !ruby/object:Gem::Dependency
98
84
  name: activesupport
99
85
  requirement: !ruby/object:Gem::Requirement
@@ -109,89 +95,75 @@ dependencies:
109
95
  - !ruby/object:Gem::Version
110
96
  version: 3.2.11
111
97
  - !ruby/object:Gem::Dependency
112
- name: colorize
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - ! '>='
116
- - !ruby/object:Gem::Version
117
- version: '0'
118
- type: :runtime
119
- prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - ! '>='
123
- - !ruby/object:Gem::Version
124
- version: '0'
125
- - !ruby/object:Gem::Dependency
126
- name: chronic
98
+ name: bundler
127
99
  requirement: !ruby/object:Gem::Requirement
128
100
  requirements:
129
- - - ! '>='
101
+ - - ~>
130
102
  - !ruby/object:Gem::Version
131
- version: '0'
103
+ version: '1.3'
132
104
  type: :runtime
133
105
  prerelease: false
134
106
  version_requirements: !ruby/object:Gem::Requirement
135
107
  requirements:
136
- - - ! '>='
108
+ - - ~>
137
109
  - !ruby/object:Gem::Version
138
- version: '0'
110
+ version: '1.3'
139
111
  - !ruby/object:Gem::Dependency
140
- name: ascii_charts
112
+ name: colorize
141
113
  requirement: !ruby/object:Gem::Requirement
142
114
  requirements:
143
- - - ! '>='
115
+ - - ~>
144
116
  - !ruby/object:Gem::Version
145
- version: '0'
117
+ version: '0.6'
146
118
  type: :runtime
147
119
  prerelease: false
148
120
  version_requirements: !ruby/object:Gem::Requirement
149
121
  requirements:
150
- - - ! '>='
122
+ - - ~>
151
123
  - !ruby/object:Gem::Version
152
- version: '0'
124
+ version: '0.6'
153
125
  - !ruby/object:Gem::Dependency
154
- name: indentation
126
+ name: chronic
155
127
  requirement: !ruby/object:Gem::Requirement
156
128
  requirements:
157
- - - ! '>='
129
+ - - ~>
158
130
  - !ruby/object:Gem::Version
159
- version: '0'
131
+ version: '0.10'
160
132
  type: :runtime
161
133
  prerelease: false
162
134
  version_requirements: !ruby/object:Gem::Requirement
163
135
  requirements:
164
- - - ! '>='
136
+ - - ~>
165
137
  - !ruby/object:Gem::Version
166
- version: '0'
138
+ version: '0.10'
167
139
  - !ruby/object:Gem::Dependency
168
- name: bundler
140
+ name: ascii_charts
169
141
  requirement: !ruby/object:Gem::Requirement
170
142
  requirements:
171
- - - ! '>='
143
+ - - ~>
172
144
  - !ruby/object:Gem::Version
173
- version: '0'
145
+ version: 0.9.1
174
146
  type: :runtime
175
147
  prerelease: false
176
148
  version_requirements: !ruby/object:Gem::Requirement
177
149
  requirements:
178
- - - ! '>='
150
+ - - ~>
179
151
  - !ruby/object:Gem::Version
180
- version: '0'
152
+ version: 0.9.1
181
153
  - !ruby/object:Gem::Dependency
182
- name: mkfifo
154
+ name: indentation
183
155
  requirement: !ruby/object:Gem::Requirement
184
156
  requirements:
185
- - - ! '>='
157
+ - - ~>
186
158
  - !ruby/object:Gem::Version
187
- version: '0'
159
+ version: '0.1'
188
160
  type: :runtime
189
161
  prerelease: false
190
162
  version_requirements: !ruby/object:Gem::Requirement
191
163
  requirements:
192
- - - ! '>='
164
+ - - ~>
193
165
  - !ruby/object:Gem::Version
194
- version: '0'
166
+ version: '0.1'
195
167
  description: The Official Zillabyte CLI Gem
196
168
  email:
197
169
  - gem@zillabyte.com