From 2afa2899c5cc5f5742fc25322e38cfdd3bf2f618 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonne=20Ha=C3=9F?= Date: Fri, 15 Mar 2013 20:01:37 +0100 Subject: [PATCH] rework Gemfile --- Gemfile | 263 ++++++++++++++++++++++------------------ Gemfile.lock | 2 + features/support/env.rb | 19 ++- spec/spec_helper.rb | 15 ++- 4 files changed, 172 insertions(+), 127 deletions(-) diff --git a/Gemfile b/Gemfile index 69399faa2..a0db44956 100644 --- a/Gemfile +++ b/Gemfile @@ -2,114 +2,114 @@ source 'https://rubygems.org' gem 'rails', '3.2.12' -gem 'foreman', '0.61' +# Appserver gem 'unicorn', '4.6.0', :require => false -gem 'rails_autolink', '1.0.9' +# API and JSON -# configuration -gem 'configurate', '0.0.2' +gem 'acts_as_api', '0.4.1' +gem 'json', '1.7.7' -# cross-origin resource sharing - -gem 'rack-cors', '0.2.7', :require => 'rack/cors' - -# click-jacking protection - -gem 'rack-protection', '1.2' - -# authentication +# Authentication gem 'devise', '2.1.3' -gem 'remotipart', '1.0.5' +# Background processing -gem 'omniauth', '1.1.3' -gem 'omniauth-facebook', '1.4.1' -gem 'omniauth-tumblr', '1.1' -gem 'omniauth-twitter', '0.0.14' - -gem 'twitter', '4.5.0' - -# mail - -gem 'markerb', '1.0.1' -gem 'messagebus_ruby_api', '1.0.3' - -group :production do # we don't install these on travis to speed up test runs - gem 'rails_admin', '0.4.5' - gem 'rack-ssl', '1.3.3', :require => 'rack/ssl' - gem 'rack-rewrite', '1.3.3', :require => false - - # analytics - gem 'rack-google-analytics', '0.11.0', :require => 'rack/google-analytics' - gem 'rack-piwik', '0.1.3', :require => 'rack/piwik', :require => false - -end - - -# database - -gem "activerecord-import", "0.3.1" -gem 'foreigner', '1.3.0' -gem 'mysql2', '0.3.11' if ENV['DB'].nil? || ENV['DB'] == 'all' || ENV['DB'] == 'mysql' -gem 'pg', '0.14.1' if ENV['DB'] == 'all' || ENV['DB'] == 'postgres' -gem 'sqlite3' if ENV['DB'] == 'all' || ENV['DB'] == 'sqlite' - -# file uploading - -gem 'carrierwave', '0.8.0' -gem 'fog', '1.9.0' -gem 'mini_magick', '3.5' - -# JSON and API - -gem 'json', '1.7.7' -gem 'acts_as_api', '0.4.1 ' - -# localization - -gem 'i18n-inflector-rails', '~> 1.0' -gem 'rails-i18n', '0.7.2' - -# parsing - -gem 'nokogiri', '1.5.6' -gem 'redcarpet', "2.2.2" -gem 'roxml', '3.1.6' -gem 'ruby-oembed', '0.8.8' - -# queue - -gem 'resque', '1.23.0' +gem 'resque', '1.23.0' gem 'resque-timeout', '1.0.0' -# tags +# Configuration + +gem 'configurate', '0.0.2' + +# Cross-origin resource sharing + +gem 'rack-cors', '0.2.7', :require => 'rack/cors' + +# Database + +ENV['DB'] ||= ['production', 'test'].include?(ENV['RAILS_ENV']) ? 'mysql' : 'all' + +gem 'mysql2', '0.3.11' if ENV['DB'] == 'all' || ENV['DB'] == 'mysql' +gem 'pg', '0.14.1' if ENV['DB'] == 'all' || ENV['DB'] == 'postgres' + +gem 'activerecord-import', '0.3.1' +gem 'foreigner', '1.3.0' + +# File uploading + +gem 'carrierwave', '0.8.0' +gem 'fog', '1.9.0' +gem 'mini_magick', '3.5' +gem 'remotipart', '1.0.5' + +# Localization + +gem 'http_accept_language', '1.0.2' +gem 'i18n-inflector-rails', '~> 1.0' +gem 'rails-i18n', '0.7.2' + +# Mail + +gem 'markerb', '1.0.1' +gem 'messagebus_ruby_api', '1.0.3' + +# Parsing + +gem 'nokogiri', '1.5.6' +gem 'rails_autolink', '1.0.9' +gem 'redcarpet', '2.2.2' +gem 'roxml', '3.1.6' +gem 'ruby-oembed', '0.8.8' + +# Services + +gem 'omniauth', '1.1.3' +gem 'omniauth-facebook', '1.4.1' +gem 'omniauth-tumblr', '1.1' +gem 'omniauth-twitter', '0.0.14' +gem 'twitter', '4.5.0' + +# Tags gem 'acts-as-taggable-on', '2.3.3' # URIs and HTTP -gem 'addressable', '2.3.2', :require => 'addressable/uri' -gem 'http_accept_language', '1.0.2' -gem 'typhoeus', '0.3.3' +gem 'addressable', '2.3.2', :require => 'addressable/uri' +gem 'faraday', '0.8.5' +gem 'faraday_middleware', '0.9.0' +gem 'typhoeus', '0.3.3' -# views +# Views -gem 'haml', '4.0.0' -gem 'mobile-fu', '1.1.1' - -gem 'will_paginate', '3.0.4' gem 'client_side_validations', '3.2.1' -gem 'gon', '4.0.2' +gem 'gon', '4.0.2' +gem 'haml', '4.0.0' +gem 'mobile-fu', '1.1.1' +gem 'will_paginate', '3.0.4' -# assets + +### GROUPS #### group :assets do + + # CSS + gem 'bootstrap-sass', '2.2.2.0' - gem 'sass-rails', '3.2.6' - gem 'compass-rails', '1.0.3' + gem 'compass-rails', '1.0.3' + gem 'sass-rails', '3.2.6' + + # Compression + + gem 'uglifier', '1.3.0' + + # JavaScript + + gem 'handlebars_assets', '0.11.0' + gem 'jquery-rails', '2.1.4' # Windows and OSX have an execjs compatible runtime built-in, Linux users should # install Node.js or use 'therubyracer'. @@ -117,56 +117,83 @@ group :assets do # See https://github.com/sstephenson/execjs#readme for more supported runtimes # gem 'therubyracer', :platform => :ruby - - gem 'handlebars_assets', '0.11.0' - gem 'uglifier', '1.3.0' - - gem "asset_sync", '0.5.4', :require => false end -gem 'jquery-rails', '2.1.4' +group :production do # we don't install these on travis to speed up test runs -# web + # Administration -gem 'faraday', '0.8.5' -gem 'faraday_middleware', '0.9.0' + gem 'rails_admin', '0.4.5' + # Analytics -gem 'jasmine', '1.3.1' + gem 'rack-google-analytics', '0.11.0', :require => 'rack/google-analytics' + gem 'rack-piwik', '0.1.3', :require => 'rack/piwik' -### GROUPS #### + # Click-jacking protection -group :test do + gem 'rack-protection', '1.2' + # Process management - gem 'capybara', '1.1.3' - gem 'cucumber-rails', '1.3.0', :require => false - gem 'database_cleaner', '0.9.1' + gem 'foreman', '0.61' - gem 'timecop', '0.5.9.2' - gem 'factory_girl_rails', '4.2.1' - gem 'fixture_builder', '0.3.5' - gem 'fuubar', '1.1.0' - gem 'rspec-instafail', '0.2.4', :require => false - gem 'selenium-webdriver', '2.30.0' + # Redirects - gem 'webmock', '1.8.11', :require => false + gem 'rack-rewrite', '1.3.3', :require => false + gem 'rack-ssl', '1.3.3', :require => 'rack/ssl' - gem 'spork', '1.0.0rc3' - gem 'guard-rspec', '2.4.0' - gem 'guard-spork', '1.4.2' - gem 'guard-cucumber', '1.3.2' - gem 'rb-inotify', '0.9.0', :require => false - gem 'rb-fsevent', '0.9.3', :require => false -end + # Third party asset hosting -group :test, :development do - gem "rspec-rails", "2.12.2" + gem 'asset_sync', '0.5.4', :require => false end group :development do - gem 'capistrano', '2.12.0', :require => false - gem 'capistrano_colors', '0.5.5', :require => false + # Deployment + + gem 'capistrano', '2.12.0', :require => false + gem 'capistrano_colors', '0.5.5', :require => false + + # Comparison images gem 'rmagick', '2.13.2', :require => false + + # Automatic test runs + + gem 'guard-cucumber', '1.3.2' + gem 'guard-rspec', '2.4.0' + gem 'rb-fsevent', '0.9.3', :require => false + gem 'rb-inotify', '0.9.0', :require => false + + # Preloading environment + + gem 'guard-spork', '1.4.2' + gem 'spork', '1.0.0rc3' +end + +group :test do + # RSpec (unit tests, some integration tests) + + gem 'fixture_builder', '0.3.5' + gem 'fuubar', '1.1.0' + gem 'rspec-instafail', '0.2.4', :require => false + gem 'rspec-rails', '2.12.2' + + # Cucumber (integration tests) + + gem 'capybara', '1.1.3' + gem 'cucumber-rails', '1.3.0', :require => false + gem 'database_cleaner', '0.9.1' + gem 'selenium-webdriver', '2.30.0' + + + # Jasmine (client side application tests (JS)) + + gem 'jasmine', '1.3.1' + + # General helpers + + gem 'factory_girl_rails', '4.2.1' + gem 'timecop', '0.5.9.2' + gem 'webmock', '1.8.11', :require => false end diff --git a/Gemfile.lock b/Gemfile.lock index e4789bb5f..35460f414 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -249,6 +249,7 @@ GEM multi_json (~> 1.3) omniauth-oauth (~> 1.0) orm_adapter (0.4.0) + pg (0.14.1) polyglot (0.3.3) pry (0.9.12) coderay (~> 1.0.5) @@ -456,6 +457,7 @@ DEPENDENCIES omniauth-facebook (= 1.4.1) omniauth-tumblr (= 1.1) omniauth-twitter (= 0.0.14) + pg (= 0.14.1) rack-cors (= 0.2.7) rack-google-analytics (= 0.11.0) rack-piwik (= 0.1.3) diff --git a/features/support/env.rb b/features/support/env.rb index 78533829a..ac4b44c54 100644 --- a/features/support/env.rb +++ b/features/support/env.rb @@ -1,9 +1,6 @@ require 'rubygems' -require 'spork' -#uncomment the following line to use spork with the debugger -#require 'spork/ext/ruby-debug' -Spork.prefork do +prefork = proc do ENV["RAILS_ENV"] ||= "test" require 'cucumber/rails' @@ -68,7 +65,7 @@ Spork.prefork do end end -Spork.each_run do +each_run = proc do Before do DatabaseCleaner.clean Devise.mailer.deliveries = [] @@ -93,6 +90,18 @@ Spork.each_run do end end +begin + require 'spork' + #uncomment the following line to use spork with the debugger + #require 'spork/ext/ruby-debug' + + Spork.prefork(&prefork) + Spork.each_run(&each_run) +rescue LoadError + prefork.call + each_run.call +end + # give firefox more time to complete requests # http://ihswebdesign.com/knowledge-base/fixing-selenium-timeouterror/ After do |scenario| diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index c58952587..337a8de0d 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -3,11 +3,8 @@ # the COPYRIGHT file. require 'rubygems' -require 'spork' -#uncomment the following line to use spork with the debugger -#require 'spork/ext/ruby-debug' -Spork.prefork do +prefork = proc do # Loading more in this block will cause your tests to run faster. However, # if you change any configuration or code from libraries loaded here, you'll # need to restart spork for it take effect. @@ -98,6 +95,16 @@ Spork.prefork do end end +begin + require 'spork' + #uncomment the following line to use spork with the debugger + #require 'spork/ext/ruby-debug' + + Spork.prefork(&prefork) +rescue LoadError + prefork.call +end + # https://makandracards.com/makandra/950-speed-up-rspec-by-deferring-garbage-collection RSpec.configure do |config| config.before(:all) do