rabbit_feed 0.3.1
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 +7 -0
- data/.gitignore +11 -0
- data/.rspec +3 -0
- data/Brewfile +4 -0
- data/DEVELOPING.md +140 -0
- data/Gemfile +15 -0
- data/Gemfile.lock +121 -0
- data/LICENSE.txt +9 -0
- data/README.md +304 -0
- data/Rakefile +30 -0
- data/bin/bundle +3 -0
- data/bin/rabbit_feed +11 -0
- data/example/non_rails_app/.rspec +1 -0
- data/example/non_rails_app/Gemfile +7 -0
- data/example/non_rails_app/Gemfile.lock +56 -0
- data/example/non_rails_app/Rakefile +5 -0
- data/example/non_rails_app/bin/benchmark +63 -0
- data/example/non_rails_app/bin/bundle +3 -0
- data/example/non_rails_app/config/rabbit_feed.yml +8 -0
- data/example/non_rails_app/lib/non_rails_app.rb +32 -0
- data/example/non_rails_app/lib/non_rails_app/event_handler.rb +10 -0
- data/example/non_rails_app/log/.keep +0 -0
- data/example/non_rails_app/spec/lib/non_rails_app/event_handler_spec.rb +14 -0
- data/example/non_rails_app/spec/lib/non_rails_app/event_routing_spec.rb +14 -0
- data/example/non_rails_app/spec/spec_helper.rb +31 -0
- data/example/non_rails_app/tmp/pids/.keep +0 -0
- data/example/rails_app/.gitignore +17 -0
- data/example/rails_app/.node-version +1 -0
- data/example/rails_app/.rspec +1 -0
- data/example/rails_app/Gemfile +36 -0
- data/example/rails_app/Gemfile.lock +173 -0
- data/example/rails_app/README.rdoc +28 -0
- data/example/rails_app/Rakefile +6 -0
- data/example/rails_app/app/assets/images/.keep +0 -0
- data/example/rails_app/app/assets/javascripts/application.js +16 -0
- data/example/rails_app/app/assets/javascripts/beavers.js.coffee +3 -0
- data/example/rails_app/app/assets/stylesheets/application.css +15 -0
- data/example/rails_app/app/assets/stylesheets/beavers.css.scss +3 -0
- data/example/rails_app/app/assets/stylesheets/scaffolds.css.scss +69 -0
- data/example/rails_app/app/controllers/application_controller.rb +5 -0
- data/example/rails_app/app/controllers/beavers_controller.rb +81 -0
- data/example/rails_app/app/controllers/concerns/.keep +0 -0
- data/example/rails_app/app/helpers/application_helper.rb +2 -0
- data/example/rails_app/app/helpers/beavers_helper.rb +2 -0
- data/example/rails_app/app/mailers/.keep +0 -0
- data/example/rails_app/app/models/.keep +0 -0
- data/example/rails_app/app/models/beaver.rb +2 -0
- data/example/rails_app/app/models/concerns/.keep +0 -0
- data/example/rails_app/app/views/beavers/_form.html.erb +21 -0
- data/example/rails_app/app/views/beavers/edit.html.erb +6 -0
- data/example/rails_app/app/views/beavers/index.html.erb +25 -0
- data/example/rails_app/app/views/beavers/index.json.jbuilder +4 -0
- data/example/rails_app/app/views/beavers/new.html.erb +5 -0
- data/example/rails_app/app/views/beavers/show.html.erb +9 -0
- data/example/rails_app/app/views/beavers/show.json.jbuilder +1 -0
- data/example/rails_app/app/views/layouts/application.html.erb +14 -0
- data/example/rails_app/bin/bundle +3 -0
- data/example/rails_app/bin/rails +4 -0
- data/example/rails_app/bin/rake +4 -0
- data/example/rails_app/config.ru +4 -0
- data/example/rails_app/config/application.rb +25 -0
- data/example/rails_app/config/boot.rb +4 -0
- data/example/rails_app/config/database.yml +22 -0
- data/example/rails_app/config/environment.rb +5 -0
- data/example/rails_app/config/environments/development.rb +83 -0
- data/example/rails_app/config/environments/test.rb +39 -0
- data/example/rails_app/config/initializers/backtrace_silencers.rb +7 -0
- data/example/rails_app/config/initializers/cookies_serializer.rb +3 -0
- data/example/rails_app/config/initializers/filter_parameter_logging.rb +4 -0
- data/example/rails_app/config/initializers/inflections.rb +16 -0
- data/example/rails_app/config/initializers/mime_types.rb +4 -0
- data/example/rails_app/config/initializers/rabbit_feed.rb +43 -0
- data/example/rails_app/config/initializers/session_store.rb +3 -0
- data/example/rails_app/config/initializers/wrap_parameters.rb +14 -0
- data/example/rails_app/config/locales/en.yml +23 -0
- data/example/rails_app/config/rabbit_feed.yml +8 -0
- data/example/rails_app/config/routes.rb +58 -0
- data/example/rails_app/config/secrets.yml +18 -0
- data/example/rails_app/config/unicorn.rb +4 -0
- data/example/rails_app/db/migrate/20140424102400_create_beavers.rb +9 -0
- data/example/rails_app/db/schema.rb +22 -0
- data/example/rails_app/db/seeds.rb +7 -0
- data/example/rails_app/lib/assets/.keep +0 -0
- data/example/rails_app/lib/event_handler.rb +7 -0
- data/example/rails_app/lib/tasks/.keep +0 -0
- data/example/rails_app/log/.keep +0 -0
- data/example/rails_app/public/404.html +67 -0
- data/example/rails_app/public/422.html +67 -0
- data/example/rails_app/public/500.html +66 -0
- data/example/rails_app/public/favicon.ico +0 -0
- data/example/rails_app/public/robots.txt +5 -0
- data/example/rails_app/spec/controllers/beavers_controller_spec.rb +32 -0
- data/example/rails_app/spec/event_routing_spec.rb +15 -0
- data/example/rails_app/spec/spec_helper.rb +51 -0
- data/example/rails_app/test/controllers/.keep +0 -0
- data/example/rails_app/test/controllers/beavers_controller_test.rb +49 -0
- data/example/rails_app/test/fixtures/.keep +0 -0
- data/example/rails_app/test/fixtures/beavers.yml +7 -0
- data/example/rails_app/test/helpers/.keep +0 -0
- data/example/rails_app/test/helpers/beavers_helper_test.rb +4 -0
- data/example/rails_app/test/integration/.keep +0 -0
- data/example/rails_app/test/mailers/.keep +0 -0
- data/example/rails_app/test/models/.keep +0 -0
- data/example/rails_app/test/models/beaver_test.rb +7 -0
- data/example/rails_app/test/test_helper.rb +13 -0
- data/example/rails_app/tmp/pids/.keep +0 -0
- data/example/rails_app/vendor/assets/javascripts/.keep +0 -0
- data/example/rails_app/vendor/assets/stylesheets/.keep +0 -0
- data/lib/dsl.rb +9 -0
- data/lib/rabbit_feed.rb +41 -0
- data/lib/rabbit_feed/client.rb +181 -0
- data/lib/rabbit_feed/configuration.rb +50 -0
- data/lib/rabbit_feed/connection_concern.rb +95 -0
- data/lib/rabbit_feed/consumer.rb +14 -0
- data/lib/rabbit_feed/consumer_connection.rb +108 -0
- data/lib/rabbit_feed/event.rb +43 -0
- data/lib/rabbit_feed/event_definitions.rb +98 -0
- data/lib/rabbit_feed/event_routing.rb +90 -0
- data/lib/rabbit_feed/producer.rb +47 -0
- data/lib/rabbit_feed/producer_connection.rb +65 -0
- data/lib/rabbit_feed/testing_support/rspec_matchers/publish_event.rb +90 -0
- data/lib/rabbit_feed/testing_support/testing_helpers.rb +16 -0
- data/lib/rabbit_feed/version.rb +3 -0
- data/logo.png +0 -0
- data/rabbit_feed.gemspec +35 -0
- data/run_benchmark +35 -0
- data/run_example +62 -0
- data/run_recovery_test +26 -0
- data/spec/features/connectivity.feature +13 -0
- data/spec/features/step_definitions/connectivity_steps.rb +96 -0
- data/spec/fixtures/configuration.yml +14 -0
- data/spec/lib/rabbit_feed/client_spec.rb +116 -0
- data/spec/lib/rabbit_feed/configuration_spec.rb +121 -0
- data/spec/lib/rabbit_feed/connection_concern_spec.rb +116 -0
- data/spec/lib/rabbit_feed/consumer_connection_spec.rb +85 -0
- data/spec/lib/rabbit_feed/event_definitions_spec.rb +139 -0
- data/spec/lib/rabbit_feed/event_routing_spec.rb +121 -0
- data/spec/lib/rabbit_feed/event_spec.rb +33 -0
- data/spec/lib/rabbit_feed/producer_connection_spec.rb +72 -0
- data/spec/lib/rabbit_feed/producer_spec.rb +57 -0
- data/spec/lib/rabbit_feed/testing_support/rspec_matchers/publish_event_spec.rb +60 -0
- data/spec/lib/rabbit_feed/testing_support/testing_helper_spec.rb +34 -0
- data/spec/spec_helper.rb +58 -0
- data/spec/support/shared_examples_for_connections.rb +40 -0
- metadata +305 -0
data/Rakefile
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
require 'bundler/gem_tasks'
|
|
2
|
+
require 'rspec/core/rake_task'
|
|
3
|
+
|
|
4
|
+
desc 'Default: run specs and features'
|
|
5
|
+
task :default => [:all]
|
|
6
|
+
|
|
7
|
+
desc 'Run specs and features'
|
|
8
|
+
RSpec::Core::RakeTask.new(:all) do |t|
|
|
9
|
+
t.pattern = './spec/{**/*_spec.rb,features/**/*.feature}'
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
desc 'Run specs'
|
|
13
|
+
RSpec::Core::RakeTask.new(:spec) do |t|
|
|
14
|
+
t.pattern = './spec/{**/*_spec.rb}'
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
def gemspec
|
|
18
|
+
@gemspec ||= eval(File.read('rabbit_feed.gemspec'))
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
desc 'Validate gemspec'
|
|
22
|
+
task :validate_gemspec do
|
|
23
|
+
gemspec.validate
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
desc 'Print version'
|
|
27
|
+
task :version do
|
|
28
|
+
puts gemspec.version
|
|
29
|
+
end
|
|
30
|
+
|
data/bin/bundle
ADDED
data/bin/rabbit_feed
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
--color
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
PATH
|
|
2
|
+
remote: ../../
|
|
3
|
+
specs:
|
|
4
|
+
rabbit_feed (0.3.1)
|
|
5
|
+
activemodel
|
|
6
|
+
activesupport
|
|
7
|
+
avro
|
|
8
|
+
bunny
|
|
9
|
+
connection_pool
|
|
10
|
+
pidfile
|
|
11
|
+
|
|
12
|
+
GEM
|
|
13
|
+
remote: https://rubygems.org/
|
|
14
|
+
specs:
|
|
15
|
+
activemodel (4.1.6)
|
|
16
|
+
activesupport (= 4.1.6)
|
|
17
|
+
builder (~> 3.1)
|
|
18
|
+
activesupport (4.1.6)
|
|
19
|
+
i18n (~> 0.6, >= 0.6.9)
|
|
20
|
+
json (~> 1.7, >= 1.7.7)
|
|
21
|
+
minitest (~> 5.1)
|
|
22
|
+
thread_safe (~> 0.1)
|
|
23
|
+
tzinfo (~> 1.1)
|
|
24
|
+
amq-protocol (1.9.2)
|
|
25
|
+
avro (1.7.7)
|
|
26
|
+
multi_json
|
|
27
|
+
builder (3.2.2)
|
|
28
|
+
bunny (1.6.3)
|
|
29
|
+
amq-protocol (>= 1.9.2)
|
|
30
|
+
connection_pool (2.0.0)
|
|
31
|
+
diff-lcs (1.2.5)
|
|
32
|
+
i18n (0.6.11)
|
|
33
|
+
json (1.8.1)
|
|
34
|
+
minitest (5.4.2)
|
|
35
|
+
multi_json (1.10.1)
|
|
36
|
+
pidfile (0.3.0)
|
|
37
|
+
rake (10.3.1)
|
|
38
|
+
rspec (2.14.1)
|
|
39
|
+
rspec-core (~> 2.14.0)
|
|
40
|
+
rspec-expectations (~> 2.14.0)
|
|
41
|
+
rspec-mocks (~> 2.14.0)
|
|
42
|
+
rspec-core (2.14.8)
|
|
43
|
+
rspec-expectations (2.14.5)
|
|
44
|
+
diff-lcs (>= 1.1.3, < 2.0)
|
|
45
|
+
rspec-mocks (2.14.6)
|
|
46
|
+
thread_safe (0.3.4)
|
|
47
|
+
tzinfo (1.2.2)
|
|
48
|
+
thread_safe (~> 0.1)
|
|
49
|
+
|
|
50
|
+
PLATFORMS
|
|
51
|
+
ruby
|
|
52
|
+
|
|
53
|
+
DEPENDENCIES
|
|
54
|
+
rabbit_feed!
|
|
55
|
+
rake
|
|
56
|
+
rspec
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
|
|
3
|
+
require 'benchmark'
|
|
4
|
+
require 'bundler/setup'
|
|
5
|
+
require_relative '../lib/non_rails_app'
|
|
6
|
+
|
|
7
|
+
# Prevent deprecation warnings
|
|
8
|
+
I18n.enforce_available_locales = true
|
|
9
|
+
|
|
10
|
+
RabbitFeed.instance_eval do
|
|
11
|
+
self.log = Logger.new 'log/rabbit_feed.log'
|
|
12
|
+
self.log.level = Logger::DEBUG
|
|
13
|
+
self.environment = 'development'
|
|
14
|
+
self.configuration_file_path = 'config/rabbit_feed.yml'
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
payload = 'abc'*5000
|
|
18
|
+
number_of_events = 5000
|
|
19
|
+
|
|
20
|
+
EventDefinitions do
|
|
21
|
+
define_event('test_event', version: '1.0.0') do
|
|
22
|
+
defined_as do
|
|
23
|
+
'An event used in the benchmarking tests'
|
|
24
|
+
end
|
|
25
|
+
payload_contains do
|
|
26
|
+
field('data', type: 'string', definition: 'A large chunk of text')
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
puts "Publishing #{number_of_events} events..."
|
|
32
|
+
Benchmark.bm do |x|
|
|
33
|
+
x.report { number_of_events.times { RabbitFeed::Producer.publish_event 'test_event', { 'data' => payload } } }
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
events_consumed = 0
|
|
37
|
+
|
|
38
|
+
EventRouting do
|
|
39
|
+
accept_from('non_rails_app') do
|
|
40
|
+
event('test_event') do |event|
|
|
41
|
+
events_consumed += 1
|
|
42
|
+
Thread.main.raise Interrupt if events_consumed >= number_of_events
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
accept_from('rails_app') do
|
|
46
|
+
event('user_creates_beaver') do |event|
|
|
47
|
+
end
|
|
48
|
+
event('user_updates_beaver') do |event|
|
|
49
|
+
end
|
|
50
|
+
event('user_deletes_beaver') do |event|
|
|
51
|
+
end
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
puts "Consuming #{number_of_events} events..."
|
|
56
|
+
Benchmark.bm do |x|
|
|
57
|
+
x.report do
|
|
58
|
+
begin
|
|
59
|
+
RabbitFeed::Consumer.run
|
|
60
|
+
rescue Interrupt
|
|
61
|
+
end
|
|
62
|
+
end
|
|
63
|
+
end
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
require 'rabbit_feed'
|
|
2
|
+
require_relative 'non_rails_app/event_handler'
|
|
3
|
+
|
|
4
|
+
EventRouting do
|
|
5
|
+
accept_from('rails_app') do
|
|
6
|
+
event('user_creates_beaver') do |event|
|
|
7
|
+
NonRailsApp::EventHandler.handle_event event
|
|
8
|
+
end
|
|
9
|
+
event('user_updates_beaver') do |event|
|
|
10
|
+
NonRailsApp::EventHandler.handle_event event
|
|
11
|
+
end
|
|
12
|
+
event('user_deletes_beaver') do |event|
|
|
13
|
+
NonRailsApp::EventHandler.handle_event event
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
accept_from('non_rails_app') do
|
|
17
|
+
event('test_event') do |event|
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
EventDefinitions do
|
|
23
|
+
define_event('application_acknowledges_event', version: '1.0.0') do
|
|
24
|
+
defined_as do
|
|
25
|
+
'An event has been acknowledged'
|
|
26
|
+
end
|
|
27
|
+
payload_contains do
|
|
28
|
+
field('beaver_name', type: 'string', definition: 'The name of the beaver')
|
|
29
|
+
field('event_name', type: 'string', definition: 'The name of the original event')
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
module NonRailsApp
|
|
2
|
+
module EventHandler
|
|
3
|
+
extend self
|
|
4
|
+
|
|
5
|
+
def handle_event event
|
|
6
|
+
puts "NonRailsApp::EventHandler - Consumed event: #{event.name} with payload: #{event.payload}"
|
|
7
|
+
RabbitFeed::Producer.publish_event 'application_acknowledges_event', ({ 'event_name' => event.name }.merge event.payload)
|
|
8
|
+
end
|
|
9
|
+
end
|
|
10
|
+
end
|
|
File without changes
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
|
|
3
|
+
module NonRailsApp
|
|
4
|
+
describe EventHandler do
|
|
5
|
+
|
|
6
|
+
describe '#handle_event' do
|
|
7
|
+
it 'publishes an update event' do
|
|
8
|
+
expect{
|
|
9
|
+
described_class.handle_event double(:event, name: 'user_updates_beaver', payload: { 'beaver_name' => 'beaver' })
|
|
10
|
+
}.to publish_event('application_acknowledges_event', { 'beaver_name' => 'beaver', 'event_name' => 'user_updates_beaver' })
|
|
11
|
+
end
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
require_relative '../../spec_helper'
|
|
2
|
+
|
|
3
|
+
module NonRailsApp
|
|
4
|
+
describe 'Event Routing' do
|
|
5
|
+
|
|
6
|
+
include RabbitFeed::TestingSupport::TestingHelpers
|
|
7
|
+
|
|
8
|
+
let(:event) { {'application' => 'rails_app', 'name' => 'user_creates_beaver'} }
|
|
9
|
+
it 'routes events correctly' do
|
|
10
|
+
expect(NonRailsApp::EventHandler).to receive(:handle_event).with { |full_event| expect(full_event.payload).to eq(event)}
|
|
11
|
+
rabbit_feed_consumer.consume_event(event)
|
|
12
|
+
end
|
|
13
|
+
end
|
|
14
|
+
end
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
require 'non_rails_app'
|
|
2
|
+
|
|
3
|
+
RSpec.configure do |config|
|
|
4
|
+
# ## Mock Framework
|
|
5
|
+
#
|
|
6
|
+
# If you prefer to use mocha, flexmock or RR, uncomment the appropriate line:
|
|
7
|
+
#
|
|
8
|
+
# config.mock_with :mocha
|
|
9
|
+
# config.mock_with :flexmock
|
|
10
|
+
# config.mock_with :rr
|
|
11
|
+
|
|
12
|
+
# Run specs in random order to surface order dependencies. If you find an
|
|
13
|
+
# order dependency and want to debug it, you can fix the order by providing
|
|
14
|
+
# the seed, which is printed after each run.
|
|
15
|
+
# --seed 1234
|
|
16
|
+
config.order = "random"
|
|
17
|
+
|
|
18
|
+
config.mock_with :rspec do |c|
|
|
19
|
+
c.syntax = [:should, :expect]
|
|
20
|
+
end
|
|
21
|
+
|
|
22
|
+
config.before :each do
|
|
23
|
+
RabbitFeed::Producer.stub!
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
config.include(RabbitFeed::TestingSupport::RSpecMatchers)
|
|
27
|
+
end
|
|
28
|
+
|
|
29
|
+
RabbitFeed.log = Logger.new('test.log')
|
|
30
|
+
RabbitFeed.environment = 'test'
|
|
31
|
+
RabbitFeed.configuration_file_path = 'config/rabbit_feed.yml'
|
|
File without changes
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# See https://help.github.com/articles/ignoring-files for more about ignoring files.
|
|
2
|
+
#
|
|
3
|
+
# If you find yourself ignoring temporary files generated by your text editor
|
|
4
|
+
# or operating system, you probably want to add a global ignore instead:
|
|
5
|
+
# git config --global core.excludesfile '~/.gitignore_global'
|
|
6
|
+
|
|
7
|
+
# Ignore bundler config.
|
|
8
|
+
/.bundle
|
|
9
|
+
|
|
10
|
+
# Ignore the default SQLite database.
|
|
11
|
+
/db/*.sqlite3
|
|
12
|
+
/db/*.sqlite3-journal
|
|
13
|
+
|
|
14
|
+
# Ignore all logfiles and temp files.
|
|
15
|
+
/log/*.log
|
|
16
|
+
/tmp/cache
|
|
17
|
+
/tmp/pids/*.pid
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
v0.10
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
--color
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
source 'https://rubygems.org'
|
|
2
|
+
|
|
3
|
+
# Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
|
|
4
|
+
gem 'rails', '4.1.0'
|
|
5
|
+
# Use sqlite3 as the database for Active Record
|
|
6
|
+
gem 'sqlite3'
|
|
7
|
+
# Use SCSS for stylesheets
|
|
8
|
+
gem 'sass-rails', '~> 4.0.3'
|
|
9
|
+
# Use Uglifier as compressor for JavaScript assets
|
|
10
|
+
gem 'uglifier', '>= 1.3.0'
|
|
11
|
+
# Use CoffeeScript for .js.coffee assets and views
|
|
12
|
+
gem 'coffee-rails', '~> 4.0.0'
|
|
13
|
+
# See https://github.com/sstephenson/execjs#readme for more supported runtimes
|
|
14
|
+
# gem 'therubyracer', platforms: :ruby
|
|
15
|
+
|
|
16
|
+
# Use jquery as the JavaScript library
|
|
17
|
+
gem 'jquery-rails'
|
|
18
|
+
# Turbolinks makes following links in your web application faster. Read more: https://github.com/rails/turbolinks
|
|
19
|
+
gem 'turbolinks'
|
|
20
|
+
# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
|
|
21
|
+
gem 'jbuilder', '~> 2.0'
|
|
22
|
+
# bundle exec rake doc:rails generates the API under doc/api.
|
|
23
|
+
gem 'sdoc', '~> 0.4.0', group: :doc
|
|
24
|
+
|
|
25
|
+
# Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
|
|
26
|
+
gem 'spring', group: :development
|
|
27
|
+
|
|
28
|
+
# Use unicorn as the app server
|
|
29
|
+
gem 'unicorn'
|
|
30
|
+
|
|
31
|
+
# Use Capistrano for deployment
|
|
32
|
+
# gem 'capistrano-rails', group: :development
|
|
33
|
+
|
|
34
|
+
gem 'rabbit_feed', path: '../../'
|
|
35
|
+
|
|
36
|
+
gem 'rspec-rails', group: :test
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
PATH
|
|
2
|
+
remote: ../../
|
|
3
|
+
specs:
|
|
4
|
+
rabbit_feed (0.3.1)
|
|
5
|
+
activemodel
|
|
6
|
+
activesupport
|
|
7
|
+
avro
|
|
8
|
+
bunny
|
|
9
|
+
connection_pool
|
|
10
|
+
pidfile
|
|
11
|
+
|
|
12
|
+
GEM
|
|
13
|
+
remote: https://rubygems.org/
|
|
14
|
+
specs:
|
|
15
|
+
actionmailer (4.1.0)
|
|
16
|
+
actionpack (= 4.1.0)
|
|
17
|
+
actionview (= 4.1.0)
|
|
18
|
+
mail (~> 2.5.4)
|
|
19
|
+
actionpack (4.1.0)
|
|
20
|
+
actionview (= 4.1.0)
|
|
21
|
+
activesupport (= 4.1.0)
|
|
22
|
+
rack (~> 1.5.2)
|
|
23
|
+
rack-test (~> 0.6.2)
|
|
24
|
+
actionview (4.1.0)
|
|
25
|
+
activesupport (= 4.1.0)
|
|
26
|
+
builder (~> 3.1)
|
|
27
|
+
erubis (~> 2.7.0)
|
|
28
|
+
activemodel (4.1.0)
|
|
29
|
+
activesupport (= 4.1.0)
|
|
30
|
+
builder (~> 3.1)
|
|
31
|
+
activerecord (4.1.0)
|
|
32
|
+
activemodel (= 4.1.0)
|
|
33
|
+
activesupport (= 4.1.0)
|
|
34
|
+
arel (~> 5.0.0)
|
|
35
|
+
activesupport (4.1.0)
|
|
36
|
+
i18n (~> 0.6, >= 0.6.9)
|
|
37
|
+
json (~> 1.7, >= 1.7.7)
|
|
38
|
+
minitest (~> 5.1)
|
|
39
|
+
thread_safe (~> 0.1)
|
|
40
|
+
tzinfo (~> 1.1)
|
|
41
|
+
amq-protocol (1.9.2)
|
|
42
|
+
arel (5.0.1.20140414130214)
|
|
43
|
+
avro (1.7.7)
|
|
44
|
+
multi_json
|
|
45
|
+
builder (3.2.2)
|
|
46
|
+
bunny (1.6.3)
|
|
47
|
+
amq-protocol (>= 1.9.2)
|
|
48
|
+
coffee-rails (4.0.1)
|
|
49
|
+
coffee-script (>= 2.2.0)
|
|
50
|
+
railties (>= 4.0.0, < 5.0)
|
|
51
|
+
coffee-script (2.2.0)
|
|
52
|
+
coffee-script-source
|
|
53
|
+
execjs
|
|
54
|
+
coffee-script-source (1.7.0)
|
|
55
|
+
connection_pool (2.0.0)
|
|
56
|
+
diff-lcs (1.2.5)
|
|
57
|
+
erubis (2.7.0)
|
|
58
|
+
execjs (2.0.2)
|
|
59
|
+
hike (1.2.3)
|
|
60
|
+
i18n (0.6.9)
|
|
61
|
+
jbuilder (2.0.6)
|
|
62
|
+
activesupport (>= 3.0.0, < 5)
|
|
63
|
+
multi_json (~> 1.2)
|
|
64
|
+
jquery-rails (3.1.0)
|
|
65
|
+
railties (>= 3.0, < 5.0)
|
|
66
|
+
thor (>= 0.14, < 2.0)
|
|
67
|
+
json (1.8.1)
|
|
68
|
+
kgio (2.8.1)
|
|
69
|
+
mail (2.5.4)
|
|
70
|
+
mime-types (~> 1.16)
|
|
71
|
+
treetop (~> 1.4.8)
|
|
72
|
+
mime-types (1.25.1)
|
|
73
|
+
minitest (5.3.3)
|
|
74
|
+
multi_json (1.9.3)
|
|
75
|
+
pidfile (0.3.0)
|
|
76
|
+
polyglot (0.3.4)
|
|
77
|
+
rack (1.5.2)
|
|
78
|
+
rack-test (0.6.2)
|
|
79
|
+
rack (>= 1.0)
|
|
80
|
+
rails (4.1.0)
|
|
81
|
+
actionmailer (= 4.1.0)
|
|
82
|
+
actionpack (= 4.1.0)
|
|
83
|
+
actionview (= 4.1.0)
|
|
84
|
+
activemodel (= 4.1.0)
|
|
85
|
+
activerecord (= 4.1.0)
|
|
86
|
+
activesupport (= 4.1.0)
|
|
87
|
+
bundler (>= 1.3.0, < 2.0)
|
|
88
|
+
railties (= 4.1.0)
|
|
89
|
+
sprockets-rails (~> 2.0)
|
|
90
|
+
railties (4.1.0)
|
|
91
|
+
actionpack (= 4.1.0)
|
|
92
|
+
activesupport (= 4.1.0)
|
|
93
|
+
rake (>= 0.8.7)
|
|
94
|
+
thor (>= 0.18.1, < 2.0)
|
|
95
|
+
raindrops (0.12.0)
|
|
96
|
+
rake (10.3.1)
|
|
97
|
+
rdoc (4.1.1)
|
|
98
|
+
json (~> 1.4)
|
|
99
|
+
rspec-collection_matchers (0.0.4)
|
|
100
|
+
rspec-expectations (>= 2.99.0.beta1)
|
|
101
|
+
rspec-core (3.0.0.beta2)
|
|
102
|
+
rspec-support (= 3.0.0.beta2)
|
|
103
|
+
rspec-expectations (3.0.0.beta2)
|
|
104
|
+
diff-lcs (>= 1.2.0, < 2.0)
|
|
105
|
+
rspec-support (= 3.0.0.beta2)
|
|
106
|
+
rspec-mocks (3.0.0.beta2)
|
|
107
|
+
rspec-support (= 3.0.0.beta2)
|
|
108
|
+
rspec-rails (3.0.0.beta2)
|
|
109
|
+
actionpack (>= 3.0)
|
|
110
|
+
activemodel (>= 3.0)
|
|
111
|
+
activesupport (>= 3.0)
|
|
112
|
+
railties (>= 3.0)
|
|
113
|
+
rspec-collection_matchers
|
|
114
|
+
rspec-core (= 3.0.0.beta2)
|
|
115
|
+
rspec-expectations (= 3.0.0.beta2)
|
|
116
|
+
rspec-mocks (= 3.0.0.beta2)
|
|
117
|
+
rspec-support (= 3.0.0.beta2)
|
|
118
|
+
rspec-support (3.0.0.beta2)
|
|
119
|
+
sass (3.2.19)
|
|
120
|
+
sass-rails (4.0.3)
|
|
121
|
+
railties (>= 4.0.0, < 5.0)
|
|
122
|
+
sass (~> 3.2.0)
|
|
123
|
+
sprockets (~> 2.8, <= 2.11.0)
|
|
124
|
+
sprockets-rails (~> 2.0)
|
|
125
|
+
sdoc (0.4.0)
|
|
126
|
+
json (~> 1.8)
|
|
127
|
+
rdoc (~> 4.0, < 5.0)
|
|
128
|
+
spring (1.1.2)
|
|
129
|
+
sprockets (2.11.0)
|
|
130
|
+
hike (~> 1.2)
|
|
131
|
+
multi_json (~> 1.0)
|
|
132
|
+
rack (~> 1.0)
|
|
133
|
+
tilt (~> 1.1, != 1.3.0)
|
|
134
|
+
sprockets-rails (2.1.3)
|
|
135
|
+
actionpack (>= 3.0)
|
|
136
|
+
activesupport (>= 3.0)
|
|
137
|
+
sprockets (~> 2.8)
|
|
138
|
+
sqlite3 (1.3.9)
|
|
139
|
+
thor (0.19.1)
|
|
140
|
+
thread_safe (0.3.3)
|
|
141
|
+
tilt (1.4.1)
|
|
142
|
+
treetop (1.4.15)
|
|
143
|
+
polyglot
|
|
144
|
+
polyglot (>= 0.3.1)
|
|
145
|
+
turbolinks (2.2.2)
|
|
146
|
+
coffee-rails
|
|
147
|
+
tzinfo (1.1.0)
|
|
148
|
+
thread_safe (~> 0.1)
|
|
149
|
+
uglifier (2.5.0)
|
|
150
|
+
execjs (>= 0.3.0)
|
|
151
|
+
json (>= 1.8.0)
|
|
152
|
+
unicorn (4.7.0)
|
|
153
|
+
kgio (~> 2.6)
|
|
154
|
+
rack
|
|
155
|
+
raindrops (~> 0.7)
|
|
156
|
+
|
|
157
|
+
PLATFORMS
|
|
158
|
+
ruby
|
|
159
|
+
|
|
160
|
+
DEPENDENCIES
|
|
161
|
+
coffee-rails (~> 4.0.0)
|
|
162
|
+
jbuilder (~> 2.0)
|
|
163
|
+
jquery-rails
|
|
164
|
+
rabbit_feed!
|
|
165
|
+
rails (= 4.1.0)
|
|
166
|
+
rspec-rails
|
|
167
|
+
sass-rails (~> 4.0.3)
|
|
168
|
+
sdoc (~> 0.4.0)
|
|
169
|
+
spring
|
|
170
|
+
sqlite3
|
|
171
|
+
turbolinks
|
|
172
|
+
uglifier (>= 1.3.0)
|
|
173
|
+
unicorn
|