shakapacker 6.5.5 → 6.5.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (139) hide show
  1. checksums.yaml +4 -4
  2. data/.github/ISSUE_TEMPLATE/bug_report.md +11 -7
  3. data/.github/ISSUE_TEMPLATE/feature_request.md +21 -0
  4. data/.github/workflows/ruby.yml +3 -1
  5. data/.gitignore +3 -3
  6. data/.rspec +1 -0
  7. data/CHANGELOG.md +18 -2
  8. data/CONTRIBUTING.md +11 -1
  9. data/Gemfile.development_dependencies +3 -1
  10. data/README.md +41 -8
  11. data/Rakefile +4 -5
  12. data/gemfiles/Gemfile-rails-edge +1 -1
  13. data/gemfiles/Gemfile-rails.5.2.x +1 -1
  14. data/gemfiles/Gemfile-rails.6.0.x +1 -1
  15. data/gemfiles/Gemfile-rails.6.1.x +1 -1
  16. data/gemfiles/Gemfile-rails.7.0.x +1 -1
  17. data/lib/install/template.rb +21 -16
  18. data/lib/tasks/webpacker/compile.rake +5 -10
  19. data/lib/webpacker/helper.rb +20 -9
  20. data/lib/webpacker/version.rb +1 -1
  21. data/package/rules/__tests__/__utils__/webpack.js +50 -0
  22. data/package/rules/__tests__/babel.js +63 -0
  23. data/package/rules/__tests__/esbuild.js +64 -0
  24. data/package/rules/__tests__/index.js +0 -4
  25. data/package/rules/__tests__/swc.js +64 -0
  26. data/package/rules/babel.js +3 -14
  27. data/package/rules/esbuild.js +2 -13
  28. data/package/rules/jscommon.js +26 -0
  29. data/package/rules/swc.js +2 -13
  30. data/package/utils/helpers.js +1 -1
  31. data/package.json +8 -2
  32. data/spec/command_spec.rb +114 -0
  33. data/spec/compiler_spec.rb +57 -0
  34. data/spec/compiler_strategy_spec.rb +20 -0
  35. data/spec/configuration_spec.rb +281 -0
  36. data/{test/dev_server_runner_test.rb → spec/dev_server_runner_spec.rb} +30 -40
  37. data/spec/dev_server_spec.rb +45 -0
  38. data/spec/digest_strategy_spec.rb +33 -0
  39. data/{test/engine_rake_tasks_test.rb → spec/engine_rake_tasks_spec.rb} +17 -9
  40. data/spec/env_spec.rb +21 -0
  41. data/{test → spec}/fixtures/beta_package-lock.v1.json +0 -0
  42. data/{test → spec}/fixtures/beta_package-lock.v2.json +0 -0
  43. data/{test → spec}/fixtures/beta_package.json +0 -0
  44. data/{test → spec}/fixtures/beta_yarn.v1.lock +0 -0
  45. data/{test → spec}/fixtures/beta_yarn.v2.lock +0 -0
  46. data/{test → spec}/fixtures/git_url_package-lock.v1.json +0 -0
  47. data/{test → spec}/fixtures/git_url_package-lock.v2.json +0 -0
  48. data/{test → spec}/fixtures/git_url_package.json +0 -0
  49. data/{test → spec}/fixtures/git_url_yarn.v1.lock +0 -0
  50. data/{test → spec}/fixtures/git_url_yarn.v2.lock +0 -0
  51. data/{test → spec}/fixtures/github_url_package-lock.v1.json +0 -0
  52. data/{test → spec}/fixtures/github_url_package-lock.v2.json +0 -0
  53. data/{test → spec}/fixtures/github_url_package.json +0 -0
  54. data/{test → spec}/fixtures/github_url_yarn.v1.lock +0 -0
  55. data/{test → spec}/fixtures/github_url_yarn.v2.lock +0 -0
  56. data/{test → spec}/fixtures/relative_path_package-lock.v1.json +0 -0
  57. data/{test → spec}/fixtures/relative_path_package-lock.v2.json +0 -0
  58. data/{test → spec}/fixtures/relative_path_package.json +0 -0
  59. data/{test → spec}/fixtures/relative_path_yarn.v1.lock +0 -0
  60. data/{test → spec}/fixtures/relative_path_yarn.v2.lock +0 -0
  61. data/{test → spec}/fixtures/semver_caret_package-lock.v1.json +0 -0
  62. data/{test → spec}/fixtures/semver_caret_package-lock.v2.json +0 -0
  63. data/{test → spec}/fixtures/semver_caret_package.json +0 -0
  64. data/{test → spec}/fixtures/semver_caret_yarn.v1.lock +0 -0
  65. data/{test → spec}/fixtures/semver_caret_yarn.v2.lock +0 -0
  66. data/{test → spec}/fixtures/semver_exact_package-lock.v1.json +0 -0
  67. data/{test → spec}/fixtures/semver_exact_package-lock.v2.json +0 -0
  68. data/{test → spec}/fixtures/semver_exact_package.json +0 -0
  69. data/{test → spec}/fixtures/semver_exact_yarn.v1.lock +0 -0
  70. data/{test → spec}/fixtures/semver_exact_yarn.v2.lock +0 -0
  71. data/{test → spec}/fixtures/semver_tilde_package-lock.v1.json +0 -0
  72. data/{test → spec}/fixtures/semver_tilde_package-lock.v2.json +0 -0
  73. data/{test → spec}/fixtures/semver_tilde_package.json +0 -0
  74. data/{test → spec}/fixtures/semver_tilde_yarn.v1.lock +0 -0
  75. data/{test → spec}/fixtures/semver_tilde_yarn.v2.lock +0 -0
  76. data/{test → spec}/fixtures/without_package-lock.v1.json +0 -0
  77. data/{test → spec}/fixtures/without_package-lock.v2.json +0 -0
  78. data/{test → spec}/fixtures/without_package.json +0 -0
  79. data/{test → spec}/fixtures/without_yarn.v1.lock +0 -0
  80. data/{test → spec}/fixtures/without_yarn.v2.lock +0 -0
  81. data/spec/helper_spec.rb +241 -0
  82. data/spec/manifest_spec.rb +98 -0
  83. data/{test → spec}/mounted_app/Rakefile +0 -0
  84. data/{test → spec}/mounted_app/test/dummy/Rakefile +0 -0
  85. data/{test → spec}/mounted_app/test/dummy/bin/rails +0 -0
  86. data/{test → spec}/mounted_app/test/dummy/bin/rake +0 -0
  87. data/{test → spec}/mounted_app/test/dummy/config/application.rb +0 -0
  88. data/{test → spec}/mounted_app/test/dummy/config/environment.rb +0 -0
  89. data/{test → spec}/mounted_app/test/dummy/config/webpacker.yml +0 -0
  90. data/{test → spec}/mounted_app/test/dummy/config.ru +0 -0
  91. data/{test → spec}/mounted_app/test/dummy/package.json +0 -0
  92. data/spec/mtime_strategy_spec.rb +53 -0
  93. data/spec/rake_tasks_spec.rb +32 -0
  94. data/spec/spec_helper.rb +123 -0
  95. data/{test → spec}/test_app/Rakefile +0 -0
  96. data/{test → spec}/test_app/app/packs/entrypoints/application.js +0 -0
  97. data/{test → spec}/test_app/app/packs/entrypoints/generated/something.js +0 -0
  98. data/{test → spec}/test_app/app/packs/entrypoints/multi_entry.css +0 -0
  99. data/{test → spec}/test_app/app/packs/entrypoints/multi_entry.js +0 -0
  100. data/{test → spec}/test_app/bin/webpacker +0 -0
  101. data/{test → spec}/test_app/bin/webpacker-dev-server +0 -0
  102. data/{test → spec}/test_app/config/application.rb +0 -0
  103. data/{test → spec}/test_app/config/environment.rb +0 -0
  104. data/{test → spec}/test_app/config/initializers/inspect_autoload_paths.rb +0 -0
  105. data/{test → spec}/test_app/config/webpack/webpack.config.js +0 -0
  106. data/{test → spec}/test_app/config/webpacker.yml +0 -0
  107. data/{test → spec}/test_app/config/webpacker_css_extract_ignore_order_warnings.yml +0 -0
  108. data/{test → spec}/test_app/config/webpacker_defaults_fallback.yml +0 -0
  109. data/{test → spec}/test_app/config/webpacker_manifest_path.yml +0 -0
  110. data/{test → spec}/test_app/config/webpacker_nested_entries.yml +0 -0
  111. data/{test → spec}/test_app/config/webpacker_no_precompile.yml +0 -0
  112. data/{test → spec}/test_app/config/webpacker_other_location.yml +0 -0
  113. data/{test → spec}/test_app/config/webpacker_public_root.yml +0 -0
  114. data/{test → spec}/test_app/config.ru +0 -0
  115. data/{test → spec}/test_app/package.json +0 -0
  116. data/{test → spec}/test_app/public/packs/manifest.json +8 -0
  117. data/{test → spec}/test_app/some.config.js +0 -0
  118. data/{test → spec}/test_app/yarn.lock +0 -0
  119. data/spec/version_checker_spec.rb +950 -0
  120. data/{test/webpack_runner_test.rb → spec/webpack_runner_spec.rb} +12 -15
  121. data/spec/webpacker_spec.rb +39 -0
  122. data/yarn.lock +846 -844
  123. metadata +102 -187
  124. data/.github/ISSUE_TEMPLATE/feature-request.md +0 -18
  125. data/lib/tasks/yarn.rake +0 -44
  126. data/test/command_test.rb +0 -109
  127. data/test/compiler_strategy_test.rb +0 -27
  128. data/test/compiler_test.rb +0 -60
  129. data/test/configuration_test.rb +0 -186
  130. data/test/dev_server_test.rb +0 -47
  131. data/test/digest_strategy_test.rb +0 -33
  132. data/test/env_test.rb +0 -23
  133. data/test/helper_test.rb +0 -248
  134. data/test/manifest_test.rb +0 -89
  135. data/test/mtime_strategy_test.rb +0 -42
  136. data/test/rake_tasks_test.rb +0 -37
  137. data/test/test_helper.rb +0 -33
  138. data/test/version_checker_test.rb +0 -826
  139. data/test/webpacker_test.rb +0 -49
