shakapacker 6.1.0 → 6.1.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1ed9a099f6d2af01d86664505f7a8cd13196d666beb526d5f7a360fb1473ce77
4
- data.tar.gz: 2e87b7d185a54fbbee7f717507c58a77093cc23eaaab500f28ccebde3560c738
3
+ metadata.gz: 5e8eb4a9da593290c85f4a4225565a8ebdde75e1a994be209a319da4e85951de
4
+ data.tar.gz: a662b202fa970d2f87713e7f1cb4fbf39b584d6638eb0d05c57a923a024e41d8
5
5
  SHA512:
6
- metadata.gz: ad534bf595ba05e3b4a2bb1eb44132c2eb0762b61de98390745940043873878d70cc1e391f4a8e51432c51e433463a9ca01f0fb6a205e990e1cf77daa0c68214
7
- data.tar.gz: a53836485058bf673e8fecd3db4f22660dd104fef0c71be543bfada101c0cce20ad83706f9ceb8e50057cce79d6e24a921d8bf8965a87a32e3f24d66d5773a17
6
+ metadata.gz: 64c7b38f28f82090984e322e276a15c093acf086262f5dd043e712613aedaf6196bbefa0413679e4629ec8ef547861cb5a9e032b30685c2dae6a6756cb2aa0f8
7
+ data.tar.gz: e0849b58c3025876469b6db0166df9c0496c7cac0c6b3c8a64c91959c61153b2e2e6acc596bf41a9cf6a02fd60c0e4be64e51513059e0b0893195ead4778cf3c
@@ -7,7 +7,7 @@ assignees: ''
7
7
 
8
8
  ---
9
9
 
10
- A bug is a crash or incorrect behavior. If you have a debugging or troubleshooting question, please open a discussion on the [Rails forum, category webpacker](https://discuss.rubyonrails.org/c/webpacker/10)
10
+ A bug is a crash or incorrect behavior. If you have a debugging or troubleshooting question, please open a discussion on [Discussions Tab](https://github.com/shakacode/shakapacker/discussions).
11
11
 
12
12
  Ruby version:
13
13
  Rails version:
@@ -7,7 +7,7 @@ assignees: ''
7
7
 
8
8
  ---
9
9
 
10
- A feature request is describes a suggested improvement. If you have a debugging or troubleshooting question, please open a discussion on the [Rails forum, category webpacker](https://discuss.rubyonrails.org/c/webpacker/10)
10
+ A feature request describes a suggested improvement. If you have a debugging or troubleshooting question, please open a discussion on the [Discussions tab](https://github.com/shakacode/shakapacker/discussions).
11
11
 
12
12
  Ruby version:
13
13
  Rails version:
data/CHANGELOG.md CHANGED
@@ -7,7 +7,12 @@ Changes since last non-beta release.
7
7
 
8
8
  *Please add entries here for your pull requests that are not yet released.*
9
9
 
10
- ## [v6.1.0] - February 4, 2020
10
+ ## [v6.1.1] - February 6, 2022
11
+
12
+ ### Added
13
+ - Support for esbuild-loader. [PR 53](https://github.com/shakacode/shakapacker/pull/53) by [tomdracz](https://github.com/tomdracz).
14
+
15
+ ## [v6.1.0] - February 4, 2022
11
16
  ### Added
12
17
  - Support for SWC loader. [PR 29](https://github.com/shakacode/shakapacker/pull/29) by [tomdracz](https://github.com/tomdracz).
13
18
 
@@ -69,7 +74,8 @@ Changes since last non-beta release.
69
74
  ## v5.4.3 and prior changes from rails/webpacker
70
75
  See [CHANGELOG.md in rails/webpacker (up to v5.4.3)](https://github.com/rails/webpacker/blob/master/CHANGELOG.md)
71
76
 
72
- [Unreleased]: https://github.com/shakacode/shakapacker/compare/v6.1.0...master
77
+ [Unreleased]: https://github.com/shakacode/shakapacker/compare/v6.1.1...master
78
+ [v6.1.1]: https://github.com/shakacode/shakapacker/compare/v6.1.1...v6.1.1
73
79
  [v6.1.0]: https://github.com/shakacode/shakapacker/compare/v6.0.2...v6.1.0
74
80
  [v6.0.2]: https://github.com/shakacode/shakapacker/compare/v6.0.1...v6.0.2
75
81
  [v6.0.1]: https://github.com/shakacode/shakapacker/compare/v6.0.0...v6.0.1
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- shakapacker (6.1.0.beta.0)
4
+ shakapacker (6.1.0)
5
5
  activesupport (>= 5.2)
6
6
  rack-proxy (>= 0.6.1)
7
7
  railties (>= 5.2)
data/README.md CHANGED
@@ -46,6 +46,7 @@ Discussion forums to discuss debugging and troubleshooting tips. Please open iss
46
46
  - [Webpack Configuration](#webpack-configuration)
47
47
  - [Babel configuration](#babel-configuration)
48
48
  - [SWC configuration](#swc-configuration)
49
+ - [esbuild loader configuration](#esbuild-loader-configuration)
49
50
  - [Integrations](#integrations)
50
51
  - [React](#react)
51
52
  - [Typescript](#typescript)
@@ -388,6 +389,12 @@ You can try out experimental integration with the SWC loader. You can read more
388
389
 
389
390
  Please note that if you want opt-in to use SWC, you can skip [React](#react) integration instructions as it is supported out of the box.
390
391
 
392
+ ### esbuild loader configuration
393
+
394
+ You can try out experimental integration with the esbuild-loader. You can read more at [esbuild-loader usage docs](./docs/using_esbuild_loader.md).
395
+
396
+ Please note that if you want opt-in to use esbuild-loader, you can skip [React](#react) integration instructions as it is supported out of the box.
397
+
391
398
  ### Integrations
392
399
 
393
400
  Webpacker out of the box supports JS and static assets (fonts, images etc.) compilation. To enable support for CoffeeScript or TypeScript install relevant packages:
@@ -0,0 +1,128 @@
1
+ # Using esbuild-loader
2
+
3
+ :warning: This feature is currently experimental. The configuration and API are subject to change during the beta release cycle.
4
+
5
+ If you face any issues, please report them at https://github.com/shakacode/shakapacker/issues.
6
+
7
+ ## About esbuild
8
+
9
+ [esbuild](https://esbuild.github.io/) is a Go-based bundler tool that can offer [significant improvement](https://esbuild.github.io/faq/#benchmark-details) over other similar tools.
10
+
11
+ While esbuild is a complete bundler, through the usage of [esbuild-loader](https://github.com/privatenumber/esbuild-loader), you can still leverage esbuild's speedy transpilation and minifcation in your Webpack-based configs.
12
+
13
+ Please note, that unlike Babel or SWC loader, esbuild-loader has got no support for things like:
14
+ - React Hot Module reload
15
+ - ES5 as a compilation target
16
+ - Automatic polyfills for missing browser features
17
+
18
+ Those are limitations of esbuild itself and might make use of esbuild-loader in your project unfeasible. If you don't care about HMR and don't need to support older browsers, esbuild-loader might be a suitable option for you.
19
+
20
+ ## Switching your Shakapacker project to esbuild-loader
21
+
22
+ To use esbuild as your transpiler today. You need to do two things:
23
+
24
+ 1. Make sure you've installed `esbuild` and `esbuild-loader` packages.
25
+
26
+ ```
27
+ yarn add -D esbuild esbuild-loader
28
+ ```
29
+
30
+ 2. Add or change `webpacker_loader` value in your default `webpacker.yml` config to `esbuild`
31
+ The default configuration of babel is done by using `package.json` to use the file within the `shakapacker` package.
32
+
33
+ ```yml
34
+ default: &default
35
+ source_path: app/javascript
36
+ source_entry_path: /
37
+ public_root_path: public
38
+ public_output_path: packs
39
+ cache_path: tmp/webpacker
40
+ webpack_compile_output: true
41
+
42
+ # Additional paths webpack should look up modules
43
+ # ['app/assets', 'engine/foo/app/assets']
44
+ additional_paths: []
45
+
46
+ # Reload manifest.json on all requests so we reload latest compiled packs
47
+ cache_manifest: false
48
+
49
+ # Select loader to use, available options are 'babel' (default), 'swc' or 'esbuild'
50
+ webpack_loader: 'esbuild'
51
+ ```
52
+
53
+ ### (Optional) Replace minification with esbuild
54
+
55
+ You can gain an additional performance boost if you replace the default Terser minification with esbuild plugin.
56
+
57
+ o do so, you need to modify your webpack configuration and use `ESBuildMinifyPlugin` provided by `esbuild-loader`.
58
+
59
+ Example:
60
+
61
+ ```js
62
+ const { webpackConfig: baseWebpackConfig, merge } = require('shakapacker')
63
+ const { ESBuildMinifyPlugin } = require('esbuild-loader')
64
+
65
+ const options = {
66
+ optimization: {
67
+ minimizer: [
68
+ new ESBuildMinifyPlugin({
69
+ target: 'es2015'
70
+ })
71
+ ]
72
+ }
73
+ }
74
+
75
+ module.exports = merge({}, baseWebpackConfig, options)
76
+ ```
77
+
78
+ For more details, see instructions at https://github.com/shakacode/shakapacker#webpack-configuration and https://github.com/privatenumber/esbuild-loader#js-minification-eg-terser.
79
+
80
+ ## Usage
81
+
82
+ ### React
83
+
84
+ React is supported out of the box, provided you use `.jsx` or `.tsx` file extension. Shakapacker config will correctly recognize those and tell esbuild to parse the JSX syntax correctly. If you wish to customize the likes of JSX fragment function, you can do that through customizing loader options as described below. You can see available options at https://github.com/privatenumber/esbuild-loader#%EF%B8%8F-options.
85
+
86
+ ### Typescript
87
+
88
+ Typescript is supported out of the box and `.tsconfig.json` root file is automatically detected. Only a subset of `.tsconfig.json` options is supported. Please refer to the [loader docs](https://github.com/privatenumber/esbuild-loader#configuration) for additional information.
89
+
90
+ ## Customizing loader options
91
+
92
+ You can see the default loader options at [esbuild/index.js](../package/esbuild/index.js).
93
+
94
+ If you wish to customize the loader defaults further, you need to create a `esbuild.config.js` file in your app config folder.
95
+
96
+ This file should have a single default export which is an object with an `options` key. Your customizations will be merged with default loader options. You can use this to override or add additional configurations.
97
+
98
+ Inside the `options` key, you can use any options available to the esbuild-loader. For the options reference, please refer to [esbuild-loader docs](https://github.com/privatenumber/esbuild-loader#%EF%B8%8F-options).
99
+
100
+ See some examples below of potential `config/babel.config.js`.
101
+
102
+ ### Example: Specifying esnext target environment
103
+
104
+
105
+ ```js
106
+ const customConfig = {
107
+ options: {
108
+ target: 'esnext'
109
+ }
110
+ }
111
+
112
+ module.exports = customConfig
113
+ ```
114
+
115
+ ### Example: Using custom jsxFragment and jsxFactory
116
+
117
+ ```js
118
+ const { env } = require('shakapacker')
119
+
120
+ const customConfig = {
121
+ options: {
122
+ jsxFragment: 'Fragment',
123
+ jsxFactory: 'h'
124
+ }
125
+ }
126
+
127
+ module.exports = customConfig
128
+ ```
@@ -15,7 +15,7 @@ default: &default
15
15
  # Reload manifest.json on all requests so we reload latest compiled packs
16
16
  cache_manifest: false
17
17
 
18
- # Select loader to use, available options are 'babel' (default) or 'swc'
18
+ # Select loader to use, available options are 'babel' (default), 'swc' or 'esbuild'
19
19
  webpack_loader: 'babel'
20
20
 
21
21
  development:
@@ -1,4 +1,4 @@
1
1
  module Webpacker
2
2
  # Change the version in package.json too, please!
3
- VERSION = "6.1.0".freeze
3
+ VERSION = "6.1.1".freeze
4
4
  end
@@ -0,0 +1,40 @@
1
+ /* eslint global-require: 0 */
2
+ /* eslint import/no-dynamic-require: 0 */
3
+
4
+ const { resolve } = require('path')
5
+ const { existsSync } = require('fs')
6
+ const { merge } = require('webpack-merge')
7
+
8
+ const getLoaderExtension = (filename) => {
9
+ const matchData = filename.match(/\.([jt]sx?)?(\.erb)?$/)
10
+
11
+ if (!matchData) {
12
+ return 'js'
13
+ }
14
+
15
+ return matchData[1]
16
+ }
17
+
18
+ const getCustomConfig = () => {
19
+ const path = resolve('config', 'esbuild.config.js')
20
+ if (existsSync(path)) {
21
+ return require(path)
22
+ }
23
+ return {}
24
+ }
25
+
26
+ const getEsbuildLoaderConfig = (filenameToProcess) => {
27
+ const customConfig = getCustomConfig()
28
+ const defaultConfig = {
29
+ loader: require.resolve('esbuild-loader'),
30
+ options: {
31
+ loader: getLoaderExtension(filenameToProcess)
32
+ }
33
+ }
34
+
35
+ return merge(defaultConfig, customConfig)
36
+ }
37
+
38
+ module.exports = {
39
+ getEsbuildLoaderConfig
40
+ }
@@ -0,0 +1,23 @@
1
+ const { resolve } = require('path')
2
+ const { realpathSync } = require('fs')
3
+ const { loaderMatches } = require('../utils/helpers')
4
+ const { getEsbuildLoaderConfig } = require('../esbuild')
5
+
6
+ const {
7
+ source_path: sourcePath,
8
+ additional_paths: additionalPaths,
9
+ webpack_loader: webpackLoader
10
+ } = require('../config')
11
+
12
+ module.exports = loaderMatches(webpackLoader, 'esbuild', () => ({
13
+ test: /\.(ts|tsx|js|jsx|mjs|coffee)?(\.erb)?$/,
14
+ include: [sourcePath, ...additionalPaths].map((p) => {
15
+ try {
16
+ return realpathSync(p)
17
+ } catch (e) {
18
+ return resolve(p)
19
+ }
20
+ }),
21
+ exclude: /node_modules/,
22
+ use: ({ resource }) => getEsbuildLoaderConfig(resource)
23
+ }))
@@ -8,6 +8,7 @@ const rules = {
8
8
  sass: require('./sass'),
9
9
  babel: require('./babel'),
10
10
  swc: require('./swc'),
11
+ esbuild: require('./esbuild'),
11
12
  erb: require('./erb'),
12
13
  coffee: require('./coffee'),
13
14
  less: require('./less'),
data/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "shakapacker",
3
- "version": "6.1.0",
3
+ "version": "6.1.1",
4
4
  "description": "Use webpack to manage app-like JavaScript modules in Rails",
5
5
  "main": "package/index.js",
6
6
  "files": [
@@ -32,6 +32,7 @@
32
32
  "devDependencies": {
33
33
  "babel-loader": "^8.2.2",
34
34
  "compression-webpack-plugin": "^9.0.0",
35
+ "esbuild-loader": "^2.18.0",
35
36
  "eslint": "^7.32.0",
36
37
  "eslint-config-airbnb": "^18.2.1",
37
38
  "eslint-config-prettier": "^8.3.0",
data/yarn.lock CHANGED
@@ -1514,6 +1514,132 @@ es-to-primitive@^1.2.1:
1514
1514
  is-date-object "^1.0.1"
1515
1515
  is-symbol "^1.0.2"
1516
1516
 
1517
+ esbuild-android-arm64@0.14.18:
1518
+ version "0.14.18"
1519
+ resolved "https://registry.yarnpkg.com/esbuild-android-arm64/-/esbuild-android-arm64-0.14.18.tgz#027a1cd57e57c6219341e116c4ac41a9952d69d1"
1520
+ integrity sha512-AuE8vIwc6QLquwykyscFk0Ji3RFczoOvjka64FJlcjLLhD6VsS584RYlQrSnPpRkv69PunUvyrBoEF7JFTJijg==
1521
+
1522
+ esbuild-darwin-64@0.14.18:
1523
+ version "0.14.18"
1524
+ resolved "https://registry.yarnpkg.com/esbuild-darwin-64/-/esbuild-darwin-64-0.14.18.tgz#a219c50aa98b5bc08d7ce3677f5bae4b8aa5101b"
1525
+ integrity sha512-nN1XziZtDy8QYOggaXC3zu0vVh8YJpS8Bol7bHaxx0enTLDSFBCXUUJEKYpmAAJ4OZRPgjXv8NzEHHQWQvLzXg==
1526
+
1527
+ esbuild-darwin-arm64@0.14.18:
1528
+ version "0.14.18"
1529
+ resolved "https://registry.yarnpkg.com/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.14.18.tgz#eb2d17d33c5991c183c99843698182bb702eb592"
1530
+ integrity sha512-v0i2n6TCsbxco/W1fN8RgQt3RW00Q9zJO2eqiAdmLWg6Hx0HNHloZyfhF11i7nMUUgW8r5n++ZweIXjAFPE/gQ==
1531
+
1532
+ esbuild-freebsd-64@0.14.18:
1533
+ version "0.14.18"
1534
+ resolved "https://registry.yarnpkg.com/esbuild-freebsd-64/-/esbuild-freebsd-64-0.14.18.tgz#de06b6ce361bdf51fb66e59b220f67c4124cc728"
1535
+ integrity sha512-XLyJZTWbSuQJOqw867tBxvto6GjxULvWZYKs6RFHYQPCqgQ0ODLRtBmp4Fqqpde52yOe45npaaoup9IXNfr32A==
1536
+
1537
+ esbuild-freebsd-arm64@0.14.18:
1538
+ version "0.14.18"
1539
+ resolved "https://registry.yarnpkg.com/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.14.18.tgz#59bb55cd6ac1b2b3c43536c067d8356f4ae7e310"
1540
+ integrity sha512-0ItfrR8hePnDcUXxUQxY+VfICcBfeMJCdK6mcNUXnXw6LyHjyUYXWpFXF+J18pg1/YUWRWO1HbsJ7FEwELcQIA==
1541
+
1542
+ esbuild-linux-32@0.14.18:
1543
+ version "0.14.18"
1544
+ resolved "https://registry.yarnpkg.com/esbuild-linux-32/-/esbuild-linux-32-0.14.18.tgz#ff68f7ec7c8b8c7dddab4d6e65f1a1d0ff3ab0b9"
1545
+ integrity sha512-mnG84D9NsEsoQdBpBT0IsFjm5iAwnd81SP4tRMXZLl09lPvIWjHHSq6LDlb4+L5H5K5y68WC//X5Dr2MtNY3DQ==
1546
+
1547
+ esbuild-linux-64@0.14.18:
1548
+ version "0.14.18"
1549
+ resolved "https://registry.yarnpkg.com/esbuild-linux-64/-/esbuild-linux-64-0.14.18.tgz#d4083d9833580090452a095cd2216100d86f3c7a"
1550
+ integrity sha512-HvExRtkeA8l/p+7Lf6aBrnLH+jTCFJTUMJxGKExh2RD8lCXGTeDJFyP+BOEetP80fuuH+Syj79+LVQ9MihdBsg==
1551
+
1552
+ esbuild-linux-arm64@0.14.18:
1553
+ version "0.14.18"
1554
+ resolved "https://registry.yarnpkg.com/esbuild-linux-arm64/-/esbuild-linux-arm64-0.14.18.tgz#8ce21e188ab9fcdb512f4ada9a637014c1294bec"
1555
+ integrity sha512-CCWmilODE1ckw+M7RVqoqKWA4UB0alCyK2bv0ikEeEAwkzinlJeoe94t9CnT/ECSQ2sL+C16idsr+aUviGp7sg==
1556
+
1557
+ esbuild-linux-arm@0.14.18:
1558
+ version "0.14.18"
1559
+ resolved "https://registry.yarnpkg.com/esbuild-linux-arm/-/esbuild-linux-arm-0.14.18.tgz#a5e1d684c451f379b1dfef7b5a2dcad84cce3f79"
1560
+ integrity sha512-+ZL8xfXVNaeaZ2Kxqlw2VYZWRDZ7NSK4zOV9GKNAtkkWURLsPUU84aUOBatRe9BH1O5FDo3LLQSlaA04ed6lhA==
1561
+
1562
+ esbuild-linux-mips64le@0.14.18:
1563
+ version "0.14.18"
1564
+ resolved "https://registry.yarnpkg.com/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.14.18.tgz#c3890f178745a9c65bad64322be2b3611c240041"
1565
+ integrity sha512-8LjO4+6Vxz5gbyCHO4OONYMF689nLderCtzb8lG1Bncs4ZXHpo6bjvuWeTMRbGUkvAhp+P6hMTzia7RHOC53wQ==
1566
+
1567
+ esbuild-linux-ppc64le@0.14.18:
1568
+ version "0.14.18"
1569
+ resolved "https://registry.yarnpkg.com/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.14.18.tgz#a355f515ca84839f5301f8ef745a2b329105e232"
1570
+ integrity sha512-0OJk/6iYEmF1J7LXY6+cqf6Ga5vG4an7n1nubTKce7kYqaTyNGfYcTjDZce6lnDVlZTJtwntIMszq1+ZX7Kenw==
1571
+
1572
+ esbuild-linux-s390x@0.14.18:
1573
+ version "0.14.18"
1574
+ resolved "https://registry.yarnpkg.com/esbuild-linux-s390x/-/esbuild-linux-s390x-0.14.18.tgz#81721c22387912778c67495d0a34527f7a2cde66"
1575
+ integrity sha512-UNY7YKZHjY31KcNanJK4QaT2/aoIQyS+jViP3QuDRIoYAogRnc6WydylzIkkEzGMaC4fzaXOmQ8fxwpLAXK4Yg==
1576
+
1577
+ esbuild-loader@^2.18.0:
1578
+ version "2.18.0"
1579
+ resolved "https://registry.yarnpkg.com/esbuild-loader/-/esbuild-loader-2.18.0.tgz#7b9548578ab954574fd94655693d22aa5ec74120"
1580
+ integrity sha512-AKqxM3bI+gvGPV8o6NAhR+cBxVO8+dh+O0OXBHIXXwuSGumckbPWHzZ17subjBGI2YEGyJ1STH7Haj8aCrwL/w==
1581
+ dependencies:
1582
+ esbuild "^0.14.6"
1583
+ joycon "^3.0.1"
1584
+ json5 "^2.2.0"
1585
+ loader-utils "^2.0.0"
1586
+ tapable "^2.2.0"
1587
+ webpack-sources "^2.2.0"
1588
+
1589
+ esbuild-netbsd-64@0.14.18:
1590
+ version "0.14.18"
1591
+ resolved "https://registry.yarnpkg.com/esbuild-netbsd-64/-/esbuild-netbsd-64-0.14.18.tgz#eaee109d527a58b582f8fa933d9cadf8840758c2"
1592
+ integrity sha512-wE/2xT9KNzLCfEBw24YbVmMmXH92cFIzrRPUlwWH9dIizjvEYYcyQ+peTMVkqzUum7pdlVLZ2CDDqAaZo/nW/w==
1593
+
1594
+ esbuild-openbsd-64@0.14.18:
1595
+ version "0.14.18"
1596
+ resolved "https://registry.yarnpkg.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.14.18.tgz#96a42615f5548529b7bb32d024bb9c6fb542778c"
1597
+ integrity sha512-vdymE2jyuH/FRmTvrguCYSrq81/rUwuhMYyvt/6ibv9ac7xQ674c8qTdT+RH73sR9/2WUD/NsYxrBA/wUVTxcg==
1598
+
1599
+ esbuild-sunos-64@0.14.18:
1600
+ version "0.14.18"
1601
+ resolved "https://registry.yarnpkg.com/esbuild-sunos-64/-/esbuild-sunos-64-0.14.18.tgz#869723d73a5f35ba2a4a6c043694d952bd4f831b"
1602
+ integrity sha512-X/Tesy6K1MdJF1d5cbzFDxrIMMn0ye+VgTQRI8P5Vo2CcKxOdckwsKUwpRAvg+VDZ6MxrSOTYS9OOoggPUjxTg==
1603
+
1604
+ esbuild-windows-32@0.14.18:
1605
+ version "0.14.18"
1606
+ resolved "https://registry.yarnpkg.com/esbuild-windows-32/-/esbuild-windows-32-0.14.18.tgz#197c8833ed0f6a82055ab63861777749d0ce95c0"
1607
+ integrity sha512-glG23I/JzCL4lu7DWFUtVwqFwNwlL0g+ks+mcjjUisHcINoSXTeCNToUN0bHhzn6IlXXnggNQ38Ew/idHPM8+g==
1608
+
1609
+ esbuild-windows-64@0.14.18:
1610
+ version "0.14.18"
1611
+ resolved "https://registry.yarnpkg.com/esbuild-windows-64/-/esbuild-windows-64-0.14.18.tgz#569832a99d87fc931a081fe7761c100578275be0"
1612
+ integrity sha512-zEiFKHgV/3z14wsVamV98/5mxeOwz+ecyg0pD3fWcBz9j4EOIT1Tg47axypD4QLwiKFvve9mUBYX1cD99qxOyw==
1613
+
1614
+ esbuild-windows-arm64@0.14.18:
1615
+ version "0.14.18"
1616
+ resolved "https://registry.yarnpkg.com/esbuild-windows-arm64/-/esbuild-windows-arm64-0.14.18.tgz#c1991848fca7b051d1d036d0723406da9696105d"
1617
+ integrity sha512-Mh8lZFcPLat13dABN7lZThGUOn9YxoH5RYkhBq0U3WqQohHzKRhllYh7ibFixnkpMLnv8OZEbl8bGLMy03MpfA==
1618
+
1619
+ esbuild@^0.14.6:
1620
+ version "0.14.18"
1621
+ resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.14.18.tgz#9c5f58c506ec9e0ec335d20bcb3f9dbd086d0648"
1622
+ integrity sha512-vCUoISSltnX7ax01w70pWOSQT+e55o+2P/a+A9MSTukJAt3T4aDZajcjeG4fnZbkvOEv+dkKgdkvljz6vVQD4A==
1623
+ optionalDependencies:
1624
+ esbuild-android-arm64 "0.14.18"
1625
+ esbuild-darwin-64 "0.14.18"
1626
+ esbuild-darwin-arm64 "0.14.18"
1627
+ esbuild-freebsd-64 "0.14.18"
1628
+ esbuild-freebsd-arm64 "0.14.18"
1629
+ esbuild-linux-32 "0.14.18"
1630
+ esbuild-linux-64 "0.14.18"
1631
+ esbuild-linux-arm "0.14.18"
1632
+ esbuild-linux-arm64 "0.14.18"
1633
+ esbuild-linux-mips64le "0.14.18"
1634
+ esbuild-linux-ppc64le "0.14.18"
1635
+ esbuild-linux-s390x "0.14.18"
1636
+ esbuild-netbsd-64 "0.14.18"
1637
+ esbuild-openbsd-64 "0.14.18"
1638
+ esbuild-sunos-64 "0.14.18"
1639
+ esbuild-windows-32 "0.14.18"
1640
+ esbuild-windows-64 "0.14.18"
1641
+ esbuild-windows-arm64 "0.14.18"
1642
+
1517
1643
  escalade@^3.1.1:
1518
1644
  version "3.1.1"
1519
1645
  resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40"
@@ -2684,6 +2810,11 @@ jest@^27.2.1:
2684
2810
  import-local "^3.0.2"
2685
2811
  jest-cli "^27.4.7"
2686
2812
 
2813
+ joycon@^3.0.1:
2814
+ version "3.1.1"
2815
+ resolved "https://registry.yarnpkg.com/joycon/-/joycon-3.1.1.tgz#bce8596d6ae808f8b68168f5fc69280996894f03"
2816
+ integrity sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==
2817
+
2687
2818
  "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0:
2688
2819
  version "4.0.0"
2689
2820
  resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
@@ -2769,7 +2900,7 @@ json5@^1.0.1:
2769
2900
  dependencies:
2770
2901
  minimist "^1.2.0"
2771
2902
 
2772
- json5@^2.1.2:
2903
+ json5@^2.1.2, json5@^2.2.0:
2773
2904
  version "2.2.0"
2774
2905
  resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz#2dfefe720c6ba525d9ebd909950f0515316c89a3"
2775
2906
  integrity sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==
@@ -3487,6 +3618,11 @@ slice-ansi@^4.0.0:
3487
3618
  astral-regex "^2.0.0"
3488
3619
  is-fullwidth-code-point "^3.0.0"
3489
3620
 
3621
+ source-list-map@^2.0.1:
3622
+ version "2.0.1"
3623
+ resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34"
3624
+ integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==
3625
+
3490
3626
  source-map-support@^0.5.6, source-map-support@~0.5.20:
3491
3627
  version "0.5.21"
3492
3628
  resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f"
@@ -3881,6 +4017,14 @@ webpack-merge@^5.8.0:
3881
4017
  clone-deep "^4.0.1"
3882
4018
  wildcard "^2.0.0"
3883
4019
 
4020
+ webpack-sources@^2.2.0:
4021
+ version "2.3.1"
4022
+ resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-2.3.1.tgz#570de0af163949fe272233c2cefe1b56f74511fd"
4023
+ integrity sha512-y9EI9AO42JjEcrTJFOYmVywVZdKVUfOvDUPsJea5GIr1JOEGFVqwlY2K098fFoIjOkDzHn2AjRvM8dsBZu+gCA==
4024
+ dependencies:
4025
+ source-list-map "^2.0.1"
4026
+ source-map "^0.6.1"
4027
+
3884
4028
  webpack-sources@^3.2.2:
3885
4029
  version "3.2.3"
3886
4030
  resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.3.tgz#2d4daab8451fd4b240cc27055ff6a0c2ccea0cde"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: shakapacker
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.1.0
4
+ version: 6.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Heinemeier Hansson
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2022-02-04 00:00:00.000000000 Z
13
+ date: 2022-02-07 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: activesupport
@@ -143,6 +143,7 @@ files:
143
143
  - docs/deployment.md
144
144
  - docs/developing_webpacker.md
145
145
  - docs/troubleshooting.md
146
+ - docs/using_esbuild_loader.md
146
147
  - docs/using_swc_loader.md
147
148
  - docs/v6_upgrade.md
148
149
  - gemfiles/Gemfile-rails-edge
@@ -210,12 +211,14 @@ files:
210
211
  - package/environments/development.js
211
212
  - package/environments/production.js
212
213
  - package/environments/test.js
214
+ - package/esbuild/index.js
213
215
  - package/index.js
214
216
  - package/inliningCss.js
215
217
  - package/rules/babel.js
216
218
  - package/rules/coffee.js
217
219
  - package/rules/css.js
218
220
  - package/rules/erb.js
221
+ - package/rules/esbuild.js
219
222
  - package/rules/file.js
220
223
  - package/rules/index.js
221
224
  - package/rules/less.js
@@ -273,7 +276,7 @@ homepage: https://github.com/shakacode/shakapacker
273
276
  licenses:
274
277
  - MIT
275
278
  metadata:
276
- source_code_uri: https://github.com/shakacode/shakapacker/tree/v6.1.0
279
+ source_code_uri: https://github.com/shakacode/shakapacker/tree/v6.1.1
277
280
  post_install_message:
278
281
  rdoc_options: []
279
282
  require_paths: