Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor(@angular-devkit/build-angular): remove file-loader dependency #19882

Merged
merged 1 commit into from
Feb 4, 2021
Merged

refactor(@angular-devkit/build-angular): remove file-loader dependency #19882

merged 1 commit into from
Feb 4, 2021

Conversation

alan-agius4
Copy link
Collaborator

@alan-agius4 alan-agius4 commented Jan 27, 2021

file-loader resolves import/require() on a file into a url. This is non standard, undocumented, unsupported Webpack specific functionality. This was introduced in the Angular CLI before postcss-cli-resources existed and was never removed.

Using file-loader and postcss-cli-resources are no longer needed with Webpack 5, because of the introduction of Assets Modules.

BREAKING CHANGE:

The unsupported/undocumented, Webpack specific functionality to import/require() a non-module file has been removed.

Before

import img from './images/asset.png';

After

<img src="images/asset.png">

`file-loader` resolves `import/require()` on a file into a url. This is non standard, undocumented, unsupported Webpack specific functionality. This was introduced in the Angular CLI  before `postcss-cli-resources` existed and was never removed.

Using `file-loader` and `postcss-cli-resources` are no longer needed with Webpack 5, because of the introduction of [Assets Modules](https://webpack.js.org/guides/asset-modules/).

BREAKING CHANGE:

The unsupported/undocumented, Webpack specific functionality to `import`/`require()` a non-module file has been removed.

Before
```js
import img from './images/asset.png';
```

After
```html
<img src="images/asset.png">
```
@alan-agius4 alan-agius4 added state: blocked needs: discussion On the agenda for team meeting to determine next steps target: major This PR is targeted for the next major release labels Jan 27, 2021
@google-cla google-cla bot added the cla: yes label Jan 27, 2021
@alan-agius4 alan-agius4 removed the needs: discussion On the agenda for team meeting to determine next steps label Jan 28, 2021
@alan-agius4 alan-agius4 added action: merge The PR is ready for merge by the caretaker and removed state: blocked labels Feb 3, 2021
@alan-agius4 alan-agius4 merged commit 6732294 into angular:master Feb 4, 2021
@alan-agius4 alan-agius4 deleted the remove-file-loader branch February 4, 2021 07:42
@angular-automatic-lock-bot
Copy link

This issue has been automatically locked due to inactivity.
Please file a new issue if you are encountering a similar or related problem.

Read more about our automatic conversation locking policy.

This action has been performed automatically by a bot.

@angular-automatic-lock-bot angular-automatic-lock-bot bot locked and limited conversation to collaborators Mar 7, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
action: merge The PR is ready for merge by the caretaker target: major This PR is targeted for the next major release
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants