flying-sphinx 1.0.0 → 1.1.0

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.
@@ -0,0 +1,15 @@
1
+ ---
2
+ !binary "U0hBMQ==":
3
+ metadata.gz: !binary |-
4
+ YWNhMDhjYWNhNjY1MWExY2UyZjQxYjE4YjQ2MTQ3NTljNWY2ODUzZA==
5
+ data.tar.gz: !binary |-
6
+ MDE3OTE1NTcyZjhlMzRkMmRlMGNmMzYxNjk5NmYyNzdmMGU5Mjk2ZA==
7
+ SHA512:
8
+ metadata.gz: !binary |-
9
+ ZTJhMjJjODU2YTI5MTdiZWYyYjc1MDAxNjBhNGY0NTExY2Q5YWFhMmExZjdk
10
+ NTQ0Zjk1Nzg5MmU3MWY2NWViOWMyMzYyMzljODYwODFjMmI0MzdiNDdjYTEz
11
+ MThkZWUwOGIxODhiNTNiMDAxOGVkZDUyM2ExMTMzNmFmYTdjMDA=
12
+ data.tar.gz: !binary |-
13
+ OTE3NDdjNDNkMTVkMTg1YjkzMTI3NTU2YTIxNTUxYjA4ZmYxYWU1OWEzMjA2
14
+ YzlhOGE1NjVkNzE1ZjllNGMzNjQ1YjFhODM3ZDJmNmI2MDZjNzU3MjQ0MmIy
15
+ ODgxNzBlMGM0NjVjNWY5NmY4MzJjOGZiY2E2NDY4MzZhMGE0NTc=
data/HISTORY CHANGED
@@ -1,4 +1,10 @@
1
- 1.0.0 - 7th May 2012
1
+ 1.1.0 - 15th March 2014
2
+ * Updated Faraday dependency to require 0.9 or newer (and removed faraday_middleware dependency).
3
+ * Added remote rotate support via custom controller.
4
+ * Added regenerate command (for when real-time indices are being used).
5
+ * Removed the requirement of Rashie.
6
+
7
+ 1.0.0 - 7th May 2013
2
8
  * Updating Riddle dependency to >= 1.5.6.
3
9
  * Support for Thinking Sphinx v1/2/3.
4
10
  * Delayed Job support pushed back to ts-delayed-delta.
@@ -7,13 +7,15 @@ h2. Installation and Usage
7
7
  This is all covered pretty well on "the Flying Sphinx site":http://flying-sphinx.com/docs, but if you're reading this on Github, you're probably keen on using this repository as the source instead of the gem. Here's the code snippet for your @Gemfile@:
8
8
 
9
9
  <pre><code>gem 'flying-sphinx',
10
- :git => 'git://github.com/flying-sphinx/flying-sphinx.git'</code></pre>
10
+ :git => 'git://github.com/flying-sphinx/flying-sphinx.git',
11
+ :branch => 'master',
12
+ :ref => '216f589d1f'</code></pre>
11
13
 
12
14
  h2. Compatibility and Limitations
13
15
 
14
16
  Flying Sphinx is built with support for Rails 2.3.6 and beyond. Sadly, earlier versions of Rails aren't supported due to a requirement of a recent version of Rack deep in the dependency tree.
15
17
 
16
- It works with Rails 1.8.7 and 1.9.2, and on both Heroku's Bamboo and Cedar stacks. You _do_ need to use it with Heroku at this point - allowing others hosting elsewhere to use Flying Sphinx is something I'm considering, but it's not possible right now.
18
+ It works from Ruby 1.8.7 onwards, and on both Heroku's Bamboo and Cedar stacks. You _do_ need to use it with Heroku at this point - allowing others hosting elsewhere to use Flying Sphinx is something I'm considering, but it's not possible right now.
17
19
 
18
20
  There are limitations with Heroku's setup and Sphinx/Thinking Sphinx functionality - again, the official documentation "covers this":http://flying-sphinx.com/docs#limitations, so have a read there.
19
21
 
@@ -18,11 +18,10 @@ Gem::Specification.new do |s|
18
18
  s.executables = ['flying-sphinx']
19
19
 
20
20
  s.add_runtime_dependency 'thinking-sphinx'
21
- s.add_runtime_dependency 'riddle', ['>= 1.5.6']
22
- s.add_runtime_dependency 'multi_json', ['>= 1.3.0']
23
- s.add_runtime_dependency 'faraday_middleware', ['~> 0.7']
24
- s.add_runtime_dependency 'rash', ['~> 0.3.0']
25
- s.add_runtime_dependency 'pusher-client', ['~> 0.3']
21
+ s.add_runtime_dependency 'riddle', ['>= 1.5.6']
22
+ s.add_runtime_dependency 'multi_json', ['>= 1.3.0']
23
+ s.add_runtime_dependency 'faraday', ['>= 0.9']
24
+ s.add_runtime_dependency 'pusher-client', ['~> 0.3']
26
25
 
27
26
  s.add_development_dependency 'rake', ['~> 0.9.2']
28
27
  s.add_development_dependency 'rspec', ['~> 2.11']
@@ -30,7 +30,6 @@ end
30
30
 
31
31
  require 'multi_json'
32
32
  require 'faraday'
33
- require 'faraday_middleware'
34
33
  require 'riddle'
35
34
  require 'riddle/0.9.9'
36
35
  require 'pusher-client'
@@ -76,9 +76,9 @@ class FlyingSphinx::Action
76
76
  end
77
77
 
78
78
  def start
79
- raise "Action blocked" if response.body.status == 'BLOCKED'
79
+ raise "Action blocked" if response['status'] == 'BLOCKED'
80
80
 
81
- @action_id = response.body.id
81
+ @action_id = response['id']
82
82
  end
83
83
 
84
84
  def subscribe_to_events
@@ -64,8 +64,6 @@ class FlyingSphinx::API
64
64
 
65
65
  Faraday.new(options) do |builder|
66
66
  builder.use Faraday::Request::UrlEncoded
67
- builder.use Faraday::Response::Rashify
68
- builder.use Faraday::Response::ParseJson
69
67
  builder.adapter(adapter)
70
68
  end
71
69
  end
@@ -74,6 +72,8 @@ class FlyingSphinx::API
74
72
  FlyingSphinx.logger.debug "API Request: #{method} '#{path}'; params: #{data.inspect}"
75
73
  response = block.call
76
74
  FlyingSphinx.logger.debug "API Response: #{response.body.inspect}"
77
- return response
75
+ raise 'Invalid Flying Sphinx credentials' if response.status == 403
76
+
77
+ MultiJson.load response.body
78
78
  end
79
79
  end
@@ -4,13 +4,14 @@ class FlyingSphinx::CLI
4
4
  extend Forwardable
5
5
 
6
6
  COMMANDS = {
7
- 'configure' => [:configure],
8
- 'index' => [:index],
9
- 'setup' => [:configure, :index],
10
- 'start' => [:start],
11
- 'stop' => [:stop],
12
- 'restart' => [:restart],
13
- 'rebuild' => [:rebuild]
7
+ 'configure' => [:configure],
8
+ 'index' => [:index],
9
+ 'setup' => [:configure, :index],
10
+ 'start' => [:start],
11
+ 'stop' => [:stop],
12
+ 'restart' => [:restart],
13
+ 'rebuild' => [:rebuild],
14
+ 'regenerate' => [:regenerate]
14
15
  }
15
16
 
16
17
  def_delegators :controller, :start, :stop, :restart
@@ -82,4 +83,10 @@ class FlyingSphinx::CLI
82
83
 
83
84
  controller.rebuild
84
85
  end
86
+
87
+ def regenerate
88
+ load_rails
89
+
90
+ controller.regenerate
91
+ end
85
92
  end
@@ -13,11 +13,11 @@ class FlyingSphinx::Configuration
13
13
  end
14
14
 
15
15
  def host
16
- @host ||= response_body.server rescue host_from_env
16
+ @host ||= response_body['server'] rescue host_from_env
17
17
  end
18
18
 
19
19
  def port
20
- @port ||= response_body.port rescue port_from_env
20
+ @port ||= response_body['port'] rescue port_from_env
21
21
  end
22
22
 
23
23
  def username
@@ -32,20 +32,16 @@ class FlyingSphinx::Configuration
32
32
  api.post(initial)
33
33
 
34
34
  response = api.get('daemon')
35
- while response.body.status == initial
35
+ while response['status'] == initial
36
36
  sleep 0.5
37
37
  response = api.get('daemon')
38
38
  end
39
39
 
40
- response.body.status == expected
40
+ response['status'] == expected
41
41
  end
42
42
 
43
43
  def response_body
44
- @response_body ||= begin
45
- response = api.get '/'
46
- raise 'Invalid Flying Sphinx credentials' if response.status == 403
47
- response.body
48
- end
44
+ @response_body ||= api.get '/'
49
45
  end
50
46
 
51
47
  def identifier_from_env
@@ -51,12 +51,33 @@ class FlyingSphinx::Controller
51
51
  end
52
52
  end
53
53
 
54
+ def regenerate(file = nil)
55
+ reset file
56
+
57
+ ThinkingSphinx::RakeInterface.new.generate
58
+ end
59
+
60
+ def reset(file = nil)
61
+ options = file.nil? ? configuration_options :
62
+ {:configuration => {'sphinx' => file}, :sphinx_version => '2.0.6'}
63
+
64
+ FlyingSphinx::Action.perform api.identifier do
65
+ api.put 'reset', options
66
+ end
67
+ end
68
+
54
69
  def restart
55
70
  FlyingSphinx::Action.perform api.identifier do
56
71
  api.post 'restart'
57
72
  end
58
73
  end
59
74
 
75
+ def rotate
76
+ FlyingSphinx::Action.perform api.identifier do
77
+ api.post 'rotate'
78
+ end
79
+ end
80
+
60
81
  def sphinx_version
61
82
  '2.0.4'
62
83
  end
@@ -23,4 +23,9 @@ namespace :fs do
23
23
  task :rebuild => :environment do
24
24
  FlyingSphinx::CLI.new('rebuild').run
25
25
  end
26
+
27
+ desc "Stop, clear, configure, start then populate Sphinx"
28
+ task :regenerate => :environment do
29
+ FlyingSphinx::CLI.new('rebuild').regenerate
30
+ end
26
31
  end
@@ -1,3 +1,3 @@
1
1
  module FlyingSphinx
2
- Version = '1.0.0'
2
+ Version = '1.1.0'
3
3
  end
@@ -8,8 +8,7 @@ describe FlyingSphinx::Action do
8
8
  let(:socket) { double 'socket', :connect => true, :disconnect => true,
9
9
  :subscribe => true, :[] => channel, :connected => true }
10
10
  let(:channel) { double 'channel', :bind => true }
11
- let(:response) { double 'response', :body => body }
12
- let(:body) { double 'body', :status => 'OK', :id => 748 }
11
+ let(:response) { {'status' => 'OK', 'id' => 748} }
13
12
  let(:logger) { double 'logger', :debug => true }
14
13
 
15
14
  before :each do
@@ -8,11 +8,12 @@ describe FlyingSphinx::API do
8
8
  let(:adapter) { double('adapter') }
9
9
  let(:connection) { double('connection') }
10
10
  let(:logger) { double :debug => true }
11
- let(:response) { double :body => '' }
11
+ let(:response) { double :body => '', :status => 200 }
12
12
 
13
13
  before :each do
14
14
  faraday.as_replaced_constant
15
15
 
16
+ stub_const 'MultiJson', double(:load => {})
16
17
  FlyingSphinx.stub :logger => logger
