Gemfile 4.7 KB
Newer Older
1 2
# frozen_string_literal: true

3
source "https://rubygems.org"
4

K
Koichi ITO 已提交
5
git_source(:github) { |repo| "https://github.com/#{repo}.git" }
6

7 8
gemspec

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

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

16
gem "capybara", "~> 2.15"
E
eileencodes 已提交
17

18 19
gem "rack-cache", "~> 1.2"
gem "coffee-rails"
R
Rafael Mendonça França 已提交
20
gem "sass-rails"
21
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

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

T
toshimaru 已提交
35
gem "rubocop", ">= 0.47", require: false
K
Kir Shatrov 已提交
36

M
Matthew Draper 已提交
37
# https://github.com/guard/rb-inotify/pull/79
38 39
gem "rb-inotify", github: "matthewd/rb-inotify", branch: "close-handling", require: false

40 41 42
# https://github.com/puma/puma/pull/1345
gem "stopgap_13632", platforms: :mri if RUBY_VERSION == "2.2.8"

43
group :doc do
44
  gem "sdoc", github: "robin850/sdoc", branch: "upgrade"
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

B
Burke Libbey 已提交
55 56 57
# for railties app_generator_test
gem "bootsnap", ">= 1.1.0", require: false

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

76 77
# Action Cable
group :cable do
78
  gem "puma", require: false
79

80
  gem "hiredis", require: false
J
Jeremy Daer 已提交
81 82
  gem "redis", "~> 4.0", require: false

83
  gem "redis-namespace"
84

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

87 88
  gem "blade", require: false, platforms: [:ruby]
  gem "blade-sauce_labs_plugin", require: false, platforms: [:ruby]
89
  gem "sprockets-export", require: false
90 91
end

O
Olivier 已提交
92
# Active Storage
93
group :storage do
Y
Yuji Yaginuma 已提交
94
  gem "aws-sdk-s3", require: false
95
  gem "google-cloud-storage", "~> 1.3", require: false
96
  gem "azure-storage", require: false
97 98 99 100

  gem "mini_magick"
end

101 102 103 104 105
group :ujs do
  gem "qunit-selenium"
  gem "chromedriver-helper"
end

106
# Add your own local bundler stuff.
B
bogdanvlviv 已提交
107
local_gemfile = File.expand_path(".Gemfile", __dir__)
108
instance_eval File.read local_gemfile if File.exist? local_gemfile
109

110
group :test do
111
  gem "minitest-bisect"
112

113
  platforms :mri do
114 115
    gem "stackprof"
    gem "byebug"
116 117
  end

118
  gem "benchmark-ips"
119 120
end

121
platforms :ruby, :mswin, :mswin64, :mingw, :x64_mingw do
122
  gem "nokogiri", ">= 1.6.8"
A
Arun Agrawal 已提交
123

124
  # Needed for compiling the ActionDispatch::Journey parser.
125
  gem "racc", ">=1.4.6", require: false
126

127
  # Active Record.
128
  gem "sqlite3", "~> 1.3.6"
129 130

  group :db do
131 132
    gem "pg", ">= 0.18.0"
    gem "mysql2", ">= 0.4.4"
133
  end
134 135 136
end

platforms :jruby do
137
  if ENV["AR_JDBC"]
138
    gem "activerecord-jdbcsqlite3-adapter", github: "jruby/activerecord-jdbc-adapter", branch: "master"
139
    group :db do
140 141
      gem "activerecord-jdbcmysql-adapter", github: "jruby/activerecord-jdbc-adapter", branch: "master"
      gem "activerecord-jdbcpostgresql-adapter", github: "jruby/activerecord-jdbc-adapter", branch: "master"
142 143
    end
  else
144
    gem "activerecord-jdbcsqlite3-adapter", ">= 1.3.0"
145
    group :db do
146 147
      gem "activerecord-jdbcmysql-adapter", ">= 1.3.0"
      gem "activerecord-jdbcpostgresql-adapter", ">= 1.3.0"
148
    end
149
  end
150
end
151

152
platforms :rbx do
153 154
  # The rubysl-yaml gem doesn't ship with Psych by default as it needs
  # libyaml that isn't always available.
155
  gem "psych", "~> 2.0"
156 157
end

158
# Gems that are necessary for Active Record tests with Oracle.
159
if ENV["ORACLE_ENHANCED"]
160
  platforms :ruby do
161
    gem "ruby-oci8", "~> 2.2"
162
  end
163
  gem "activerecord-oracle_enhanced-adapter", github: "rsim/oracle-enhanced", branch: "master"
164
end
165

166
# A gem necessary for Active Record tests with IBM DB.
167 168 169
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]