flydata 0.8.2 → 0.8.3

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
2
  SHA1:
3
- metadata.gz: 8d414dcb17fd8fac585af5e47bc79b26809a276c
4
- data.tar.gz: e2ee59e6864c7c75e4a36bb439d4b172e307ba40
3
+ metadata.gz: 3b07bc6d96c6f880657b1c3bd04cdca32b6a7733
4
+ data.tar.gz: c229361c0f7a9a901c47d843575472ded9160580
5
5
  SHA512:
6
- metadata.gz: a205d6dfb530938d493d39e264b2efe6f4c319cf2c94951e7a19a9be99e3f13ea0db0bbe9453643072e46adc4be35385fc1e54ec08510c2c43c8b092e03e8fc6
7
- data.tar.gz: 4ea437373319cfaab4dd2a6a0ae28401df803767824c425e82b795dbe12e121a8cdab89d6f17a9cb1d00117b6053188b5b58df20ef497c828510dc8f8d63ad10
6
+ metadata.gz: 055ebeaa6935d909a447d38ecaabe75a99886fe4640bde07b58724274967a487d122da6cf6ae2948d0a1fec742df011cda5bdb3ec1ce46250f639826b0aa78c9
7
+ data.tar.gz: 86341f2728f2d142e9e4b44b9d10cabc583c3b3507b92dde437aab89d49a1fa6e303d0344a43a2cc2e82fb8bee4716975eb8892f55f06e888858f43efae1444e
data/Gemfile CHANGED
@@ -13,16 +13,14 @@ gem "pg", '~> 0.18.4'
13
13
  gem "slop", '~> 3.4', '>= 3.4.6'
14
14
  gem "treetop", '~> 1.5', '>= 1.5.3'
15
15
  gem "sys-filesystem", '~> 1.1', '>= 1.1.3'
16
- gem "io-console", '~> 0.4.2', '>= 0.4.2'
16
+ gem "io-console", '~> 0.4.6', '>= 0.4.6'
17
17
  gem "kodama", '~> 0.1', '>= 0.1.12'
18
18
  gem "serverengine", '~> 1.5'
19
19
 
20
20
  group :development do
21
21
  gem "jeweler", '~> 1.8', '>= 1.8.8'
22
22
  gem "rspec", '~> 3.0'
23
- #gem "autotest"
24
- #gem "autotest-standalone"
25
- #gem "autotest-notification"
23
+ gem 'test-unit'
26
24
  gem 'timecop', '~> 0.7', '>= 0.7.1'
27
25
  gem "sqlite3", '~> 1.3', '>= 1.3.9'
28
26
  gem 'ruby-prof', '~> 0.15', '>= 0.15.1'
@@ -30,6 +28,7 @@ group :development do
30
28
  gem 'activerecord', '~> 4.0', '>= 4.0.0'
31
29
  gem 'protected_attributes', '~> 1.0', '>= 1.0.8'
32
30
  gem 'pry'
31
+ gem 'rake'
33
32
  #gem 'ruby-oci8'
34
33
  gem 'rake-compiler', '~> 0.9', '>= 0.9.5'
35
34
  end
data/Gemfile.lock CHANGED
@@ -49,7 +49,7 @@ GEM
49
49
  highline (1.6.21)
50
50
  http_parser.rb (0.6.0)
51
51
  i18n (0.6.11)
52
- io-console (0.4.2)
52
+ io-console (0.4.6)
53
53
  jeweler (1.8.8)
54
54
  builder
55
55
  bundler (~> 1.0)
@@ -81,6 +81,7 @@ GEM
81
81
  rack (~> 1.2)
82
82
  pg (0.18.4)
83
83
  polyglot (0.3.5)
84
+ power_assert (1.0.1)
84
85
  protected_attributes (1.0.8)
85
86
  activemodel (>= 4.0.1, < 5.0)
86
87
  pry (0.10.1)
@@ -117,6 +118,8 @@ GEM
117
118
  sqlite3 (1.3.9)
118
119
  sys-filesystem (1.1.3)
119
120
  ffi
121
+ test-unit (3.2.3)
122
+ power_assert
120
123
  thread_safe (0.3.4)
121
124
  timecop (0.7.1)
122
125
  treetop (1.5.3)
@@ -135,7 +138,7 @@ DEPENDENCIES
135
138
  fluentd (= 0.10.46)
136
139
  highline (~> 1.6, >= 1.6.19)
137
140
  i18n (~> 0.6, >= 0.6.5)
138
- io-console (~> 0.4.2, >= 0.4.2)
141
+ io-console (~> 0.4.6, >= 0.4.6)
139
142
  jeweler (~> 1.8, >= 1.8.8)
140
143
  json (~> 1.8, >= 1.8.0)
141
144
  kodama (~> 0.1, >= 0.1.12)
@@ -143,6 +146,7 @@ DEPENDENCIES
143
146
  pg (~> 0.18.4)
144
147
  protected_attributes (~> 1.0, >= 1.0.8)
145
148
  pry
149
+ rake
146
150
  rake-compiler (~> 0.9, >= 0.9.5)
147
151
  rest-client (~> 1.6, >= 1.6.7)
148
152
  rspec (~> 3.0)
@@ -151,8 +155,9 @@ DEPENDENCIES
151
155
  slop (~> 3.4, >= 3.4.6)
152
156
  sqlite3 (~> 1.3, >= 1.3.9)
153
157
  sys-filesystem (~> 1.1, >= 1.1.3)
158
+ test-unit
154
159
  timecop (~> 0.7, >= 0.7.1)
155
160
  treetop (~> 1.5, >= 1.5.3)
156
161
 
157
162
  BUNDLED WITH
158
- 1.11.2
163
+ 1.13.7
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.8.2
1
+ 0.8.3
data/circle.yml CHANGED
@@ -1,6 +1,6 @@
1
1
  machine:
2
2
  ruby:
3
- version: 2.0.0-p481
3
+ version: 2.2.6
4
4
 
5
5
  dependencies:
6
6
  pre:
data/flydata-core/Gemfile CHANGED
@@ -10,6 +10,7 @@ group :development, :test do
10
10
  gem 'rubocop'
11
11
  gem 'mysql2'
12
12
  gem 'pg'
13
+ gem 'rake'
13
14
  gem 'rspec', '~> 3.1'
14
15
  gem 'simplecov', :require => false
15
16
  end
@@ -20,6 +20,7 @@ GEM
20
20
  pg (0.18.4)
21
21
  powerpack (0.0.9)
22
22
  rainbow (2.0.0)
23
+ rake (10.4.2)
23
24
  rspec (3.1.0)
24
25
  rspec-core (~> 3.1.0)
25
26
  rspec-expectations (~> 3.1.0)
@@ -56,6 +57,7 @@ DEPENDENCIES
56
57
  aws-sdk (= 1.18.0)
57
58
  mysql2
58
59
  pg
60
+ rake
59
61
  rspec (~> 3.1)
60
62
  rubocop
61
63
  ruby-prof
@@ -63,4 +65,4 @@ DEPENDENCIES
63
65
  timecop
64
66
 
65
67
  BUNDLED WITH
66
- 1.10.6
68
+ 1.13.7
@@ -38,6 +38,7 @@ class MysqlTableDef < Base
38
38
  'bool' => {type: 'int1', def_width: '1'},
39
39
  'boolean' => {type: 'int1', def_width: '1'},
40
40
  'char' => {type: 'varchar', def_width: '1', override: PROC_override_varchar},
41
+ 'char varying' => {type: 'varchar', override: PROC_override_varchar},
41
42
  'date' => {type: 'date'},
42
43
  'datetime' => {type: 'datetime'},
43
44
  'dec' => {type: 'numeric', def_width: '10,0'},
@@ -47,15 +48,26 @@ class MysqlTableDef < Base
47
48
  'enum' => {type: 'enum'},
48
49
  'fixed' => {type: 'numeric', def_width: '10,0'},
49
50
  'float' => {type: 'float4'},
51
+ 'float4' => {type: 'float4'},
52
+ 'float8' => {type: 'float8'},
50
53
  'int' => {type: 'int4', def_width: '11'},
54
+ 'int1' => {type: 'int1', def_width: '1'},
55
+ 'int2' => {type: 'int2', def_width: '6'},
56
+ 'int3' => {type: 'int3', def_width: '9'},
57
+ 'int8' => {type: 'int8', def_width: '20'},
51
58
  'integer' => {type: 'int4', def_width: '11'},
52
59
  'json' => {type: 'json'},
60
+ 'long' => {type: 'text'},
61
+ 'long varbinary' => {type: 'varbinary(16777215)'},
62
+ 'long varchar' => {type: 'text'},
53
63
  'longblob' => {type: 'varbinary(4294967295)'},
54
64
  'longtext' => {type: 'text'},
55
65
  'mediumblob' => {type: 'varbinary(16777215)'},
56
66
  'mediumint' => {type: 'int3', def_width: '9'},
57
67
  'mediumtext' => {type: 'text'},
68
+ 'middleint' => {type: 'int3', def_width: '9'},
58
69
  'numeric' => {type: 'numeric', def_width: '10,0'},
70
+ 'real' => {type: 'float8'},
59
71
  'set' => {type: 'set'},
60
72
  'smallint' => {type: 'int2', def_width: '6'},
61
73
  'text' => {type: 'text'},
@@ -14,7 +14,7 @@ class RedshiftTableDef
14
14
  'boolean' => {type: 'boolean', default_value: false},
15
15
  'varbit' => {type: 'bigint', default_value: '0'},
16
16
  'bytea' => {type: 'varchar(max)', default_value: ''},
17
- 'char' => {type: 'char', use_params: true, default_value: ''},
17
+ 'char' => {type: 'char', use_params: true, min_size: 1, default_value: ''},
18
18
  'date' => {type: 'date', default_value: '0000-01-01'},
19
19
  'datetime' => {type: 'timestamp', default_value: '0000-01-01'},
20
20
  'datetimetz' => {type: 'timestamp', default_value: '0000-01-01'},
@@ -42,7 +42,7 @@ class RedshiftTableDef
42
42
  'time' => {type: 'timestamp', default_value: '0000-01-01'},
43
43
  'timetz' => {type: 'timestamp', default_value: '0000-01-01'},
44
44
  'varbinary' => {type: 'varchar', use_params: true, max_size: 65535, default_value: ''},
45
- 'varchar' => {type: 'varchar', use_params: true, max_size: 65535, default_value: ''},
45
+ 'varchar' => {type: 'varchar', use_params: true, min_size: 1, max_size: 65535, default_value: ''},
46
46
  'year' => {type: 'date', default_value: '0001-01-01'},
47
47
  '_unsupported' => {type: 'varchar(max)', default_value: ''},
48
48
  }
@@ -230,6 +230,7 @@ EOS
230
230
  rs_type = if type_info[:use_params]
231
231
  if params
232
232
  params = check_and_replace_max(params, Array(type_info[:max_size]), type) if type_info[:max_size]
233
+ params = check_and_replace_min(params, type_info[:min_size], type) if type_info[:min_size]
233
234
  else
234
235
  #source data type has no parameter. use default parameters.
235
236
  raise "No default pramameters for type:`#{column[:type]}`" unless type_info[:default_params]
@@ -434,6 +435,7 @@ EOS
434
435
 
435
436
  def self.check_and_replace_max(params, max_size_a, flydata_type)
436
437
  final_params = []
438
+
437
439
  case flydata_type
438
440
  when 'numeric', 'numeric unsigned'
439
441
  p = params.split(",")
@@ -459,6 +461,11 @@ EOS
459
461
  final_params.join(",")
460
462
  end
461
463
 
464
+ def self.check_and_replace_min(params, min_size, flydata_type)
465
+ return params unless params.to_s.match(/\d+/)
466
+ params.to_i < min_size ? min_size.to_s : params
467
+ end
468
+
462
469
  APACHE_TIMESTAMP_REGEXP = Regexp.new('^(?<apache_time_format>\[[0-3]\d\/\D{3}\/[1-2]\d{3}:[0-2]\d:[0-5]\d:[0-5]\d ?[\+\-]\d{2}:?\d{2}\])$')
463
470
  TIME_REGEXP = Regexp.new('^(?<sign>-)?(?<hour>\d{2,3}):(?<minute>[0-5][0-9]):(?<second>[0-5][0-9](\.\d+)?)\s*(?<tz>[+-][0-2][0-9](:?\d{2})?)?$')
464
471
 