17
18
  end
18
19
 
@@ -2,9 +2,8 @@ require 'light_spec_helper'
2
2
  require 'flying_sphinx/configuration'
3
3
 
4
4
  describe FlyingSphinx::Configuration do
5
- let(:api) { fire_double('FlyingSphinx::API',
6
- :get => double(:body => body, :status => 200)) }
7
- let(:body) { double(:server => 'foo.bar.com', :port => 9319) }
5
+ let(:api) { fire_double('FlyingSphinx::API', :get => body) }
6
+ let(:body) { {'server' => 'foo.bar.com', 'port' => 9319} }
8
7
  let(:api_key) { 'foo-bar-baz' }
9
8
  let(:identifier) { 'my-identifier' }
10
9
  let(:config) { FlyingSphinx::Configuration.new identifier, api_key }
metadata CHANGED
@@ -1,219 +1,177 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: flying-sphinx
3
- version: !ruby/object:Gem::Version
4
- hash: 23
5
- prerelease:
6
- segments:
7
- - 1
8
- - 0
9
- - 0
10
- version: 1.0.0
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.1.0
11
5
  platform: ruby
12
- authors:
6
+ authors:
13
7
  - Pat Allan
14
8
  autorequire:
15
9
  bindir: bin
16
10
  cert_chain: []
17
-
18
- date: 2013-05-07 00:00:00 -07:00
19
- default_executable:
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
22
- requirement: &id001 !ruby/object:Gem::Requirement
23
- none: false
24
- requirements:
25
- - - ">="
26
- - !ruby/object:Gem::Version
27
- hash: 3
28
- segments:
29
- - 0
30
- version: "0"
31
- version_requirements: *id001
11
+ date: 2014-03-15 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
32
14
  name: thinking-sphinx
33
- prerelease: false
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ! '>='
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
34
20
  type: :runtime
35
- - !ruby/object:Gem::Dependency
36
- requirement: &id002 !ruby/object:Gem::Requirement
37
- none: false
38
- requirements:
39
- - - ">="
40
- - !ruby/object:Gem::Version
41
- hash: 15
42
- segments:
43
- - 1
44
- - 5
45
- - 6
46
- version: 1.5.6
47
- version_requirements: *id002
48
- name: riddle
49
21
  prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ! '>='
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: riddle
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ! '>='
32
+ - !ruby/object:Gem::Version
33
+ version: 1.5.6
50
34
  type: :runtime
51
- - !ruby/object:Gem::Dependency
52
- requirement: &id003 !ruby/object:Gem::Requirement
53
- none: false
54
- requirements:
55
- - - ">="
56
- - !ruby/object:Gem::Version
57
- hash: 27
58
- segments:
59
- - 1
60
- - 3
61
- - 0
62
- version: 1.3.0
63
- version_requirements: *id003
64
- name: multi_json
65
35
  prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ! '>='
39
+ - !ruby/object:Gem::Version
40
+ version: 1.5.6
41
+ - !ruby/object:Gem::Dependency
42
+ name: multi_json
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ! '>='
46
+ - !ruby/object:Gem::Version
47
+ version: 1.3.0
66
48
  type: :runtime
67
- - !ruby/object:Gem::Dependency
68
- requirement: &id004 !ruby/object:Gem::Requirement
69
- none: false
70
- requirements:
71
- - - ~>
72
- - !ruby/object:Gem::Version
73
- hash: 5
74
- segments:
75
- - 0
76
- - 7
77
- version: "0.7"
78
- version_requirements: *id004
79
- name: faraday_middleware
80
49
  prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
54
+ version: 1.3.0
55
+ - !ruby/object:Gem::Dependency
56
+ name: faraday
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0.9'
81
62
  type: :runtime
