Commit Graph

635 Commits

Author SHA1 Message Date
tanhauhau 40be69b50a feat: throw error for invalid remotes 2021-11-28 18:08:25 +08:00
Tobias Koppers 7025319eea upgrade watchpack
use new collectTimeInfoEntries method from watchpack

add more efficient Watcher.getInfo method
2021-11-25 09:27:04 +01:00
Tobias Koppers a26b3f8a1d fix pre-compiled schema validation for Infinity and arrays
show deprecation when pre-compiled schema is invalid
2021-11-24 08:34:55 +01:00
Tobias Koppers 4876a16dcb
Merge pull request #14704 from webpack/issue-14700
fix: remove links in clean plugin
2021-11-15 11:19:40 +01:00
Tobias Koppers 66fd07d0bb update runtime code 2021-11-12 14:39:31 +01:00
evilebottnawi d55382ed79 fix: remove links in clean plugin 2021-11-10 19:58:00 +03:00
Mark Molinaro 6d3cd42008 perf: Prevent running regexs over the same strings twice 2021-11-10 01:22:09 +00: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
Tobias Koppers 7abbe4d73e fix bugs with the new hashing implementation
fix BatchedHash correctly concatenating base64 strings
fix WashHash fallback for weird unicode chars
2021-11-04 09:42:27 +01:00
Ivan Kopeykin 166be712c0 Merge branch 'main' into feature-14072
# Conflicts:
#	lib/dependencies/CachedConstDependency.js
#	schemas/WebpackOptions.check.js
2021-10-30 21:36:39 +03:00
Tobias Koppers 205d3a05ee add support for additional digest types 2021-10-28 12:35:13 +02:00
Tobias Koppers d806cf5294 use correct batch size for BatchedHash 2021-10-28 12:09:02 +02:00
Tobias Koppers ade40a4edd improve hashing for longer strings, fix max short string length 2021-10-28 11:01:29 +02:00
Tobias Koppers dcf3b02aaf add wasm md4 implementation
expose createHash is loader context
2021-10-28 00:07:26 +02:00
Tobias Koppers ae52a74802 improve buildHttp
allow multiple configurations to write to the same lockfile
add allowedUris for allowlisting
add schema validation
2021-10-19 09:21:05 +02:00
btea 857eebe495 fix: identifier typo 2021-10-13 11:01:46 +08:00
Tobias Koppers 65ad030156 faster StringXor 2021-10-04 10:36:24 +02:00
Tobias Koppers b08d6c959a make WeakTupleMap use less memory 2021-09-27 20:35:13 +02:00
Tobias Koppers 936ba06f27 faster utf-8 conversion for short strings 2021-09-24 09:25:13 +02:00
Tobias Koppers 4815710076 batch hashing 2021-09-23 23:32:40 +02:00
Tobias Koppers 3f142d9cd6 allows to select `xxhash64` as hashFunction 2021-09-23 15:02:02 +02:00
Tobias Koppers 4a8bf4c084 allow to configure all hash functions used
fix default hash function for HttpUriPlugin to sha512
2021-09-23 14:55:13 +02:00
Ivan Kopeykin 04a466082c use chunkInitFragments 2021-09-14 21:23:41 +03:00
Ivan Kopeykin 5592f6616f add experiments.futureDefaults
futureDefaults applies next major defaults
adds node.global=warn
node.__filename=warn-mock
node.__dirname=warn-mock
2021-09-14 11:29:57 +03:00
Tobias Koppers 3270275ffe split fresh packs by time
add comments

fix loosing cache

correctly store a lazy
2021-09-08 16:27:55 +02:00
Tobias Koppers 4e8a621bfa fix null module externals 2021-09-03 13:47:09 +02:00
Tobias Koppers 67e17b232b Merge branch 'main' into aleen42/main 2021-08-30 12:28:34 +02:00
Tobias Koppers dab1c30b8f use a Set for better performance 2021-08-30 12:25:46 +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 9577b88d4b track and resolve symlinks when reading context timestamps/hashes
refactor context snapshotting for abstraction purposes
add (symlink) unit test cases for FileSystemInfo snapshotting
2021-08-18 14:50:23 +02:00
Aleen f3a37ce8f8 fix(utils): avoid reserved property under ES 2021-08-11 15:25:45 +08:00
Tobias Koppers 5044d62bb2 fix clear 2021-07-16 13:07:56 +02:00
Tobias Koppers 8dd38f5c8a refactor 2021-07-16 13:05:18 +02:00
Tobias Koppers e7484bbb15
Merge pull request #13720 from webpack/bugfix/module-externals-concatenated
fix concatenation of module externals
2021-07-06 18:15:41 +02:00
Tobias Koppers b42d94e42f serialize json data as buffer and decode on demand 2021-07-06 15:00:01 +02:00
Tobias Koppers 3f7d80d823 fix concatenation of module externals
#2933
2021-07-06 14:07:45 +02:00
Tobias Koppers b0097bcff1
avoid merging for empty sets 2021-06-18 08:27:13 +02:00
Mark Molinaro b58e0799e2 Fix perf issues with lazy sets 2021-06-17 18:42:39 +00:00
Tobias Koppers f5fac83c08 clear compilation queues to reduce memory usage 2021-06-17 10:10:51 +02:00
Tobias Koppers b1b9ef34a9 cache buffer in local var 2021-05-26 21:35:46 +02:00
Tobias Koppers 4845915c0b Lazy require some modules 2021-05-26 21:35:46 +02:00
Tobias Koppers 973edfbd1b support data urls as input in `new URL` 2021-05-19 11:30:09 +02:00
Tobias Koppers b0fa9ccada pretty files 2021-05-11 09:31:46 +02:00
Tobias Koppers 3de13caba7
Merge pull request #13331 from dhruvit-r/bugfix/fs-call-signatures 2021-05-10 15:52:47 +02:00
Dhruvit Raithatha e085eebd6c make errors nullable for call signatures of filesystem types 2021-05-10 15:18:22 +05:30
Tobias Koppers 869f9c8a8c use createScriptUrl only when needed 2021-05-10 09:58:27 +02:00
Tobias Koppers 00d176419c avoid nextTick when possible 2021-04-27 09:36:52 +02:00
Tobias Koppers 0aff7d2c63 avoid creating objects for location info when not accessed 2021-04-27 09:36:52 +02:00
Tobias Koppers a89deee176 improve smartGrouping performance 2021-04-23 14:51:24 +02:00
Tobias Koppers 09240b1230 avoid leaking context of cached function 2021-04-20 15:17:54 +02:00
Tobias Koppers e21b1d46fe precompile schemas for improved startup performance 2021-04-16 16:02:58 +02:00
Tobias Koppers bbcc5a8ebe add caching on ModuleGraph
cache star reexport assignment
2021-04-14 09:11:23 +02:00
Tobias Koppers ea3e0a39ac add experiments.executeModule
rename runModule -> executeModule
improve error reporting
2021-04-12 12:27:55 +02:00
Tobias Koppers 0a9041e1cc AsyncQueue only returns WebpackError 2021-04-12 12:27:55 +02:00
Tobias Koppers 065177df66 add experimental support for build time execution
allow to execute a part of the module graph at build time
e. g. to generate code or other assets

loaders have access to that via `this.importModule(request, options)`
2021-04-12 12:27:54 +02:00
Tobias Koppers 651e2ff0cb fix subtraction of runtimes
fixes #13063
2021-04-07 15:50:28 +02:00
Tobias Koppers 3d90836f29 fix some edge cases in deterministicGrouping and add more tests 2021-03-31 16:55:30 +02:00
Tobias Koppers 7dc945f147 allow to place runtime outside of the output path 2021-03-16 13:07:58 +01:00
Tobias Koppers a59b136fe8 improve correctness of maxSize splitting for edge cases 2021-03-09 22:47:05 +01:00
Wojciech Maj a93fd01918 fix deterministicGrouping looping over group.nodes's negative indexes
Fixes #12487
2021-03-09 22:39:33 +01:00
Tobias Koppers e28788a4d4
Merge pull request #12714 from jasongrout/uncpaths 2021-03-06 19:34:55 +01:00
Tobias Koppers 1ebc7ca974 fix some incorrect properties accesses
fix some edge cases with MultiCompiler

fixes #12770
2021-02-24 20:12:32 +01:00
Tobias Koppers 1a584d3148 ensure all successful compiled modules are persistent cached
fix some test cases and code to ensure this is true
2021-02-23 15:36:53 +01:00
Tobias Koppers 87a70e03b8 unset targets when a harmony star reexport is hidden by another one 2021-02-22 21:56:00 +01:00
Jason Grout 194ba960fe Convert path testing functions to use node builtin isAbsolute function. 2021-02-22 09:30:45 -08:00
Jason Grout 2c01738149 Lint fix 2021-02-18 09:25:19 -08:00
Jason Grout 058951faa1 Handle Windows UNC paths as Windows paths
Fixes https://github.com/webpack/webpack/issues/12305

UNC paths are defined in section 2.2.57 of https://winprotocoldoc.blob.core.windows.net/productionwindowsarchives/MS-DTYP/%5bMS-DTYP%5d.pdf. See also https://docs.microsoft.com/en-us/dotnet/standard/io/file-path-formats#unc-paths, for example.
2021-02-18 08:53:42 -08:00
Tobias Koppers b29dd3d224 add renderStartup hook 2021-02-09 21:27:10 +01:00
Tobias Koppers b352f20d2d add "first" to SetHelpers 2021-02-09 21:26:30 +01:00
Tobias Koppers 5c6720850a
Merge pull request #12565 from webpack/bugfix/12562
fix #12562
2021-02-02 21:13:14 +01:00
Tobias Koppers 08562140d8
Merge pull request #12557 from webpack/feature/profile 2021-02-02 20:32:06 +01:00
Tobias Koppers e5cca2fa1a fix #12562 2021-02-02 20:26:52 +01:00
Tobias Koppers 9f07ecb88b methods in OutputFileSystem must be optional to avoid breaking change 2021-02-02 19:15:34 +01:00
Sergey Melyukov 6559a55c66 fix after merge 2021-02-02 10:41:46 +03:00
Sergey Melyukov 654e4e1ba0 Merge remote-tracking branch 'upstream/master' into clean 2021-02-02 10:38:41 +03:00
Tobias Koppers 3e1c7082d2 log out module profile summary when profiling is enabled 2021-02-02 03:29:21 +01:00
Tobias Koppers 858b0c8727 avoid allocation of inner map in RuntimeSpecMap when only a single runtime is used 2021-01-27 14:47:16 +01:00
Tobias Koppers 43df5e3cde improve hash caching 2021-01-26 14:45:11 +01:00
Tobias Koppers f25345cae9 refactor code generation and HMR plugin to generate real module hashes for HMR 2021-01-26 14:45:11 +01:00
Tobias Koppers 97b83161d9 move responsibility of exports info and connected modules hashing from Dependencies to Module
fixes a bug where modules are incorrectly cached when exports info of connected modules change
2021-01-24 21:36:36 +01:00
Peter Somogyvari ded4cc64a0 perf(parser): binary search for comments in range
Signed-off-by: Peter Somogyvari <peter.metz@unarin.com>
2021-01-19 11:55:35 -08:00
Tobias Koppers c80c8fe5c2
Merge pull request #10702 from vankop/webpack-is-included
feat: new dependency __webpack_is_included__
2021-01-16 19:02:41 +01:00
Tobias Koppers 7438a7b79f
Merge branch 'master' into webpack-is-included 2021-01-15 14:21:07 +01:00
Tobias Koppers f76ffc0c01 improve resolveBuildDependencies performance 2021-01-15 10:50:02 +01:00
Tobias Koppers a2e326129c make filesystem types compatible with memfs and normal fs
fixes #12400
2021-01-13 10:14:58 +01:00
Tobias Koppers 58984b77cb update type annotations 2021-01-11 22:15:31 +01:00
Tobias Koppers 38c7cf2d85 fix caching crash in ConcatenatedModule
Ensure that no warnings/errors occur during testing
add serialization for some missing warnings
2021-01-08 15:44:26 +01:00
Tobias Koppers 7db04904ea fix types in resolveByProperty and removeOperations 2021-01-06 14:44:32 +01:00
Tobias Koppers 6107ab8cca improve handling of non-object values in clever merge
improve caching
2021-01-06 10:51:44 +01:00
Tobias Koppers b067bad545 allow function in byProperty configurations 2021-01-06 10:14:20 +01:00
Tobias Koppers 67d2e227f4 add resolveByProperty to cleverMerge 2021-01-06 10:14:20 +01:00
highonweb bc1911bf78 Changed name of memorize function to memoize 2020-12-27 03:02:57 +05:30
Tobias Koppers 8b685637e1
slice instead of substring 2020-12-22 14:24:32 +01:00
Iván Zaera Avellón 39adecf568
fix #12255
When looking for common suffixes, strip the common prefix (if any) from
the items, so that the method doesn't fail when they overlap.
2020-12-22 12:29:08 +01:00
Tobias Koppers 4387e4d972 fix #12232 2020-12-18 21:54:18 +01:00
Tobias Koppers 9563338d90 improve reading of cache file 2020-12-14 13:16:20 +01:00
Tobias Koppers 005bdbbefd fix memory leak when using createReadStream 2020-12-14 11:06:15 +01:00
Tobias Koppers c6311bae62 allow bigger cache sizes 2020-12-14 08:16:08 +01:00
Tobias Koppers c2069f8db7 fix handling of multiple identical assets with different querystrings
fixes #11894
2020-12-09 16:10:32 +01:00
Tobias Koppers c847009d87 typescript workarounds
see https://github.com/microsoft/TypeScript/issues/41697
2020-11-30 08:42:35 +01:00
Tobias Koppers d46f945572 fix problem when HMR and different runtimes
allow HMR to work in WebWorkers too
2020-11-28 13:53:32 +01:00
Tobias Koppers 18495151b8 handle the case when execution order in a concatenated module is runtime-dependent
fix #11863
2020-10-29 17:53:56 +01:00
Tobias Koppers 03c795fcd8 handle edge case for boolean matcher 2020-10-27 11:43:54 +01:00
Tobias Koppers 7661ad868a generate code that executes depending on runtime
fixes #11770
2020-10-27 06:30:49 +01:00
Tobias Koppers 0fe03c7af0 fix unused modules in chunk when optimizing runtime-specific
fixes #11673
2020-10-16 11:47:33 +02:00
Tobias Koppers 2888c8a406
Revert "fix unused modules in chunk when optimizing runtime-specific " 2020-10-15 20:17:26 +02:00
Tobias Koppers 50c3a83340 fix unused modules in chunk when optimizing runtime-specific
fixes #11673
2020-10-15 10:18:41 +02:00
Tobias Koppers 65eca2e529 expose webpack from Compiler
fix some jsdoc descriptions
2020-10-12 20:16:58 +02:00
Nitin Kumar 8c8f4c93bb fix: getNumberOfMatchingSizeTypes function call 2020-10-08 09:34:50 +05:30
Sergey Melyukov 8c2e4f595b Merge remote-tracking branch 'upstream/master' into clean 2020-10-07 14:19:55 +03:00
Sergey Melyukov 132ca09a11 (refactor): CleanPlugin 2020-10-07 13:48:51 +03:00
Sergey Melyukov 4b04a4b1f5 (feat): add output.clean 2020-09-30 18:33:30 +03:00
Tobias Koppers 3390ab4c32 update enhanced-resolve and loader-runner for fragment escaping support
add fragment escaping support

fixes #11555
2020-09-30 10:22:26 +02:00
Tobias Koppers 746d377614 improve array to set deprecation for access to the first item 2020-09-25 10:53:12 +02:00
Tobias Koppers 48010fb955 replace output.ecmaVersion with output.environment and more detailed flags 2020-09-10 11:12:28 +02:00
Tobias Koppers 041dfe15c7
Merge pull request #11440 from webpack/bugfix/hmr-incorrect-dispose
fix incorrect disposing of modules during HMR
2020-09-09 03:50:42 +02:00
Tobias Koppers 12997f0a6c fix incorrect disposing of modules during HMR 2020-09-08 10:25:41 +02:00
Tobias Koppers ed06a7f83a new Worker() support
add support for async anonymous entrypoints from inside the codebase
add worker example
move entry options into Entrypoint and receive them from there
2020-09-08 07:37:20 +02:00
Tobias Koppers a778c17fd3 better force handling 2020-09-02 14:10:08 +02:00
Tobias Koppers be021e00f4 add grouping of modules 2020-09-01 18:31:22 +02:00
Tobias Koppers 3ea9400505 add grouping of assets 2020-09-01 18:16:43 +02:00
Tobias Koppers 312e2ab587 Merge branch 'master' into feature/asset-url 2020-08-28 20:54:50 +02:00
Tobias Koppers dff76973e4 type fixes 2020-08-24 18:35:28 +02:00
Tobias Koppers a4a5a76703 make original source in CachedSource lazy 2020-08-24 18:16:56 +02:00
Tobias Koppers 76a6e9b90f create a class for Snapshot for faster access and smaller serialization 2020-08-24 18:16:53 +02:00
Tobias Koppers 5b0379dfca LazySet do not check for duplicate LazySets in addAll 2020-08-24 18:16:52 +02:00
Tobias Koppers 71cf7f4dc8 add support for reexporting in CommonJS
and necessary refactoring + fixes for that
2020-08-17 21:32:47 +02:00
Ivan Kopeykin 4157166263 Merge branch 'master' into feature/asset-url
# Conflicts:
#	test/Defaults.unittest.js
2020-08-16 15:47:05 +03:00
Tobias Koppers 0b66fdacdf StringXor bugfix 2020-08-14 18:40:57 +02:00
Tobias Koppers a0e79afb07 StringXor performance improvement 2020-08-14 16:19:12 +02:00
Tobias Koppers 41a8e2ea48 use xor to hash modules instead of sorting them 2020-08-14 10:54:24 +02:00
Tobias Koppers 50172039bd
Merge pull request #11315 from webpack/refactor/reexport-tracking
track reexport target during providedExports analysis
2020-08-13 17:18:24 +02:00
Tobias Koppers 163e7674a0 track the target binding of harmony reexports
display target binding in module info header
check conflicting star exports (fixes #7562) when statically known
2020-08-11 20:13:01 +02:00
chenxsan 94e47d5721 fix ExternalModule bug 2020-08-11 20:42:32 +08:00
Ivan Kopeykin 8cf511dc94 Merge branch 'master' into chore/todos-to-defined-types 2020-08-06 22:48:20 +03:00
Ivan Kopeykin 6a7978f1bc support persistent cache 2020-08-06 20:00:22 +03:00
Tobias Koppers b951d08930
Merge pull request #11271 from mpeyper/bugfix/versionlt-runtime-issue
fix: minified versionLt did not match the original function
2020-08-05 09:32:18 +02:00
Tobias Koppers 6e71413a3e generate runtime code with special-lint-fix
verify runtime code in CI
2020-08-05 08:45:51 +02:00
Michael Peyper f3688dfb57 fix: minified versionLt did not match the original function 2020-08-04 20:08:05 +10:00
Tobias Koppers 305dab3ae1 improve and fix backtracing to root folder from nested directories 2020-08-04 09:36:49 +02:00
Ivan Kopeykin 4fc44a3398 add more types 2020-08-02 23:47:54 +03:00
Tobias Koppers a4f17775b1 fix dependOn behavior with runtimes, fix runtime passing by entry 2020-07-30 11:18:09 +02:00
Tobias Koppers 77cdce7393 remove unused methods, improve code coverage 2020-07-29 11:14:26 +02:00
Tobias Koppers 3465b00a62 performance, cleanup 2020-07-28 22:05:13 +02:00
Tobias Koppers 6b4ce6e011 improve HMR plugin with multiple runtimes 2020-07-28 14:06: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 b1eac4ab29 Use computed resolve options in context alternatives
deprecate ContextModuleFactory.hooks.alternatives because we need the options in the hook
2020-07-15 14:13:35 +02:00
Tobias Koppers 4e32a3f3de performance improvements
only add `browser` condition on web targets
default options should not share objects
check for "..." from reverse as this is more likly
2020-07-15 14:13:33 +02:00
Tobias Koppers 0d857e3942 Improve cleverMerge to respect byDependency order correctly
Allow to use "..." in `option.resolve` too
Add "..." to schema when needed

Apply dependency specific mainFields, aliasFields and conditionNames only
for cjs and esm dependencies or when none is specified for backward-compat.
2020-07-15 14:13:31 +02:00
Tobias Koppers fd9b399ae9 Create Cache facade to make it easier to use
add missing serializers for classes used in test suite
2020-07-15 11:14:28 +02:00
Tobias Koppers 6c425546df Avoid using real watchers in MultiWatching test case
add watchFileSystem to MultiCompiler and typings
2020-07-08 11:17:00 +02:00
Tobias Koppers e27eb830f7
Merge pull request #11105 from webpack/mf/semver
add full Semantic Versioning for Shared Modules
2020-07-06 23:18:00 +02:00
Tobias Koppers d9435e0e3e
Merge pull request #11075 from vankop/import-meta
add import.meta support
2020-07-06 20:19:23 +02:00
Tobias Koppers 1bb02df61e
Merge pull request #11095 from vankop/support-url-requests
Support url requests
2020-07-06 20:03:52 +02:00
Tobias Koppers 5f4c4662dd rename parsePathQueryFragment to parseResource and add caching 2020-07-06 17:39:52 +02:00
Tobias Koppers 7dad1c1c30 refactor scheme handling into plugins 2020-07-03 17:01:02 +02:00
Tobias Koppers a11922fea3 improve windows absolute path detection 2020-07-03 10:18:41 +02:00
Tobias Koppers 92472698d7 fix edge case of string with number compare 2020-07-02 16:10:04 +02:00
Tobias Koppers 67acac367b fix logic handling build version
build version should be ignored in matching ranges
2020-07-02 16:10:01 +02:00
Tobias Koppers 2689d026b1 refactor semver logic to be internal
share scope uses string version instead of parsed one
2020-07-02 16:09:57 +02:00
Tobias Koppers 7ef92097b4 Size optimization 2020-07-02 16:09:48 +02:00
Tobias Koppers 33945ad2b3 fix matching of string version in prerelease ranges
versions are in a contiguous range of:
0, 1, ..., 9, 10, 11, ..., 100, ..., a, b, c, ..., alpha, ..., beta, ..., etc, ...
2020-07-02 16:09:48 +02:00
Tobias Koppers 3fcd5f9bc5 add full Semantic Versioning for Shared Modules
change storage format in the share scope
choose shared module deterministic from the same origin
remove array syntax from version and requiredVersion in schema
2020-07-02 16:09:39 +02:00
Tobias Koppers 23f922bed3 make bundles with Module Federation more stable 2020-07-02 15:28:17 +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
Ivan Kopeykin de18533373 update import.meta
- add evaluation to import.meta and import.meta.url
- bare import.meta is disallowed
2020-06-24 22:47:43 +03:00
Ivan Kopeykin 4cd526f970 hmr support update
- import.meta.hot to import.meta.webpackHot
- create separate tests for import.meta.webpackHot
- remove HMRApiDependency in favor of ConstDependency
2020-06-24 17:22:28 +03:00
Tobias Koppers 854c67b6b9
Merge pull request #11070 from webpack/feature/split-chunk-improvements
Feature/split chunk improvements
2020-06-24 11:09:24 +02:00
Tobias Koppers ba9027ac1a
Merge pull request #10719 from goganchic/feature/data-uri
Implement Data URI imports
2020-06-24 11:08:44 +02:00
Ivan Kopeykin 1beb4e5707 support import.meta 2020-06-23 01:03:52 +03:00
Ivan Kopeykin 104845a419 support import.meta.hot 2020-06-22 18:49:57 +03:00
Tobias Koppers ab01c0628e fixes #11026 2020-06-22 09:31:03 +02:00
Tobias Koppers 630ebfdf47 rename module federation classes for be more specific 2020-06-18 15:11:29 +02:00
Tobias Koppers 0397701d85 improve types, moved byDependency logic into ResolverFactory 2020-06-17 22:17:14 +02:00
Ivan Kopeykin 198e51a485 Merge branch 'master' into exports-field
# Conflicts:
#	lib/dependencies/ImportDependency.js
#	lib/sharing/ConsumeSharedPlugin.js
#	lib/sharing/ProvideSharedPlugin.js
#	types.d.ts
2020-06-16 21:16:41 +03:00
Tobias Koppers c00fec3aa7
Merge pull request #10964 from pushkar100/feature/lazy-load-named-exports
Lazy loading only required exports from dynamic import()
2020-06-16 15:04:06 +02:00
Tobias Koppers 1c42f71250 allow to provide and consume multiple versions of shared modules 2020-06-13 14:45:37 +02:00
Tobias Koppers a4ac8f0328 Cleanup 2020-06-10 14:01:24 +02:00
Ivan Kopeykin d2a08e3cc8 rework how byDependency applied
remove dependencyType parameter for resolver factory
add dependencyType option in enhanced resolve options
2020-06-09 01:32:24 +03:00
goganchic 819dd10a22 rename dataURIMimetype and remove redundant regex check 2020-06-05 16:08:06 +03:00
goganchic 4b59a302a2 add mimetype rule 2020-06-05 15:15:11 +03:00
goganchic 19609937c7 implement uri imports 2020-06-05 15:15:10 +03:00
Martyn Dale 2124b3f684 Add serialization to DllModule and EntryDependency 2020-06-02 12:26:14 +02:00
Martyn Dale 1eaf3150fe Add serialization to DelegatedModule.js and DelegatedSourceDependency.js
Add the applicable serialize and deserialize functions to the Modules and add to internalSerializables
2020-06-02 12:26:09 +02:00
Ivan Kopeykin 57bd6ed348 Merge branch 'master' into exports-field
# Conflicts:
#	lib/container/OverridablesPlugin.js
2020-06-01 15:14:47 +03:00
Tobias Koppers 707a103262 merge resolve.byDependency defaults with user provided values
allow to use resolve.byDependency in module.rules
2020-05-28 19:55:14 +02:00
Tobias Koppers e78a76b2e0 remove all overrides and overridables related code 2020-05-26 17:26:28 +02:00
Tobias Koppers edf03440ba add SharePlugin
let ModuleFederationPlugin use the SharePlugin
update container test cases to new behavior
2020-05-26 17:11:21 +02:00
Tobias Koppers 1b3246361b add consume shared module plugin 2020-05-25 23:14:19 +02:00
Tobias Koppers e659ec494c add provide shared module plugin 2020-05-25 17:14:59 +02:00
Tobias Koppers a468cbbd2e add provide shared module plugin 2020-05-23 16:08:51 +02:00
Tobias Koppers 49752a06a8 cleanup asset processing
deprecate writing to compilation.assets after sealing.
merge all asset processing into single hook with stages.
Deprecate additionalChunkAssets and optimizeChunkAssets.
Redirect additionalAssets, optimizeAssets to processAssets for backward-compat.
Remove finishAssets hook without deprecation as it was not in v4.
2020-05-22 10:39:21 +02:00
Nathan Shively-Sanders 362514c10b fix 4.0 build errors 2020-05-12 14:37:09 +02:00
Mohsen Azimi 042b4ee7d4 Use @ts-expext-error 2020-05-12 14:34:29 +02:00
Tobias Koppers 6b13cafa20 dedupe remote overrides
fix transitive overriding
fix missing overriables for empty overridables
2020-05-04 15:01:50 +02:00
Tobias Koppers a92189e26d fix persistent caching for container modules 2020-04-29 13:08:34 +02:00
Tobias Koppers 004a24760a make ContainerEntryModule serializable 2020-04-29 12:45:54 +02:00
Tobias Koppers a432c3ff18 Merge branch 'master' into dev-1 2020-04-29 12:39:07 +02:00
Tobias Koppers b9c50fdb09 fix jsdoc documentations 2020-04-28 19:42:58 +02:00
Tobias Koppers 5887c20ab0 Merge tag 'v5.0.0-beta.15' into dev-1
5.0.0-beta.15
2020-04-22 07:37:49 +02:00
Tobias Koppers 3f9e6d5ec6 move tooling into separate repo, add type generation and test types 2020-04-21 09:25:38 +02:00
Tobias Koppers 618960469d ignore DebugHash class 2020-04-17 10:53:30 +02:00
Tobias Koppers e80bcac1b5 ignore coverage for toStringTag 2020-04-17 09:42:09 +02:00
Tobias Koppers 49a6184e20 add tests to increase code coverage 2020-04-16 22:20:04 +02:00
Tobias Koppers d5c31ab864 Merge branch 'master' into dev-1 2020-04-14 12:48:38 +02:00
Ivan Kopeykin 2d451a57b2 feat: new dependency __webpack_is_included__ 2020-04-12 03:04:41 +03:00
Mohsen Azimi 7b07a8db66 Upgrade to Prettier 2 2020-03-28 18:20:24 -04:00
Tobias Koppers 575d6aa4f0 Merge branch 'master' into dev-1 2020-03-20 09:58:13 +01:00
evilebottnawi b16a345e9f chore: setup cspell 2020-03-13 12:28:55 +03:00
evilebottnawi 02844747a7 chore: setup cspell 2020-03-13 12:27:45 +03:00
evilebottnawi dafa4cd69a chore: setup cspell 2020-03-12 19:51:26 +03:00
Tobias Koppers d102340a3d cleanup open things 2020-02-26 23:53:44 +01:00
Marais Rossouw 905f2475ff feat: Adds ContainerPlugin
Co-authored-by: Zack Jackson <zackary.l.jackson@gmail.com>
2020-02-26 17:47:15 +01:00
Tobias Koppers 83b7faa67c get rid of hack for remote override module 2020-02-26 17:16:01 +01:00
Tobias Koppers 8792aa0830 add ContainerReferencePlugin 2020-02-26 16:42:24 +01:00
Tobias Koppers 1c630f1435 add OverridablesPlugin 2020-02-24 15:15:23 +01:00
Tobias Koppers cb543a444c seralization class for resolver cache 2020-01-28 11:35:29 +01:00
Tobias Koppers 712f2bbda1 shorter LazySet serialization 2020-01-28 11:35:21 +01:00
Tobias Koppers b40a345451 refactor Persistent Cache
cache is split into multiple .pack files which represent usage of cache items
this allows to only read/deserialize files that are needed
and reduces the need to rewrite .pack files
while still packaging multiple cache items together

lazy (de)serialization system has changed to allow writeLazy and writeSeparate
2020-01-28 11:35:06 +01:00
Tobias Koppers c80bae2959 faster cache access of contextify 2020-01-15 11:20:22 +01:00
Sergey Melyukov 5d18a8e27d persistent cache for concat modules 2019-12-16 21:06:24 +01:00
Tobias Koppers 782e4535ac Refactor how exportsType work
add flagged exportsType for __esModule flagged
add getExportsType to merge strict with exportsType
move CommonJsStuffPlugin into CommonJsPlugin
split CommonJsPlugin into imports and exports part
enable minimal tree shaking for CommonJs imports and exports
2019-12-06 11:13:08 +01:00
Tobias Koppers accd66c3ba
Merge pull request #9971 from smelukov/deprecation-codes
Add deprecation codes
2019-11-15 12:04:47 +01:00
Tobias Koppers e9f8e63593 Make RestoreProvidedData a custom class for visibility in profiles 2019-11-14 20:58:05 +01:00
Sergey Melyukov a214be41a0 add deprecation codes 2019-11-14 17:03:15 +03:00
Tobias Koppers 137363c5de more space-efficient ReplaceSource serialization 2019-11-13 12:19:00 +01:00
Tobias Koppers 8aafff6600 Cut off long calback chains in the queue 2019-11-12 12:21:47 +01:00
Tobias Koppers 2d302db632 use setImmediate to start queue processing after I/O 2019-11-12 11:49:51 +01:00
Tobias Koppers d7b9127e59 upgrade webpack-sources
use public methods for serialization
2019-11-12 09:40:23 +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 14ee25cd0a add support for tree-shaking JSON modules 2019-11-05 10:37:59 +01:00
Tobias Koppers e8f2a8329d avoid emitting files when they already exits in output filesystem 2019-11-04 09:23:18 +01:00
Tobias Koppers 4cc4b4010e make LazySet serializable 2019-11-01 12:21:15 +01:00
Tobias Koppers 6b352c244a make RequireIncludeDeprecationWarning serialize-able 2019-10-30 07:49:24 +01:00
Tobias Koppers 41d23461b8 flatten LazySet before merging to find duplicate inner Sets 2019-10-28 14:10:55 +01:00
Tobias Koppers a1cfefe821 fix typescript regression 2019-10-22 11:04:48 +02:00
Tobias Koppers 6b9ec2adfa
Merge pull request #9801 from webpack/compat/avoid-dynamic-require
avoid a dynamic require in lib/util/serialization
2019-10-11 12:12:59 +02:00
Tobias Koppers 686725a6c3 avoid a dynamic require in lib/util/serialization
this allows ncc to upgrade
2019-10-11 10:01:08 +02:00
evilebottnawi 8764f14794 feat: improve DX with `output.ecmaVersion` option 2019-10-11 00:43:27 +03:00
Tobias Koppers 69a545c444 Deprecate MainTemplate, ChunkTemplate, ModuleTemplate
move logic and hooks to JavascriptModulesPlugin
2019-10-08 23:46:26 +02:00
Tobias Koppers b80174a069 Improve backward-compat for various things
to enable mini-css-extract-plugin
2019-09-26 22:06:54 +02:00
Tobias Koppers f7f408372f Merge tag 'v4.41.0' into next
4.41.0
2019-09-26 21:41:52 +02:00
Tobias Koppers 6f1c685071 Improve performance of LimitChunkCountPlugin a lot 2019-09-24 16:32:20 +02:00
Tobias Koppers ec518945f1 fix edge case in scope analysis
fix double declaration problem in variable declarations
remove TrackingSet
rename StackedSetMap to StackedMap and remove add method
add more scope analysis test
2019-09-05 13:34:16 +02:00
Tobias Koppers d3cf3928f5 Persistent Caching fixes
improve error handling in pack file cache strategy
support context timestamp snapshot
make ContextModule serializable
fix snapshotting bug of managed paths
use managed and immutable path info for context hashes and timestamps
enabled managedPaths for node_modules during cache tests
2019-09-04 16:33:54 +02:00
Tobias Koppers ab169893a1 refactor Parser to allow variable tagging
use variable tagging in harmony pluging (instead of magic renaming)
Parser no longer calls hooks.expression for x in `x = ...`, hooks.pattern is called instead
remove rootName argument from hooks.expressionMemberChain and hooks.callMemberChain
2019-09-03 14:17:46 +02:00
Tobias Koppers 2fc72052c4 Remove hashing from ClassSerializer as buildDeps take care of this now 2019-08-13 17:02:52 +02:00
Tobias Koppers e5cecdad23 store build dependencies snapshot in pack
add snapshot shortcut for package manager managed paths
add cache.managedPaths
2019-08-13 17:02:37 +02:00
Tobias Koppers ada11a286d avoid memory leak in LazySet 2019-08-12 23:07:45 +02:00