Comments (10)
@anothertempore This change was due another things, but yes, it affected your code, but BannerPlugin
was not design for such purposes like code injection (but yes, it is possible, that is why I reccomend to use footre for such purposes), we can't rollback use strict
changed, because it will return some problems again
from webpack.
When the output code is ESM, it will have "use strict" in the very first line, this is expected.
You don't need "use strict" when your output is ESM...
from webpack.
@alexander-akait Sorry I just updated to Non-ESM code, seems like get the same behaviour. Could you please check it again, Thanks!
https://github.com/anothertempore/webpack-banner-use-strict/tree/main
from webpack.
hey I cloned the code and tried out the steps and I see that "use strict" is infact on the 2 nd line , could you please elaborate more as to what is the main bug. Thank you . I am a student wanting to help contribute as part of the google summer of code
from webpack.
I want to say it is not a bug, because BannerPlugin is not for including acustom code, but yes, you can use this for it and in some cases it will work, #13842 is not related to your problem, we don't remove/generate "use strict"
, it is from your source code, I recommend to use:
new webpack.BannerPlugin({
banner: "const hello = 'fromBannerPlugin';",
footer: true,
raw: true,
include: /\.js$/,
}),
for code
from webpack.
@alexander-akait Thanks for your suggestion. I want to double check if I understand this correctly.
I tried webpack v5.46.0
, which is before #13842, the bundled code is:
const hello = 'fromBannerPlugin';
(self["webpackChunkwebpack_banner_use_strict"] = self["webpackChunkwebpack_banner_use_strict"] || []).push([[931],{
/***/ 463:
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "all": () => (/* binding */ every$1),
...
The use strict
is inside of function block.
However the webpack after v.5.47.0
, which is after #13842, the bundled code changed to:
const hello = 'fromBannerPlugin';
"use strict";
(self["webpackChunkwebpack_banner_use_strict"] = self["webpackChunkwebpack_banner_use_strict"] || []).push([[931],{
/***/ 463:
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "all": () => (/* binding */ every$1),
The use strict
is at the top of the file.
No need to modify any source code can notice the difference, so I am wondering which part is related to the source code?
from webpack.
hey @anothertempore there is an issue while cloning this repository can you help me with this:
from webpack.
hey @anothertempore there is an issue while cloning this repository can you help me with this:
that is a network issue consider downloading it as a zip file
from webpack.
Anyway, maybe we can implement options.afterDirectives
, but it will cost perfomance because we will need recalculate source maps
from webpack.
from webpack.
Related Issues (20)
- Implement ability to use "node:" prefixes for Node.js core modules HOT 1
- mangled exports breaks with destructuring assignment of JSON imports HOT 7
- there are confusing JDocs code
- Potential bug issues
- Webpack is not resolving node_modules specified in `resolve.modules` property.
- Dynamically loading chunks
- [Code implementation issues] ArrayQueue
- [feature] create cli HOT 3
- Not able to build node script
- bootstrap:27 Uncaught TypeError: __webpack_require__.nmd is not a function
- Self-reference dependency has unused export name when imported inside of a web worker
- support `import.meta.dirname` and `import.meta.filename` HOT 2
- <!-- identifier: admin-actions -->
- Remote into Web Component from React giving an error saying " Module does not exist in container"
- Multiple DefinePlugin instances cause aggressive cache invalidation due to collisions HOT 7
- Webpack fails when importing module
- import .scss build to js, the exported mapping is inconsistent with the usage【Urgent!!】
- Unused code elimination and deduplication is not applied when using sass's api: 'legacy' setting
- In cli, why no option named "--output-file-name" ?
- Need help with migrating a custom middleware from v3 to v5 of webpack-dev-server
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from webpack.