Gemfile 4.6 KB
Newer Older
1
source "https://rubygems.org"
2

3 4 5 6 7
git_source(:github) do |repo_name|
  repo_name = "#{repo_name}/#{repo_name}" unless repo_name.include?("/")
  "https://github.com/#{repo_name}.git"
end

8 9
gemspec

10
# We need a newish Rake since Active Job sets its test tasks' descriptions.
11
gem "rake", ">= 11.1"
12

S
Sarah A 已提交
13
# This needs to be with require false to ensure correct loading order, as it has to
14
# be loaded after loading the test library.
15
gem "mocha", "~> 0.14", require: false
16

17 18 19 20 21
gem "rack-cache", "~> 1.2"
gem "jquery-rails"
gem "coffee-rails"
gem "sass-rails"
gem "turbolinks", "~> 5"
22

T
T.J. Schuck 已提交
23
# require: false so bcrypt is loaded only when has_secure_password is used.
24
# This is to avoid Active Model (and by extension the entire framework)
T
T.J. Schuck 已提交
25
# being dependent on a binary library.
26
gem "bcrypt", "~> 3.1.11", require: false
T
T.J. Schuck 已提交
27

28 29
# This needs to be with require false to avoid it being automatically loaded by
# sprockets.
30
gem "uglifier", ">= 1.3.0", require: false
31

32
# Track stable branch of sass because it doesn't have circular require warnings.
33
gem "sass", github: "sass/sass", branch: "stable", require: false
34

35
# FIXME: Remove this fork after https://github.com/nex3/rb-inotify/pull/49 is fixed.
36
gem "rb-inotify", github: "matthewd/rb-inotify", branch: "close-handling", require: false
37

A
Akira Matsuda 已提交
38 39 40
# Explicitly avoid 1.x that doesn't support Ruby 2.4+
gem "json", ">= 2.0.0"

K
Kir Shatrov 已提交
41 42
gem "rubocop", require: false

43
group :doc do
44
  gem "sdoc", "1.0.0.beta2"
45 46
  gem "redcarpet", "~> 3.2.3", platforms: :ruby
  gem "w3c_validators"
47
  gem "kindlerb", "~> 1.2.0"
48
end
49

50
# Active Support.
51
gem "dalli", ">= 2.2.1"
52
gem "listen", ">= 3.0.5", "< 3.2", require: false
53
gem "libxml-ruby", platforms: :ruby
54

55
# Active Job.
56
group :job do
57
  gem "resque", github: "resque/resque", require: false
58 59 60
  gem "resque-scheduler", require: false
  gem "sidekiq", require: false
  gem "sucker_punch", require: false
61 62
  gem "delayed_job", require: false, github: "collectiveidea/delayed_job"
  gem "queue_classic", github: "QueueClassic/queue_classic", branch: "master", require: false, platforms: :ruby
63 64 65
  gem "sneakers", require: false
  gem "que", require: false
  gem "backburner", require: false
66 67
  #TODO: add qu after it support Rails 5.1
  # gem 'qu-rails', github: "bkeepers/qu", branch: "master", require: false
68
  gem "qu-redis", require: false
69
  gem "delayed_job_active_record", require: false, github: "collectiveidea/delayed_job_active_record"
70
  gem "sequel", require: false
71
end
72

73 74
# Action Cable
group :cable do
75
  gem "puma", require: false
76

77 78 79
  gem "em-hiredis", require: false
  gem "hiredis", require: false
  gem "redis", require: false
80

81
  gem "websocket-client-simple", github: "matthewd/websocket-client-simple", branch: "close-race", require: false
82

83 84
  gem "blade", require: false, platforms: [:ruby]
  gem "blade-sauce_labs_plugin", require: false, platforms: [:ruby]
85 86
end

87
# Add your own local bundler stuff.
B
Bogdan Gusiev 已提交
88
local_gemfile = File.dirname(__FILE__) + "/.Gemfile"
89
instance_eval File.read local_gemfile if File.exist? local_gemfile
90

91
group :test do
92
  # FIX: Our test suite isn't ready to run in random order yet.
93
  gem "minitest", "< 5.3.4"
94

95
  platforms :mri do
96 97
    gem "stackprof"
    gem "byebug"
98 99
  end

100
  gem "benchmark-ips"
101 102
end

103
platforms :ruby, :mswin, :mswin64, :mingw, :x64_mingw do
104
  gem "nokogiri", ">= 1.6.8"
A
Arun Agrawal 已提交
105

106
  # Needed for compiling the ActionDispatch::Journey parser.
107
  gem "racc", ">=1.4.6", require: false
108

109
  # Active Record.
110
  gem "sqlite3", "~> 1.3.6"
111 112

  group :db do
113 114
    gem "pg", ">= 0.18.0"
    gem "mysql2", ">= 0.4.4"
115
  end
116 117 118
end

platforms :jruby do
119
  if ENV["AR_JDBC"]
120
    gem "activerecord-jdbcsqlite3-adapter", github: "jruby/activerecord-jdbc-adapter", branch: "master"
121
    group :db do
122 123
      gem "activerecord-jdbcmysql-adapter", github: "jruby/activerecord-jdbc-adapter", branch: "master"
      gem "activerecord-jdbcpostgresql-adapter", github: "jruby/activerecord-jdbc-adapter", branch: "master"
124 125
    end
  else
126
    gem "activerecord-jdbcsqlite3-adapter", ">= 1.3.0"
127
    group :db do
128 129
      gem "activerecord-jdbcmysql-adapter", ">= 1.3.0"
      gem "activerecord-jdbcpostgresql-adapter", ">= 1.3.0"
130
    end
131
  end
132
end
133

134
platforms :rbx do
135 136
  # The rubysl-yaml gem doesn't ship with Psych by default as it needs
  # libyaml that isn't always available.
137
  gem "psych", "~> 2.0"
138 139
end

140
# Gems that are necessary for Active Record tests with Oracle.
141
if ENV["ORACLE_ENHANCED"]
142
  platforms :ruby do
143
    gem "ruby-oci8", "~> 2.2"
144
  end
145
  gem "activerecord-oracle_enhanced-adapter", github: "rsim/oracle-enhanced", branch: "master"
146
end
147

148
# A gem necessary for Active Record tests with IBM DB.
149 150 151
gem "ibm_db" if ENV["IBM_DB"]
gem "tzinfo-data", platforms: [:mingw, :mswin, :x64_mingw, :jruby]
gem "wdm", ">= 0.1.0", platforms: [:mingw, :mswin, :x64_mingw, :mswin64]