2017-08-13 13:14:22 +00:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2016-08-06 17:23:19 +00:00
|
|
|
source "https://rubygems.org"
|
2010-02-01 00:33:06 +00:00
|
|
|
|
2017-08-07 08:46:00 +00:00
|
|
|
git_source(:github) { |repo| "https://github.com/#{repo}.git" }
|
2016-09-14 00:19:09 +00:00
|
|
|
|
2010-12-18 18:42:03 +00:00
|
|
|
gemspec
|
|
|
|
|
2014-09-14 08:21:55 +00:00
|
|
|
# We need a newish Rake since Active Job sets its test tasks' descriptions.
|
2016-08-06 17:23:19 +00:00
|
|
|
gem "rake", ">= 11.1"
|
2014-09-14 08:21:55 +00:00
|
|
|
|
2018-04-10 20:37:17 +00:00
|
|
|
gem "capybara", ">= 2.15"
|
2017-02-19 16:50:42 +00:00
|
|
|
|
2016-08-06 17:23:19 +00:00
|
|
|
gem "rack-cache", "~> 1.2"
|
2017-11-14 19:42:12 +00:00
|
|
|
gem "sass-rails"
|
2016-08-06 17:23:19 +00:00
|
|
|
gem "turbolinks", "~> 5"
|
Make Webpacker the default JavaScript compiler for Rails 6 (#33079)
* Use Webpacker by default on new apps
* Stop including coffee-rails by default
* Drop using a js_compressor by default
* Drop extra test for coffeescript inclusion by default
* Stick with skip_javascript to signify skipping webpack
* Don't install a JS runtime by default any more
* app/javascript will be the new default directory for JS
* Make it clear that this is just for configuring the default Webpack framework setup now
* Start using the Webpack tag in the default layout
* Irrelevant test
* jQuery is long gone
* Stop having asset pipeline compile default application.js
* Add rails-ujs by default to the Webpack setup
* Add Active Storage JavaScript to application.js pack by default
* Consistent quoting
* Add Turbolinks to default pack
* Add Action Cable to default pack
Need some work on how to set the global consumer that channels will
work with. @javan?
* Require all channels by default and use a separate consumer stub
* Channel generator now targets Webpack style
* Update task docs to match new generator style
* Use uniform import style
* Drop the JS assets generator
It was barely helpful as it was. It’s no longer helpful in a Webpacked
world. Sayonara!
* Add app/javascript to the stats directories
* Simpler import style
Which match the other imports.
* Address test failures from dropping JS compilation (and compression)
* webpacker-default: Modify `AssetsGeneratorTest`
Before:
```
$ bin/test test/generators/assets_generator_test.rb
Run options: --seed 46201
F
Failure:
AssetsGeneratorTest#test_assets [/Users/ttanimichi/ghq/github.com/ttanimichi/rails/railties/test/generators/assets_generator_test.rb:12]:
Expected file "app/assets/javascripts/posts.js" to exist, but does not
bin/test /Users/ttanimichi/ghq/github.com/ttanimichi/rails/railties/test/generators/assets_generator_test.rb:10
.
Finished in 0.031343s, 63.8101 runs/s, 95.7152 assertions/s.
2 runs, 3 assertions, 1 failures, 0 errors, 0 skips
```
After:
```
$ bin/test test/generators/assets_generator_test.rb
Run options: --seed 43571
..
Finished in 0.030370s, 65.8545 runs/s, 65.8545 assertions/s.
2 runs, 2 assertions, 0 failures, 0 errors, 0 skips
```
* webpacker-default: Modify `ChannelGeneratorTest`
Before:
```
$ bin/test test/generators/channel_generator_test.rb
Run options: --seed 8986
.F
Failure:
ChannelGeneratorTest#test_channel_with_multiple_actions_is_created [/Users/ttanimichi/ghq/github.com/ttanimichi/rails/railties/test/generators/channel_generator_test.rb:43]:
Expected file "app/assets/javascripts/channels/chat.js" to exist, but does not
bin/test /Users/ttanimichi/ghq/github.com/ttanimichi/rails/railties/test/generators/channel_generator_test.rb:34
.F
Failure:
ChannelGeneratorTest#test_channel_is_created [/Users/ttanimichi/ghq/github.com/ttanimichi/rails/railties/test/generators/channel_generator_test.rb:29]:
Expected file "app/assets/javascripts/channels/chat.js" to exist, but does not
bin/test /Users/ttanimichi/ghq/github.com/ttanimichi/rails/railties/test/generators/channel_generator_test.rb:22
E
Error:
ChannelGeneratorTest#test_cable_js_is_created_if_not_present_already:
Errno::ENOENT: No such file or directory @ apply2files - /Users/ttanimichi/ghq/github.com/ttanimichi/rails/railties/test/fixtures/tmp/app/assets/javascripts/cable.js
bin/test /Users/ttanimichi/ghq/github.com/ttanimichi/rails/railties/test/generators/channel_generator_test.rb:60
F
Failure:
ChannelGeneratorTest#test_channel_suffix_is_not_duplicated [/Users/ttanimichi/ghq/github.com/ttanimichi/rails/railties/test/generators/channel_generator_test.rb:87]:
Expected file "app/assets/javascripts/channels/chat.js" to exist, but does not
bin/test /Users/ttanimichi/ghq/github.com/ttanimichi/rails/railties/test/generators/channel_generator_test.rb:80
F
Failure:
ChannelGeneratorTest#test_channel_on_revoke [/Users/ttanimichi/ghq/github.com/ttanimichi/rails/railties/test/generators/channel_generator_test.rb:77]:
Expected file "app/assets/javascripts/cable.js" to exist, but does not
bin/test /Users/ttanimichi/ghq/github.com/ttanimichi/rails/railties/test/generators/channel_generator_test.rb:68
Finished in 0.064384s, 108.7227 runs/s, 481.4861 assertions/s.
7 runs, 31 assertions, 4 failures, 1 errors, 0 skips
```
After:
```
$ bin/test test/generators/channel_generator_test.rb
Run options: --seed 44857
.......
Finished in 0.060243s, 116.1961 runs/s, 697.1764 assertions/s.
7 runs, 42 assertions, 0 failures, 0 errors, 0 skips
```
* Fix shared generator tests.
* webpacker-default: Modify `ControllerGeneratorTest`
The JS assets generator was dropped. ref. https://github.com/rails/rails/commit/46215b179483d3e4d264555f5a4952f43eb8142a
* Revert "Simpler import style". It's currently failing with an error of "TypeError: undefined is not an object (evaluating '__WEBPACK_IMPORTED_MODULE_2_activestorage___default.a.start')". Waiting for @javan to have a look.
This reverts commit 5d3ebb71059f635d3756cbda4ab9752027e09256.
* require webpacker in test app
* Add webpacker without making the build hang/timeout. (#33640)
* use yarn workspaces to allow for installing unreleased packages and only generate js/bootsnap when required
* no longer need to have webpacker in env templates as webpacker moved this config to yml file
* Fix rubocop violation
* Got the test passing for the running scaffold
* update expected lines of code
* update middleware tests to account for webpacker
* disable js in plugins be default to get the tests passing (#34009)
* clear codeclimate report issues
* Anything newer than currently released is good
* Use Webpacker development version during development of Rails
* Edge should get development webpacker as well
* Add changelog entry for Webpacker change
2018-10-01 05:31:21 +00:00
|
|
|
gem "webpacker", github: "rails/webpacker", require: ENV["SKIP_REQUIRE_WEBPACKER"] != "true"
|
2014-02-21 20:58:09 +00:00
|
|
|
# require: false so bcrypt is loaded only when has_secure_password is used.
|
2015-10-12 11:48:04 +00:00
|
|
|
# This is to avoid Active Model (and by extension the entire framework)
|
2014-02-21 20:58:09 +00:00
|
|
|
# being dependent on a binary library.
|
2016-08-06 17:23:19 +00:00
|
|
|
gem "bcrypt", "~> 3.1.11", require: false
|
2014-02-21 20:58:09 +00:00
|
|
|
|
2015-10-12 11:48:04 +00:00
|
|
|
# This needs to be with require false to avoid it being automatically loaded by
|
|
|
|
# sprockets.
|
2016-08-06 17:23:19 +00:00
|
|
|
gem "uglifier", ">= 1.3.0", require: false
|
2015-09-30 14:42:31 +00:00
|
|
|
|
2016-11-15 00:26:03 +00:00
|
|
|
# Explicitly avoid 1.x that doesn't support Ruby 2.4+
|
|
|
|
gem "json", ">= 2.0.0"
|
|
|
|
|
2017-01-16 06:34:30 +00:00
|
|
|
gem "rubocop", ">= 0.47", require: false
|
2016-11-28 03:12:33 +00:00
|
|
|
|
2017-08-29 09:24:13 +00:00
|
|
|
# https://github.com/guard/rb-inotify/pull/79
|
2017-07-19 17:43:12 +00:00
|
|
|
gem "rb-inotify", github: "matthewd/rb-inotify", branch: "close-handling", require: false
|
|
|
|
|
2011-01-12 20:15:57 +00:00
|
|
|
group :doc do
|
2018-02-06 18:49:15 +00:00
|
|
|
gem "sdoc", "~> 1.0"
|
2016-08-06 17:23:19 +00:00
|
|
|
gem "redcarpet", "~> 3.2.3", platforms: :ruby
|
|
|
|
gem "w3c_validators"
|
2016-12-18 15:13:50 +00:00
|
|
|
gem "kindlerb", "~> 1.2.0"
|
2011-01-12 20:15:57 +00:00
|
|
|
end
|
2009-11-10 22:59:22 +00:00
|
|
|
|
2015-10-12 11:48:04 +00:00
|
|
|
# Active Support.
|
2018-04-11 07:52:10 +00:00
|
|
|
gem "dalli"
|
2016-10-03 11:28:17 +00:00
|
|
|
gem "listen", ">= 3.0.5", "< 3.2", require: false
|
2016-11-19 15:46:28 +00:00
|
|
|
gem "libxml-ruby", platforms: :ruby
|
2017-12-14 15:05:13 +00:00
|
|
|
gem "connection_pool", require: false
|
2010-07-25 22:31:45 +00:00
|
|
|
|
2017-06-01 18:28:51 +00:00
|
|
|
# for railties app_generator_test
|
|
|
|
gem "bootsnap", ">= 1.1.0", require: false
|
|
|
|
|
2015-10-12 11:48:04 +00:00
|
|
|
# Active Job.
|
2014-08-20 02:21:39 +00:00
|
|
|
group :job do
|
2017-02-10 06:31:41 +00:00
|
|
|
gem "resque", require: false
|
2017-12-13 22:49:08 +00:00
|
|
|
gem "resque-scheduler", require: false
|
2017-10-09 11:49:55 +00:00
|
|
|
gem "sidekiq", require: false
|
2016-08-06 17:23:19 +00:00
|
|
|
gem "sucker_punch", require: false
|
2017-12-29 21:57:28 +00:00
|
|
|
gem "delayed_job", require: false
|
2018-01-11 19:37:27 +00:00
|
|
|
gem "queue_classic", github: "rafaelfranca/queue_classic", branch: "update-pg", require: false, platforms: :ruby
|
2016-08-06 17:23:19 +00:00
|
|
|
gem "sneakers", require: false
|
|
|
|
gem "que", require: false
|
|
|
|
gem "backburner", require: false
|
2017-01-29 00:05:06 +00:00
|
|
|
gem "delayed_job_active_record", require: false
|
2016-08-06 17:23:19 +00:00
|
|
|
gem "sequel", require: false
|
2014-08-20 02:21:39 +00:00
|
|
|
end
|
2014-08-12 09:29:21 +00:00
|
|
|
|
2015-12-14 15:38:37 +00:00
|
|
|
# Action Cable
|
|
|
|
group :cable do
|
2016-08-06 17:23:19 +00:00
|
|
|
gem "puma", require: false
|
2016-01-24 10:43:40 +00:00
|
|
|
|
2016-08-06 17:23:19 +00:00
|
|
|
gem "hiredis", require: false
|
2017-09-29 04:54:00 +00:00
|
|
|
gem "redis", "~> 4.0", require: false
|
|
|
|
|
2017-11-08 08:08:23 +00:00
|
|
|
gem "redis-namespace"
|
2016-01-24 17:25:53 +00:00
|
|
|
|
2016-10-06 01:11:18 +00:00
|
|
|
gem "websocket-client-simple", github: "matthewd/websocket-client-simple", branch: "close-race", require: false
|
2016-05-31 14:44:09 +00:00
|
|
|
|
2016-08-06 17:23:19 +00:00
|
|
|
gem "blade", require: false, platforms: [:ruby]
|
|
|
|
gem "blade-sauce_labs_plugin", require: false, platforms: [:ruby]
|
2017-03-11 17:33:11 +00:00
|
|
|
gem "sprockets-export", require: false
|
2015-12-14 15:38:37 +00:00
|
|
|
end
|
|
|
|
|
2017-10-11 19:31:54 +00:00
|
|
|
# Active Storage
|
2017-07-31 20:53:09 +00:00
|
|
|
group :storage do
|
2017-09-10 03:22:10 +00:00
|
|
|
gem "aws-sdk-s3", require: false
|
2018-05-02 03:20:56 +00:00
|
|
|
gem "google-cloud-storage", "~> 1.11", require: false
|
2017-08-02 18:13:11 +00:00
|
|
|
gem "azure-storage", require: false
|
2017-07-31 20:53:09 +00:00
|
|
|
|
2018-04-05 23:48:29 +00:00
|
|
|
gem "image_processing", "~> 1.2"
|
2017-07-31 20:53:09 +00:00
|
|
|
end
|
|
|
|
|
2017-10-19 16:01:52 +00:00
|
|
|
group :ujs do
|
|
|
|
gem "qunit-selenium"
|
|
|
|
gem "chromedriver-helper"
|
|
|
|
end
|
|
|
|
|
2015-10-12 11:48:04 +00:00
|
|
|
# Add your own local bundler stuff.
|
2017-05-15 14:17:28 +00:00
|
|
|
local_gemfile = File.expand_path(".Gemfile", __dir__)
|
2013-11-01 09:39:06 +00:00
|
|
|
instance_eval File.read local_gemfile if File.exist? local_gemfile
|
2010-11-05 21:11:58 +00:00
|
|
|
|
2013-03-11 18:48:30 +00:00
|
|
|
group :test do
|
2017-07-15 19:19:13 +00:00
|
|
|
gem "minitest-bisect"
|
2018-10-10 22:33:09 +00:00
|
|
|
gem "minitest-retry"
|
2014-05-16 16:18:21 +00:00
|
|
|
|
2015-04-01 20:09:58 +00:00
|
|
|
platforms :mri do
|
2016-08-06 17:23:19 +00:00
|
|
|
gem "stackprof"
|
|
|
|
gem "byebug"
|
2014-11-17 14:39:32 +00:00
|
|
|
end
|
|
|
|
|
2016-08-06 17:23:19 +00:00
|
|
|
gem "benchmark-ips"
|
2011-07-22 12:55:48 +00:00
|
|
|
end
|
|
|
|
|
2015-12-16 16:31:44 +00:00
|
|
|
platforms :ruby, :mswin, :mswin64, :mingw, :x64_mingw do
|
2017-12-14 18:06:53 +00:00
|
|
|
gem "nokogiri", ">= 1.8.1"
|
2011-05-05 17:47:07 +00:00
|
|
|
|
2015-10-12 11:48:04 +00:00
|
|
|
# Needed for compiling the ActionDispatch::Journey parser.
|
2016-08-06 17:23:19 +00:00
|
|
|
gem "racc", ">=1.4.6", require: false
|
2013-02-26 05:10:03 +00:00
|
|
|
|
2015-10-12 11:48:04 +00:00
|
|
|
# Active Record.
|
2016-08-06 17:23:19 +00:00
|
|
|
gem "sqlite3", "~> 1.3.6"
|
2010-05-19 20:38:27 +00:00
|
|
|
|
|
|
|
group :db do
|
2018-09-15 07:07:03 +00:00
|
|
|
gem "pg", ">= 0.18.0"
|
2018-02-15 18:12:58 +00:00
|
|
|
gem "mysql2", ">= 0.4.10"
|
2010-05-19 20:38:27 +00:00
|
|
|
end
|
2010-07-25 22:31:45 +00:00
|
|
|
end
|
|
|
|
|
|
|
|
platforms :jruby do
|
2016-08-06 17:23:19 +00:00
|
|
|
if ENV["AR_JDBC"]
|
2016-09-14 00:19:09 +00:00
|
|
|
gem "activerecord-jdbcsqlite3-adapter", github: "jruby/activerecord-jdbc-adapter", branch: "master"
|
2013-09-03 06:33:00 +00:00
|
|
|
group :db do
|
2016-09-14 00:19:09 +00:00
|
|
|
gem "activerecord-jdbcmysql-adapter", github: "jruby/activerecord-jdbc-adapter", branch: "master"
|
|
|
|
gem "activerecord-jdbcpostgresql-adapter", github: "jruby/activerecord-jdbc-adapter", branch: "master"
|
2013-09-03 06:33:00 +00:00
|
|
|
end
|
|
|
|
else
|
2016-08-06 17:23:19 +00:00
|
|
|
gem "activerecord-jdbcsqlite3-adapter", ">= 1.3.0"
|
2013-09-03 06:33:00 +00:00
|
|
|
group :db do
|
2016-08-06 17:23:19 +00:00
|
|
|
gem "activerecord-jdbcmysql-adapter", ">= 1.3.0"
|
|
|
|
gem "activerecord-jdbcpostgresql-adapter", ">= 1.3.0"
|
2013-09-03 06:33:00 +00:00
|
|
|
end
|
2013-08-20 18:31:43 +00:00
|
|
|
end
|
2010-01-01 02:49:27 +00:00
|
|
|
end
|
2010-08-16 20:58:17 +00:00
|
|
|
|
2014-07-23 17:24:16 +00:00
|
|
|
platforms :rbx do
|
2015-10-12 11:48:04 +00:00
|
|
|
# The rubysl-yaml gem doesn't ship with Psych by default as it needs
|
|
|
|
# libyaml that isn't always available.
|
2018-03-09 20:14:36 +00:00
|
|
|
gem "psych", "~> 3.0"
|
2014-07-23 17:24:16 +00:00
|
|
|
end
|
|
|
|
|
2015-10-12 11:48:04 +00:00
|
|
|
# Gems that are necessary for Active Record tests with Oracle.
|
2016-08-06 17:23:19 +00:00
|
|
|
if ENV["ORACLE_ENHANCED"]
|
2010-08-16 20:58:17 +00:00
|
|
|
platforms :ruby do
|
2016-08-06 17:23:19 +00:00
|
|
|
gem "ruby-oci8", "~> 2.2"
|
2010-08-16 20:58:17 +00:00
|
|
|
end
|
2016-09-14 00:19:09 +00:00
|
|
|
gem "activerecord-oracle_enhanced-adapter", github: "rsim/oracle-enhanced", branch: "master"
|
2010-08-16 20:58:17 +00:00
|
|
|
end
|
2011-10-03 02:51:01 +00:00
|
|
|
|
2015-10-12 11:48:04 +00:00
|
|
|
# A gem necessary for Active Record tests with IBM DB.
|
2016-08-06 17:23:19 +00:00
|
|
|
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]
|