@@ -166,6 +166,22 @@ EOT
166
166
  expect(subject).to eq "BEGIN;\n#{create_table_queries}\n#{flydata_ctl_update}\nCOMMIT;\n#{drop_backup_table_subquery}\n"
167
167
  end
168
168
  end
169
+
170
+ context 'with size 0 varchar' do
171
+ let(:value_column_hash) { { column: "value", type: "varchar(0)" } }
172
+
173
+ it 'should return ddl by replacing (0) with (1)' do
174
+ expect(subject).to eq "BEGIN;\n#{create_table_queries}\n#{flydata_ctl_update}\nCOMMIT;\n#{drop_backup_table_subquery}\n".gsub("(max)", "(1)").gsub("'text'", "'varchar(0)'")
175
+ end
176
+ end
177
+
178
+ context 'with size > 0 varchar' do
179
+ let(:value_column_hash) { { column: "value", type: "varchar(24)" } }
180
+
181
+ it 'should return ddl without replacement' do
182
+ expect(subject).to eq "BEGIN;\n#{create_table_queries}\n#{flydata_ctl_update}\nCOMMIT;\n#{drop_backup_table_subquery}\n".gsub("(max)", "(24)").gsub("'text'", "'varchar(24)'")
183
+ end
184
+ end
169
185
  end
170
186
 
171
187
  describe '.column_def_sql' do
data/flydata.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "flydata"
8
- s.version = "0.8.2"
8
+ s.version = "0.8.3"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Koichi Fujikawa", "Masashi Miyazaki", "Matthew Luu", "Mak Inada", "Sriram NS"]
12
- s.date = "2017-02-11"
12
+ s.date = "2017-02-14"
13
13
  s.description = "FlyData Agent"
14
14
  s.email = "sysadmin@flydata.com"
15
15
  s.executables = ["fdredshift", "flydata", "serverinfo", "split_sync_ddl.rb"]
@@ -447,11 +447,12 @@ Gem::Specification.new do |s|
447
447
  s.add_runtime_dependency(%q<slop>, [">= 3.4.6", "~> 3.4"])
448
448
  s.add_runtime_dependency(%q<treetop>, [">= 1.5.3", "~> 1.5"])
449
449
  s.add_runtime_dependency(%q<sys-filesystem>, [">= 1.1.3", "~> 1.1"])
450
- s.add_runtime_dependency(%q<io-console>, [">= 0.4.2", "~> 0.4.2"])
450
+ s.add_runtime_dependency(%q<io-console>, [">= 0.4.6", "~> 0.4.6"])
451
451
  s.add_runtime_dependency(%q<kodama>, [">= 0.1.12", "~> 0.1"])
452
452
  s.add_runtime_dependency(%q<serverengine>, ["~> 1.5"])
453
453
  s.add_development_dependency(%q<jeweler>, [">= 1.8.8", "~> 1.8"])
454
454
  s.add_development_dependency(%q<rspec>, ["~> 3.0"])
455
+ s.add_development_dependency(%q<test-unit>, [">= 0"])
455
456
  s.add_development_dependency(%q<timecop>, [">= 0.7.1", "~> 0.7"])
456
457
  s.add_development_dependency(%q<sqlite3>, [">= 1.3.9", "~> 1.3"])
457
458
  s.add_development_dependency(%q<ruby-prof>, [">= 0.15.1", "~> 0.15"])
@@ -459,6 +460,7 @@ Gem::Specification.new do |s|
459
460
  s.add_development_dependency(%q<activerecord>, [">= 4.0.0", "~> 4.0"])
460
461
  s.add_development_dependency(%q<protected_attributes>, [">= 1.0.8", "~> 1.0"])
461
462
  s.add_development_dependency(%q<pry>, [">= 0"])
463
+ s.add_development_dependency(%q<rake>, [">= 0"])
462
464
  s.add_development_dependency(%q<rake-compiler>, [">= 0.9.5", "~> 0.9"])
463
465
  else
464
466
  s.add_dependency(%q<rest-client>, [">= 1.6.7", "~> 1.6"])
@@ -473,11 +475,12 @@ Gem::Specification.new do |s|
473
475
  s.add_dependency(%q<slop>, [">= 3.4.6", "~> 3.4"])
474
476
  s.add_dependency(%q<treetop>, [">= 1.5.3", "~> 1.5"])
475
477
  s.add_dependency(%q<sys-filesystem>, [">= 1.1.3", "~> 1.1"])
476
- s.add_dependency(%q<io-console>, [">= 0.4.2", "~> 0.4.2"])
478
+ s.add_dependency(%q<io-console>, [">= 0.4.6", "~> 0.4.6"])
477
479
  s.add_dependency(%q<kodama>, [">= 0.1.12", "~> 0.1"])
478
480
  s.add_dependency(%q<serverengine>, ["~> 1.5"])
479
481
  s.add_dependency(%q<jeweler>, [">= 1.8.8", "~> 1.8"])
480
482
  s.add_dependency(%q<rspec>, ["~> 3.0"])
483
+ s.add_dependency(%q<test-unit>, [">= 0"])
481
484
  s.add_dependency(%q<timecop>, [">= 0.7.1", "~> 0.7"])
482
485
  s.add_dependency(%q<sqlite3>, [">= 1.3.9", "~> 1.3"])
483
486
  s.add_dependency(%q<ruby-prof>, [">= 0.15.1", "~> 0.15"])
@@ -485,6 +488,7 @@ Gem::Specification.new do |s|
485
488
  s.add_dependency(%q<activerecord>, [">= 4.0.0", "~> 4.0"])
486
489
  s.add_dependency(%q<protected_attributes>, [">= 1.0.8", "~> 1.0"])
487
490
  s.add_dependency(%q<pry>, [">= 0"])
491
+ s.add_dependency(%q<rake>, [">= 0"])
488
492
  s.add_dependency(%q<rake-compiler>, [">= 0.9.5", "~> 0.9"])
489
493
  end
490
494
  else
@@ -500,11 +504,12 @@ Gem::Specification.new do |s|
500
504
  s.add_dependency(%q<slop>, [">= 3.4.6", "~> 3.4"])
501
505
  s.add_dependency(%q<treetop>, [">= 1.5.3", "~> 1.5"])
502
506
  s.add_dependency(%q<sys-filesystem>, [">= 1.1.3", "~> 1.1"])
503
- s.add_dependency(%q<io-console>, [">= 0.4.2", "~> 0.4.2"])
507
+ s.add_dependency(%q<io-console>, [">= 0.4.6", "~> 0.4.6"])
504
508
  s.add_dependency(%q<kodama>, [">= 0.1.12", "~> 0.1"])
505
509
  s.add_dependency(%q<serverengine>, ["~> 1.5"])
506
510
  s.add_dependency(%q<jeweler>, [">= 1.8.8", "~> 1.8"])
507
511
  s.add_dependency(%q<rspec>, ["~> 3.0"])
512
+ s.add_dependency(%q<test-unit>, [">= 0"])
508
513
  s.add_dependency(%q<timecop>, [">= 0.7.1", "~> 0.7"])
509
514
  s.add_dependency(%q<sqlite3>, [">= 1.3.9", "~> 1.3"])
510
515
  s.add_dependency(%q<ruby-prof>, [">= 0.15.1", "~> 0.15"])
@@ -512,6 +517,7 @@ Gem::Specification.new do |s|
512
517
  s.add_dependency(%q<activerecord>, [">= 4.0.0", "~> 4.0"])
513
518
  s.add_dependency(%q<protected_attributes>, [">= 1.0.8", "~> 1.0"])
514
519
  s.add_dependency(%q<pry>, [">= 0"])
520
+ s.add_dependency(%q<rake>, [">= 0"])
515
521
  s.add_dependency(%q<rake-compiler>, [">= 0.9.5", "~> 0.9"])
516
522
  end
517
523
  end
@@ -23,7 +23,7 @@ module Flydata
23
23
  allow(data_port).to receive(:get).and_return("Wibble")
24
24
 
25
25
  allow_any_instance_of(Flydata::AgentCompatibilityCheck).to receive(:check).and_return(true)
26
- Flydata::Command::Sync.any_instance.should_receive(:try_initial_sync).and_return("Wobble")
26
+ expect_any_instance_of(Flydata::Command::Sync).to receive(:try_initial_sync).and_return("Wobble")
27
27
  end
28
28
 
29
29
  context "as daemon" do
@@ -592,7 +592,7 @@ EOT
592
592
  # Need to make sure no event is sent... how do I do that
