webpack 5.106.0 → 5.106.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/APIPlugin.js +3 -1
- package/lib/AbstractMethodError.js +10 -1
- package/lib/AsyncDependenciesBlock.js +3 -0
- package/lib/AsyncDependencyToInitialChunkError.js +6 -1
- package/lib/AutomaticPrefetchPlugin.js +6 -1
- package/lib/BannerPlugin.js +10 -1
- package/lib/Cache.js +26 -1
- package/lib/CacheFacade.js +26 -0
- package/lib/CaseSensitiveModulesWarning.js +9 -1
- package/lib/Chunk.js +46 -0
- package/lib/ChunkGraph.js +111 -0
- package/lib/ChunkGroup.js +57 -13
- package/lib/ChunkTemplate.js +9 -0
- package/lib/CleanPlugin.js +14 -1
- package/lib/CodeGenerationResults.js +19 -0
- package/lib/CommentCompilationWarning.js +6 -0
- package/lib/CompatibilityPlugin.js +15 -1
- package/lib/Compilation.js +127 -1
- package/lib/Compiler.js +37 -4
- package/lib/ConcatenationScope.js +24 -1
- package/lib/ConditionalInitFragment.js +6 -0
- package/lib/ConstPlugin.js +4 -1
- package/lib/ContextExclusionPlugin.js +2 -1
- package/lib/ContextModule.js +12 -0
- package/lib/ContextModuleFactory.js +10 -0
- package/lib/ContextReplacementPlugin.js +4 -1
- package/lib/CssModule.js +6 -0
- package/lib/DefinePlugin.js +20 -7
- package/lib/DelegatedModule.js +13 -0
- package/lib/DelegatedModuleFactoryPlugin.js +3 -0
- package/lib/DelegatedPlugin.js +2 -1
- package/lib/DependenciesBlock.js +6 -1
- package/lib/Dependency.js +26 -3
- package/lib/DependencyTemplate.js +5 -0
- package/lib/DependencyTemplates.js +4 -0
- package/lib/DllEntryPlugin.js +2 -1
- package/lib/DllModule.js +11 -0
- package/lib/DllModuleFactory.js +1 -0
- package/lib/DllPlugin.js +2 -1
- package/lib/DllReferencePlugin.js +11 -6
- package/lib/DotenvPlugin.js +3 -0
- package/lib/DynamicEntryPlugin.js +3 -1
- package/lib/EntryOptionPlugin.js +3 -0
- package/lib/EntryPlugin.js +2 -1
- package/lib/Entrypoint.js +4 -0
- package/lib/EnvironmentPlugin.js +2 -1
- package/lib/ErrorHelpers.js +7 -0
- package/lib/EvalDevToolModulePlugin.js +3 -1
- package/lib/EvalSourceMapDevToolPlugin.js +3 -1
- package/lib/ExportsInfo.js +56 -2
- package/lib/ExportsInfoApiPlugin.js +2 -1
- package/lib/ExternalModule.js +38 -0
- package/lib/ExternalModuleFactoryPlugin.js +10 -0
- package/lib/ExternalsPlugin.js +2 -1
- package/lib/FileSystemInfo.js +105 -0
- package/lib/FlagAllModulesAsUsedPlugin.js +2 -1
- package/lib/FlagDependencyExportsPlugin.js +4 -1
- package/lib/FlagDependencyUsagePlugin.js +5 -1
- package/lib/FlagEntryExportAsUsedPlugin.js +2 -1
- package/lib/Generator.js +13 -0
- package/lib/GraphHelpers.js +3 -0
- package/lib/HookWebpackError.js +6 -0
- package/lib/HotModuleReplacementPlugin.js +9 -1
- package/lib/IgnoreErrorModuleFactory.js +2 -0
- package/lib/IgnorePlugin.js +2 -1
- package/lib/IgnoreWarningsPlugin.js +2 -1
- package/lib/InitFragment.js +10 -0
- package/lib/InvalidDependenciesModuleWarning.js +1 -0
- package/lib/JavascriptMetaInfoPlugin.js +2 -1
- package/lib/LibManifestPlugin.js +4 -1
- package/lib/LibraryTemplatePlugin.js +2 -1
- package/lib/LoaderOptionsPlugin.js +3 -1
- package/lib/LoaderTargetPlugin.js +2 -1
- package/lib/MainTemplate.js +15 -0
- package/lib/ManifestPlugin.js +9 -2
- package/lib/Module.js +82 -4
- package/lib/ModuleBuildError.js +3 -0
- package/lib/ModuleDependencyWarning.js +1 -0
- package/lib/ModuleError.js +2 -0
- package/lib/ModuleFactory.js +5 -0
- package/lib/ModuleFilenameHelpers.js +3 -0
- package/lib/ModuleGraph.js +66 -0
- package/lib/ModuleGraphConnection.js +9 -0
- package/lib/ModuleInfoHeaderPlugin.js +5 -0
- package/lib/ModuleNotFoundError.js +1 -0
- package/lib/ModuleParseError.js +3 -0
- package/lib/ModuleRestoreError.js +1 -0
- package/lib/ModuleSourceTypeConstants.js +1 -0
- package/lib/ModuleStoreError.js +1 -0
- package/lib/ModuleTemplate.js +8 -0
- package/lib/ModuleWarning.js +3 -0
- package/lib/MultiCompiler.js +28 -0
- package/lib/MultiStats.js +8 -0
- package/lib/MultiWatching.js +3 -0
- package/lib/NoEmitOnErrorsPlugin.js +1 -1
- package/lib/NodeStuffInWebError.js +1 -0
- package/lib/NodeStuffPlugin.js +10 -1
- package/lib/NormalModule.js +30 -2
- package/lib/NormalModuleFactory.js +25 -0
- package/lib/NormalModuleReplacementPlugin.js +1 -1
- package/lib/NullFactory.js +1 -0
- package/lib/OptionsApply.js +1 -0
- package/lib/Parser.js +2 -0
- package/lib/PlatformPlugin.js +2 -1
- package/lib/PrefetchPlugin.js +2 -1
- package/lib/ProgressPlugin.js +29 -12
- package/lib/ProvidePlugin.js +3 -1
- package/lib/RawModule.js +12 -0
- package/lib/RecordIdsPlugin.js +8 -0
- package/lib/RequestShortener.js +8 -0
- package/lib/RequireJsStuffPlugin.js +2 -1
- package/lib/ResolverFactory.js +5 -0
- package/lib/RuntimeGlobals.js +1 -0
- package/lib/RuntimeModule.js +13 -0
- package/lib/RuntimePlugin.js +2 -0
- package/lib/RuntimeTemplate.js +35 -1
- package/lib/SelfModuleFactory.js +2 -0
- package/lib/SizeFormatHelpers.js +1 -0
- package/lib/SourceMapDevToolModuleOptionsPlugin.js +2 -0
- package/lib/SourceMapDevToolPlugin.js +3 -1
- package/lib/Stats.js +5 -0
- package/lib/Template.js +20 -0
- package/lib/TemplatedPathPlugin.js +10 -3
- package/lib/UnhandledSchemeError.js +6 -0
- package/lib/UnsupportedFeatureWarning.js +1 -0
- package/lib/UseStrictPlugin.js +2 -1
- package/lib/WarnCaseSensitiveModulesPlugin.js +1 -1
- package/lib/WarnDeprecatedOptionPlugin.js +1 -1
- package/lib/WarnNoModeSetPlugin.js +1 -1
- package/lib/WatchIgnorePlugin.js +4 -1
- package/lib/Watching.js +14 -0
- package/lib/WebpackError.js +3 -0
- package/lib/WebpackIsIncludedPlugin.js +2 -0
- package/lib/WebpackOptionsApply.js +1 -0
- package/lib/WebpackOptionsDefaulter.js +1 -0
- package/lib/asset/AssetBytesGenerator.js +6 -0
- package/lib/asset/AssetBytesParser.js +1 -0
- package/lib/asset/AssetGenerator.js +20 -2
- package/lib/asset/AssetModulesPlugin.js +4 -1
- package/lib/asset/AssetParser.js +2 -0
- package/lib/asset/AssetSourceGenerator.js +6 -0
- package/lib/asset/AssetSourceParser.js +1 -0
- package/lib/asset/RawDataUrlModule.js +11 -0
- package/lib/async-modules/AsyncModuleHelpers.js +1 -0
- package/lib/async-modules/AwaitDependenciesInitFragment.js +4 -0
- package/lib/async-modules/InferAsyncModulesPlugin.js +1 -1
- package/lib/buildChunkGraph.js +15 -0
- package/lib/cache/AddBuildDependenciesPlugin.js +2 -1
- package/lib/cache/AddManagedPathsPlugin.js +2 -1
- package/lib/cache/IdleFileCachePlugin.js +2 -1
- package/lib/cache/MemoryCachePlugin.js +1 -1
- package/lib/cache/MemoryWithGcCachePlugin.js +3 -1
- package/lib/cache/PackFileCacheStrategy.js +29 -0
- package/lib/cache/ResolverCachePlugin.js +10 -1
- package/lib/cache/getLazyHashedEtag.js +4 -0
- package/lib/cache/mergeEtags.js +2 -0
- package/lib/cli.js +30 -0
- package/lib/config/browserslistTargetHandler.js +2 -0
- package/lib/config/defaults.js +35 -2
- package/lib/config/normalization.js +12 -0
- package/lib/config/target.js +11 -0
- package/lib/container/ContainerEntryDependency.js +2 -0
- package/lib/container/ContainerEntryModule.js +12 -0
- package/lib/container/ContainerEntryModuleFactory.js +1 -0
- package/lib/container/ContainerExposedDependency.js +4 -0
- package/lib/container/ContainerPlugin.js +2 -1
- package/lib/container/ContainerReferencePlugin.js +2 -1
- package/lib/container/FallbackDependency.js +4 -0
- package/lib/container/FallbackItemDependency.js +1 -0
- package/lib/container/FallbackModule.js +12 -0
- package/lib/container/FallbackModuleFactory.js +1 -0
- package/lib/container/ModuleFederationPlugin.js +3 -1
- package/lib/container/RemoteModule.js +13 -0
- package/lib/container/RemoteRuntimeModule.js +1 -0
- package/lib/container/RemoteToExternalDependency.js +1 -0
- package/lib/container/options.js +7 -0
- package/lib/css/CssGenerator.js +35 -14
- package/lib/css/CssInjectStyleRuntimeModule.js +1 -0
- package/lib/css/CssLoadingRuntimeModule.js +1 -0
- package/lib/css/CssMergeStyleSheetsRuntimeModule.js +1 -0
- package/lib/css/CssModulesPlugin.js +69 -3
- package/lib/css/CssParser.js +71 -1
- package/lib/css/walkCssTokens.js +31 -0
- package/lib/debug/ProfilingPlugin.js +19 -1
- package/lib/dependencies/AMDDefineDependency.js +7 -0
- package/lib/dependencies/AMDDefineDependencyParserPlugin.js +12 -0
- package/lib/dependencies/AMDPlugin.js +4 -1
- package/lib/dependencies/AMDRequireArrayDependency.js +6 -0
- package/lib/dependencies/AMDRequireContextDependency.js +3 -0
- package/lib/dependencies/AMDRequireDependenciesBlock.js +1 -0
- package/lib/dependencies/AMDRequireDependenciesBlockParserPlugin.js +13 -0
- package/lib/dependencies/AMDRequireDependency.js +4 -0
- package/lib/dependencies/AMDRequireItemDependency.js +1 -0
- package/lib/dependencies/AMDRuntimeModules.js +3 -0
- package/lib/dependencies/CachedConstDependency.js +6 -1
- package/lib/dependencies/CommonJsDependencyHelpers.js +1 -0
- package/lib/dependencies/CommonJsExportRequireDependency.js +8 -0
- package/lib/dependencies/CommonJsExportsDependency.js +4 -0
- package/lib/dependencies/CommonJsExportsParserPlugin.js +8 -0
- package/lib/dependencies/CommonJsFullRequireDependency.js +4 -0
- package/lib/dependencies/CommonJsImportsParserPlugin.js +20 -0
- package/lib/dependencies/CommonJsPlugin.js +4 -1
- package/lib/dependencies/CommonJsRequireContextDependency.js +3 -0
- package/lib/dependencies/CommonJsRequireDependency.js +3 -0
- package/lib/dependencies/CommonJsSelfReferenceDependency.js +5 -0
- package/lib/dependencies/ConstDependency.js +6 -1
- package/lib/dependencies/ContextDependency.js +8 -1
- package/lib/dependencies/ContextDependencyHelpers.js +3 -0
- package/lib/dependencies/ContextDependencyTemplateAsId.js +1 -0
- package/lib/dependencies/ContextDependencyTemplateAsRequireCall.js +1 -0
- package/lib/dependencies/ContextElementDependency.js +4 -0
- package/lib/dependencies/CreateRequireParserPlugin.js +6 -0
- package/lib/dependencies/CreateScriptUrlDependency.js +4 -0
- package/lib/dependencies/CriticalDependencyWarning.js +1 -0
- package/lib/dependencies/CssIcssExportDependency.js +11 -3
- package/lib/dependencies/CssIcssImportDependency.js +4 -1
- package/lib/dependencies/CssIcssSymbolDependency.js +5 -1
- package/lib/dependencies/CssImportDependency.js +4 -0
- package/lib/dependencies/CssUrlDependency.js +7 -0
- package/lib/dependencies/DelegatedSourceDependency.js +1 -0
- package/lib/dependencies/DllEntryDependency.js +3 -0
- package/lib/dependencies/DynamicExports.js +5 -0
- package/lib/dependencies/EntryDependency.js +1 -0
- package/lib/dependencies/ExportsInfoDependency.js +6 -0
- package/lib/dependencies/ExternalModuleDependency.js +5 -0
- package/lib/dependencies/ExternalModuleInitFragment.js +3 -0
- package/lib/dependencies/ExternalModuleInitFragmentDependency.js +4 -0
- package/lib/dependencies/HarmonyAcceptDependency.js +6 -0
- package/lib/dependencies/HarmonyAcceptImportDependency.js +1 -0
- package/lib/dependencies/HarmonyCompatibilityDependency.js +1 -0
- package/lib/dependencies/HarmonyDetectionParserPlugin.js +3 -0
- package/lib/dependencies/HarmonyEvaluatedImportSpecifierDependency.js +4 -0
- package/lib/dependencies/HarmonyExportDependencyParserPlugin.js +2 -0
- package/lib/dependencies/HarmonyExportExpressionDependency.js +14 -5
- package/lib/dependencies/HarmonyExportHeaderDependency.js +4 -0
- package/lib/dependencies/HarmonyExportImportedSpecifierDependency.js +33 -2
- package/lib/dependencies/HarmonyExportInitFragment.js +6 -0
- package/lib/dependencies/HarmonyExportSpecifierDependency.js +5 -0
- package/lib/dependencies/HarmonyExports.js +2 -0
- package/lib/dependencies/HarmonyImportDependency.js +11 -0
- package/lib/dependencies/HarmonyImportDependencyParserPlugin.js +9 -0
- package/lib/dependencies/HarmonyImportSideEffectDependency.js +4 -0
- package/lib/dependencies/HarmonyImportSpecifierDependency.js +17 -2
- package/lib/dependencies/HarmonyModulesPlugin.js +4 -1
- package/lib/dependencies/HarmonyTopLevelThisParserPlugin.js +1 -0
- package/lib/dependencies/ImportContextDependency.js +4 -0
- package/lib/dependencies/ImportDependency.js +5 -0
- package/lib/dependencies/ImportEagerDependency.js +2 -0
- package/lib/dependencies/ImportMetaContextDependency.js +1 -0
- package/lib/dependencies/ImportMetaContextDependencyParserPlugin.js +3 -0
- package/lib/dependencies/ImportMetaContextPlugin.js +2 -1
- package/lib/dependencies/ImportMetaHotAcceptDependency.js +1 -0
- package/lib/dependencies/ImportMetaHotDeclineDependency.js +1 -0
- package/lib/dependencies/ImportMetaPlugin.js +6 -0
- package/lib/dependencies/ImportParserPlugin.js +7 -0
- package/lib/dependencies/ImportPhase.js +6 -2
- package/lib/dependencies/ImportPlugin.js +2 -1
- package/lib/dependencies/ImportWeakDependency.js +2 -0
- package/lib/dependencies/JsonExportsDependency.js +6 -1
- package/lib/dependencies/LoaderDependency.js +2 -0
- package/lib/dependencies/LoaderImportDependency.js +2 -0
- package/lib/dependencies/LoaderPlugin.js +4 -1
- package/lib/dependencies/LocalModule.js +4 -0
- package/lib/dependencies/LocalModuleDependency.js +4 -0
- package/lib/dependencies/LocalModulesHelpers.js +3 -0
- package/lib/dependencies/ModuleDecoratorDependency.js +7 -1
- package/lib/dependencies/ModuleDependency.js +7 -0
- package/lib/dependencies/ModuleDependencyTemplateAsId.js +1 -0
- package/lib/dependencies/ModuleDependencyTemplateAsRequireId.js +1 -0
- package/lib/dependencies/ModuleHotAcceptDependency.js +1 -0
- package/lib/dependencies/ModuleHotDeclineDependency.js +1 -0
- package/lib/dependencies/ModuleInitFragmentDependency.js +4 -0
- package/lib/dependencies/NullDependency.js +2 -0
- package/lib/dependencies/PrefetchDependency.js +1 -0
- package/lib/dependencies/ProvidedDependency.js +6 -1
- package/lib/dependencies/PureExpressionDependency.js +7 -1
- package/lib/dependencies/RequireContextDependency.js +1 -0
- package/lib/dependencies/RequireContextDependencyParserPlugin.js +1 -0
- package/lib/dependencies/RequireContextPlugin.js +2 -1
- package/lib/dependencies/RequireEnsureDependenciesBlock.js +1 -0
- package/lib/dependencies/RequireEnsureDependenciesBlockParserPlugin.js +1 -0
- package/lib/dependencies/RequireEnsureDependency.js +4 -0
- package/lib/dependencies/RequireEnsureItemDependency.js +1 -0
- package/lib/dependencies/RequireEnsurePlugin.js +2 -1
- package/lib/dependencies/RequireHeaderDependency.js +4 -0
- package/lib/dependencies/RequireIncludeDependency.js +2 -0
- package/lib/dependencies/RequireIncludeDependencyParserPlugin.js +3 -0
- package/lib/dependencies/RequireIncludePlugin.js +2 -1
- package/lib/dependencies/RequireResolveContextDependency.js +3 -0
- package/lib/dependencies/RequireResolveDependency.js +1 -0
- package/lib/dependencies/RequireResolveHeaderDependency.js +5 -0
- package/lib/dependencies/RuntimeRequirementsDependency.js +5 -1
- package/lib/dependencies/StaticExportsDependency.js +3 -0
- package/lib/dependencies/SystemPlugin.js +4 -1
- package/lib/dependencies/SystemRuntimeModule.js +1 -0
- package/lib/dependencies/URLContextDependency.js +3 -0
- package/lib/dependencies/URLDependency.js +6 -0
- package/lib/dependencies/URLPlugin.js +2 -0
- package/lib/dependencies/UnsupportedDependency.js +4 -0
- package/lib/dependencies/WebAssemblyExportImportedDependency.js +4 -0
- package/lib/dependencies/WebAssemblyImportDependency.js +4 -1
- package/lib/dependencies/WebpackIsIncludedDependency.js +2 -0
- package/lib/dependencies/WorkerDependency.js +6 -1
- package/lib/dependencies/WorkerPlugin.js +9 -1
- package/lib/dependencies/getFunctionExpression.js +1 -0
- package/lib/dependencies/processExportInfo.js +1 -0
- package/lib/electron/ElectronTargetPlugin.js +2 -1
- package/lib/esm/ExportWebpackRequireRuntimeModule.js +2 -0
- package/lib/esm/ModuleChunkFormatPlugin.js +5 -1
- package/lib/esm/ModuleChunkLoadingPlugin.js +3 -1
- package/lib/esm/ModuleChunkLoadingRuntimeModule.js +5 -0
- package/lib/formatLocation.js +2 -0
- package/lib/hmr/HotModuleReplacementRuntimeModule.js +1 -0
- package/lib/hmr/JavascriptHotModuleReplacementHelper.js +1 -0
- package/lib/hmr/LazyCompilationPlugin.js +20 -1
- package/lib/hmr/lazyCompilationBackend.js +2 -0
- package/lib/ids/ChunkModuleIdRangePlugin.js +3 -1
- package/lib/ids/DeterministicChunkIdsPlugin.js +3 -1
- package/lib/ids/DeterministicModuleIdsPlugin.js +3 -1
- package/lib/ids/HashedModuleIdsPlugin.js +2 -1
- package/lib/ids/IdHelpers.js +20 -0
- package/lib/ids/NamedChunkIdsPlugin.js +3 -1
- package/lib/ids/NamedModuleIdsPlugin.js +3 -1
- package/lib/ids/NaturalChunkIdsPlugin.js +1 -1
- package/lib/ids/NaturalModuleIdsPlugin.js +1 -1
- package/lib/ids/OccurrenceChunkIdsPlugin.js +2 -1
- package/lib/ids/OccurrenceModuleIdsPlugin.js +4 -1
- package/lib/ids/SyncModuleIdsPlugin.js +3 -1
- package/lib/index.js +5 -0
- package/lib/javascript/ArrayPushCallbackChunkFormatPlugin.js +1 -1
- package/lib/javascript/BasicEvaluatedExpression.js +4 -2
- package/lib/javascript/ChunkFormatHelpers.js +2 -1
- package/lib/javascript/ChunkHelpers.js +1 -0
- package/lib/javascript/CommonJsChunkFormatPlugin.js +1 -1
- package/lib/javascript/EnableChunkLoadingPlugin.js +5 -1
- package/lib/javascript/JavascriptGenerator.js +10 -0
- package/lib/javascript/JavascriptModulesPlugin.js +23 -1
- package/lib/javascript/JavascriptParser.js +163 -0
- package/lib/javascript/JavascriptParserHelpers.js +6 -0
- package/lib/javascript/StartupHelpers.js +5 -0
- package/lib/json/JsonData.js +5 -0
- package/lib/json/JsonGenerator.js +21 -0
- package/lib/json/JsonModulesPlugin.js +1 -1
- package/lib/json/JsonParser.js +8 -10
- package/lib/library/AbstractLibraryPlugin.js +16 -1
- package/lib/library/AmdLibraryPlugin.js +8 -0
- package/lib/library/AssignLibraryPlugin.js +16 -0
- package/lib/library/EnableLibraryPlugin.js +7 -1
- package/lib/library/ExportPropertyLibraryPlugin.js +9 -0
- package/lib/library/JsonpLibraryPlugin.js +8 -0
- package/lib/library/ModuleLibraryPlugin.js +12 -1
- package/lib/library/SystemLibraryPlugin.js +8 -0
- package/lib/library/UmdLibraryPlugin.js +16 -0
- package/lib/logging/Logger.js +17 -0
- package/lib/logging/createConsoleLogger.js +7 -0
- package/lib/logging/runtime.js +2 -0
- package/lib/logging/truncateArgs.js +2 -0
- package/lib/node/CommonJsChunkLoadingPlugin.js +5 -1
- package/lib/node/NodeEnvironmentPlugin.js +3 -1
- package/lib/node/NodeSourcePlugin.js +1 -1
- package/lib/node/NodeTargetPlugin.js +2 -1
- package/lib/node/NodeTemplatePlugin.js +3 -1
- package/lib/node/NodeWatchFileSystem.js +2 -0
- package/lib/node/ReadFileChunkLoadingRuntimeModule.js +3 -0
- package/lib/node/ReadFileCompileAsyncWasmPlugin.js +4 -1
- package/lib/node/ReadFileCompileWasmPlugin.js +4 -1
- package/lib/node/RequireChunkLoadingRuntimeModule.js +3 -0
- package/lib/node/nodeConsole.js +3 -0
- package/lib/optimize/AggressiveMergingPlugin.js +3 -1
- package/lib/optimize/AggressiveSplittingPlugin.js +6 -1
- package/lib/optimize/ConcatenatedModule.js +11 -0
- package/lib/optimize/EnsureChunkConditionsPlugin.js +2 -1
- package/lib/optimize/FlagIncludedChunksPlugin.js +2 -1
- package/lib/optimize/InnerGraph.js +15 -0
- package/lib/optimize/InnerGraphPlugin.js +3 -1
- package/lib/optimize/LimitChunkCountPlugin.js +9 -0
- package/lib/optimize/MangleExportsPlugin.js +5 -1
- package/lib/optimize/MergeDuplicateChunksPlugin.js +2 -0
- package/lib/optimize/MinChunkSizePlugin.js +2 -1
- package/lib/optimize/MinMaxSizeWarning.js +1 -0
- package/lib/optimize/ModuleConcatenationPlugin.js +21 -1
- package/lib/optimize/RealContentHashPlugin.js +16 -1
- package/lib/optimize/RemoveEmptyChunksPlugin.js +2 -1
- package/lib/optimize/RemoveParentModulesPlugin.js +3 -1
- package/lib/optimize/RuntimeChunkPlugin.js +2 -1
- package/lib/optimize/SideEffectsFlagPlugin.js +7 -1
- package/lib/optimize/SplitChunksPlugin.js +49 -1
- package/lib/performance/AssetsOverSizeLimitWarning.js +1 -0
- package/lib/performance/EntrypointsOverSizeLimitWarning.js +1 -0
- package/lib/performance/SizeLimitsPlugin.js +7 -1
- package/lib/prefetch/ChunkPrefetchFunctionRuntimeModule.js +1 -0
- package/lib/prefetch/ChunkPrefetchPreloadPlugin.js +6 -0
- package/lib/prefetch/ChunkPrefetchStartupRuntimeModule.js +1 -0
- package/lib/prefetch/ChunkPrefetchTriggerRuntimeModule.js +1 -0
- package/lib/prefetch/ChunkPreloadTriggerRuntimeModule.js +1 -0
- package/lib/rules/BasicEffectRulePlugin.js +3 -0
- package/lib/rules/BasicMatcherRulePlugin.js +3 -0
- package/lib/rules/ObjectMatcherRulePlugin.js +3 -0
- package/lib/rules/RuleSetCompiler.js +18 -0
- package/lib/rules/UseEffectRulePlugin.js +6 -0
- package/lib/runtime/AsyncModuleRuntimeModule.js +1 -0
- package/lib/runtime/AutoPublicPathRuntimeModule.js +1 -0
- package/lib/runtime/BaseUriRuntimeModule.js +1 -0
- package/lib/runtime/ChunkNameRuntimeModule.js +1 -0
- package/lib/runtime/CompatGetDefaultExportRuntimeModule.js +1 -0
- package/lib/runtime/CompatRuntimeModule.js +2 -0
- package/lib/runtime/CreateFakeNamespaceObjectRuntimeModule.js +1 -0
- package/lib/runtime/CreateScriptRuntimeModule.js +1 -0
- package/lib/runtime/CreateScriptUrlRuntimeModule.js +1 -0
- package/lib/runtime/DefinePropertyGettersRuntimeModule.js +1 -0
- package/lib/runtime/EnsureChunkRuntimeModule.js +1 -0
- package/lib/runtime/GetChunkFilenameRuntimeModule.js +1 -0
- package/lib/runtime/GetFullHashRuntimeModule.js +1 -0
- package/lib/runtime/GetMainFilenameRuntimeModule.js +1 -0
- package/lib/runtime/GetTrustedTypesPolicyRuntimeModule.js +1 -0
- package/lib/runtime/GlobalRuntimeModule.js +1 -0
- package/lib/runtime/HasOwnPropertyRuntimeModule.js +1 -0
- package/lib/runtime/HelperRuntimeModule.js +5 -0
- package/lib/runtime/LoadScriptRuntimeModule.js +1 -0
- package/lib/runtime/MakeDeferredNamespaceObjectRuntime.js +2 -0
- package/lib/runtime/MakeNamespaceObjectRuntimeModule.js +1 -0
- package/lib/runtime/NonceRuntimeModule.js +1 -0
- package/lib/runtime/OnChunksLoadedRuntimeModule.js +1 -0
- package/lib/runtime/PublicPathRuntimeModule.js +1 -0
- package/lib/runtime/RelativeUrlRuntimeModule.js +1 -0
- package/lib/runtime/RuntimeIdRuntimeModule.js +1 -0
- package/lib/runtime/StartupChunkDependenciesPlugin.js +13 -1
- package/lib/runtime/StartupChunkDependenciesRuntimeModule.js +1 -0
- package/lib/runtime/StartupEntrypointRuntimeModule.js +1 -0
- package/lib/runtime/SystemContextRuntimeModule.js +1 -0
- package/lib/runtime/ToBinaryRuntimeModule.js +1 -0
- package/lib/schemes/DataUriPlugin.js +1 -1
- package/lib/schemes/FileUriPlugin.js +1 -1
- package/lib/schemes/HttpUriPlugin.js +43 -1
- package/lib/schemes/VirtualUrlPlugin.js +6 -1
- package/lib/serialization/AggregateErrorSerializer.js +2 -0
- package/lib/serialization/ArraySerializer.js +2 -0
- package/lib/serialization/BinaryMiddleware.js +20 -1
- package/lib/serialization/DateObjectSerializer.js +2 -0
- package/lib/serialization/ErrorObjectSerializer.js +3 -0
- package/lib/serialization/FileMiddleware.js +21 -0
- package/lib/serialization/MapObjectSerializer.js +2 -0
- package/lib/serialization/NullPrototypeObjectSerializer.js +2 -0
- package/lib/serialization/ObjectMiddleware.js +23 -0
- package/lib/serialization/PlainObjectSerializer.js +7 -0
- package/lib/serialization/RegExpObjectSerializer.js +2 -0
- package/lib/serialization/Serializer.js +5 -0
- package/lib/serialization/SerializerMiddleware.js +12 -0
- package/lib/serialization/SetObjectSerializer.js +2 -0
- package/lib/serialization/SingleItemMiddleware.js +3 -0
- package/lib/sharing/ConsumeSharedFallbackDependency.js +1 -0
- package/lib/sharing/ConsumeSharedModule.js +15 -0
- package/lib/sharing/ConsumeSharedPlugin.js +6 -1
- package/lib/sharing/ConsumeSharedRuntimeModule.js +1 -0
- package/lib/sharing/ProvideForSharedDependency.js +1 -0
- package/lib/sharing/ProvideSharedDependency.js +4 -0
- package/lib/sharing/ProvideSharedModule.js +11 -0
- package/lib/sharing/ProvideSharedModuleFactory.js +1 -0
- package/lib/sharing/ProvideSharedPlugin.js +4 -1
- package/lib/sharing/SharePlugin.js +2 -1
- package/lib/sharing/ShareRuntimeModule.js +1 -0
- package/lib/sharing/resolveMatchedConfigs.js +3 -0
- package/lib/sharing/utils.js +8 -0
- package/lib/stats/DefaultStatsFactoryPlugin.js +56 -1
- package/lib/stats/DefaultStatsPresetPlugin.js +11 -1
- package/lib/stats/DefaultStatsPrinterPlugin.js +37 -1
- package/lib/stats/StatsFactory.js +12 -0
- package/lib/stats/StatsPrinter.js +7 -0
- package/lib/url/URLParserPlugin.js +6 -0
- package/lib/util/AppendOnlyStackedSet.js +15 -0
- package/lib/util/ArrayHelpers.js +1 -0
- package/lib/util/ArrayQueue.js +10 -5
- package/lib/util/AsyncQueue.js +20 -0
- package/lib/util/IterableHelpers.js +3 -0
- package/lib/util/LazyBucketSortedSet.js +21 -0
- package/lib/util/LazySet.js +39 -0
- package/lib/util/ParallelismFactorCalculator.js +1 -0
- package/lib/util/Queue.js +6 -3
- package/lib/util/Semaphore.js +14 -1
- package/lib/util/SetHelpers.js +3 -0
- package/lib/util/SortableSet.js +6 -0
- package/lib/util/StackedCacheMap.js +20 -3
- package/lib/util/StackedMap.js +45 -0
- package/lib/util/StringXor.js +1 -1
- package/lib/util/TupleQueue.js +7 -3
- package/lib/util/TupleSet.js +13 -0
- package/lib/util/URLAbsoluteSpecifier.js +1 -0
- package/lib/util/WeakTupleMap.js +33 -0
- package/lib/util/binarySearchBounds.js +1 -0
- package/lib/util/cleverMerge.js +17 -0
- package/lib/util/comparators.js +31 -0
- package/lib/util/compileBooleanMatcher.js +9 -0
- package/lib/util/concatenate.js +6 -0
- package/lib/util/conventions.js +4 -0
- package/lib/util/dataURL.js +1 -0
- package/lib/util/deprecation.js +19 -0
- package/lib/util/deterministicGrouping.js +20 -0
- package/lib/util/extractSourceMap.js +1 -0
- package/lib/util/extractUrlAndGlobal.js +1 -0
- package/lib/util/findGraphRoots.js +5 -0
- package/lib/util/fs.js +63 -0
- package/lib/util/generateDebugId.js +1 -0
- package/lib/util/hash/BatchedHash.js +1 -0
- package/lib/util/hash/BulkUpdateHash.js +1 -0
- package/lib/util/hash/hash-digest.js +8 -0
- package/lib/util/hash/wasm-hash.js +5 -0
- package/lib/util/identifier.js +19 -0
- package/lib/util/magicComment.js +1 -0
- package/lib/util/makeSerializable.js +6 -0
- package/lib/util/memoize.js +2 -0
- package/lib/util/mimeTypes.js +176 -0
- package/lib/util/nonNumericOnlyHash.js +1 -0
- package/lib/util/parseJson.js +112 -0
- package/lib/util/processAsyncTree.js +8 -0
- package/lib/util/property.js +1 -0
- package/lib/util/registerExternalSerializer.js +20 -0
- package/lib/util/removeBOM.js +1 -0
- package/lib/util/runtime.js +32 -0
- package/lib/util/semver.js +15 -0
- package/lib/util/serialization.js +2 -0
- package/lib/util/smartGrouping.js +8 -0
- package/lib/util/source.js +2 -0
- package/lib/validateSchema.js +1 -0
- package/lib/wasm/EnableWasmLoadingPlugin.js +15 -1
- package/lib/wasm-async/AsyncWasmCompileRuntimeModule.js +1 -0
- package/lib/wasm-async/AsyncWasmLoadingRuntimeModule.js +1 -0
- package/lib/wasm-async/AsyncWebAssemblyGenerator.js +6 -0
- package/lib/wasm-async/AsyncWebAssemblyJavascriptGenerator.js +5 -0
- package/lib/wasm-async/AsyncWebAssemblyModulesPlugin.js +10 -1
- package/lib/wasm-async/AsyncWebAssemblyParser.js +1 -0
- package/lib/wasm-async/UniversalCompileAsyncWasmPlugin.js +12 -1
- package/lib/wasm-sync/UnsupportedWebAssemblyFeatureError.js +1 -0
- package/lib/wasm-sync/WasmChunkLoadingRuntimeModule.js +1 -0
- package/lib/wasm-sync/WasmFinalizeExportsPlugin.js +1 -1
- package/lib/wasm-sync/WebAssemblyGenerator.js +26 -1
- package/lib/wasm-sync/WebAssemblyInInitialChunkError.js +2 -0
- package/lib/wasm-sync/WebAssemblyJavascriptGenerator.js +4 -0
- package/lib/wasm-sync/WebAssemblyModulesPlugin.js +10 -1
- package/lib/wasm-sync/WebAssemblyParser.js +2 -0
- package/lib/wasm-sync/WebAssemblyUtils.js +2 -0
- package/lib/web/FetchCompileAsyncWasmPlugin.js +10 -1
- package/lib/web/FetchCompileWasmPlugin.js +13 -1
- package/lib/web/JsonpChunkLoadingPlugin.js +11 -1
- package/lib/web/JsonpChunkLoadingRuntimeModule.js +1 -0
- package/lib/web/JsonpTemplatePlugin.js +2 -1
- package/lib/webpack.js +10 -0
- package/lib/webworker/ImportScriptsChunkLoadingPlugin.js +10 -1
- package/lib/webworker/ImportScriptsChunkLoadingRuntimeModule.js +1 -0
- package/lib/webworker/WebWorkerTemplatePlugin.js +1 -1
- package/package.json +12 -14
- package/schemas/WebpackOptions.check.js +1 -1
- package/schemas/WebpackOptions.json +44 -55
- package/types.d.ts +4594 -331
|
@@ -36,6 +36,7 @@ const makeSerializable = require("../util/makeSerializable");
|
|
|
36
36
|
|
|
37
37
|
class RawDataUrlModule extends Module {
|
|
38
38
|
/**
|
|
39
|
+
* Creates an instance of RawDataUrlModule.
|
|
39
40
|
* @param {string} url raw url
|
|
40
41
|
* @param {string} identifier unique identifier
|
|
41
42
|
* @param {string=} readableIdentifier readable identifier
|
|
@@ -53,6 +54,7 @@ class RawDataUrlModule extends Module {
|
|
|
53
54
|
}
|
|
54
55
|
|
|
55
56
|
/**
|
|
57
|
+
* Returns the source types this module can generate.
|
|
56
58
|
* @returns {SourceTypes} types available (do not mutate)
|
|
57
59
|
*/
|
|
58
60
|
getSourceTypes() {
|
|
@@ -60,6 +62,7 @@ class RawDataUrlModule extends Module {
|
|
|
60
62
|
}
|
|
61
63
|
|
|
62
64
|
/**
|
|
65
|
+
* Returns the unique identifier used to reference this module.
|
|
63
66
|
* @returns {string} a unique identifier of the module
|
|
64
67
|
*/
|
|
65
68
|
identifier() {
|
|
@@ -67,6 +70,7 @@ class RawDataUrlModule extends Module {
|
|
|
67
70
|
}
|
|
68
71
|
|
|
69
72
|
/**
|
|
73
|
+
* Returns the estimated size for the requested source type.
|
|
70
74
|
* @param {string=} type the source type for which the size should be estimated
|
|
71
75
|
* @returns {number} the estimated size of the module (must be non-zero)
|
|
72
76
|
*/
|
|
@@ -78,6 +82,7 @@ class RawDataUrlModule extends Module {
|
|
|
78
82
|
}
|
|
79
83
|
|
|
80
84
|
/**
|
|
85
|
+
* Returns a human-readable identifier for this module.
|
|
81
86
|
* @param {RequestShortener} requestShortener the request shortener
|
|
82
87
|
* @returns {string} a user readable identifier of the module
|
|
83
88
|
*/
|
|
@@ -88,6 +93,7 @@ class RawDataUrlModule extends Module {
|
|
|
88
93
|
}
|
|
89
94
|
|
|
90
95
|
/**
|
|
96
|
+
* Checks whether the module needs to be rebuilt for the current build state.
|
|
91
97
|
* @param {NeedBuildContext} context context info
|
|
92
98
|
* @param {NeedBuildCallback} callback callback function, returns true, if the module needs a rebuild
|
|
93
99
|
* @returns {void}
|
|
@@ -97,6 +103,7 @@ class RawDataUrlModule extends Module {
|
|
|
97
103
|
}
|
|
98
104
|
|
|
99
105
|
/**
|
|
106
|
+
* Builds the module using the provided compilation context.
|
|
100
107
|
* @param {WebpackOptions} options webpack options
|
|
101
108
|
* @param {Compilation} compilation the compilation
|
|
102
109
|
* @param {ResolverWithOptions} resolver the resolver
|
|
@@ -113,6 +120,7 @@ class RawDataUrlModule extends Module {
|
|
|
113
120
|
}
|
|
114
121
|
|
|
115
122
|
/**
|
|
123
|
+
* Generates code and runtime requirements for this module.
|
|
116
124
|
* @param {CodeGenerationContext} context context for code generation
|
|
117
125
|
* @returns {CodeGenerationResult} result
|
|
118
126
|
*/
|
|
@@ -138,6 +146,7 @@ class RawDataUrlModule extends Module {
|
|
|
138
146
|
}
|
|
139
147
|
|
|
140
148
|
/**
|
|
149
|
+
* Updates the hash with the data contributed by this instance.
|
|
141
150
|
* @param {Hash} hash the hash used to track dependencies
|
|
142
151
|
* @param {UpdateHashContext} context context
|
|
143
152
|
* @returns {void}
|
|
@@ -148,6 +157,7 @@ class RawDataUrlModule extends Module {
|
|
|
148
157
|
}
|
|
149
158
|
|
|
150
159
|
/**
|
|
160
|
+
* Serializes this instance into the provided serializer context.
|
|
151
161
|
* @param {ObjectSerializerContext} context context
|
|
152
162
|
*/
|
|
153
163
|
serialize(context) {
|
|
@@ -161,6 +171,7 @@ class RawDataUrlModule extends Module {
|
|
|
161
171
|
}
|
|
162
172
|
|
|
163
173
|
/**
|
|
174
|
+
* Restores this instance from the provided deserializer context.
|
|
164
175
|
* @param {ObjectDeserializerContext} context context
|
|
165
176
|
*/
|
|
166
177
|
deserialize(context) {
|
|
@@ -13,6 +13,7 @@ const HarmonyImportDependency = require("../dependencies/HarmonyImportDependency
|
|
|
13
13
|
/** @typedef {Set<Module>} Modules */
|
|
14
14
|
|
|
15
15
|
/**
|
|
16
|
+
* Gets outgoing async modules.
|
|
16
17
|
* @param {ModuleGraph} moduleGraph module graph
|
|
17
18
|
* @param {Module} module module
|
|
18
19
|
* @returns {Modules} set of modules
|
|
@@ -15,10 +15,12 @@ const Template = require("../Template");
|
|
|
15
15
|
/** @typedef {Map<string, string>} Dependencies */
|
|
16
16
|
|
|
17
17
|
/**
|
|
18
|
+
* Represents AwaitDependenciesInitFragment.
|
|
18
19
|
* @extends {InitFragment<GenerateContext>}
|
|
19
20
|
*/
|
|
20
21
|
class AwaitDependenciesInitFragment extends InitFragment {
|
|
21
22
|
/**
|
|
23
|
+
* Creates an instance of AwaitDependenciesInitFragment.
|
|
22
24
|
* @param {Dependencies} dependencies maps an import var to an async module that needs to be awaited
|
|
23
25
|
*/
|
|
24
26
|
constructor(dependencies) {
|
|
@@ -33,6 +35,7 @@ class AwaitDependenciesInitFragment extends InitFragment {
|
|
|
33
35
|
}
|
|
34
36
|
|
|
35
37
|
/**
|
|
38
|
+
* Merges another await-dependencies fragment into this fragment.
|
|
36
39
|
* @param {AwaitDependenciesInitFragment} other other AwaitDependenciesInitFragment
|
|
37
40
|
* @returns {AwaitDependenciesInitFragment} AwaitDependenciesInitFragment
|
|
38
41
|
*/
|
|
@@ -45,6 +48,7 @@ class AwaitDependenciesInitFragment extends InitFragment {
|
|
|
45
48
|
}
|
|
46
49
|
|
|
47
50
|
/**
|
|
51
|
+
* Returns the source code that will be included as initialization code.
|
|
48
52
|
* @param {GenerateContext} context context
|
|
49
53
|
* @returns {string | Source | undefined} the source code that will be included as initialization code
|
|
50
54
|
*/
|
|
@@ -14,7 +14,7 @@ const PLUGIN_NAME = "InferAsyncModulesPlugin";
|
|
|
14
14
|
|
|
15
15
|
class InferAsyncModulesPlugin {
|
|
16
16
|
/**
|
|
17
|
-
*
|
|
17
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
18
18
|
* @param {Compiler} compiler the compiler instance
|
|
19
19
|
* @returns {void}
|
|
20
20
|
*/
|
package/lib/buildChunkGraph.js
CHANGED
|
@@ -24,6 +24,7 @@ const { getEntryRuntime, mergeRuntime } = require("./util/runtime");
|
|
|
24
24
|
/** @typedef {import("./util/runtime").RuntimeSpec} RuntimeSpec */
|
|
25
25
|
|
|
26
26
|
/**
|
|
27
|
+
* Defines the queue item type used by this module.
|
|
27
28
|
* @typedef {object} QueueItem
|
|
28
29
|
* @property {number} action
|
|
29
30
|
* @property {DependenciesBlock} block
|
|
@@ -34,6 +35,7 @@ const { getEntryRuntime, mergeRuntime } = require("./util/runtime");
|
|
|
34
35
|
*/
|
|
35
36
|
|
|
36
37
|
/**
|
|
38
|
+
* Defines the chunk group info type used by this module.
|
|
37
39
|
* @typedef {object} ChunkGroupInfo
|
|
38
40
|
* @property {ChunkGroup} chunkGroup the chunk group
|
|
39
41
|
* @property {RuntimeSpec} runtime the runtimes
|
|
@@ -55,6 +57,7 @@ const { getEntryRuntime, mergeRuntime } = require("./util/runtime");
|
|
|
55
57
|
*/
|
|
56
58
|
|
|
57
59
|
/**
|
|
60
|
+
* Defines the block chunk group connection type used by this module.
|
|
58
61
|
* @typedef {object} BlockChunkGroupConnection
|
|
59
62
|
* @property {ChunkGroupInfo} originChunkGroupInfo origin chunk group
|
|
60
63
|
* @property {ChunkGroup} chunkGroup referenced chunk group
|
|
@@ -74,6 +77,7 @@ const ZERO_BIGINT = BigInt(0);
|
|
|
74
77
|
const ONE_BIGINT = BigInt(1);
|
|
75
78
|
|
|
76
79
|
/**
|
|
80
|
+
* Checks whether this object is ordinal set in mask.
|
|
77
81
|
* @param {bigint} mask The mask to test
|
|
78
82
|
* @param {number} ordinal The ordinal of the bit to test
|
|
79
83
|
* @returns {boolean} If the ordinal-th bit is set in the mask
|
|
@@ -82,6 +86,7 @@ const isOrdinalSetInMask = (mask, ordinal) =>
|
|
|
82
86
|
BigInt.asUintN(1, mask >> BigInt(ordinal)) !== ZERO_BIGINT;
|
|
83
87
|
|
|
84
88
|
/**
|
|
89
|
+
* Gets active state of connections.
|
|
85
90
|
* @param {ModuleGraphConnection[]} connections list of connections
|
|
86
91
|
* @param {RuntimeSpec} runtime for which runtime
|
|
87
92
|
* @returns {ConnectionState} connection state
|
|
@@ -101,6 +106,7 @@ const getActiveStateOfConnections = (connections, runtime) => {
|
|
|
101
106
|
};
|
|
102
107
|
|
|
103
108
|
/**
|
|
109
|
+
* Extract block modules.
|
|
104
110
|
* @param {Module} module module
|
|
105
111
|
* @param {ModuleGraph} moduleGraph module graph
|
|
106
112
|
* @param {RuntimeSpec} runtime runtime
|
|
@@ -237,6 +243,7 @@ const extractBlockModules = (module, moduleGraph, runtime, blockModulesMap) => {
|
|
|
237
243
|
};
|
|
238
244
|
|
|
239
245
|
/**
|
|
246
|
+
* Processes the provided logger.
|
|
240
247
|
* @param {Logger} logger a logger
|
|
241
248
|
* @param {Compilation} compilation the compilation
|
|
242
249
|
* @param {InputEntrypointsAndModules} inputEntrypointsAndModules chunk groups which are processed with the modules
|
|
@@ -268,6 +275,7 @@ const visitModules = (
|
|
|
268
275
|
const ordinalByModule = new Map();
|
|
269
276
|
|
|
270
277
|
/**
|
|
278
|
+
* Gets module ordinal.
|
|
271
279
|
* @param {Module} module The module to look up
|
|
272
280
|
* @returns {number} The ordinal of the module in masks
|
|
273
281
|
*/
|
|
@@ -289,6 +297,7 @@ const visitModules = (
|
|
|
289
297
|
}
|
|
290
298
|
|
|
291
299
|
/**
|
|
300
|
+
* Gets block modules.
|
|
292
301
|
* @param {DependenciesBlock} block block
|
|
293
302
|
* @param {RuntimeSpec} runtime runtime
|
|
294
303
|
* @returns {BlockModulesInFlattenTuples | undefined} block modules in flatten tuples
|
|
@@ -493,6 +502,7 @@ const visitModules = (
|
|
|
493
502
|
|
|
494
503
|
// For each async Block in graph
|
|
495
504
|
/**
|
|
505
|
+
* Processes the provided b.
|
|
496
506
|
* @param {AsyncDependenciesBlock} b iterating over each Async DepBlock
|
|
497
507
|
* @returns {void}
|
|
498
508
|
*/
|
|
@@ -699,6 +709,7 @@ const visitModules = (
|
|
|
699
709
|
};
|
|
700
710
|
|
|
701
711
|
/**
|
|
712
|
+
* Processes the provided block.
|
|
702
713
|
* @param {DependenciesBlock} block the block
|
|
703
714
|
* @returns {void}
|
|
704
715
|
*/
|
|
@@ -791,6 +802,7 @@ const visitModules = (
|
|
|
791
802
|
};
|
|
792
803
|
|
|
793
804
|
/**
|
|
805
|
+
* Process entry block.
|
|
794
806
|
* @param {DependenciesBlock} block the block
|
|
795
807
|
* @returns {void}
|
|
796
808
|
*/
|
|
@@ -918,6 +930,7 @@ const visitModules = (
|
|
|
918
930
|
};
|
|
919
931
|
|
|
920
932
|
/**
|
|
933
|
+
* Calculate resulting available modules.
|
|
921
934
|
* @param {ChunkGroupInfo} chunkGroupInfo The info object for the chunk group
|
|
922
935
|
* @returns {bigint} The mask of available modules after the chunk group
|
|
923
936
|
*/
|
|
@@ -1193,6 +1206,7 @@ const visitModules = (
|
|
|
1193
1206
|
let preOrderIndex = 0;
|
|
1194
1207
|
let postOrderIndex = 0;
|
|
1195
1208
|
/**
|
|
1209
|
+
* Processes the provided current.
|
|
1196
1210
|
* @param {DependenciesBlock} current current
|
|
1197
1211
|
* @param {BlocksWithNestedBlocks} visited visited dependencies blocks
|
|
1198
1212
|
*/
|
|
@@ -1240,6 +1254,7 @@ const visitModules = (
|
|
|
1240
1254
|
};
|
|
1241
1255
|
|
|
1242
1256
|
/**
|
|
1257
|
+
* Connects chunk groups.
|
|
1243
1258
|
* @param {Compilation} compilation the compilation
|
|
1244
1259
|
* @param {BlocksWithNestedBlocks} blocksWithNestedBlocks flag for blocks that have nested blocks
|
|
1245
1260
|
* @param {BlockConnections} blockConnections connection for blocks
|
|
@@ -11,6 +11,7 @@ const PLUGIN_NAME = "AddBuildDependenciesPlugin";
|
|
|
11
11
|
|
|
12
12
|
class AddBuildDependenciesPlugin {
|
|
13
13
|
/**
|
|
14
|
+
* Creates an instance of AddBuildDependenciesPlugin.
|
|
14
15
|
* @param {Iterable<string>} buildDependencies list of build dependencies
|
|
15
16
|
*/
|
|
16
17
|
constructor(buildDependencies) {
|
|
@@ -18,7 +19,7 @@ class AddBuildDependenciesPlugin {
|
|
|
18
19
|
}
|
|
19
20
|
|
|
20
21
|
/**
|
|
21
|
-
*
|
|
22
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
22
23
|
* @param {Compiler} compiler the compiler instance
|
|
23
24
|
* @returns {void}
|
|
24
25
|
*/
|
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
|
|
10
10
|
class AddManagedPathsPlugin {
|
|
11
11
|
/**
|
|
12
|
+
* Creates an instance of AddManagedPathsPlugin.
|
|
12
13
|
* @param {Iterable<string | RegExp>} managedPaths list of managed paths
|
|
13
14
|
* @param {Iterable<string | RegExp>} immutablePaths list of immutable paths
|
|
14
15
|
* @param {Iterable<string | RegExp>} unmanagedPaths list of unmanaged paths
|
|
@@ -20,7 +21,7 @@ class AddManagedPathsPlugin {
|
|
|
20
21
|
}
|
|
21
22
|
|
|
22
23
|
/**
|
|
23
|
-
*
|
|
24
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
24
25
|
* @param {Compiler} compiler the compiler instance
|
|
25
26
|
* @returns {void}
|
|
26
27
|
*/
|
|
@@ -16,6 +16,7 @@ const PLUGIN_NAME = "IdleFileCachePlugin";
|
|
|
16
16
|
|
|
17
17
|
class IdleFileCachePlugin {
|
|
18
18
|
/**
|
|
19
|
+
* Creates an instance of IdleFileCachePlugin.
|
|
19
20
|
* @param {PackFileCacheStrategy} strategy cache strategy
|
|
20
21
|
* @param {number} idleTimeout timeout
|
|
21
22
|
* @param {number} idleTimeoutForInitialStore initial timeout
|
|
@@ -34,7 +35,7 @@ class IdleFileCachePlugin {
|
|
|
34
35
|
}
|
|
35
36
|
|
|
36
37
|
/**
|
|
37
|
-
*
|
|
38
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
38
39
|
* @param {Compiler} compiler the compiler instance
|
|
39
40
|
* @returns {void}
|
|
40
41
|
*/
|
|
@@ -12,6 +12,7 @@ const Cache = require("../Cache");
|
|
|
12
12
|
/** @typedef {import("../Compiler")} Compiler */
|
|
13
13
|
|
|
14
14
|
/**
|
|
15
|
+
* Defines the memory with gc cache plugin options type used by this module.
|
|
15
16
|
* @typedef {object} MemoryWithGcCachePluginOptions
|
|
16
17
|
* @property {number} maxGenerations max generations
|
|
17
18
|
*/
|
|
@@ -20,6 +21,7 @@ const PLUGIN_NAME = "MemoryWithGcCachePlugin";
|
|
|
20
21
|
|
|
21
22
|
class MemoryWithGcCachePlugin {
|
|
22
23
|
/**
|
|
24
|
+
* Creates an instance of MemoryWithGcCachePlugin.
|
|
23
25
|
* @param {MemoryWithGcCachePluginOptions} options options
|
|
24
26
|
*/
|
|
25
27
|
constructor({ maxGenerations }) {
|
|
@@ -27,7 +29,7 @@ class MemoryWithGcCachePlugin {
|
|
|
27
29
|
}
|
|
28
30
|
|
|
29
31
|
/**
|
|
30
|
-
*
|
|
32
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
31
33
|
* @param {Compiler} compiler the compiler instance
|
|
32
34
|
* @returns {void}
|
|
33
35
|
*/
|
|
@@ -37,6 +37,7 @@ const {
|
|
|
37
37
|
|
|
38
38
|
class PackContainer {
|
|
39
39
|
/**
|
|
40
|
+
* Creates an instance of PackContainer.
|
|
40
41
|
* @param {Pack} data stored data
|
|
41
42
|
* @param {string} version version identifier
|
|
42
43
|
* @param {Snapshot} buildSnapshot snapshot of all build dependencies
|
|
@@ -67,6 +68,7 @@ class PackContainer {
|
|
|
67
68
|
}
|
|
68
69
|
|
|
69
70
|
/**
|
|
71
|
+
* Serializes this instance into the provided serializer context.
|
|
70
72
|
* @param {ObjectSerializerContext} context context
|
|
71
73
|
*/
|
|
72
74
|
serialize({ write, writeLazy }) {
|
|
@@ -80,6 +82,7 @@ class PackContainer {
|
|
|
80
82
|
}
|
|
81
83
|
|
|
82
84
|
/**
|
|
85
|
+
* Restores this instance from the provided deserializer context.
|
|
83
86
|
* @param {ObjectDeserializerContext} context context
|
|
84
87
|
*/
|
|
85
88
|
deserialize({ read }) {
|
|
@@ -106,6 +109,7 @@ const MAX_TIME_IN_FRESH_PACK = 1 * 60 * 1000; // 1 min
|
|
|
106
109
|
|
|
107
110
|
class PackItemInfo {
|
|
108
111
|
/**
|
|
112
|
+
* Creates an instance of PackItemInfo.
|
|
109
113
|
* @param {string} identifier identifier of item
|
|
110
114
|
* @param {string | null | undefined} etag etag of item
|
|
111
115
|
* @param {Data} value fresh value of item
|
|
@@ -126,6 +130,7 @@ class PackItemInfo {
|
|
|
126
130
|
|
|
127
131
|
class Pack {
|
|
128
132
|
/**
|
|
133
|
+
* Creates an instance of Pack.
|
|
129
134
|
* @param {Logger} logger a logger
|
|
130
135
|
* @param {number} maxAge max age of cache items
|
|
131
136
|
*/
|
|
@@ -149,6 +154,7 @@ class Pack {
|
|
|
149
154
|
}
|
|
150
155
|
|
|
151
156
|
/**
|
|
157
|
+
* Adds the provided identifier to the pack.
|
|
152
158
|
* @param {string} identifier identifier
|
|
153
159
|
*/
|
|
154
160
|
_addRequest(identifier) {
|
|
@@ -170,6 +176,7 @@ class Pack {
|
|
|
170
176
|
}
|
|
171
177
|
|
|
172
178
|
/**
|
|
179
|
+
* Returns cached content.
|
|
173
180
|
* @param {string} identifier unique name for the resource
|
|
174
181
|
* @param {string | null} etag etag of the resource
|
|
175
182
|
* @returns {Data} cached content
|
|
@@ -193,6 +200,7 @@ class Pack {
|
|
|
193
200
|
}
|
|
194
201
|
|
|
195
202
|
/**
|
|
203
|
+
* Updates value using the provided identifier.
|
|
196
204
|
* @param {string} identifier unique name for the resource
|
|
197
205
|
* @param {string | null} etag etag of the resource
|
|
198
206
|
* @param {Data} data cached content
|
|
@@ -244,6 +252,7 @@ class Pack {
|
|
|
244
252
|
}
|
|
245
253
|
|
|
246
254
|
/**
|
|
255
|
+
* Returns new location of data entries.
|
|
247
256
|
* @returns {number} new location of data entries
|
|
248
257
|
*/
|
|
249
258
|
_findLocation() {
|
|
@@ -254,6 +263,7 @@ class Pack {
|
|
|
254
263
|
}
|
|
255
264
|
|
|
256
265
|
/**
|
|
266
|
+
* Gc and update location.
|
|
257
267
|
* @private
|
|
258
268
|
* @param {Items} items items
|
|
259
269
|
* @param {Items} usedItems used items
|
|
@@ -604,6 +614,7 @@ class Pack {
|
|
|
604
614
|
}
|
|
605
615
|
|
|
606
616
|
/**
|
|
617
|
+
* Serializes this instance into the provided serializer context.
|
|
607
618
|
* @param {ObjectSerializerContext} context context
|
|
608
619
|
*/
|
|
609
620
|
serialize({ write, writeSeparate }) {
|
|
@@ -637,6 +648,7 @@ class Pack {
|
|
|
637
648
|
}
|
|
638
649
|
|
|
639
650
|
/**
|
|
651
|
+
* Restores this instance from the provided deserializer context.
|
|
640
652
|
* @param {ObjectDeserializerContext & { logger: Logger }} context context
|
|
641
653
|
*/
|
|
642
654
|
deserialize({ read, logger }) {
|
|
@@ -694,6 +706,7 @@ makeSerializable(Pack, "webpack/lib/cache/PackFileCacheStrategy", "Pack");
|
|
|
694
706
|
|
|
695
707
|
class PackContentItems {
|
|
696
708
|
/**
|
|
709
|
+
* Creates an instance of PackContentItems.
|
|
697
710
|
* @param {Content} map items
|
|
698
711
|
*/
|
|
699
712
|
constructor(map) {
|
|
@@ -701,6 +714,7 @@ class PackContentItems {
|
|
|
701
714
|
}
|
|
702
715
|
|
|
703
716
|
/**
|
|
717
|
+
* Serializes this instance into the provided serializer context.
|
|
704
718
|
* @param {ObjectSerializerContext & { logger: Logger, profile: boolean | undefined }} context context
|
|
705
719
|
*/
|
|
706
720
|
serialize({ write, snapshot, rollback, logger, profile }) {
|
|
@@ -778,6 +792,7 @@ class PackContentItems {
|
|
|
778
792
|
}
|
|
779
793
|
|
|
780
794
|
/**
|
|
795
|
+
* Restores this instance from the provided deserializer context.
|
|
781
796
|
* @param {ObjectDeserializerContext & { logger: Logger, profile: boolean | undefined }} context context
|
|
782
797
|
*/
|
|
783
798
|
deserialize({ read, logger, profile }) {
|
|
@@ -851,6 +866,7 @@ class PackContent {
|
|
|
851
866
|
*/
|
|
852
867
|
|
|
853
868
|
/**
|
|
869
|
+
* Creates an instance of PackContent.
|
|
854
870
|
* @param {Items} items keys
|
|
855
871
|
* @param {Items} usedItems used keys
|
|
856
872
|
* @param {PackContentItems | (() => Promise<PackContentItems>)} dataOrFn sync or async content
|
|
@@ -875,6 +891,7 @@ class PackContent {
|
|
|
875
891
|
}
|
|
876
892
|
|
|
877
893
|
/**
|
|
894
|
+
* Returns result.
|
|
878
895
|
* @param {string} identifier identifier
|
|
879
896
|
* @returns {string | Promise<string>} result
|
|
880
897
|
*/
|
|
@@ -927,6 +944,7 @@ class PackContent {
|
|
|
927
944
|
}
|
|
928
945
|
|
|
929
946
|
/**
|
|
947
|
+
* Returns maybe a promise if lazy.
|
|
930
948
|
* @param {string} reason explanation why unpack is necessary
|
|
931
949
|
* @returns {void | Promise<void>} maybe a promise if lazy
|
|
932
950
|
*/
|
|
@@ -971,6 +989,7 @@ class PackContent {
|
|
|
971
989
|
}
|
|
972
990
|
|
|
973
991
|
/**
|
|
992
|
+
* Returns the estimated size for the requested source type.
|
|
974
993
|
* @returns {number} size of the content or -1 if not known
|
|
975
994
|
*/
|
|
976
995
|
getSize() {
|
|
@@ -985,6 +1004,7 @@ class PackContent {
|
|
|
985
1004
|
}
|
|
986
1005
|
|
|
987
1006
|
/**
|
|
1007
|
+
* Processes the provided identifier.
|
|
988
1008
|
* @param {string} identifier identifier
|
|
989
1009
|
*/
|
|
990
1010
|
delete(identifier) {
|
|
@@ -994,6 +1014,7 @@ class PackContent {
|
|
|
994
1014
|
}
|
|
995
1015
|
|
|
996
1016
|
/**
|
|
1017
|
+
* Processes the provided write.
|
|
997
1018
|
* @param {(lazy: LazyFunction) => (() => PackContentItems | Promise<PackContentItems>)} write write function
|
|
998
1019
|
* @returns {void}
|
|
999
1020
|
*/
|
|
@@ -1086,6 +1107,7 @@ class PackContent {
|
|
|
1086
1107
|
}
|
|
1087
1108
|
|
|
1088
1109
|
/**
|
|
1110
|
+
* Allow collecting memory.
|
|
1089
1111
|
* @param {Buffer} buf buffer
|
|
1090
1112
|
* @returns {Buffer} buffer that can be collected
|
|
1091
1113
|
*/
|
|
@@ -1099,6 +1121,7 @@ const allowCollectingMemory = (buf) => {
|
|
|
1099
1121
|
|
|
1100
1122
|
class PackFileCacheStrategy {
|
|
1101
1123
|
/**
|
|
1124
|
+
* Creates an instance of PackFileCacheStrategy.
|
|
1102
1125
|
* @param {object} options options
|
|
1103
1126
|
* @param {Compiler} options.compiler the compiler
|
|
1104
1127
|
* @param {IntermediateFileSystem} options.fs the filesystem
|
|
@@ -1186,6 +1209,7 @@ class PackFileCacheStrategy {
|
|
|
1186
1209
|
}
|
|
1187
1210
|
|
|
1188
1211
|
/**
|
|
1212
|
+
* Returns pack.
|
|
1189
1213
|
* @returns {Promise<Pack>} pack
|
|
1190
1214
|
*/
|
|
1191
1215
|
_getPack() {
|
|
@@ -1196,6 +1220,7 @@ class PackFileCacheStrategy {
|
|
|
1196
1220
|
}
|
|
1197
1221
|
|
|
1198
1222
|
/**
|
|
1223
|
+
* Returns the pack.
|
|
1199
1224
|
* @returns {Promise<Pack>} the pack
|
|
1200
1225
|
*/
|
|
1201
1226
|
_openPack() {
|
|
@@ -1362,6 +1387,7 @@ class PackFileCacheStrategy {
|
|
|
1362
1387
|
}
|
|
1363
1388
|
|
|
1364
1389
|
/**
|
|
1390
|
+
* Returns promise.
|
|
1365
1391
|
* @param {string} identifier unique name for the resource
|
|
1366
1392
|
* @param {Etag | null} etag etag of the resource
|
|
1367
1393
|
* @param {Data} data cached content
|
|
@@ -1376,6 +1402,7 @@ class PackFileCacheStrategy {
|
|
|
1376
1402
|
}
|
|
1377
1403
|
|
|
1378
1404
|
/**
|
|
1405
|
+
* Returns promise to the cached content.
|
|
1379
1406
|
* @param {string} identifier unique name for the resource
|
|
1380
1407
|
* @param {Etag | null} etag etag of the resource
|
|
1381
1408
|
* @returns {Promise<Data>} promise to the cached content
|
|
@@ -1396,6 +1423,7 @@ class PackFileCacheStrategy {
|
|
|
1396
1423
|
}
|
|
1397
1424
|
|
|
1398
1425
|
/**
|
|
1426
|
+
* Stores build dependencies.
|
|
1399
1427
|
* @param {FileSystemDependencies | Iterable<string>} dependencies dependencies to store
|
|
1400
1428
|
*/
|
|
1401
1429
|
storeBuildDependencies(dependencies) {
|
|
@@ -1429,6 +1457,7 @@ class PackFileCacheStrategy {
|
|
|
1429
1457
|
);
|
|
1430
1458
|
promise = new Promise(
|
|
1431
1459
|
/**
|
|
1460
|
+
* Handles the callback logic for this hook.
|
|
1432
1461
|
* @param {(value?: undefined) => void} resolve resolve
|
|
1433
1462
|
* @param {(reason?: Error) => void} reject reject
|
|
1434
1463
|
*/
|
|
@@ -22,6 +22,7 @@ const makeSerializable = require("../util/makeSerializable");
|
|
|
22
22
|
/** @typedef {import("../serialization/ObjectMiddleware").ObjectSerializerContext} ObjectSerializerContext */
|
|
23
23
|
|
|
24
24
|
/**
|
|
25
|
+
* Defines the sync hook type used by this module.
|
|
25
26
|
* @template T
|
|
26
27
|
* @typedef {import("tapable").SyncHook<T>} SyncHook
|
|
27
28
|
*/
|
|
@@ -30,6 +31,7 @@ const makeSerializable = require("../util/makeSerializable");
|
|
|
30
31
|
|
|
31
32
|
class CacheEntry {
|
|
32
33
|
/**
|
|
34
|
+
* Creates an instance of CacheEntry.
|
|
33
35
|
* @param {ResolveRequest} result result
|
|
34
36
|
* @param {Snapshot} snapshot snapshot
|
|
35
37
|
*/
|
|
@@ -39,6 +41,7 @@ class CacheEntry {
|
|
|
39
41
|
}
|
|
40
42
|
|
|
41
43
|
/**
|
|
44
|
+
* Serializes this instance into the provided serializer context.
|
|
42
45
|
* @param {ObjectSerializerContext} context context
|
|
43
46
|
*/
|
|
44
47
|
serialize({ write }) {
|
|
@@ -47,6 +50,7 @@ class CacheEntry {
|
|
|
47
50
|
}
|
|
48
51
|
|
|
49
52
|
/**
|
|
53
|
+
* Restores this instance from the provided deserializer context.
|
|
50
54
|
* @param {ObjectDeserializerContext} context context
|
|
51
55
|
*/
|
|
52
56
|
deserialize({ read }) {
|
|
@@ -58,6 +62,7 @@ class CacheEntry {
|
|
|
58
62
|
makeSerializable(CacheEntry, "webpack/lib/cache/ResolverCachePlugin");
|
|
59
63
|
|
|
60
64
|
/**
|
|
65
|
+
* Adds the provided set to the cache entry.
|
|
61
66
|
* @template T
|
|
62
67
|
* @param {Set<T> | LazySet<T>} set set to add items to
|
|
63
68
|
* @param {Set<T> | LazySet<T> | Iterable<T>} otherSet set to add items from
|
|
@@ -74,6 +79,7 @@ const addAllToSet = (set, otherSet) => {
|
|
|
74
79
|
};
|
|
75
80
|
|
|
76
81
|
/**
|
|
82
|
+
* Returns stringified version.
|
|
77
83
|
* @template {object} T
|
|
78
84
|
* @param {T} object an object
|
|
79
85
|
* @param {boolean} excludeContext if true, context is not included in string
|
|
@@ -98,7 +104,7 @@ const PLUGIN_NAME = "ResolverCachePlugin";
|
|
|
98
104
|
|
|
99
105
|
class ResolverCachePlugin {
|
|
100
106
|
/**
|
|
101
|
-
*
|
|
107
|
+
* Applies the plugin by registering its hooks on the compiler.
|
|
102
108
|
* @param {Compiler} compiler the compiler instance
|
|
103
109
|
* @returns {void}
|
|
104
110
|
*/
|
|
@@ -135,6 +141,7 @@ class ResolverCachePlugin {
|
|
|
135
141
|
/** @typedef {ResolveRequest & { _ResolverCachePluginCacheMiss: true }} ResolveRequestWithCacheMiss */
|
|
136
142
|
|
|
137
143
|
/**
|
|
144
|
+
* Processes the provided item cache.
|
|
138
145
|
* @param {ItemCacheFacade} itemCache cache
|
|
139
146
|
* @param {Resolver} resolver the resolver
|
|
140
147
|
* @param {ResolveContext} resolveContext context for resolving meta info
|
|
@@ -175,6 +182,7 @@ class ResolverCachePlugin {
|
|
|
175
182
|
(yieldResult).push(obj);
|
|
176
183
|
}
|
|
177
184
|
/**
|
|
185
|
+
* Processes the provided key.
|
|
178
186
|
* @param {"fileDependencies" | "contextDependencies" | "missingDependencies"} key key
|
|
179
187
|
*/
|
|
180
188
|
const propagate = (key) => {
|
|
@@ -375,6 +383,7 @@ class ResolverCachePlugin {
|
|
|
375
383
|
}
|
|
376
384
|
};
|
|
377
385
|
/**
|
|
386
|
+
* Process cache result.
|
|
378
387
|
* @param {(Error | null)=} err error if any
|
|
379
388
|
* @param {(CacheEntry | null)=} cacheEntry cache entry
|
|
380
389
|
* @returns {void}
|
|
@@ -13,12 +13,14 @@ const createHash = require("../util/createHash");
|
|
|
13
13
|
/** @typedef {import("../util/Hash").HashFunction} HashFunction */
|
|
14
14
|
|
|
15
15
|
/**
|
|
16
|
+
* Represents the lazy hashed etag runtime component.
|
|
16
17
|
* @typedef {object} HashableObject
|
|
17
18
|
* @property {(hash: Hash) => void} updateHash
|
|
18
19
|
*/
|
|
19
20
|
|
|
20
21
|
class LazyHashedEtag {
|
|
21
22
|
/**
|
|
23
|
+
* Creates an instance of LazyHashedEtag.
|
|
22
24
|
* @param {HashableObject} obj object with updateHash method
|
|
23
25
|
* @param {HashFunction} hashFunction the hash function to use
|
|
24
26
|
*/
|
|
@@ -32,6 +34,7 @@ class LazyHashedEtag {
|
|
|
32
34
|
}
|
|
33
35
|
|
|
34
36
|
/**
|
|
37
|
+
* Returns a string representation.
|
|
35
38
|
* @returns {string} hash of object
|
|
36
39
|
*/
|
|
37
40
|
toString() {
|
|
@@ -53,6 +56,7 @@ const mapStrings = new Map();
|
|
|
53
56
|
const mapObjects = new WeakMap();
|
|
54
57
|
|
|
55
58
|
/**
|
|
59
|
+
* Returns etag.
|
|
56
60
|
* @param {HashableObject} obj object with updateHash method
|
|
57
61
|
* @param {HashFunction=} hashFunction the hash function to use
|
|
58
62
|
* @returns {LazyHashedEtag} etag
|
package/lib/cache/mergeEtags.js
CHANGED
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
|
|
10
10
|
class MergedEtag {
|
|
11
11
|
/**
|
|
12
|
+
* Creates an instance of MergedEtag.
|
|
12
13
|
* @param {Etag} a first
|
|
13
14
|
* @param {Etag} b second
|
|
14
15
|
*/
|
|
@@ -28,6 +29,7 @@ const dualObjectMap = new WeakMap();
|
|
|
28
29
|
const objectStringMap = new WeakMap();
|
|
29
30
|
|
|
30
31
|
/**
|
|
32
|
+
* Merges the provided values into a single result.
|
|
31
33
|
* @param {Etag} a first
|
|
32
34
|
* @param {Etag} b second
|
|
33
35
|
* @returns {string | MergedEtag} result
|