Skip to content

Commit 6eca86b

Browse files
committed
refactor(@angular-devkit/build-angular): replace raw-loader with Webpack 5 asset modules
With Webpack 5, the `raw-loader` is no longer needed and its functionality is provided via configuration options within the Webpack configuration via asset modules. Asset modules (https://webpack.js.org/guides/asset-modules/) provide a built-in way to provide `raw-loader`, `url-loader`, and `file-loader` functionality without additional dependencies.
1 parent 7ee3a80 commit 6eca86b

File tree

9 files changed

+12
-29
lines changed

9 files changed

+12
-29
lines changed

package.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,6 @@
201201
"protractor": "~7.0.0",
202202
"puppeteer": "10.1.0",
203203
"quicktype-core": "6.0.69",
204-
"raw-loader": "4.0.2",
205204
"regenerator-runtime": "0.13.7",
206205
"resolve-url-loader": "4.0.0",
207206
"rxjs": "6.6.7",

packages/angular_devkit/build_angular/BUILD.bazel

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,6 @@ ts_library(
171171
"@npm//postcss-import",
172172
"@npm//postcss-loader",
173173
"@npm//postcss-preset-env",
174-
"@npm//raw-loader",
175174
"@npm//regenerator-runtime",
176175
"@npm//resolve-url-loader",
177176
"@npm//rxjs",

packages/angular_devkit/build_angular/package.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,6 @@
5454
"postcss-import": "14.0.2",
5555
"postcss-loader": "6.1.1",
5656
"postcss-preset-env": "6.7.0",
57-
"raw-loader": "4.0.2",
5857
"regenerator-runtime": "0.13.7",
5958
"resolve-url-loader": "4.0.0",
6059
"rxjs": "6.6.7",

packages/angular_devkit/build_angular/src/webpack/configs/styles.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -242,7 +242,6 @@ export function getStylesConfig(wco: WebpackConfigOptions): webpack.Configuratio
242242
const postCssLoaderPath = require.resolve('postcss-loader');
243243

244244
const componentStyleLoaders: webpack.RuleSetUseItem[] = [
245-
{ loader: require.resolve('raw-loader') },
246245
{
247246
loader: postCssLoaderPath,
248247
options: {
@@ -435,6 +434,7 @@ export function getStylesConfig(wco: WebpackConfigOptions): webpack.Configuratio
435434
{
436435
exclude: globalStylePaths,
437436
use: componentStyleLoaders,
437+
type: 'asset/source',
438438
},
439439
// Global styles are only defined global styles
440440
{

packages/angular_devkit/build_webpack/BUILD.bazel

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,6 @@ ts_library(
8686
"@npm//@angular/platform-browser-dynamic",
8787
"@npm//@types/node-fetch",
8888
"@npm//node-fetch",
89-
"@npm//raw-loader",
9089
"@npm//tslib",
9190
"@npm//zone.js",
9291
],

packages/angular_devkit/build_webpack/test/angular-app/webpack.config.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@ module.exports = {
2424
],
2525
module: {
2626
rules: [
27-
{ test: /\.css$/, loader: 'raw-loader' },
28-
{ test: /\.html$/, loader: 'raw-loader' },
27+
{ test: /\.css$/, type: 'asset/source' },
28+
{ test: /\.html$/, type: 'asset/source' },
2929
{ test: /\.ts$/, loader: '@ngtools/webpack' },
3030
],
3131
},

tests/legacy-cli/e2e/assets/webpack/test-app/package.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@
1616
"zone.js": "^0.11.4"
1717
},
1818
"devDependencies": {
19-
"raw-loader": "^4.0.2",
2019
"sass": "^1.32.8",
2120
"sass-loader": "^11.0.1",
2221
"typescript": "~4.3.2",

tests/legacy-cli/e2e/assets/webpack/test-app/webpack.config.js

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,25 +3,23 @@ const path = require('path');
33

44
module.exports = {
55
resolve: {
6-
extensions: ['.ts', '.js']
6+
extensions: ['.ts', '.js'],
77
},
88
entry: './app/main.ts',
99
output: {
1010
path: path.resolve('./dist'),
1111
publicPath: 'dist/',
12-
filename: 'app.main.js'
12+
filename: 'app.main.js',
1313
},
14-
plugins: [
15-
new ngToolsWebpack.ivy.AngularWebpackPlugin(),
16-
],
14+
plugins: [new ngToolsWebpack.AngularWebpackPlugin()],
1715
module: {
1816
rules: [
19-
{ test: /\.scss$/, use: ['raw-loader', 'sass-loader'] },
20-
{ test: /\.html$/, loader: 'raw-loader' },
21-
{ test: /\.ts$/, loader: ngToolsWebpack.ivy.AngularWebpackLoaderPath }
22-
]
17+
{ test: /\.scss$/, use: ['sass-loader'], type: 'asset/source' },
18+
{ test: /\.html$/, type: 'asset/source' },
19+
{ test: /\.ts$/, loader: ngToolsWebpack.AngularWebpackLoaderPath },
20+
],
2321
},
2422
devServer: {
25-
historyApiFallback: true
26-
}
23+
historyApiFallback: true,
24+
},
2725
};

yarn.lock

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,6 @@
9494

9595
"@angular/dev-infra-private@https://github.com/angular/dev-infra-private-builds.git#876f2094018d2f0f32853784ffccab74ed1f344e":
9696
version "0.0.0"
97-
uid "876f2094018d2f0f32853784ffccab74ed1f344e"
9897
resolved "https://github.com/angular/dev-infra-private-builds.git#876f2094018d2f0f32853784ffccab74ed1f344e"
9998
dependencies:
10099
"@angular/benchpress" "0.2.1"
@@ -9425,14 +9424,6 @@ [email protected]:
94259424
iconv-lite "0.4.24"
94269425
unpipe "1.0.0"
94279426

9428-
9429-
version "4.0.2"
9430-
resolved "https://registry.yarnpkg.com/raw-loader/-/raw-loader-4.0.2.tgz#1aac6b7d1ad1501e66efdac1522c73e59a584eb6"
9431-
integrity sha512-ZnScIV3ag9A4wPX/ZayxL/jZH+euYb6FcUinPcgiQW0+UBtEv0O6Q3lGd3cqJ+GHH+rksEv3Pj99oxJ3u3VIKA==
9432-
dependencies:
9433-
loader-utils "^2.0.0"
9434-
schema-utils "^3.0.0"
9435-
94369427
read-cache@^1.0.0:
94379428
version "1.0.0"
94389429
resolved "https://registry.yarnpkg.com/read-cache/-/read-cache-1.0.0.tgz#e664ef31161166c9751cdbe8dbcf86b5fb58f774"
@@ -9968,7 +9959,6 @@ [email protected], sass@^1.32.8:
99689959

99699960
"sauce-connect-proxy@https://saucelabs.com/downloads/sc-4.6.4-linux.tar.gz":
99709961
version "0.0.0"
9971-
uid "992e2cb0d91e54b27a4f5bbd2049f3b774718115"
99729962
resolved "https://saucelabs.com/downloads/sc-4.6.4-linux.tar.gz#992e2cb0d91e54b27a4f5bbd2049f3b774718115"
99739963

99749964
saucelabs@^1.5.0:

0 commit comments

Comments
 (0)