Commit Graph

276 Commits

Author SHA1 Message Date
alexander.akait 0b745968a2 style: improve style of code 2024-08-02 19:32:14 +03:00
alexander.akait b9d9a5d9ff style: improve style of code 2024-08-02 19:32:14 +03:00
alexander.akait ac0bd21801 style: improve style of code 2024-08-02 19:32:14 +03:00
alexander.akait 500ee96dcb style: improve style of code 2024-08-02 19:32:14 +03:00
alexander.akait 5725254415 style: improve style of code 2024-08-02 19:32:14 +03:00
alexander.akait a592b62686 style: improve style of code 2024-08-02 19:32:14 +03:00
alexander.akait 423e89b2c7 style: improve style of code 2024-08-02 19:32:13 +03:00
alexander.akait a8866644d7 fix: make bigint and globalThis optimistic 2024-06-11 17:55:33 +03:00
alexander.akait ab3e93b19e style: fix 2024-06-11 16:09:50 +03:00
alexander.akait ba4db838e9 feat: added `with` ruleset rule 2024-06-10 20:40:50 +03:00
Alexander Akait 941d3a6017
feat: added platform target properties to compiler. 2024-06-07 18:03:18 +03:00
alexander.akait bc5a787976 refactor: fix desc 2024-06-07 17:38:52 +03:00
alexander.akait 38464cf5c2 refactor: fix naming 2024-06-07 17:31:30 +03:00
alexander.akait e4b9c088e0 refactor: code 2024-06-07 17:29:10 +03:00
Alexander Akait d9ce3b1f87
feat: support css esModule generator options 2024-06-04 15:42:23 +03:00
Ivan Kopeykin ba6ace7f30 Merge branch 'main' into feat-platform-target-properties-in-compiler
# Conflicts:
#	lib/config/defaults.js
#	lib/webpack.js
#	types.d.ts
2024-05-08 19:21:41 +03:00
alexander.akait 677dc53080 refactor: logic 2024-05-07 19:01:41 +03:00
Ivan Kopeykin 0a15026561 Merge branch 'main' into feature/issue-14843 2024-05-07 16:18:30 +03:00
Ivan Kopeykin 31ddbd2232 Merge branch 'main' into feat-platform-target-properties-in-compiler 2024-05-07 16:17:55 +03:00
Ivan Kopeykin e11fb128a2 add platform target properties to compiler.
add 2 methods `compiler.getPlatformTargetInfo` and `compiler.setPlatformTargetInfo` to allow get and set platform target properties. by default resolve this properties from target option.
2024-05-01 17:28:13 +03:00
ahabhgk 7ff0a7a13e feat: support css esModule generator options 2024-04-26 14:53:52 +08:00
ahabhgk 0de9b1d2b5 fix: support "..." for resolve importsFields 2024-04-25 15:53:56 +08:00
ahabhgk bf2571b957 remove exportsConvention for css 2024-04-20 12:10:56 +08:00
Ivan Kopeykin 5203fbf5c9 add default cache names in multicompiler mode 2024-04-13 07:12:56 +03:00
Ivan Kopeykin 513126d33c add default cache names in multicompiler mode 2024-04-12 21:18:46 +03:00
alexander.akait bfe7a71f85 feat: support `node:` prefix for Node.js core modules in runtime code 2024-04-11 19:16:15 +03:00
alexander.akait 8591ba2c6f feat: support prefetch/preload for module chunk format 2024-03-25 15:39:18 +03:00
alexander.akait e3fd8e122b refactor: improve check 2024-03-21 16:58:57 +03:00
hai-x b84d19267b fix: runtimeChunk has no exports when module chunkFormat 2024-03-21 02:46:40 +08:00
alexander.akait adb1a86ae5 test: fix 2024-03-11 15:13:15 +03:00
ahabhgk 074fccb38b feat: add css head data compression 2024-03-06 14:29:57 +08:00
ahabhgk d4dc533fc3 feat: support css local ident name 2024-02-22 20:10:45 +08:00
ahabhgk f892acf0a2 use dashes case 2024-02-21 19:51:03 +08:00
ahabhgk d4a5766bbe feat: support css exports convention 2024-02-21 16:00:24 +08:00
alexander.akait 4c6f90b276 fix: set `unmanagedPaths` in defaults 2024-01-24 16:16:30 +03:00
ahabhgk fb2ca7cf28 fix: css-import should apply preferRelative 2024-01-23 19:04:35 +08:00
ahabhgk 92b33021ff feat: css named exports parser options 2024-01-16 00:23:07 +08:00
Alexander Akait 0781eac69c
feat: add warning for async module when not supported 2024-01-15 17:21:20 +03:00
ahabhgk a55f34349a feat: add warning for asyncModule 2024-01-14 18:11:12 +08:00
Nitin Kumar 412ae5425e chore: udpate prettier to v3 2024-01-14 07:11:34 +05:30
alexander.akait 8273948d9d chore: improve eslint configuration 2024-01-13 16:35:31 +03:00
ahabhgk 2715265126 wip 2024-01-12 15:57:52 +08:00
Alexander Yamakin ce6b0618ff
Merge branch 'main' into feature-14072 2024-01-09 02:59:32 +03:00
Alexander Akait 625aa9a1f5
fix: strictModuleErrorHandling is now working 2023-12-28 20:26:49 +03:00
ahabhgk b94741d870 fix: strictModuleErrorHandling not exist on output options 2023-12-04 19:52:44 +08:00
bohan 9d79d623ac minimize redundant `Template.toIdentifier` calls 2023-10-31 18:01:25 +08:00
alexander.akait 694aee940d test: prefer relative 2023-06-20 23:03:02 +03:00
Burhanuddin Udaipurwala 1d69cffbbe refactor: rewrite defaults 2023-06-19 08:59:24 +05:30
Burhanuddin Udaipurwala d06b22d9b4 feat: use css/auto as default css type 2023-06-18 21:51:48 +05:30
Sean Larkin 90ee0510b1
Merge pull request #17346 from burhanuday/feat/style-field-resolution
feat: resolve style fields in package json
2023-06-14 08:13:53 -07:00
alexander.akait 0798a75f71 refactor: update comments 2023-06-13 23:48:58 +03:00
alexander.akait 5f56793ad7 test: more 2023-06-13 20:09:30 +03:00
alexander.akait 3c4c535dd0 test: more 2023-06-13 19:34:05 +03:00
alexander.akait 805b9b61d4 fix: prefer relative 2023-06-13 19:15:16 +03:00
alexander.akait 57318df065 test: more 2023-06-13 19:07:42 +03:00
alexander.akait fcbbacf730 refactor: logic 2023-06-12 21:55:52 +03:00
Burhanuddin Udaipurwala dcfa51869b fix: resolver options 2023-06-12 19:27:38 +05:30
Burhanuddin Udaipurwala 8234b14935 fix: move resolution to by dependency 2023-06-08 09:39:15 +05:30
Burhanuddin Udaipurwala 4db1194c3b fix: dont resolve css field 2023-06-07 21:53:19 +05:30
Burhanuddin Udaipurwala 9e896d2b0b feat: style field resolution 2023-06-07 20:53:54 +05:30
alexander.akait 615af4a47b feat: allow to setup dynamic import in worker 2023-05-31 18:00:08 +03:00
alexander.akait 65ee99d136 feat: support `environment` in loader context 2023-05-31 17:59:55 +03:00
Sean Larkin 557ea853ef
Merge pull request #15470 from webpack/feat/add-readonly-cache-mode
feat: add readonly cache mode
2023-05-31 07:43:51 -07:00
alexander.akait 5c55c19c9b fix(types): regression with mini-css-extract-plugin 2023-05-25 19:41:29 +03:00
Shipov Mikhail 85a963a67b feat: add readonly flag for filesystem cache 2023-05-25 03:28:35 +03:00
alexander.akait 8f860a32d7 refactor: `strict` for config 2023-05-24 00:25:06 +03:00
Burhanuddin Udaipurwala ace1d93503 docs: add comment for todo 2023-05-16 10:05:58 +05:30
Burhanuddin Udaipurwala 8d75f3f751 feat: update defaults 2023-05-16 10:02:17 +05:30
Sean Larkin e958ac552b refactor(types): Improve module type strictness and refactor module type string usages in module subclasses 2023-05-04 23:19:11 +00:00
Michael Zlatkovsky 2203e24900 Add option to continue on trusted-types policy-creation failure
Webpack already allows for specifying a trusted-types policy name. However, its current implementation is such that if a call to trustedTypes.createPolicy fails, the code will immediately stop executing. This isn't necessarily desirable, as an application could be in the early phases of rolling out trusted types, and thus have the CSP rule for trusted-types LibraryA LibraryB etc, BUT have require-trusted-types-for 'script' be in "report only" mode (Content-Security-Policy-Report-Only). In such a configuration, and when the webpacked code is dynamically-loaded into an application, adding the policy name to the webpack config will break old versions.

This PR keeps the original behavior, but introduces a new option for onPolicyCreationFailure: "continue" | "stop" (with "stop" remaining the default). If a developer chooses the "continue" option, the policy-creation will be wrapped in a try/catch. There is no security risk to this, since for host applications that DO have strict enforcement of trusted-types, the code will simply fail when the dangerous sink is used (e.g., when doing parseFromString). And likewise, wrapping in try/catch and doing nothing on catch is OK, because the code already deals with the possibility of the trustedTypes API not being available on the browser.
2023-05-02 10:12:56 -07:00
Sean Larkin fa4cbf11a1 add more module type constants, use them across codebase 2023-03-31 10:56:32 -07:00
Thomas Tay 895df2a5a1 Worker public path changes 2022-10-21 16:30:43 -07:00
Ivan Kopeykin 1857792032 fix normalization 2022-07-09 03:23:21 +10:00
Ivan Kopeykin c82dc1eee4 Merge branch 'main' into support-create-require
# Conflicts:
#	declarations/WebpackOptions.d.ts
#	lib/config/defaults.js
#	schemas/WebpackOptions.check.js
#	schemas/WebpackOptions.json
#	test/Defaults.unittest.js
#	test/__snapshots__/Cli.basictest.js.snap
#	types.d.ts
2022-05-10 13:48:43 +03:00
Tobias Koppers e2df0ddd92
Merge pull request #15494 from webpack/feature/global-options-for-dynamic-import
add parser options for dynamic import
2022-05-10 12:44:52 +02:00
Ivan Kopeykin d6d6fb584d Merge branch 'main' into feature-14072
# Conflicts:
#	lib/DependencyTemplate.js
#	lib/javascript/JavascriptGenerator.js
#	schemas/WebpackOptions.check.js
#	types.d.ts
2022-04-05 09:34:50 +03:00
Ivan Kopeykin ee911c6aae add createRequire javascript parser option 2022-03-28 17:16:31 +03:00
Ivan Kopeykin 5a9ead926a fix discussion 2022-03-15 16:47:07 +03:00
Tobias Koppers f43047c4c2
Merge pull request #15002 from TrickyPi/fix-14927
Fix 14927
2022-03-15 11:44:23 +01:00
Ivan Kopeykin 62d50bad4b add parser options for dynamic import
- add dynamicImportMode for ContextModule
- add dynamicImportPrefetch for prefetch order
- add dynamicImportPreload for preload order
2022-03-09 10:27:02 +03:00
Tobias Koppers bd35396503 handle more cases with an regexp 2022-02-10 13:06:10 +01:00
TrickyPi d575996433 fix: exclude [name] placeholder when getting uniqueName 2022-02-09 11:11:46 +08:00
Ivan Kopeykin 75838c3f70 fix discussion 2022-02-04 17:56:47 +03:00
Ivan Kopeykin b254f350a7 update dynamicImport default, add test case 2022-02-03 15:11:43 +03:00
Ivan Kopeykin 3f10a17e2f set output.environment.module=true when output.module enabled 2022-02-02 10:13:20 +03:00
Ivan Kopeykin 232403c5e8 fix discussions 2022-01-28 12:00:53 +03:00
Ivan Kopeykin c09e82fcfe add importMeta to JavascriptParserOptions:
- enable/disable import.meta parsing
- when disabled insert output.importMetaName
2022-01-27 22:54:47 +03:00
pavelsavara 73bb43139d - add new config section importMeta
- use it in ImportMetaPlugin to switch it off as necessary
2022-01-25 16:08:56 +01:00
Tobias Koppers 1489b91a98 allow to generate only exports for css in node
add more options to the DeterministicModuleIdsPlugin to allow to opt-in into a fixed mode

optimize module iterations for module id assignment
2022-01-19 15:17:01 +01:00
Tobias Koppers 16784692d3 add `output.cssChunkFilename` 2021-12-17 12:18:01 +01:00
Tobias Koppers 453e5cac05 add support for :export {} block 2021-12-14 16:21:32 +01:00
Tobias Koppers 77b5589c1a css generation and hmr 2021-12-03 08:46:22 +01:00
Ivan Kopeykin c243a4b022 Merge branch 'main' into feature-14072
# Conflicts:
#	schemas/WebpackOptions.check.js
2021-11-30 13:56:01 +03:00
Ivan Kopeykin 3feab5bc72 set hashDigestLength=16 for futureDefaults 2021-11-29 22:12:02 +03:00
Tobias Koppers 81f6c5b61c
Merge pull request #14718 from webpack/fix-managed-path
fix regexp in managed paths
2021-11-12 14:42:05 +01:00
Ivan Kopeykin adea157a91 fix regexp in managed paths 2021-11-12 15:36:03 +03:00
Tobias Koppers 9bb5651e6a add `asyncChunks: boolean` option to disable creation of async chunks 2021-11-10 15:04:44 +01:00
Mark Molinaro 0f22db981d Fix names of options to match the exported types 2021-11-06 00:01:21 +00:00
Tobias Koppers f9e6b682ab make exportsPresence strict by default in future 2021-11-05 16:13:49 +01:00
Tobias Koppers 7afcc5d4ff allow to disable some deprecations
add `experiments.backCompat: false` (default in `experiments.futureDefaults`)
remove unused `experiments.asset`
enable `experiments.topLevelAwait` and `experiments.asyncWebAssembly` by default in `experiments.futureDefaults`
2021-11-05 09:54:51 +01:00