@@ -1,37 +0,0 @@
1
- require "test_helper"
2
-
3
- class RakeTasksTest < Minitest::Test
4
- def test_rake_tasks
5
- output = Dir.chdir(test_app_path) { `rake -T` }
6
- assert_includes output, "webpacker"
7
- assert_includes output, "webpacker:check_binstubs"
8
- assert_includes output, "webpacker:check_node"
9
- assert_includes output, "webpacker:check_yarn"
10
- assert_includes output, "webpacker:clean"
11
- assert_includes output, "webpacker:clobber"
12
- assert_includes output, "webpacker:compile"
13
- assert_includes output, "webpacker:install"
14
- assert_includes output, "webpacker:verify_install"
15
- end
16
-
17
- def test_rake_task_webpacker_check_binstubs
18
- output = Dir.chdir(test_app_path) { `rake webpacker:check_binstubs 2>&1` }
19
- refute_includes output, "webpack binstub not found."
20
- end
21
-
22
- def test_check_node_version
23
- output = Dir.chdir(test_app_path) { `rake webpacker:check_node 2>&1` }
24
- refute_includes output, "Webpacker requires Node.js"
25
- end
26
-
27
- def test_check_yarn_version
28
- output = Dir.chdir(test_app_path) { `rake webpacker:check_yarn 2>&1` }
29
- refute_includes output, "Yarn not installed"
30
- refute_includes output, "Webpacker requires Yarn"
31
- end
32
-
33
- private
34
- def test_app_path
35
- File.expand_path("test_app", __dir__)
36
- end
37
- end
data/test/test_helper.rb DELETED
@@ -1,33 +0,0 @@
1
- # frozen_string_literal: true
2
- require "minitest/autorun"
3
- require "rails"
4
- require "rails/test_help"
5
- require "byebug"
6
-
7
- require_relative "test_app/config/environment"
8
-
9
- Rails.env = "production"
10
-
11
- Webpacker.instance = ::Webpacker::Instance.new
12
-
13
- class Webpacker::Test < Minitest::Test
14
- private
15
- def reloaded_config
16
- Webpacker.instance.instance_variable_set(:@env, nil)
17
- Webpacker.instance.instance_variable_set(:@config, nil)
18
- Webpacker.instance.instance_variable_set(:@dev_server, nil)
19
- Webpacker.env
20
- Webpacker.config
21
- Webpacker.dev_server
22
- end
23
-
24
- def with_rails_env(env)
25
- original = Rails.env
26
- Rails.env = ActiveSupport::StringInquirer.new(env)
27
- reloaded_config
28
- yield
29
- ensure
30
- Rails.env = ActiveSupport::StringInquirer.new(original)
31
- reloaded_config
32
- end
33
- end