shakapacker 8.0.0 → 8.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (249) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/dummy.yml +1 -1
  3. data/.github/workflows/generator.yml +5 -1
  4. data/.github/workflows/node.yml +1 -1
  5. data/.github/workflows/ruby.yml +8 -2
  6. data/.gitignore +0 -1
  7. data/.node-version +1 -1
  8. data/CHANGELOG.md +21 -12
  9. data/Gemfile.lock +257 -0
  10. data/README.md +11 -12
  11. data/docs/customizing_babel_config.md +32 -4
  12. data/docs/react.md +3 -2
  13. data/docs/troubleshooting.md +1 -1
  14. data/docs/v8_upgrade.md +2 -2
  15. data/lib/shakapacker/version.rb +1 -1
  16. data/package.json +2 -2
  17. data/shakapacker.gemspec +5 -2
  18. metadata +5 -235
  19. data/lib/install/bin/yarn +0 -18
  20. data/rakelib/release.rake +0 -65
  21. data/spec/dummy/.browserslistrc +0 -1
  22. data/spec/dummy/.gitignore +0 -20
  23. data/spec/dummy/.prettierrc.yaml +0 -4
  24. data/spec/dummy/Gemfile +0 -61
  25. data/spec/dummy/Procfile.dev +0 -5
  26. data/spec/dummy/Procfile.dev-static +0 -9
  27. data/spec/dummy/README.md +0 -1
  28. data/spec/dummy/Rakefile +0 -6
  29. data/spec/dummy/app/assets/config/manifest.js +0 -2
  30. data/spec/dummy/app/assets/images/.keep +0 -0
  31. data/spec/dummy/app/assets/stylesheets/application.css +0 -15
  32. data/spec/dummy/app/channels/application_cable/channel.rb +0 -4
  33. data/spec/dummy/app/channels/application_cable/connection.rb +0 -4
  34. data/spec/dummy/app/controllers/application_controller.rb +0 -2
  35. data/spec/dummy/app/controllers/concerns/.keep +0 -0
  36. data/spec/dummy/app/controllers/hello_world_controller.rb +0 -9
  37. data/spec/dummy/app/helpers/application_helper.rb +0 -2
  38. data/spec/dummy/app/javascript/Globals.d.ts +0 -3
  39. data/spec/dummy/app/javascript/bundles/HelloWorld/components/HelloWorld.module.css +0 -25
  40. data/spec/dummy/app/javascript/bundles/HelloWorld/components/HelloWorld.tsx +0 -47
  41. data/spec/dummy/app/javascript/bundles/HelloWorld/components/HelloWorldServer.tsx +0 -5
  42. data/spec/dummy/app/javascript/bundles/HelloWorld/components/logo.svg +0 -7
  43. data/spec/dummy/app/javascript/packs/application.js +0 -17
  44. data/spec/dummy/app/javascript/packs/hello-world-bundle.ts +0 -8
  45. data/spec/dummy/app/javascript/packs/server-bundle.ts +0 -8
  46. data/spec/dummy/app/jobs/application_job.rb +0 -7
  47. data/spec/dummy/app/mailers/application_mailer.rb +0 -4
  48. data/spec/dummy/app/models/application_record.rb +0 -3
  49. data/spec/dummy/app/models/concerns/.keep +0 -0
  50. data/spec/dummy/app/views/hello_world/index.html.erb +0 -2
  51. data/spec/dummy/app/views/layouts/application.html.erb +0 -14
  52. data/spec/dummy/app/views/layouts/hello_world.html.erb +0 -13
  53. data/spec/dummy/app/views/layouts/mailer.html.erb +0 -13
  54. data/spec/dummy/app/views/layouts/mailer.text.erb +0 -1
  55. data/spec/dummy/babel.config.js +0 -30
  56. data/spec/dummy/bin/bundle +0 -114
  57. data/spec/dummy/bin/dev +0 -30
  58. data/spec/dummy/bin/dev-static +0 -30
  59. data/spec/dummy/bin/rails +0 -9
  60. data/spec/dummy/bin/rake +0 -9
  61. data/spec/dummy/bin/setup +0 -33
  62. data/spec/dummy/bin/shakapacker +0 -13
  63. data/spec/dummy/bin/shakapacker-dev-server +0 -13
  64. data/spec/dummy/bin/spring +0 -17
  65. data/spec/dummy/bin/yarn +0 -18
  66. data/spec/dummy/config/application.rb +0 -35
  67. data/spec/dummy/config/boot.rb +0 -4
  68. data/spec/dummy/config/cable.yml +0 -10
  69. data/spec/dummy/config/credentials.yml.enc +0 -1
  70. data/spec/dummy/config/database.yml +0 -25
  71. data/spec/dummy/config/environment.rb +0 -5
  72. data/spec/dummy/config/environments/development.rb +0 -54
  73. data/spec/dummy/config/environments/production.rb +0 -106
  74. data/spec/dummy/config/environments/test.rb +0 -49
  75. data/spec/dummy/config/initializers/application_controller_renderer.rb +0 -8
  76. data/spec/dummy/config/initializers/backtrace_silencers.rb +0 -7
  77. data/spec/dummy/config/initializers/content_security_policy.rb +0 -28
  78. data/spec/dummy/config/initializers/cookies_serializer.rb +0 -5
  79. data/spec/dummy/config/initializers/filter_parameter_logging.rb +0 -4
  80. data/spec/dummy/config/initializers/inflections.rb +0 -16
  81. data/spec/dummy/config/initializers/mime_types.rb +0 -4
  82. data/spec/dummy/config/initializers/react_on_rails.rb +0 -58
  83. data/spec/dummy/config/initializers/wrap_parameters.rb +0 -14
  84. data/spec/dummy/config/locales/en.yml +0 -33
  85. data/spec/dummy/config/puma.rb +0 -38
  86. data/spec/dummy/config/routes.rb +0 -6
  87. data/spec/dummy/config/shakapacker.yml +0 -61
  88. data/spec/dummy/config/spring.rb +0 -6
  89. data/spec/dummy/config/storage.yml +0 -34
  90. data/spec/dummy/config/webpack/ServerClientOrBoth.js +0 -34
  91. data/spec/dummy/config/webpack/clientWebpackConfig.js +0 -15
  92. data/spec/dummy/config/webpack/commonWebpackConfig.js +0 -17
  93. data/spec/dummy/config/webpack/development.js +0 -32
  94. data/spec/dummy/config/webpack/production.js +0 -9
  95. data/spec/dummy/config/webpack/serverWebpackConfig.js +0 -116
  96. data/spec/dummy/config/webpack/test.js +0 -7
  97. data/spec/dummy/config/webpack/webpack.config.js +0 -24
  98. data/spec/dummy/config.ru +0 -5
  99. data/spec/dummy/db/seeds.rb +0 -7
  100. data/spec/dummy/lib/assets/.keep +0 -0
  101. data/spec/dummy/lib/tasks/.keep +0 -0
  102. data/spec/dummy/package.json +0 -44
  103. data/spec/dummy/postcss.config.js +0 -12
  104. data/spec/dummy/public/404.html +0 -67
  105. data/spec/dummy/public/422.html +0 -67
  106. data/spec/dummy/public/500.html +0 -66
  107. data/spec/dummy/public/apple-touch-icon-precomposed.png +0 -0
  108. data/spec/dummy/public/apple-touch-icon.png +0 -0
  109. data/spec/dummy/public/favicon.ico +0 -0
  110. data/spec/dummy/public/robots.txt +0 -1
  111. data/spec/dummy/spec/rails_helper.rb +0 -118
  112. data/spec/dummy/spec/spec_helper.rb +0 -96
  113. data/spec/dummy/spec/system/hello_world_spec.rb +0 -19
  114. data/spec/dummy/tsconfig.json +0 -21
  115. data/spec/dummy/vendor/.keep +0 -0
  116. data/spec/dummy/yarn.lock +0 -4696
  117. data/spec/fixtures/beta_package-lock.v1.json +0 -119
  118. data/spec/fixtures/beta_package-lock.v2.json +0 -6777
  119. data/spec/fixtures/beta_package.json +0 -13
  120. data/spec/fixtures/beta_pnpm-lock.v7.yaml +0 -116
  121. data/spec/fixtures/beta_pnpm-lock.v8.yaml +0 -2537
  122. data/spec/fixtures/beta_pnpm-lock.v9.yaml +0 -2885
  123. data/spec/fixtures/beta_yarn.v1.lock +0 -106
  124. data/spec/fixtures/beta_yarn.v2.lock +0 -164
  125. data/spec/fixtures/git_url_package-lock.v1.json +0 -118
  126. data/spec/fixtures/git_url_package-lock.v2.json +0 -10263
  127. data/spec/fixtures/git_url_package.json +0 -13
  128. data/spec/fixtures/git_url_pnpm-lock.v7.yaml +0 -126
  129. data/spec/fixtures/git_url_pnpm-lock.v8.yaml +0 -3728
  130. data/spec/fixtures/git_url_pnpm-lock.v9.yaml +0 -4544
  131. data/spec/fixtures/git_url_yarn.v1.lock +0 -106
  132. data/spec/fixtures/git_url_yarn.v2.lock +0 -165
  133. data/spec/fixtures/github_url_package-lock.v1.json +0 -118
  134. data/spec/fixtures/github_url_package-lock.v2.json +0 -10263
  135. data/spec/fixtures/github_url_package.json +0 -13
  136. data/spec/fixtures/github_url_pnpm-lock.v7.yaml +0 -126
  137. data/spec/fixtures/github_url_pnpm-lock.v8.yaml +0 -3728
  138. data/spec/fixtures/github_url_pnpm-lock.v9.yaml +0 -4544
  139. data/spec/fixtures/github_url_yarn.v1.lock +0 -105
  140. data/spec/fixtures/github_url_yarn.v2.lock +0 -165
  141. data/spec/fixtures/relative_path_package-lock.v1.json +0 -3468
  142. data/spec/fixtures/relative_path_package-lock.v2.json +0 -105
  143. data/spec/fixtures/relative_path_package.json +0 -13
  144. data/spec/fixtures/relative_path_pnpm-lock.v7.yaml +0 -18
  145. data/spec/fixtures/relative_path_pnpm-lock.v8.yaml +0 -22
  146. data/spec/fixtures/relative_path_pnpm-lock.v9.yaml +0 -28
  147. data/spec/fixtures/relative_path_yarn.v1.lock +0 -104
  148. data/spec/fixtures/relative_path_yarn.v2.lock +0 -165
  149. data/spec/fixtures/semver_caret_package-lock.v1.json +0 -119
  150. data/spec/fixtures/semver_caret_package-lock.v2.json +0 -10264
  151. data/spec/fixtures/semver_caret_package.json +0 -13
  152. data/spec/fixtures/semver_caret_pnpm-lock.v7.yaml +0 -117
  153. data/spec/fixtures/semver_caret_pnpm-lock.v8.yaml +0 -2558
  154. data/spec/fixtures/semver_caret_pnpm-lock.v9.yaml +0 -4285
  155. data/spec/fixtures/semver_caret_yarn.v1.lock +0 -106
  156. data/spec/fixtures/semver_caret_yarn.v2.lock +0 -165
  157. data/spec/fixtures/semver_exact_package-lock.v1.json +0 -119
  158. data/spec/fixtures/semver_exact_package-lock.v2.json +0 -6819
  159. data/spec/fixtures/semver_exact_package.json +0 -13
  160. data/spec/fixtures/semver_exact_pnpm-lock.v7.yaml +0 -117
  161. data/spec/fixtures/semver_exact_pnpm-lock.v8.yaml +0 -2558
  162. data/spec/fixtures/semver_exact_pnpm-lock.v9.yaml +0 -2908
  163. data/spec/fixtures/semver_exact_yarn.v1.lock +0 -106
  164. data/spec/fixtures/semver_exact_yarn.v2.lock +0 -165
  165. data/spec/fixtures/semver_tilde_package-lock.v1.json +0 -119
  166. data/spec/fixtures/semver_tilde_package-lock.v2.json +0 -6777
  167. data/spec/fixtures/semver_tilde_package.json +0 -13
  168. data/spec/fixtures/semver_tilde_pnpm-lock.v7.yaml +0 -116
  169. data/spec/fixtures/semver_tilde_pnpm-lock.v8.yaml +0 -2558
  170. data/spec/fixtures/semver_tilde_pnpm-lock.v9.yaml +0 -2885
  171. data/spec/fixtures/semver_tilde_yarn.v1.lock +0 -106
  172. data/spec/fixtures/semver_tilde_yarn.v2.lock +0 -164
  173. data/spec/fixtures/without_package-lock.v1.json +0 -19
  174. data/spec/fixtures/without_package-lock.v2.json +0 -47
  175. data/spec/fixtures/without_package.json +0 -13
  176. data/spec/fixtures/without_pnpm-lock.v7.yaml +0 -23
  177. data/spec/fixtures/without_pnpm-lock.v8.yaml +0 -27
  178. data/spec/fixtures/without_pnpm-lock.v9.yaml +0 -34
  179. data/spec/fixtures/without_yarn.v1.lock +0 -13
  180. data/spec/fixtures/without_yarn.v2.lock +0 -29
  181. data/spec/generator_specs/e2e_template/files/app/controllers/home_controller.rb +0 -4
  182. data/spec/generator_specs/e2e_template/files/app/javascript/components/App.js +0 -12
  183. data/spec/generator_specs/e2e_template/files/app/javascript/packs/application.js +0 -10
  184. data/spec/generator_specs/e2e_template/files/app/views/home/index.html.erb +0 -2
  185. data/spec/generator_specs/e2e_template/files/app/views/layouts/application.html.erb +0 -17
  186. data/spec/generator_specs/e2e_template/files/config/routes.rb +0 -3
  187. data/spec/generator_specs/e2e_template/files/spec/system/test_react_component_renders_spec.rb +0 -13
  188. data/spec/generator_specs/e2e_template/template.rb +0 -29
  189. data/spec/generator_specs/fake-bin/bun +0 -10
  190. data/spec/generator_specs/fake-bin/npm +0 -10
  191. data/spec/generator_specs/fake-bin/pnpm +0 -10
  192. data/spec/generator_specs/fake-bin/yarn +0 -10
  193. data/spec/generator_specs/generator_spec.rb +0 -193
  194. data/spec/mounted_app/Rakefile +0 -4
  195. data/spec/mounted_app/package.json +0 -1
  196. data/spec/mounted_app/test/dummy/Rakefile +0 -3
  197. data/spec/mounted_app/test/dummy/bin/rails +0 -3
  198. data/spec/mounted_app/test/dummy/bin/rake +0 -3
  199. data/spec/mounted_app/test/dummy/config/application.rb +0 -10
  200. data/spec/mounted_app/test/dummy/config/environment.rb +0 -3
  201. data/spec/mounted_app/test/dummy/config/webpacker.yml +0 -81
  202. data/spec/mounted_app/test/dummy/config.ru +0 -5
  203. data/spec/mounted_app/test/dummy/package.json +0 -7
  204. data/spec/shakapacker/command_spec.rb +0 -134
  205. data/spec/shakapacker/compiler_spec.rb +0 -57
  206. data/spec/shakapacker/compiler_strategy_spec.rb +0 -24
  207. data/spec/shakapacker/configuration_spec.rb +0 -377
  208. data/spec/shakapacker/dev_server_runner_spec.rb +0 -136
  209. data/spec/shakapacker/dev_server_spec.rb +0 -118
  210. data/spec/shakapacker/digest_strategy_spec.rb +0 -59
  211. data/spec/shakapacker/engine_rake_tasks_spec.rb +0 -50
  212. data/spec/shakapacker/env_spec.rb +0 -23
  213. data/spec/shakapacker/helper_spec.rb +0 -243
  214. data/spec/shakapacker/instance_spec.rb +0 -29
  215. data/spec/shakapacker/manifest_spec.rb +0 -100
  216. data/spec/shakapacker/mtime_strategy_spec.rb +0 -55
  217. data/spec/shakapacker/rake_tasks_spec.rb +0 -85
  218. data/spec/shakapacker/shakapacker_spec.rb +0 -40
  219. data/spec/shakapacker/spec_helper_initializer.rb +0 -24
  220. data/spec/shakapacker/test_app/.gitignore +0 -2
  221. data/spec/shakapacker/test_app/Rakefile +0 -3
  222. data/spec/shakapacker/test_app/app/javascript/entrypoints/application.js +0 -10
  223. data/spec/shakapacker/test_app/app/javascript/entrypoints/generated/something.js +0 -2
  224. data/spec/shakapacker/test_app/app/javascript/entrypoints/multi_entry.css +0 -4
  225. data/spec/shakapacker/test_app/app/javascript/entrypoints/multi_entry.js +0 -4
  226. data/spec/shakapacker/test_app/bin/shakapacker +0 -14
  227. data/spec/shakapacker/test_app/bin/shakapacker-dev-server +0 -14
  228. data/spec/shakapacker/test_app/config/application.rb +0 -11
  229. data/spec/shakapacker/test_app/config/environment.rb +0 -4
  230. data/spec/shakapacker/test_app/config/initializers/inspect_autoload_paths.rb +0 -1
  231. data/spec/shakapacker/test_app/config/shakapacker.yml +0 -82
  232. data/spec/shakapacker/test_app/config/shakapacker_css_extract_ignore_order_warnings.yml +0 -83
  233. data/spec/shakapacker/test_app/config/shakapacker_defaults_fallback.yml +0 -11
  234. data/spec/shakapacker/test_app/config/shakapacker_manifest_path.yml +0 -79
  235. data/spec/shakapacker/test_app/config/shakapacker_nested_entries.yml +0 -82
  236. data/spec/shakapacker/test_app/config/shakapacker_no_precompile.yml +0 -7
  237. data/spec/shakapacker/test_app/config/shakapacker_other_location.yml +0 -84
  238. data/spec/shakapacker/test_app/config/shakapacker_public_root.yml +0 -18
  239. data/spec/shakapacker/test_app/config/webpack/webpack.config.js +0 -0
  240. data/spec/shakapacker/test_app/config.ru +0 -5
  241. data/spec/shakapacker/test_app/package.json +0 -14
  242. data/spec/shakapacker/test_app/public/packs/manifest.json +0 -58
  243. data/spec/shakapacker/test_app/some.config.js +0 -0
  244. data/spec/shakapacker/test_app/yarn.lock +0 -11
  245. data/spec/shakapacker/utils_manager_spec.rb +0 -125
  246. data/spec/shakapacker/version_checker_spec.rb +0 -1469
  247. data/spec/shakapacker/webpack_runner_spec.rb +0 -76
  248. data/spec/spec_helper.rb +0 -100
  249. data/spec/support/package_json_helpers.rb +0 -19
@@ -1,106 +0,0 @@
1
- Rails.application.configure do
2
- # Settings specified here will take precedence over those in config/application.rb.
3
-
4
- # Code is not reloaded between requests.
5
- config.cache_classes = true
6
-
7
- # Eager load code on boot. This eager loads most of Rails and
8
- # your application in memory, allowing both threaded web servers
9
- # and those relying on copy on write to perform better.
10
- # Rake tasks automatically ignore this option for performance.
11
- config.eager_load = true
12
-
13
- # Full error reports are disabled and caching is turned on.
14
- config.consider_all_requests_local = false
15
- config.action_controller.perform_caching = true
16
-
17
- # Ensures that a master key has been made available in either ENV["RAILS_MASTER_KEY"]
18
- # or in config/master.key. This key is used to decrypt credentials (and other encrypted files).
19
- # config.require_master_key = true
20
-
21
- # Disable serving static files from the `/public` folder by default since
22
- # Apache or NGINX already handles this.
23
- config.public_file_server.enabled = true # ENV['RAILS_SERVE_STATIC_FILES'].present?
24
-
25
- # Enable serving of images, stylesheets, and JavaScripts from an asset server.
26
- # config.action_controller.asset_host = 'http://assets.example.com'
27
-
28
- # Specifies the header that your server uses for sending files.
29
- # config.action_dispatch.x_sendfile_header = 'X-Sendfile' # for Apache
30
- # config.action_dispatch.x_sendfile_header = 'X-Accel-Redirect' # for NGINX
31
-
32
- # Store uploaded files on the local file system (see config/storage.yml for options).
33
- config.active_storage.service = :local
34
-
35
- # Mount Action Cable outside main process or domain.
36
- # config.action_cable.mount_path = nil
37
- # config.action_cable.url = 'wss://example.com/cable'
38
- # config.action_cable.allowed_request_origins = [ 'http://example.com', /http:\/\/example.*/ ]
39
-
40
- # Force all access to the app over SSL, use Strict-Transport-Security, and use secure cookies.
41
- # config.force_ssl = true
42
-
43
- # Use the lowest log level to ensure availability of diagnostic information
44
- # when problems arise.
45
- config.log_level = :debug
46
-
47
- # Prepend all log lines with the following tags.
48
- config.log_tags = [ :request_id ]
49
-
50
- # Use a different cache store in production.
51
- # config.cache_store = :mem_cache_store
52
-
53
- # Use a real queuing backend for Active Job (and separate queues per environment).
54
- # config.active_job.queue_adapter = :resque
55
- # config.active_job.queue_name_prefix = "test_react_on_rails_v12_ssr_v2_production"
56
-
57
- config.action_mailer.perform_caching = false
58
-
59
- # Ignore bad email addresses and do not raise email delivery errors.
60
- # Set this to true and configure the email server for immediate delivery to raise delivery errors.
61
- # config.action_mailer.raise_delivery_errors = false
62
-
63
- # Enable locale fallbacks for I18n (makes lookups for any locale fall back to
64
- # the I18n.default_locale when a translation cannot be found).
65
- config.i18n.fallbacks = true
66
-
67
- # Send deprecation notices to registered listeners.
68
- config.active_support.deprecation = :notify
69
-
70
- # Use default logging formatter so that PID and timestamp are not suppressed.
71
- config.log_formatter = ::Logger::Formatter.new
72
-
73
- # Use a different logger for distributed setups.
74
- # require 'syslog/logger'
75
- # config.logger = ActiveSupport::TaggedLogging.new(Syslog::Logger.new 'app-name')
76
-
77
- if ENV["RAILS_LOG_TO_STDOUT"].present?
78
- logger = ActiveSupport::Logger.new(STDOUT)
79
- logger.formatter = config.log_formatter
80
- config.logger = ActiveSupport::TaggedLogging.new(logger)
81
- end
82
-
83
- # Do not dump schema after migrations.
84
- config.active_record.dump_schema_after_migration = false
85
-
86
- # Inserts middleware to perform automatic connection switching.
87
- # The `database_selector` hash is used to pass options to the DatabaseSelector
88
- # middleware. The `delay` is used to determine how long to wait after a write
89
- # to send a subsequent read to the primary.
90
- #
91
- # The `database_resolver` class is used by the middleware to determine which
92
- # database is appropriate to use based on the time delay.
93
- #
94
- # The `database_resolver_context` class is used by the middleware to set
95
- # timestamps for the last write to the primary. The resolver uses the context
96
- # class timestamps to determine how long to wait before reading from the
97
- # replica.
98
- #
99
- # By default Rails will store a last write timestamp in the session. The
100
- # DatabaseSelector middleware is designed as such you can define your own
101
- # strategy for connection switching and pass that into the middleware through
102
- # these configuration options.
103
- # config.active_record.database_selector = { delay: 2.seconds }
104
- # config.active_record.database_resolver = ActiveRecord::Middleware::DatabaseSelector::Resolver
105
- # config.active_record.database_resolver_context = ActiveRecord::Middleware::DatabaseSelector::Resolver::Session
106
- end
@@ -1,49 +0,0 @@
1
- # The test environment is used exclusively to run your application's
2
- # test suite. You never need to work with it otherwise. Remember that
3
- # your test database is "scratch space" for the test suite and is wiped
4
- # and recreated between test runs. Don't rely on the data there!
5
-
6
- Rails.application.configure do
7
- # Settings specified here will take precedence over those in config/application.rb.
8
-
9
- config.cache_classes = false
10
- config.action_view.cache_template_loading = true
11
-
12
- # Do not eager load code on boot. This avoids loading your whole application
13
- # just for the purpose of running a single test. If you are using a tool that
14
- # preloads Rails for running tests, you may have to set it to true.
15
- config.eager_load = false
16
-
17
- # Configure public file server for tests with Cache-Control for performance.
18
- config.public_file_server.enabled = true
19
- config.public_file_server.headers = {
20
- "Cache-Control" => "public, max-age=#{1.hour.to_i}"
21
- }
22
-
23
- # Show full error reports and disable caching.
24
- config.consider_all_requests_local = true
25
- config.action_controller.perform_caching = false
26
- config.cache_store = :null_store
27
-
28
- # Raise exceptions instead of rendering exception templates.
29
- config.action_dispatch.show_exceptions = false
30
-
31
- # Disable request forgery protection in test environment.
32
- config.action_controller.allow_forgery_protection = false
33
-
34
- # Store uploaded files on the local file system in a temporary directory.
35
- config.active_storage.service = :test
36
-
37
- config.action_mailer.perform_caching = false
38
-
39
- # Tell Action Mailer not to deliver emails to the real world.
40
- # The :test delivery method accumulates sent emails in the
41
- # ActionMailer::Base.deliveries array.
42
- config.action_mailer.delivery_method = :test
43
-
44
- # Print deprecation notices to the stderr.
45
- config.active_support.deprecation = :stderr
46
-
47
- # Raises error for missing translations.
48
- # config.action_view.raise_on_missing_translations = true
49
- end
@@ -1,8 +0,0 @@
1
- # Be sure to restart your server when you modify this file.
2
-
3
- # ActiveSupport::Reloader.to_prepare do
4
- # ApplicationController.renderer.defaults.merge!(
5
- # http_host: 'example.org',
6
- # https: false
7
- # )
8
- # end
@@ -1,7 +0,0 @@
1
- # Be sure to restart your server when you modify this file.
2
-
3
- # You can add backtrace silencers for libraries that you're using but don't wish to see in your backtraces.
4
- # Rails.backtrace_cleaner.add_silencer { |line| line =~ /my_noisy_library/ }
5
-
6
- # You can also remove all the silencers if you're trying to debug a problem that might stem from framework code.
7
- # Rails.backtrace_cleaner.remove_silencers!
@@ -1,28 +0,0 @@
1
- # Be sure to restart your server when you modify this file.
2
-
3
- # Define an application-wide content security policy
4
- # For further information see the following documentation
5
- # https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy
6
-
7
- # Rails.application.config.content_security_policy do |policy|
8
- # policy.default_src :self, :https
9
- # policy.font_src :self, :https, :data
10
- # policy.img_src :self, :https, :data
11
- # policy.object_src :none
12
- # policy.script_src :self, :https
13
- # policy.style_src :self, :https
14
-
15
- # # Specify URI for violation reports
16
- # # policy.report_uri "/csp-violation-report-endpoint"
17
- # end
18
-
19
- # If you are using UJS then enable automatic nonce generation
20
- # Rails.application.config.content_security_policy_nonce_generator = -> request { SecureRandom.base64(16) }
21
-
22
- # Set the nonce only to specific directives
23
- # Rails.application.config.content_security_policy_nonce_directives = %w(script-src)
24
-
25
- # Report CSP violations to a specified URI
26
- # For further information see the following documentation:
27
- # https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy-Report-Only
28
- # Rails.application.config.content_security_policy_report_only = true
@@ -1,5 +0,0 @@
1
- # Be sure to restart your server when you modify this file.
2
-
3
- # Specify a serializer for the signed and encrypted cookie jars.
4
- # Valid options are :json, :marshal, and :hybrid.
5
- Rails.application.config.action_dispatch.cookies_serializer = :json
@@ -1,4 +0,0 @@
1
- # Be sure to restart your server when you modify this file.
2
-
3
- # Configure sensitive parameters which will be filtered from the log file.
4
- Rails.application.config.filter_parameters += [:password]
@@ -1,16 +0,0 @@
1
- # Be sure to restart your server when you modify this file.
2
-
3
- # Add new inflection rules using the following format. Inflections
4
- # are locale specific, and you may define rules for as many different
5
- # locales as you wish. All of these examples are active by default:
6
- # ActiveSupport::Inflector.inflections(:en) do |inflect|
7
- # inflect.plural /^(ox)$/i, '\1en'
8
- # inflect.singular /^(ox)en/i, '\1'
9
- # inflect.irregular 'person', 'people'
10
- # inflect.uncountable %w( fish sheep )
11
- # end
12
-
13
- # These inflection rules are supported but not enabled by default:
14
- # ActiveSupport::Inflector.inflections(:en) do |inflect|
15
- # inflect.acronym 'RESTful'
16
- # end
@@ -1,4 +0,0 @@
1
- # Be sure to restart your server when you modify this file.
2
-
3
- # Add new mime types for use in respond_to blocks:
4
- # Mime::Type.register "text/richtext", :rtf
@@ -1,58 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # See https://github.com/shakacode/react_on_rails/blob/master/docs/guides/configuration.md
4
- # for many more options.
5
-
6
- ReactOnRails.configure do |config|
7
- # This configures the script to run to build the production assets by webpack. Set this to nil
8
- # if you don't want react_on_rails building this file for you.
9
- # If nil, then the standard shakacode/shakapacker assets:precompile will run
10
- # config.build_production_command = nil
11
-
12
- ################################################################################
13
- ################################################################################
14
- # TEST CONFIGURATION OPTIONS
15
- # Below options are used with the use of this test helper:
16
- # ReactOnRails::TestHelper.configure_rspec_to_compile_assets(config)
17
- ################################################################################
18
-
19
- # If you are using this in your spec_helper.rb (or rails_helper.rb):
20
- #
21
- # ReactOnRails::TestHelper.configure_rspec_to_compile_assets(config)
22
- #
23
- # with rspec then this controls what yarn command is run
24
- # to automatically refresh your webpack assets on every test run.
25
- #
26
- # Alternately, you can remove the `ReactOnRails::TestHelper.configure_rspec_to_compile_assets`
27
- # and set the config/shakapacker.yml option for test to true.
28
- config.build_test_command = "RAILS_ENV=test bin/shakapacker"
29
-
30
- ################################################################################
31
- ################################################################################
32
- # SERVER RENDERING OPTIONS
33
- ################################################################################
34
- # This is the file used for server rendering of React when using `(prerender: true)`
35
- # If you are never using server rendering, you should set this to "".
36
- # Note, there is only one server bundle, unlike JavaScript where you want to minimize the size
37
- # of the JS sent to the client. For the server rendering, React on Rails creates a pool of
38
- # JavaScript execution instances which should handle any component requested.
39
- #
40
- # While you may configure this to be the same as your client bundle file, this file is typically
41
- # different. You should have ONE server bundle which can create all of your server rendered
42
- # React components.
43
- #
44
- config.server_bundle_js_file = "server-bundle.js"
45
-
46
- ################################################################################
47
- ################################################################################
48
- # FILE SYSTEM BASED COMPONENT REGISTRY
49
- ################################################################################
50
- # `components_subdirectory` is the name of the matching directories that contain automatically registered components
51
- # for use in the Rails views. The default is nil, you can enable the feature by updating it in the next line.
52
- # config.components_subdirectory = "ror_components"
53
- #
54
- # For automated component registry, `render_component` view helper method tries to load bundle for component from
55
- # generated directory. default is false, you can pass option at the time of individual usage or update the default
56
- # in the following line
57
- config.auto_load_bundle = false
58
- end
@@ -1,14 +0,0 @@
1
- # Be sure to restart your server when you modify this file.
2
-
3
- # This file contains settings for ActionController::ParamsWrapper which
4
- # is enabled by default.
5
-
6
- # Enable parameter wrapping for JSON. You can disable this by setting :format to an empty array.
7
- ActiveSupport.on_load(:action_controller) do
8
- wrap_parameters format: [:json]
9
- end
10
-
11
- # To enable root element in JSON for ActiveRecord objects.
12
- # ActiveSupport.on_load(:active_record) do
13
- # self.include_root_in_json = true
14
- # end
@@ -1,33 +0,0 @@
1
- # Files in the config/locales directory are used for internationalization
2
- # and are automatically loaded by Rails. If you want to use locales other
3
- # than English, add the necessary files in this directory.
4
- #
5
- # To use the locales, use `I18n.t`:
6
- #
7
- # I18n.t 'hello'
8
- #
9
- # In views, this is aliased to just `t`:
10
- #
11
- # <%= t('hello') %>
12
- #
13
- # To use a different locale, set it with `I18n.locale`:
14
- #
15
- # I18n.locale = :es
16
- #
17
- # This would use the information in config/locales/es.yml.
18
- #
19
- # The following keys must be escaped otherwise they will not be retrieved by
20
- # the default I18n backend:
21
- #
22
- # true, false, on, off, yes, no
23
- #
24
- # Instead, surround them with single quotes.
25
- #
26
- # en:
27
- # 'true': 'foo'
28
- #
29
- # To learn more, please read the Rails Internationalization guide
30
- # available at https://guides.rubyonrails.org/i18n.html.
31
-
32
- en:
33
- hello: "Hello world"
@@ -1,38 +0,0 @@
1
- # Puma can serve each request in a thread from an internal thread pool.
2
- # The `threads` method setting takes two numbers: a minimum and maximum.
3
- # Any libraries that use thread pools should be configured to match
4
- # the maximum value specified for Puma. Default is set to 5 threads for minimum
5
- # and maximum; this matches the default thread size of Active Record.
6
- #
7
- max_threads_count = ENV.fetch("RAILS_MAX_THREADS") { 5 }
8
- min_threads_count = ENV.fetch("RAILS_MIN_THREADS") { max_threads_count }
9
- threads min_threads_count, max_threads_count
10
-
11
- # Specifies the `port` that Puma will listen on to receive requests; default is 3000.
12
- #
13
- port ENV.fetch("PORT") { 3000 }
14
-
15
- # Specifies the `environment` that Puma will run in.
16
- #
17
- environment ENV.fetch("RAILS_ENV") { "development" }
18
-
19
- # Specifies the `pidfile` that Puma will use.
20
- pidfile ENV.fetch("PIDFILE") { "tmp/pids/server.pid" }
21
-
22
- # Specifies the number of `workers` to boot in clustered mode.
23
- # Workers are forked web server processes. If using threads and workers together
24
- # the concurrency of the application would be max `threads` * `workers`.
25
- # Workers do not work on JRuby or Windows (both of which do not support
26
- # processes).
27
- #
28
- # workers ENV.fetch("WEB_CONCURRENCY") { 2 }
29
-
30
- # Use the `preload_app!` method when specifying a `workers` number.
31
- # This directive tells Puma to first boot the application and load code
32
- # before forking the application. This takes advantage of Copy On Write
33
- # process behavior so workers use less memory.
34
- #
35
- # preload_app!
36
-
37
- # Allow puma to be restarted by `rails restart` command.
38
- plugin :tmp_restart
@@ -1,6 +0,0 @@
1
- Rails.application.routes.draw do
2
- get "hello_world", to: "hello_world#index"
3
-
4
- get "/", to: redirect("/hello_world")
5
- # For details on the DSL available within this file, see https://guides.rubyonrails.org/routing.html
6
- end
@@ -1,61 +0,0 @@
1
- # Note: You must restart bin/shakapacker-dev-server for changes to take effect
2
-
3
- default: &default
4
- source_path: app/javascript
5
- source_entry_path: packs
6
- public_root_path: public
7
- public_output_path: packs
8
- cache_path: tmp/shakapacker
9
- webpack_compile_output: true
10
-
11
- # Additional paths webpack should lookup modules
12
- # ['app/assets', 'engine/foo/app/assets']
13
- additional_paths: []
14
-
15
- # Reload manifest.json on all requests so we reload latest compiled packs
16
- cache_manifest: false
17
-
18
- development:
19
- <<: *default
20
- # This is false since we're running `bin/shakapacker -w` in Procfile.dev-setic
21
- compile: false
22
-
23
- # Reference: https://webpack.js.org/configuration/dev-server/
24
- dev_server:
25
- host: localhost
26
- port: 3035
27
- # Hot Module Replacement updates modules while the application is running without a full reload
28
- hmr: true
29
- client:
30
- # Should we show a full-screen overlay in the browser when there are compiler errors or warnings?
31
- overlay: true
32
- # May also be a string
33
- # webSocketURL:
34
- # hostname: "0.0.0.0"
35
- # pathname: "/ws"
36
- # port: 8080
37
- compress: true
38
- # Note that apps that do not check the host are vulnerable to DNS rebinding attacks
39
- allowed_hosts: [ 'localhost' ]
40
- pretty: true
41
- headers:
42
- 'Access-Control-Allow-Origin': '*'
43
- static:
44
- watch:
45
- ignored: '**/node_modules/**'
46
-
47
- test:
48
- <<: *default
49
- compile: true
50
-
51
- # Compile test packs to a separate directory
52
- public_output_path: packs-test
53
-
54
- production:
55
- <<: *default
56
-
57
- # Production depends on precompilation of packs prior to booting for performance.
58
- compile: false
59
-
60
- # Cache manifest.json for performance
61
- cache_manifest: true
@@ -1,6 +0,0 @@
1
- Spring.watch(
2
- ".ruby-version",
3
- ".rbenv-vars",
4
- "tmp/restart.txt",
5
- "tmp/caching-dev.txt"
6
- )
@@ -1,34 +0,0 @@
1
- test:
2
- service: Disk
3
- root: <%= Rails.root.join("tmp/storage") %>
4
-
5
- local:
6
- service: Disk
7
- root: <%= Rails.root.join("storage") %>
8
-
9
- # Use rails credentials:edit to set the AWS secrets (as aws:access_key_id|secret_access_key)
10
- # amazon:
11
- # service: S3
12
- # access_key_id: <%= Rails.application.credentials.dig(:aws, :access_key_id) %>
13
- # secret_access_key: <%= Rails.application.credentials.dig(:aws, :secret_access_key) %>
14
- # region: us-east-1
15
- # bucket: your_own_bucket
16
-
17
- # Remember not to checkin your GCS keyfile to a repository
18
- # google:
19
- # service: GCS
20
- # project: your_project
21
- # credentials: <%= Rails.root.join("path/to/gcs.keyfile") %>
22
- # bucket: your_own_bucket
23
-
24
- # Use rails credentials:edit to set the Azure Storage secret (as azure_storage:storage_access_key)
25
- # microsoft:
26
- # service: AzureStorage
27
- # storage_account_name: your_account_name
28
- # storage_access_key: <%= Rails.application.credentials.dig(:azure_storage, :storage_access_key) %>
29
- # container: your_container_name
30
-
31
- # mirror:
32
- # service: Mirror
33
- # primary: local
34
- # mirrors: [ amazon, google, microsoft ]
@@ -1,34 +0,0 @@
1
- const clientWebpackConfig = require('./clientWebpackConfig')
2
- const serverWebpackConfig = require('./serverWebpackConfig')
3
-
4
- const webpackConfig = (envSpecific) => {
5
- const clientConfig = clientWebpackConfig()
6
- const serverConfig = serverWebpackConfig()
7
-
8
- if (envSpecific) {
9
- envSpecific(clientConfig, serverConfig)
10
- }
11
-
12
- let result
13
- // For HMR, need to separate the the client and server webpack configurations
14
- if (process.env.WEBPACK_SERVE || process.env.CLIENT_BUNDLE_ONLY) {
15
- // eslint-disable-next-line no-console
16
- console.log('[React on Rails] Creating only the client bundles.')
17
- result = clientConfig
18
- } else if (process.env.SERVER_BUNDLE_ONLY) {
19
- // eslint-disable-next-line no-console
20
- console.log('[React on Rails] Creating only the server bundle.')
21
- result = serverConfig
22
- } else {
23
- // default is the standard client and server build
24
- // eslint-disable-next-line no-console
25
- console.log('[React on Rails] Creating both client and server bundles.')
26
- result = [clientConfig, serverConfig]
27
- }
28
-
29
- // To debug, uncomment next line and inspect "result"
30
- // debugger
31
- return result
32
- }
33
-
34
- module.exports = webpackConfig
@@ -1,15 +0,0 @@
1
- const commonWebpackConfig = require('./commonWebpackConfig')
2
-
3
- const configureClient = () => {
4
- const clientConfig = commonWebpackConfig()
5
-
6
- // server-bundle is special and should ONLY be built by the serverConfig
7
- // In case this entry is not deleted, a very strange "window" not found
8
- // error shows referring to window["webpackJsonp"]. That is because the
9
- // client config is going to try to load chunks.
10
- delete clientConfig.entry['server-bundle']
11
-
12
- return clientConfig
13
- }
14
-
15
- module.exports = configureClient
@@ -1,17 +0,0 @@
1
- // Common configuration applying to client and server configuration
2
-
3
- const { generateWebpackConfig, merge } = require('shakapacker')
4
- const commonOptions = {
5
- resolve: {
6
- extensions: ['.css', '.ts', '.tsx']
7
- }
8
- }
9
-
10
- const ignoreWarningsConfig = {
11
- ignoreWarnings: [/Module not found: Error: Can't resolve 'react-dom\/client'/],
12
- };
13
- // Copy the object using merge b/c the baseClientWebpackConfig and commonOptions are mutable globals
14
- // const commonWebpackConfig = () => (merge({}, baseClientWebpackConfig, commonOptions))
15
- const commonWebpackConfig = () => generateWebpackConfig(merge(commonOptions, ignoreWarningsConfig))
16
-
17
- module.exports = commonWebpackConfig
@@ -1,32 +0,0 @@
1
- const ForkTsCheckerWebpackPlugin = require('fork-ts-checker-webpack-plugin')
2
- const path = require('path')
3
- const { devServer, inliningCss } = require('shakapacker')
4
-
5
- const webpackConfig = require('./ServerClientOrBoth')
6
-
7
- const developmentEnvOnly = (clientWebpackConfig, serverWebpackConfig) => {
8
-
9
- //plugins
10
- if (inliningCss ) {
11
- // Note, when this is run, we're building the server and client bundles in separate processes.
12
- // Thus, this plugin is not applied.
13
- const ReactRefreshWebpackPlugin = require('@pmmmwh/react-refresh-webpack-plugin')
14
- clientWebpackConfig.plugins.push(
15
- new ReactRefreshWebpackPlugin({
16
- overlay:{
17
- sockPort: devServer.port
18
- }
19
- })
20
- )
21
- }
22
-
23
- clientWebpackConfig.plugins.push(
24
- new ForkTsCheckerWebpackPlugin({
25
- typescript: {
26
- configFile: path.resolve(__dirname, '../../tsconfig.json')
27
- },
28
- async: false
29
- })
30
- )
31
- }
32
- module.exports = webpackConfig(developmentEnvOnly)
@@ -1,9 +0,0 @@
1
- // Below code should get refactored but the current way that rails/webpacker v5
2
- // does the globals, it's tricky
3
- const webpackConfig = require('./ServerClientOrBoth')
4
-
5
- const productionEnvOnly = (_clientWebpackConfig, _serverWebpackConfig) => {
6
- // place any code here that is for production only
7
- }
8
-
9
- module.exports = webpackConfig(productionEnvOnly)