82
- - !ruby/object:Gem::Dependency
83
- requirement: &id005 !ruby/object:Gem::Requirement
84
- none: false
85
- requirements:
86
- - - ~>
87
- - !ruby/object:Gem::Version
88
- hash: 19
89
- segments:
90
- - 0
91
- - 3
92
- - 0
93
- version: 0.3.0
94
- version_requirements: *id005
95
- name: rash
96
63
  prerelease: false
97
- type: :runtime
98
- - !ruby/object:Gem::Dependency
99
- requirement: &id006 !ruby/object:Gem::Requirement
100
- none: false
101
- requirements:
102
- - - ~>
103
- - !ruby/object:Gem::Version
104
- hash: 13
105
- segments:
106
- - 0
107
- - 3
108
- version: "0.3"
109
- version_requirements: *id006
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ! '>='
67
+ - !ruby/object:Gem::Version
68
+ version: '0.9'
69
+ - !ruby/object:Gem::Dependency
110
70
  name: pusher-client
111
- prerelease: false
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ~>
74
+ - !ruby/object:Gem::Version
75
+ version: '0.3'
112
76
  type: :runtime
113
- - !ruby/object:Gem::Dependency
114
- requirement: &id007 !ruby/object:Gem::Requirement
115
- none: false
116
- requirements:
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
117
80
  - - ~>
118
- - !ruby/object:Gem::Version
119
- hash: 63
120
- segments:
121
- - 0
122
- - 9
123
- - 2
124
- version: 0.9.2
125
- version_requirements: *id007
81
+ - !ruby/object:Gem::Version
82
+ version: '0.3'
83
+ - !ruby/object:Gem::Dependency
126
84
  name: rake
127
- prerelease: false
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ~>
88
+ - !ruby/object:Gem::Version
89
+ version: 0.9.2
128
90
  type: :development
129
- - !ruby/object:Gem::Dependency
130
- requirement: &id008 !ruby/object:Gem::Requirement
131
- none: false
132
- requirements:
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
133
94
  - - ~>
134
- - !ruby/object:Gem::Version
135
- hash: 21
136
- segments:
137
- - 2
138
- - 11
139
- version: "2.11"
140
- version_requirements: *id008
95
+ - !ruby/object:Gem::Version
96
+ version: 0.9.2
97
+ - !ruby/object:Gem::Dependency
141
98
  name: rspec
142
- prerelease: false
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ~>
102
+ - !ruby/object:Gem::Version
103
+ version: '2.11'
143
104
  type: :development
144
- - !ruby/object:Gem::Dependency
145
- requirement: &id009 !ruby/object:Gem::Requirement
146
- none: false
147
- requirements:
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
148
108
  - - ~>
149
- - !ruby/object:Gem::Version
150
- hash: 19
151
- segments:
152
- - 1
153
- - 1
154
- - 0
155
- version: 1.1.0
156
- version_requirements: *id009
109
+ - !ruby/object:Gem::Version
110
+ version: '2.11'
111
+ - !ruby/object:Gem::Dependency
157
112
  name: rspec-fire
158
- prerelease: false
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ~>
116
+ - !ruby/object:Gem::Version
117
+ version: 1.1.0
159
118
  type: :development
160
- - !ruby/object:Gem::Dependency
161
- requirement: &id010 !ruby/object:Gem::Requirement
162
- none: false
163
- requirements:
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
164
122
  - - ~>
165
- - !ruby/object:Gem::Version
166
- hash: 59
167
- segments:
168
- - 0
169
- - 8
170
- - 2
171
- version: 0.8.2
172
- version_requirements: *id010
123
+ - !ruby/object:Gem::Version
124
+ version: 1.1.0
125
+ - !ruby/object:Gem::Dependency
173
126
  name: yajl-ruby
174
- prerelease: false
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - ~>
130
+ - !ruby/object:Gem::Version
131
+ version: 0.8.2
175
132
  type: :development
176
- - !ruby/object:Gem::Dependency
177
- requirement: &id011 !ruby/object:Gem::Requirement
178
- none: false
179
- requirements:
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
180
136
  - - ~>
