webpack/lib
Hal Blackburn 8f2c266966 fix build cycle detection in Compilation
When tracking the modules which are being built by an origin module,
the code mistakenly adds the origin module itself to the set of modules
it's building, instead of the actual module about to be built. As a
result, when a module build finishes (and the module has itself called
loadModule()), it remains marked as building itself. So if it gets
loaded again, a BuildCycleError is reported despite no cycle existing.

Fixes #14379
2021-10-18 20:24:04 +01:00
..
asset add `experiments.buildHttp` 2021-08-05 15:47:18 +02:00
async-modules add support for module externals and automatic externals 2021-06-24 16:44:14 +02:00
cache allow to configure all hash functions used 2021-09-23 14:55:13 +02:00
config add MemCache for memory caching per module which is invalidated when module or any referenced modules changes 2021-09-24 15:23:29 +02:00
container allow to disable runtime chunk per entry via `runtime: false` 2021-07-05 11:32:45 +02:00
debug pretty files 2021-05-11 09:31:46 +02:00
dependencies fix some cases where undefined modules are used 2021-09-28 19:11:39 +02:00
electron add `node-commonjs` external type to use `createRequire` for commonjs externals 2021-06-25 11:22:55 +02:00
errors perf: Remove Error.captureStackTrace from all WebpackErrors 2021-06-07 07:15:28 +00:00
esm keep state of chunk loading during hmr updates 2021-08-16 13:50:43 +02:00
hmr fix hmr check returning empty array 2021-08-05 16:03:30 +02:00
ids allow to configure all hash functions used 2021-09-23 14:55:13 +02:00
javascript avoid unneccessary separators and arrays 2021-10-04 09:29:09 +02:00
json serialize json data as buffer and decode on demand 2021-07-06 15:00:01 +02:00
library lint 2021-08-16 21:06:43 +09:00
logging improve extractBlockModules 2021-10-06 15:39:21 +02:00
node add "diagnostics_channel" to NodeTargetPlugin 2021-10-07 21:28:48 +08:00
optimize add pure notations to Object calls 2021-10-17 11:06:14 +03:00
performance perf: Remove Error.captureStackTrace from all WebpackErrors 2021-06-07 07:15:28 +00:00
prefetch fix handling of onChunksLoaded with prefetching 2021-07-16 18:11:29 +02:00
rules Revert "Revert "Merge pull request #12278 from xtuc/sven/import-assertions"" 2021-07-24 23:28:30 +01:00
runtime remove unnecessary Object.assign 2021-09-09 00:28:44 +02:00
schemes expand readResource hook to cover normal file reading 2021-10-07 10:28:44 +02:00
serialization fix: provide correct serialization context 2021-10-11 13:41:31 +03:00
sharing precompile schemas for improved startup performance 2021-04-16 16:02:58 +02:00
stats update webpack-sources for performance problem in hashing 2021-07-20 13:29:25 +02:00
util faster StringXor 2021-10-04 10:36:24 +02:00
wasm partially fix test cases 2021-06-24 10:05:37 +02:00
wasm-async keep state of chunk loading during hmr updates 2021-08-16 13:50:43 +02:00
wasm-sync Revert "track chunk combinations for modules" 2021-10-08 15:08:48 +02:00
web keep state of chunk loading during hmr updates 2021-08-16 13:50:43 +02:00
webworker keep state of chunk loading during hmr updates 2021-08-16 13:50:43 +02:00
APIPlugin.js refactor startup logic to better integrate with libraries 2021-03-08 20:25:09 +01:00
AbstractMethodError.js
AsyncDependenciesBlock.js improve extractBlockModules 2021-10-06 15:39:21 +02:00
AsyncDependencyToInitialChunkError.js perf: Remove Error.captureStackTrace from all WebpackErrors 2021-06-07 07:15:28 +00:00
AutomaticPrefetchPlugin.js Merge pull request #11330 from webpack/improve/automatic-prefetch-plugin 2021-01-19 20:19:39 +01:00
BannerPlugin.js precompile schemas for improved startup performance 2021-04-16 16:02:58 +02:00
Cache.js Create Cache facade to make it easier to use 2020-07-15 11:14:28 +02:00
CacheFacade.js allow to configure all hash functions used 2021-09-23 14:55:13 +02:00
CaseSensitiveModulesWarning.js perf: Remove Error.captureStackTrace from all WebpackErrors 2021-06-07 07:15:28 +00:00
Chunk.js avoid unneccessary separators and arrays 2021-10-04 09:29:09 +02:00
ChunkGraph.js Revert "track chunk combinations for modules" 2021-10-08 15:08:48 +02:00
ChunkGroup.js new Worker() support 2020-09-08 07:37:20 +02:00
ChunkRenderError.js perf: Remove Error.captureStackTrace from all WebpackErrors 2021-06-07 07:15:28 +00:00
ChunkTemplate.js Changed name of memorize function to memoize 2020-12-27 03:02:57 +05:30
CleanPlugin.js precompile schemas for improved startup performance 2021-04-16 16:02:58 +02:00
CodeGenerationError.js perf: Remove Error.captureStackTrace from all WebpackErrors 2021-06-07 07:15:28 +00:00
CodeGenerationResults.js allow to configure all hash functions used 2021-09-23 14:55:13 +02:00
CommentCompilationWarning.js perf: Remove Error.captureStackTrace from all WebpackErrors 2021-06-07 07:15:28 +00:00
CompatibilityPlugin.js handle hashbangs in javascript files 2021-08-10 11:34:06 +02:00
Compilation.js fix build cycle detection in Compilation 2021-10-18 20:24:04 +01:00
Compiler.js use buildInfo instead of hash for cacheUnaffected 2021-10-05 15:09:39 +02:00
ConcatenationScope.js pretty files 2021-05-11 09:31:46 +02:00
ConcurrentCompilationError.js perf: Remove Error.captureStackTrace from all WebpackErrors 2021-06-07 07:15:28 +00:00
ConditionalInitFragment.js add support for module externals and automatic externals 2021-06-24 16:44:14 +02:00
ConstPlugin.js optional chaining leads to undefined and never null 2020-08-07 16:43:13 +02:00
ContextExclusionPlugin.js
ContextModule.js fix bug in ContextModule, improve test case for lazy compilation 2021-05-31 18:16:21 +02:00
ContextModuleFactory.js chore: Allow passing a typePrefix to ContextElementDependency 2021-05-31 14:46:38 +03:00
ContextReplacementPlugin.js pretty files 2021-05-11 09:31:46 +02:00
DefinePlugin.js add pure notations to Object calls 2021-10-17 11:06:14 +03:00
DelegatedModule.js cleanup modules after compilation to avoid leaking references when they are cached 2021-03-15 11:23:54 +01:00
DelegatedModuleFactoryPlugin.js enable mjs experiment 2020-09-07 23:15:24 +02:00
DelegatedPlugin.js
DependenciesBlock.js improve extractBlockModules 2021-10-06 15:39:21 +02:00
Dependency.js improve extractBlockModules 2021-10-06 15:39:21 +02:00
DependencyTemplate.js add support for module externals and automatic externals 2021-06-24 16:44:14 +02:00
DependencyTemplates.js chore: merge multi hash.update 2021-09-26 08:51:53 +08:00
DllEntryPlugin.js
DllModule.js avoid unneccessary separators and arrays 2021-10-04 09:29:09 +02:00
DllModuleFactory.js
DllPlugin.js precompile schemas for improved startup performance 2021-04-16 16:02:58 +02:00
DllReferencePlugin.js perf: Remove Error.captureStackTrace from all WebpackErrors 2021-06-07 07:15:28 +00:00
DynamicEntryPlugin.js
EntryOptionPlugin.js allow to specify `publicPath` for each entrypoint 2021-04-14 16:38:01 +02:00
EntryPlugin.js Create entry dependency only once for better unsafe caching 2021-05-26 21:35:46 +02:00
Entrypoint.js new Worker() support 2020-09-08 07:37:20 +02:00
EnvironmentPlugin.js
ErrorHelpers.js
EvalDevToolModulePlugin.js allow to configure all hash functions used 2021-09-23 14:55:13 +02:00
EvalSourceMapDevToolPlugin.js allow to configure all hash functions used 2021-09-23 14:55:13 +02:00
ExportsInfo.js avoid unneccessary separators and arrays 2021-10-04 09:29:09 +02:00
ExportsInfoApiPlugin.js
ExternalModule.js Merge pull request #14381 from webpack/cache/externals 2021-10-04 09:56:21 +02:00
ExternalModuleFactoryPlugin.js fix handling of new URL() in remote resources 2021-08-05 17:37:37 +02:00
ExternalsPlugin.js
FileSystemInfo.js handle non-existing directories 2021-10-13 10:51:36 +02:00
FlagAllModulesAsUsedPlugin.js flag modules in dlls without entryOnly with side-effects to keep them 2020-12-15 16:38:20 +01:00
FlagDependencyExportsPlugin.js assign each module it's own mem cache 2021-09-27 20:37:30 +02:00
FlagDependencyUsagePlugin.js add memCache2 for mem caching with module/chunk ids 2021-10-05 15:08:18 +02:00
FlagEntryExportAsUsedPlugin.js refactor used exports analysis, hashing, code generation, optimizations 2020-07-27 22:40:44 +02:00
Generator.js fix caching of asset modules 2021-02-04 14:13:44 +01:00
GraphHelpers.js
HarmonyLinkingError.js perf: Remove Error.captureStackTrace from all WebpackErrors 2021-06-07 07:15:28 +00:00
HookWebpackError.js perf: Remove Error.captureStackTrace from all WebpackErrors 2021-06-07 07:15:28 +00:00
HotModuleReplacementPlugin.js upgrade filename runtime module to full hash module when referencing a full hash chunk 2021-09-02 10:29:59 +02:00
HotUpdateChunk.js fix incorrect disposing of modules during HMR 2020-09-08 10:25:41 +02:00
IgnoreErrorModuleFactory.js
IgnorePlugin.js precompile schemas for improved startup performance 2021-04-16 16:02:58 +02:00
IgnoreWarningsPlugin.js add config.ignoreWarnings 2020-09-20 22:08:38 +02:00
InitFragment.js fix null module externals 2021-09-03 13:47:09 +02:00
InvalidDependenciesModuleWarning.js perf: Remove Error.captureStackTrace from all WebpackErrors 2021-06-07 07:15:28 +00:00
JavascriptMetaInfoPlugin.js avoid bailout of unused eval 2021-09-20 17:40:51 +02:00
LibManifestPlugin.js add renderStartup hook 2021-02-09 21:27:10 +01:00
LibraryTemplatePlugin.js
LoaderOptionsPlugin.js precompile schemas for improved startup performance 2021-04-16 16:02:58 +02:00
LoaderTargetPlugin.js
MainTemplate.js add support for module externals and automatic externals 2021-06-24 16:44:14 +02:00
Module.js skip chunk conditions faster 2021-10-07 15:55:22 +02:00
ModuleBuildError.js perf: Remove Error.captureStackTrace from all WebpackErrors 2021-06-07 07:15:28 +00:00
ModuleDependencyError.js perf: Remove Error.captureStackTrace from all WebpackErrors 2021-06-07 07:15:28 +00:00
ModuleDependencyWarning.js perf: Remove Error.captureStackTrace from all WebpackErrors 2021-06-07 07:15:28 +00:00
ModuleError.js perf: Remove Error.captureStackTrace from all WebpackErrors 2021-06-07 07:15:28 +00:00
ModuleFactory.js move unsafe cache from NormalModuleFactory to Compilation to skip more processing 2021-09-28 11:37:29 +02:00
ModuleFilenameHelpers.js allow to configure all hash functions used 2021-09-23 14:55:13 +02:00
ModuleGraph.js Merge pull request #14420 from webpack/perf/remove-caching 2021-10-06 20:19:09 +02:00
ModuleGraphConnection.js pretty files 2021-05-11 09:31:46 +02:00
ModuleInfoHeaderPlugin.js pretty files 2021-05-11 09:31:46 +02:00
ModuleNotFoundError.js perf: Remove Error.captureStackTrace from all WebpackErrors 2021-06-07 07:15:28 +00:00
ModuleParseError.js perf: Remove Error.captureStackTrace from all WebpackErrors 2021-06-07 07:15:28 +00:00
ModuleProfile.js log out module profile summary when profiling is enabled 2021-02-02 03:29:21 +01:00
ModuleRestoreError.js perf: Remove Error.captureStackTrace from all WebpackErrors 2021-06-07 07:15:28 +00:00
ModuleStoreError.js perf: Remove Error.captureStackTrace from all WebpackErrors 2021-06-07 07:15:28 +00:00
ModuleTemplate.js add support for module externals and automatic externals 2021-06-24 16:44:14 +02:00
ModuleWarning.js perf: Remove Error.captureStackTrace from all WebpackErrors 2021-06-07 07:15:28 +00:00
MultiCompiler.js add `experiments.buildHttp` 2021-08-05 15:47:18 +02:00
MultiStats.js fix stats output in some edge cases 2021-02-13 21:02:47 +01:00
MultiWatching.js do cache related tasks after calling handler in watching 2020-08-01 09:00:17 +02:00
NoEmitOnErrorsPlugin.js
NoModeWarning.js perf: Remove Error.captureStackTrace from all WebpackErrors 2021-06-07 07:15:28 +00:00
NodeStuffInWebError.js add experiments.futureDefaults 2021-09-14 11:29:57 +03:00
NodeStuffPlugin.js add experiments.futureDefaults 2021-09-14 11:29:57 +03:00
NormalModule.js expand readResource hook to cover normal file reading 2021-10-07 10:28:44 +02:00
NormalModuleFactory.js fix `.webpack[]` suffix to not execute rules 2021-10-08 13:56:39 +02:00
NormalModuleReplacementPlugin.js
NullFactory.js
OptimizationStages.js
OptionsApply.js
Parser.js handle hashbangs in javascript files 2021-08-10 11:34:06 +02:00
PrefetchPlugin.js
ProgressPlugin.js precompile schemas for improved startup performance 2021-04-16 16:02:58 +02:00
ProvidePlugin.js fix called variables with ProvidePlugin 2020-10-10 02:52:43 +02:00
RawModule.js allow to define "ignored modules" per dependency 2021-03-11 18:37:20 +01:00
RecordIdsPlugin.js pretty files 2021-05-11 09:31:46 +02:00
RequestShortener.js
RequireJsStuffPlugin.js
ResolverFactory.js pretty files 2021-05-11 09:31:46 +02:00
RuntimeGlobals.js keep state of chunk loading during hmr updates 2021-08-16 13:50:43 +02:00
RuntimeModule.js upgrade filename runtime module to full hash module when referencing a full hash chunk 2021-09-02 10:29:59 +02:00
RuntimePlugin.js normalize output.trustedTypes to an object 2021-05-10 10:34:21 +02:00
RuntimeTemplate.js add pure notations to Object calls 2021-10-17 11:06:14 +03:00
SelfModuleFactory.js
SingleEntryPlugin.js
SizeFormatHelpers.js
SourceMapDevToolModuleOptionsPlugin.js add useSimpleSourceMap flag to enable/disable OriginalSource for generated code 2020-10-26 16:33:38 +01:00
SourceMapDevToolPlugin.js allow to configure all hash functions used 2021-09-23 14:55:13 +02:00
Stats.js fix syntax, add unknown properties, fix incorrect types 2021-02-05 13:19:32 +01:00
Template.js generate "use strict" only when really needed 2021-07-22 16:09:09 +02:00
TemplatedPathPlugin.js add test case for large assets 2021-06-29 13:08:38 +02:00
UnhandledSchemeError.js refactor scheme handling into plugins 2020-07-03 17:01:02 +02:00
UnsupportedFeatureWarning.js perf: Remove Error.captureStackTrace from all WebpackErrors 2021-06-07 07:15:28 +00:00
UseStrictPlugin.js
WarnCaseSensitiveModulesPlugin.js only warn when there is really a casing difference 2021-04-12 12:27:54 +02:00
WarnDeprecatedOptionPlugin.js perf: Remove Error.captureStackTrace from all WebpackErrors 2021-06-07 07:15:28 +00:00
WarnNoModeSetPlugin.js
WatchIgnorePlugin.js precompile schemas for improved startup performance 2021-04-16 16:02:58 +02:00
Watching.js close watching when closing compiler 2021-08-30 15:01:24 +02:00
WebpackError.js perf: Remove Error.captureStackTrace from all WebpackErrors 2021-06-07 07:15:28 +00:00
WebpackIsIncludedPlugin.js
WebpackOptionsApply.js add memCache2 for mem caching with module/chunk ids 2021-10-05 15:08:18 +02:00
WebpackOptionsDefaulter.js
buildChunkGraph.js fix case where runtime is empty string 2021-10-06 15:41:23 +02:00
cli.js use different symbol 2021-06-18 12:33:01 +02:00
formatLocation.js
index.js avoid bailout of unused eval 2021-09-20 17:40:51 +02:00
validateSchema.js pretty files 2021-05-11 09:31:46 +02:00
webpack.js fix a typo 2021-07-12 18:15:59 +08:00