Tobias Koppers
8f341ebaf8
add hooks during module build
2021-10-18 23:35:55 +02:00
Tobias Koppers
877cb13806
fix missing restore of resourceResolveData
...
fixes #14176
2021-10-18 09:25:00 +02:00
Tobias Koppers
508e8d50f2
expand readResource hook to cover normal file reading
2021-10-07 10:28:44 +02:00
Tobias Koppers
c76be4d738
make some things context-independent
...
* ConcatenatedModule.identifier()
* NormalModule source urls
fixes #14014
2021-08-19 14:57:39 +02:00
Tobias Koppers
720aa43bd3
handle hashbangs in javascript files
...
fixes https://github.com/vercel/next.js/issues/27806
2021-08-10 11:34:06 +02:00
Tobias Koppers
9bf6797416
fix resolving context for redirects
2021-08-05 21:10:39 +02:00
Tobias Koppers
b6609a4f6b
add `experiments.buildHttp`
...
allows to build remote resources
stores remote resources in a lockfile
2021-08-05 15:47:18 +02:00
Sven Sauleau
6c50c81350
Revert "Revert "Merge pull request #12278 from xtuc/sven/import-assertions""
...
This reverts commit 61946b7c46
.
2021-07-24 23:28:30 +01:00
Tobias Koppers
cdc9efefbe
avoid copying source types and sizes cache from unsafe cache to cached module
...
fixes #13827
avoid pre-computing source types and sizes on cleanup for not-built modules (e. g. from unsafe cache)
improve eror message when asset rendering fails
2021-07-22 09:52:56 +02:00
Tobias Koppers
61946b7c46
Revert "Merge pull request #12278 from xtuc/sven/import-assertions"
...
This reverts commit df02bc6c0a
, reversing
changes made to a6f341e243
.
2021-07-16 21:54:21 +02:00
Tobias Koppers
7f22e4721f
match on asserts
...
change Map to Record
improve test case
2021-07-16 13:17:20 +02:00
Mark Molinaro
ecf87288d5
perf: Remove Error.captureStackTrace from all WebpackErrors
2021-06-07 07:15:28 +00:00
Tobias Koppers
fe6d28dd16
Merge pull request #13412 from webpack/bugfix/watcher-invalidate-and-changes
...
track changes and removals correctly during watching
2021-05-20 15:53:52 +02:00
Tobias Koppers
8e9daad216
track changes and removals correctly
...
purge filesystem correctly
2021-05-19 19:06:58 +02:00
Tobias Koppers
973edfbd1b
support data urls as input in `new URL`
2021-05-19 11:30:09 +02:00
Tobias Koppers
9e7062f5e6
fixes #13330
2021-05-18 16:54:16 +02:00
Tobias Koppers
b0fa9ccada
pretty files
2021-05-11 09:31:46 +02:00
Tobias Koppers
77f625ab09
upgrade tooling and update types.d.ts
...
fixed SourceMap
import Schema from validate function
2021-05-07 18:01:45 +02:00
Tobias Koppers
b71e0ced35
Merge branch 'master' into johnnyreilly/master
2021-04-22 21:52:48 +02:00
Tobias Koppers
7cc40782b7
fix some internal types
2021-04-22 21:48:25 +02:00
John Reilly
40a5eb17fe
tried generic workarouuund
2021-04-20 09:18:59 +01:00
John Reilly
df44d7d8b7
attempt @sokras suggestion
2021-04-20 06:05:54 +01:00
John Reilly
a2f8808fee
apply @sokra's feedback and include runtime type
2021-04-19 19:30:58 +01:00
John Reilly
586d013b91
feat: LoaderContext type
2021-04-16 19:28:30 +01:00
Tobias Koppers
e21b1d46fe
precompile schemas for improved startup performance
2021-04-16 16:02:58 +02:00
Tobias Koppers
33b44a05ea
DefinePlugin invalidates modules when new defines are added
...
fixes https://github.com/vercel/next.js/issues/23901
2021-04-12 12:23:51 +02:00
Tobias Koppers
87b67a920d
avoid memory leak in v8 ICs after parsing and building modules
2021-03-25 14:52:12 +01:00
shYkiSto
9566a5b732
fix(NormalModule): call super to restore base module cache data
2021-03-23 16:44:03 -07:00
Tobias Koppers
9c648cf90f
improve error handling in beforeLoaders hook
2021-03-22 10:17:17 +01:00
Tobias Koppers
ecb2c18cc6
offer contextify and absoluteify in loader context as utils
2021-03-19 10:59:10 +01:00
Tobias Koppers
5af7e54e7d
Merge pull request #12896 from webpack/feature/define-cache-version
...
DefinePlugin takes care of module invalidation when values have changed
2021-03-15 16:14:35 +01:00
Tobias Koppers
103a51468b
DefinePlugin takes care of module invalidation when values have changed
...
The options of the DefinePlugin no longer have to be covered by build dependencies
2021-03-15 15:19:42 +01:00
Tobias Koppers
18967078cb
cleanup modules after compilation to avoid leaking references when they are cached
2021-03-15 11:23:54 +01:00
Tobias Koppers
d9ef8551c0
fix caching of asset modules
2021-02-04 14:13:44 +01:00
Tobias Koppers
52abb681ff
avoid allocation of warning marker weak set when unused
2021-01-27 13:36:03 +01:00
Tobias Koppers
aaadeda40b
non-fs resources should not end up in fileDependencies
...
fixes #12283
2021-01-07 15:37:19 +01:00
Tobias Koppers
09862aacf8
add warning when invalid dependencies are reported by loaders/plugins
...
add automatic workaround for invalid dependencies
#12340
#12283
2021-01-07 13:31:16 +01:00
Tobias Koppers
10aa3daede
add experiments.layers
...
add layers to define different module layers
support module layers in stats
add layer support for NormalModules
fixes #11466
2021-01-05 20:50:59 +01:00
Tobias Koppers
1e2634fdd8
manual side effects flagging should override automatic analysis
2020-12-15 14:40:54 +01:00
Tobias Koppers
c7ea63875c
improve side effects analysis to report imported and reexports symbols as side-effect-free
...
add bailout messages for side effects
2020-11-28 18:10:27 +01:00
Tobias Koppers
cbcd459d19
fix conflicting real imports and type imports
2020-11-26 10:02:59 +01:00
Tobias Koppers
11a7cac537
add useSimpleSourceMap flag to enable/disable OriginalSource for generated code
...
pass reduced options object to Source.map() function
2020-10-26 16:33:38 +01:00
liximomo
8e9614894c
fix: reorder params
2020-10-16 00:21:16 +08:00
Tobias Koppers
18c20d6327
Merge pull request #11582 from webpack/update-schema-utils
...
chore(deps): update `schema-utils`
2020-10-07 10:30:11 +02:00
Tobias Koppers
fcca1d649d
analyse source code for side effects
...
mark the module as side effects free in such cases
allow 3rd state TRANSITIVE_ONLY to be side-effect-free but dependencies should still be included (for mini-css-extract-plugin)
2020-10-06 14:10:29 +02:00
evilebottnawi
8c19efb7fd
chore(deps): update `schema-utils`
2020-10-05 21:58:54 +03:00
Tobias Koppers
9af1d7526b
refactor module concatenation to address discovered bugs/edge cases
2020-09-15 12:36:02 +02:00
Tobias Koppers
23e91dbbac
move module concatenation bailout checks to Module and for NormalModule to Generator
2020-09-15 12:35:59 +02:00
Tobias Koppers
fdd4a7713f
add ConcatenationScope
2020-09-15 12:34:50 +02:00
Tobias Koppers
eec6fbdd7c
extract loader.target from target option
2020-09-09 19:04:30 +02:00
Tobias Koppers
338f7d404c
cache modules even if they are not parsed
2020-08-26 10:03:00 +02:00
Tobias Koppers
d6e637f33c
add "snapshot" configuration to allow to configure how snapshots are created
...
expose snapshot options for module, resolve, buildDependencies and resolveBuildDependencies
move managedPaths and immutablePaths from config.cache to config.snapshot
add timestamp + hash snapshotting mode
use timestamp + hash mode by default in production and for buildDependencies
2020-08-26 01:27:13 +02:00
Tobias Koppers
8ee39ac3ac
fix dependencies when snapshot is missing
2020-08-24 20:37:12 +02:00
Tobias Koppers
cee47dc867
Store cache dependencies inside of Snapshot to reduce cache size
2020-08-24 18:16:54 +02:00
Ivan Kopeykin
4fc44a3398
add more types
2020-08-02 23:47:54 +03:00
Tobias Koppers
ca369f23c5
do cache related tasks after calling handler in watching
...
improve progress output
2020-08-01 09:00:17 +02:00
Tobias Koppers
77cdce7393
remove unused methods, improve code coverage
2020-07-29 11:14:26 +02:00
Tobias Koppers
1265765141
polish, types
2020-07-27 22:41:04 +02:00
Tobias Koppers
e16bdfda6c
refactor used exports analysis, hashing, code generation, optimizations
...
to keep track of runtimes, used exports depending on runtime
modules can have different hashes and generated code depending on runtime
chunks are only considered as equal for MergeDuplicateChunks and SplitChunks when exports used in contained modules are equal
added `optimization.usedExports: "global"` to opt-out from used exports analysis per runtime
added `splitChunks.usedExports` and `splitChunks.cacheGroups[x].usedExports` to enable/disable used exports comparing for modules
`splitChunks.usedExports` defaults to `true` in production
2020-07-27 22:40:44 +02:00
Tobias Koppers
7dad1c1c30
refactor scheme handling into plugins
2020-07-03 17:01:02 +02:00
Ivan Kopeykin
d42d2b51df
check for Windows absolute url in URLAbsoluteSpecifier util
2020-06-29 12:24:44 +03:00
Ivan Kopeykin
89abab2631
add absolute url specifier support
2020-06-26 22:16:27 +03:00
goganchic
19609937c7
implement uri imports
2020-06-05 15:15:10 +03:00
Mohsen Azimi
042b4ee7d4
Use @ts-expext-error
2020-05-12 14:34:29 +02:00
Tobias Koppers
3b49828a18
report better error message when wasm experiment is not enabled
...
#10788
2020-04-28 20:22:50 +02:00
Nitin Kumar
285529a643
chore: fix typos across the project
2020-03-10 07:29:46 +05:30
Tobias Koppers
6477ca56f8
Split options defaulting in normalization and defaults
...
Apply defaults after plugins are applied to allow plugins to feature their own defaults.
This allows to make preset plugins.
2020-02-17 19:12:54 +01:00
Tobias Koppers
87ad88174b
Merge pull request #10354 from jeffin143/minor-code-refactor
...
Minor code refactoring to use destructuring
2020-02-10 13:15:17 +01:00
jeffin143
a50f0d50e6
refactor: make use of destructuring
2020-02-08 03:08:53 +05:30
Tobias Koppers
ec5a744b30
Remove "error" and "ignore" from snapshots
2020-01-29 21:32:50 +01:00
jamesgeorge007
974d2495af
fix: typo
2020-01-19 13:31:37 +05:30
jamesgeorge007
5506161f5e
refactor: use startsWith
2020-01-19 13:29:39 +05:30
jamesgeorge007
357e707e2c
refactor: prefer destructuring approach
2020-01-19 13:28:22 +05:30
Tobias Koppers
d673e4179b
test errors message, allow custom names in schema
2020-01-17 12:17:53 +01:00
Tobias Koppers
f9846f1f91
improve code, remove unneeded old stuff
2020-01-16 14:48:52 +01:00
evilebottnawi
4e808cb613
feat: getOptions util for loader
2020-01-16 11:43:26 +01:00
Tobias Koppers
c80bae2959
faster cache access of contextify
2020-01-15 11:20:22 +01:00
Tobias Koppers
73978b1463
handle sourceRoot during source map contextify
2019-12-27 15:23:23 +01:00
Tobias Koppers
2f3da77d38
Introduce a Parser base class to improve Parser types
...
Parser.parse must be always sync
make JSON and WASM modules strict
fix inherit-types tooling to omit static methods
2019-11-30 01:36:28 +01:00
Tobias Koppers
bf6680ec0f
bugfixes, nitpicks
2019-11-26 21:24:41 +01:00
Tobias Koppers
317da38171
move data url condition to parser
...
avoid calling dataUrl function repeated
remove cache to avoid memory leak
include data url decision in module hash
refactor code for readablility
2019-11-26 15:43:58 +01:00
Sergey Melyukov
bdc61abf82
refactor: merge generators in asset modules
2019-11-26 15:42:37 +01:00
Tobias Koppers
1cd9ec58aa
track dependencies when calling resolve from loader
2019-11-25 22:10:47 +01:00
Tobias Koppers
a58717e379
types for NormalModule constructor
2019-11-20 12:43:57 +01:00
Tobias Koppers
55914b2e46
Generator.generate may return null
2019-11-20 12:43:56 +01:00
Tobias Koppers
b90f3e14a1
upgrade webpack-sources
...
make source maps and source names context independent
add enhanced-resolve declarations
add types to Module.build
fix tooling for import order to support import renaming
add support for concatenated modules in eval source maps
2019-11-12 08:59:08 +01:00
Tobias Koppers
5abf55b1af
allocate presentationalDependencies array only when needed
2019-11-10 21:05:28 +01:00
Tobias Koppers
c5483fa7ab
allocate NormalModule._sourceSizes only when needed
2019-11-10 21:05:19 +01:00
Tobias Koppers
ed81ad0fa4
allocate warnings and errors arrays only when needed
2019-11-10 21:05:16 +01:00
Tobias Koppers
a877cd51d1
add presentational dependencies which are cheaper, but allow only templating
2019-10-30 07:49:20 +01:00
Tobias Koppers
ac9fca474a
avoid creating an object for performance reasons
2019-10-09 13:36:44 +02:00
Tobias Koppers
ddc3dae0e6
refactor Module.source() and Module.getRuntimeRequirements() into Module.codeGeneration
...
add code generation phase to Compilation
add `output.iife` options to remove iife wrapper
add `experiments.outputModule` which enabled `output.module`
add `output.module` which sets defaults to `output.iife: false`, `output.libraryTarget: "module"`, `output.jsonpScriptType: "module"`, `terserOptions.module: true`
add `output.module` example
improve runtime requirements needed by ConcatenatedModule
add entry inlining, which inlines entry module code into runtime scope (only when safe)
make whole bundle strict when all modules are strict
2019-10-08 23:59:48 +02:00
Tobias Koppers
e116d18544
Merge tag 'v4.40.3' into next
...
4.40.3
2019-09-25 23:51:38 +02:00
Daniel Playfair Cal
2aef0b615b
Memoize NormalModule.size()
2019-09-20 10:44:49 +10:00
Tobias Koppers
7bde43f47a
Merge tag 'v4.40.0' into next
...
4.40.0
2019-09-13 11:12:26 +02:00
Tobias Koppers
758269e814
add emit/updateAsset to Compilation
...
add asset info with
* immutable for long term cache-able asset
* size for the asset size in bytes
* development for devtools
* hotModuleReplacement for HMR assets
show asset info in stats
2019-09-11 14:43:42 +02:00
Tobias Koppers
e507392094
add output.ecmaVersion options to set emitted code style
...
fix a bug with prefetching initial chunks
InitFragments have get[End]Content methods which get a sourceContext
RuntimeModules have implicit chunk and compilation
changed default to `output.ecmaVersion: 2015`
2019-08-26 21:32:29 +02:00
Tobias Koppers
e877e0ec91
Modules don't carry buildDependencies, they add them directly to compilation
...
buildDependencies should not be stored/cached as they are only effective when really build
2019-08-13 18:05:26 +02:00
Tobias Koppers
856235d76f
track and config build dependencies
2019-08-12 23:07:41 +02:00
Tobias Koppers
c17dfde7a8
Merge tag 'v4.37.0' into next
...
4.37.0
2019-07-24 10:51:04 +02:00