181
- - !ruby/object:Gem::Version
182
- hash: 27
183
- segments:
184
- - 1
185
- - 3
186
- - 0
187
- version: 1.3.0
188
- version_requirements: *id011
137
+ - !ruby/object:Gem::Version
138
+ version: 0.8.2
139
+ - !ruby/object:Gem::Dependency
189
140
  name: fakeweb
190
- prerelease: false
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ~>
144
+ - !ruby/object:Gem::Version
145
+ version: 1.3.0
191
146
  type: :development
192
- - !ruby/object:Gem::Dependency
193
- requirement: &id012 !ruby/object:Gem::Requirement
194
- none: false
195
- requirements:
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
196
150
  - - ~>
197
- - !ruby/object:Gem::Version
198
- hash: 27
199
- segments:
200
- - 1
201
- - 2
202
- - 2
203
- version: 1.2.2
204
- version_requirements: *id012
151
+ - !ruby/object:Gem::Version
152
+ version: 1.3.0
153
+ - !ruby/object:Gem::Dependency
205
154
  name: fakeweb-matcher
206
- prerelease: false
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - ~>
158
+ - !ruby/object:Gem::Version
159
+ version: 1.2.2
207
160
  type: :development
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - ~>
165
+ - !ruby/object:Gem::Version
166
+ version: 1.2.2
208
167
  description: Hooks Thinking Sphinx into the Flying Sphinx service
209
168
  email: pat@freelancing-gods.com
210
- executables:
169
+ executables:
211
170
  - flying-sphinx
212
171
  extensions: []
213
-
214
- extra_rdoc_files:
172
+ extra_rdoc_files:
215
173
  - README.textile
216
- files:
174
+ files:
217
175
  - .gitignore
218
176
  - .travis.yml
219
177
  - Gemfile
@@ -247,45 +205,31 @@ files:
247
205
  - spec/specs/api_spec.rb
248
206
  - spec/specs/configuration_spec.rb
249
207
  - spec/specs/setting_files_spec.rb
250
- has_rdoc: true
251
208
  homepage: https://flying-sphinx.com
252
209
  licenses: []
253
-
254
- post_install_message: |
255
- If you're upgrading, you should rebuild your Sphinx setup when deploying:
256
-
257
- $ heroku rake fs:rebuild
258
-
210
+ metadata: {}
211
+ post_install_message: ! "If you're upgrading, you should rebuild your Sphinx setup
212
+ when deploying:\n\n $ heroku rake fs:rebuild\n"
259
213
  rdoc_options: []
260
-
261
- require_paths:
214
+ require_paths:
262
215
  - lib
263
- required_ruby_version: !ruby/object:Gem::Requirement
264
- none: false
265
- requirements:
266
- - - ">="
267
- - !ruby/object:Gem::Version
268
- hash: 3
269
- segments:
270
- - 0
271
- version: "0"
272
- required_rubygems_version: !ruby/object:Gem::Requirement
273
- none: false
274
- requirements:
275
- - - ">="
276
- - !ruby/object:Gem::Version
277
- hash: 3
278
- segments:
279
- - 0
280
- version: "0"
216
+ required_ruby_version: !ruby/object:Gem::Requirement
217
+ requirements:
218
+ - - ! '>='
219
+ - !ruby/object:Gem::Version
220
+ version: '0'
221
+ required_rubygems_version: !ruby/object:Gem::Requirement
222
+ requirements:
223
+ - - ! '>='
224
+ - !ruby/object:Gem::Version
225
+ version: '0'
281
226
  requirements: []
282
-
283
227
  rubyforge_project:
284
- rubygems_version: 1.6.2
228
+ rubygems_version: 2.1.11
285
229
  signing_key:
286
- specification_version: 3
230
+ specification_version: 4
287
231
  summary: Sphinx in the Cloud
288
- test_files:
232
+ test_files:
289
233
  - spec/light_spec_helper.rb
290
234
  - spec/spec_helper.rb
291
235
  - spec/specs/action_spec.rb