Skip to content

Commit 1738bbe

Browse files
MikyungKimhong6316
andauthored
WRO-231: Merge feature/webpack5 to develop (#95)
* WRN-18582: Migrate to webpack5 (#90) * WRN-18582: webpack5 initial commit Enact-DCO-1.0-Signed-off-by: Mikyung Kim (mikyung27.kim@lge.com) * WRN-18582: Migrated isomorphic and snapshot plugin Enact-DCO-1.0-Signed-off-by: Mikyung Kim (mikyung27.kim@lge.com) * update verbose plugin Enact-DCO-1.0-Signed-off-by: Mikyung Kim (mikyung27.kim@lge.com) * fix travis errors Enact-DCO-1.0-Signed-off-by: Mikyung Kim (mikyung27.kim@lge.com) * update dependencies Enact-DCO-1.0-Signed-off-by: Mikyung Kim (mikyung27.kim@lge.com) * fix Enact-DCO-1.0-Signed-off-by: Mikyung Kim (mikyung27.kim@lge.com) * fix based on review Enact-DCO-1.0-Signed-off-by: Mikyung Kim (mikyung27.kim@lge.com) * update shrinkwrap Enact-DCO-1.0-Signed-off-by: Mikyung Kim (mikyung27.kim@lge.com) * WRN-12124: Remove deprecated babel-eslint module (#87) * use @babel/eslint-parser * remove babel-preset-react-app * remove @babel/eslint-parser * Revert "remove @babel/eslint-parser" This reverts commit 98ec872. * Revert "remove babel-preset-react-app" This reverts commit 70a93e2. * Revert "use @babel/eslint-parser" This reverts commit 5c15b55. * babel-eslint -> @babel/eslint-parser * add CHANGELOG.md * Update package.json Co-authored-by: Mikyung Kim <mikyung27.kim@lge.com> * update npm-shrinkwrap.json * removed unused dependency Enact-DCO-1.0-Signed-off-by: Mikyung Kim (mikyung27.kim@lge.com) * update eslint-config-prettier Enact-DCO-1.0-Signed-off-by: Mikyung Kim (mikyung27.kim@lge.com) Co-authored-by: Mikyung Kim <mikyung27.kim@lge.com> * WRN-19252: Fix VerboseLogPlugin is not working (#91) * WRN-19252: Use ProgressPlugin from originated place Enact-DCO-1.0-Signed-off-by: Mikyung Kim (mikyung27.kim@lge.com) * pinned webpack version Enact-DCO-1.0-Signed-off-by: Mikyung Kim (mikyung27.kim@lge.com) * WRN-12748: Update eslint 8 related modules (#88) * update eslint 8 * Update package.json * Update package.json Co-authored-by: Mikyung Kim <mikyung27.kim@lge.com> Co-authored-by: Mikyung Kim <mikyung27.kim@lge.com> * WRN-19694: Support for React18 (#92) * update react version Enact-DCO-1.0-Signed-off-by: Mikyung Kim (mikyung27.kim@lge.com) * update dependencies Enact-DCO-1.0-Signed-off-by: Mikyung Kim (mikyung27.kim@lge.com) * WRN-19694: Add react18 support Enact-DCO-1.0-Signed-off-by: Mikyung Kim (mikyung27.kim@lge.com) * fix Enact-DCO-1.0-Signed-off-by: Mikyung Kim (mikyung27.kim@lge.com) * WRN-20218: Fix eanct pack --framework and --externals options (#93) * WRN-20218: Fix enact pack --framework Enact-DCO-1.0-Signed-off-by: Mikyung Kim (mikyung27.kim@lge.com) * fix context Enact-DCO-1.0-Signed-off-by: Mikyung Kim (mikyung27.kim@lge.com) * fix lint Enact-DCO-1.0-Signed-off-by: Mikyung Kim (mikyung27.kim@lge.com) * fix local node_modules files and files ends with .js module id Enact-DCO-1.0-Signed-off-by: Mikyung Kim (mikyung27.kim@lge.com) * fix Enact-DCO-1.0-Signed-off-by: Mikyung Kim (mikyung27.kim@lge.com) * WRN-20481: Fixed miss made module id and miss referenced library (#94) Enact-DCO-1.0-Signed-off-by: Mikyung Kim (mikyung27.kim@lge.com) * Fix prerendering regex Enact-DCO-1.0-Signed-off-by: Mikyung Kim (mikyung27.kim@lge.com) * update dependencies Enact-DCO-1.0-Signed-off-by: Mikyung Kim (mikyung27.kim@lge.com) Co-authored-by: taeyoung.hong <35059065+hong6316@users.noreply.github.com>
1 parent 10e795c commit 1738bbe

File tree

18 files changed

+7049
-7162
lines changed

18 files changed

+7049
-7162
lines changed

.eslintrc.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ module.exports = {
22
env: {
33
node: true
44
},
5-
extends: ['enact', 'plugin:prettier/recommended', 'prettier/babel', 'prettier/react'],
5+
extends: ['enact', 'plugin:prettier/recommended', 'prettier'],
66
plugins: ['import'],
77
rules: {
88
'import/no-unresolved': ['error', {commonjs: true, caseSensitive: true}],

CHANGELOG.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
1+
# unreleased
2+
3+
* Updated all dependencies, with webpack peer dependency restricted to >=5.0.0.
4+
* Updated all webpack plugins to use WeakMap since `compilation.hooks` became frozen.
5+
* `IlibPlugin`:
6+
* Added `ILIB_ADDITIONAL_RESOURCES_PATH` to defined constants if provided.
7+
* Added `publicPath` option to specify webpack public path.
8+
* `PrerenderPlugin`: Added React18 support for `ReactDOMClient.hydrateRoot` instead of `ReactDOMClient.createRoot` for prerendered apps.
9+
110
# 4.1.4 (February 18, 2022)
211

312
* `option-parser`: Added `additionalModulePaths` to specify paths to check when resolving modules.

mixins/externals.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ module.exports = {
1111

1212
// Include plugin to hook into its events
1313
const htmlPluginInstance = helper.getPluginByName(config, 'HtmlWebpackPlugin');
14+
const webOSMetaPluginInstance = helper.getPluginByName(config, 'WebOSMetaPlugin');
1415

1516
const libraries = ['@enact', 'react', 'react-dom', 'ilib'];
1617

@@ -32,7 +33,8 @@ module.exports = {
3233
publicPath: opts['externals-public'] || opts.externalsPublic || opts.externals,
3334
snapshot: opts.snapshot
3435
},
35-
htmlPlugin: htmlPluginInstance && htmlPluginInstance.constructor
36+
htmlPlugin: htmlPluginInstance && htmlPluginInstance.constructor,
37+
webOSMetaPlugin: webOSMetaPluginInstance && webOSMetaPluginInstance.constructor
3638
})
3739
);
3840

mixins/isomorphic.js

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ module.exports = {
3939

4040
// Include plugin to prerender the html into the index.html
4141
const htmlPluginInstance = helper.getPluginByName(config, 'HtmlWebpackPlugin');
42+
const webOSMetaPluginInstance = helper.getPluginByName(config, 'WebOSMetaPlugin');
4243
config.plugins.push(
4344
new PrerenderPlugin({
4445
server: reactDOMServer,
@@ -49,7 +50,8 @@ module.exports = {
4950
fontGenerator: app.fontGenerator,
5051
externalStartup: app.externalStartup,
5152
mapfile: opts.mapfile,
52-
htmlPlugin: htmlPluginInstance && htmlPluginInstance.constructor
53+
htmlPlugin: htmlPluginInstance && htmlPluginInstance.constructor,
54+
webOSMetaPlugin: webOSMetaPluginInstance && webOSMetaPluginInstance.constructor
5355
})
5456
);
5557

@@ -63,7 +65,8 @@ module.exports = {
6365
// Include plugin to attempt generation of v8 snapshot binary if V8_MKSNAPSHOT env var is set
6466
config.plugins.push(
6567
new SnapshotPlugin({
66-
target: 'main.js'
68+
target: 'main.js',
69+
webOSMetaPlugin: webOSMetaPluginInstance && webOSMetaPluginInstance.constructor
6770
})
6871
);
6972
}

mixins/verbose.js

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,17 @@
1+
const helper = require('../config-helper');
12
const VerboseLogPlugin = require('../plugins/VerboseLogPlugin');
23

34
module.exports = {
4-
apply: function (config) {
5-
return config.plugins.push(new VerboseLogPlugin());
5+
apply: function (config, opts = {}) {
6+
const prerenderInstance = helper.getPluginByName(config, 'PrerenderPlugin');
7+
const snapshotPluginInstance = helper.getPluginByName(config, 'SnapshotPlugin');
8+
9+
return config.plugins.push(
10+
new VerboseLogPlugin({
11+
prerenderPlugin: prerenderInstance && prerenderInstance.constructor,
12+
ProgressPlugin: opts.ProgressPlugin,
13+
snapshotPlugin: snapshotPluginInstance && snapshotPluginInstance.constructor
14+
})
15+
);
616
}
717
};

0 commit comments

Comments
 (0)