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
gem "webmock"
23

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

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

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

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

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

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

44
group :doc do
R
Robin Dupret 已提交
45
  gem "sdoc", "~> 1.0"
46 47
  gem "redcarpet", "~> 3.2.3", platforms: :ruby
  gem "w3c_validators"
48
  gem "kindlerb", "~> 1.2.0"
49
end
50

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

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

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

78 79
# Action Cable
group :cable do
80
  gem "puma", require: false
81

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

85
  gem "redis-namespace"
86

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

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

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

  gem "mini_magick"
end

103 104 105 106 107
group :ujs do
  gem "qunit-selenium"
  gem "chromedriver-helper"
end

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

112
group :test do
113
  gem "minitest-bisect"
114

115
  platforms :mri do
116 117
    gem "stackprof"
    gem "byebug"
118 119
  end

120
  gem "benchmark-ips"
121 122
end

123
platforms :ruby, :mswin, :mswin64, :mingw, :x64_mingw do
124
  gem "nokogiri", ">= 1.8.1"
A
Arun Agrawal 已提交
125

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

129
  # Active Record.
130
  gem "sqlite3", "~> 1.3.6"
131 132

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

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

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

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

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