593
593
  let(:sync_fm) { double('sync_fm') }
594
594
  before do
595
- Flydata::SyncFileManager.any_instance.should_receive(:get_new_table_list).with(TEST_TABLES.split(","), "pos").and_return([TEST_TABLE])
595
+ expect_any_instance_of(Flydata::SyncFileManager).to receive(:get_new_table_list).with(TEST_TABLES.split(","), "pos").and_return([TEST_TABLE])
596
596
 
597
597
  Test.configure_plugin(plugin, TEST_CONFIG)
598
598
  plugin.event_listener(rotate_event)
data/spec/spec_helper.rb CHANGED
@@ -61,12 +61,12 @@ RSpec::Matchers.define :terminate do |code|
61
61
  @status_code = status_code
62
62
  end
63
63
 
64
- failure_message_for_should do |block|
64
+ failure_message do |block|
65
65
  "expected block to call exit(#{status_code}) but exit" +
66
66
  (actual.nil? ? " not called" : "(#{actual}) was called")
67
67
  end
68
68
 
69
- failure_message_for_should_not do |block|
69
+ failure_message_when_negated do |block|
70
70
  "expected block not to call exit(#{status_code})"
71
71
  end
72
72
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: flydata
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.2
4
+ version: 0.8.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Koichi Fujikawa
@@ -12,7 +12,7 @@ authors:
12
12
  autorequire:
13
13
  bindir: bin
14
14
  cert_chain: []
15
- date: 2017-02-11 00:00:00.000000000 Z
15
+ date: 2017-02-14 00:00:00.000000000 Z
16
16
  dependencies:
17
17
  - !ruby/object:Gem::Dependency
18
18
  name: rest-client
@@ -242,20 +242,20 @@ dependencies:
242
242
  requirements:
243
243
  - - '>='
244
244
  - !ruby/object:Gem::Version
245
- version: 0.4.2
245
+ version: 0.4.6
246
246
  - - ~>
247
247
  - !ruby/object:Gem::Version
248
- version: 0.4.2
248
+ version: 0.4.6
249
249
  type: :runtime
250
250
  prerelease: false
251
251
  version_requirements: !ruby/object:Gem::Requirement
252
252
  requirements:
253
253
  - - '>='
254
254
  - !ruby/object:Gem::Version
255
- version: 0.4.2
255
+ version: 0.4.6
256
256
  - - ~>
257
257
  - !ruby/object:Gem::Version
258
- version: 0.4.2
258
+ version: 0.4.6
259
259
  - !ruby/object:Gem::Dependency
260
260
  name: kodama
261
261
  requirement: !ruby/object:Gem::Requirement
@@ -324,6 +324,20 @@ dependencies:
324
324
  - - ~>
325
325
  - !ruby/object:Gem::Version
326
326
  version: '3.0'
327
+ - !ruby/object:Gem::Dependency
328
+ name: test-unit
329
+ requirement: !ruby/object:Gem::Requirement
330
+ requirements:
331
+ - - '>='
332
+ - !ruby/object:Gem::Version
333
+ version: '0'
334
+ type: :development
335
+ prerelease: false
336
+ version_requirements: !ruby/object:Gem::Requirement
337
+ requirements:
338
+ - - '>='
339
+ - !ruby/object:Gem::Version
340
+ version: '0'
327
341
  - !ruby/object:Gem::Dependency
328
342
  name: timecop
329
343
  requirement: !ruby/object:Gem::Requirement
@@ -458,6 +472,20 @@ dependencies:
458
472
  - - '>='
459
473
  - !ruby/object:Gem::Version
460
474
  version: '0'
475
+ - !ruby/object:Gem::Dependency
476
+ name: rake
477
+ requirement: !ruby/object:Gem::Requirement
478
+ requirements:
479
+ - - '>='
480
+ - !ruby/object:Gem::Version
481
+ version: '0'
482
+ type: :development
483
+ prerelease: false
484
+ version_requirements: !ruby/object:Gem::Requirement
485
+ requirements:
486
+ - - '>='
487
+ - !ruby/object:Gem::Version
488
+ version: '0'
461
489
  - !ruby/object:Gem::Dependency
462
490
  name: rake-compiler
463
491
  requirement: !ruby/object:Gem::Requirement