Tobias Koppers
3be270d91d
fix bug with renaming of variables in concatenated modules
...
fixes #10308
2020-01-29 20:57:44 +01:00
Tobias Koppers
131e4177ff
remove Array.prototype.reduce calls to simplify code
2020-01-18 19:56:19 +01:00
Tobias Koppers
c80bae2959
faster cache access of contextify
2020-01-15 11:20:22 +01:00
Tobias Koppers
aed6ab1d89
improve renaming of variables in concatenated modules
...
more detailed tracking of conflicted references
to avoid renaming variables when possible
fixes #10168
2019-12-23 21:54:57 +01:00
Tobias Koppers
dda3279221
Merge tag 'v4.41.4'
...
4.41.4
2019-12-19 13:55:43 +01:00
Tobias Koppers
c81963bf6b
fixes #10104
2019-12-17 17:23:54 +01:00
Tobias Koppers
73fd64fc90
refactor
...
refactor ConcatenatedModule to avoid compilation argument
avoid caching inner modules in ConcatenatedModule
improve performance of ModuleConcatenationPlugin
add ModuleStoreError when storing of module fails
2019-12-16 21:08:32 +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
5a01ed8121
rename exportsType named to default
...
exportsType default doesn't include named exports in strict esm
2019-11-20 12:43:53 +01:00
Tobias Koppers
b90f3e14a1
upgrade webpack-sources
...
make source maps and source names context independent
add enhanced-resolve declarations
add types to Module.build
fix tooling for import order to support import renaming
add support for concatenated modules in eval source maps
2019-11-12 08:59:08 +01:00
Tobias Koppers
5abf55b1af
allocate presentationalDependencies array only when needed
2019-11-10 21:05:28 +01:00
Tobias Koppers
ed81ad0fa4
allocate warnings and errors arrays only when needed
2019-11-10 21:05:16 +01:00
Tobias Koppers
efe0c2e610
avoid creating arrays in getConnections
2019-11-10 21:05:05 +01:00
Tobias Koppers
9a07012695
fix problem with accessing the default named export of json
2019-11-05 10:39:14 +01:00
Tobias Koppers
a877cd51d1
add presentational dependencies which are cheaper, but allow only templating
2019-10-30 07:49:20 +01:00
Tobias Koppers
efe3a81325
remove sourceOrder from DependencyReference
2019-10-30 07:48:35 +01:00
Tobias Koppers
8d46b21fad
add Dependency.getCondition and conditional ModuleGraphConnections
...
getDependencyReference is no longer used to check of connection
2019-10-30 07:48:32 +01:00
evilebottnawi
8198ffb3e6
refactor: code
2019-10-22 00:14:05 +02:00
Tobias Koppers
b4d782fb94
remove unused type
2019-10-09 13:54:38 +02:00
Tobias Koppers
3e54494606
remove supportsSymbolsDeconflicting
2019-10-09 11:49:48 +02:00
Tobias Koppers
ddc3dae0e6
refactor Module.source() and Module.getRuntimeRequirements() into Module.codeGeneration
...
add code generation phase to Compilation
add `output.iife` options to remove iife wrapper
add `experiments.outputModule` which enabled `output.module`
add `output.module` which sets defaults to `output.iife: false`, `output.libraryTarget: "module"`, `output.jsonpScriptType: "module"`, `terserOptions.module: true`
add `output.module` example
improve runtime requirements needed by ConcatenatedModule
add entry inlining, which inlines entry module code into runtime scope (only when safe)
make whole bundle strict when all modules are strict
2019-10-08 23:59:48 +02:00
Tobias Koppers
b80174a069
Improve backward-compat for various things
...
to enable mini-css-extract-plugin
2019-09-26 22:06:54 +02:00
Tobias Koppers
7bde43f47a
Merge tag 'v4.40.0' into next
...
4.40.0
2019-09-13 11:12:26 +02:00
Tobias Koppers
758269e814
add emit/updateAsset to Compilation
...
add asset info with
* immutable for long term cache-able asset
* size for the asset size in bytes
* development for devtools
* hotModuleReplacement for HMR assets
show asset info in stats
2019-09-11 14:43:42 +02:00
Tobias Koppers
9aba345ae7
fix minor bug in concatenated modules
2019-09-03 14:18:01 +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
e507392094
add output.ecmaVersion options to set emitted code style
...
fix a bug with prefetching initial chunks
InitFragments have get[End]Content methods which get a sourceContext
RuntimeModules have implicit chunk and compilation
changed default to `output.ecmaVersion: 2015`
2019-08-26 21:32:29 +02:00
Tobias Koppers
f68bb833d2
Merge export getters in a module into single statement
2019-08-23 14:07:01 +02:00
Tobias Koppers
1eec744a13
generate more efficient external reference in concatenated modules
2019-08-23 09:26:44 +02:00
Tobias Koppers
ddf3566c56
bailed out external ESM in ConcatenatedModule generate property access correctly
2019-08-22 09:58:49 +02:00
Tobias Koppers
c21fb4bd58
Add LazySet for file/context/missingDependencies for performance
2019-08-07 16:13:56 +02:00
Tobias Koppers
7d16eb52f6
track callContext in ConcatenatedModule
...
fixes #9500
2019-07-31 16:05:15 +02:00
Tobias Koppers
1d72a05fed
Merge tag 'v4.36.0' into next
...
4.36.0
2019-07-17 16:02:33 +02:00
Tobias Koppers
b2e7837288
replace Object.assign with object spread
2019-06-19 13:16:05 +02:00
Tobias Koppers
6db94536ad
Merge tag 'v4.34.0' into next
...
4.34.0
2019-06-13 10:51:12 +02:00
Tobias Koppers
fd4b3c503a
pretty files
2019-06-09 11:23:42 +02:00
Tobias Koppers
43bc7a306e
Refactor to track nested exports
...
Harmony dependencies track access to nested properties
Flag nested exports
2019-05-29 11:55:00 +02:00
Tobias Koppers
ad5a6d105b
Merge tag 'v4.32.2' into next
...
4.32.2
2019-05-23 01:19:34 +02:00
Tobias Koppers
fec26a9503
fix concatenated version of reexport dependency for sideEffects
...
fixes #9159
2019-05-22 21:32:52 +02:00
Tobias Koppers
0c39719729
avoid zero sized modules as they lead to problems
2019-05-13 12:29:29 +02:00
Tobias Koppers
6fc0b96c9c
add MangleExportsPlugin and options
2019-01-31 11:41:30 +01:00
Tobias Koppers
739fef4fda
move usedExports into ExportsInfo
2019-01-28 08:38:37 +01:00
Tobias Koppers
923e16dd5a
remove module argument from getDependencyReference
2019-01-28 08:38:35 +01:00
Tobias Koppers
42007e882a
fixes #8666
2019-01-22 09:13:21 +01:00
Tobias Koppers
d40f7b2642
cache contextify and pass associatedObjectForCache to all calls
2019-01-19 12:40:00 +01:00
Tobias Koppers
a414c616cd
used and provided exports are part of module attributes
2018-12-31 12:29:02 +01:00
Tobias Koppers
4eecad3a83
remove unnecessary copy of modules
2018-12-31 12:28:59 +01:00
Florent Cailhol
a42922f663
Move provided exports to the module graph
2018-12-31 12:28:51 +01:00
Tobias Koppers
5563ee9e58
use makePathsRelative instead of contextify
...
unify contextify and makePathsRelative
separate NormalModuleFactory ignored, ContextModule and ConcatenatedModule identifier with "|"
2018-12-07 18:12:04 +01:00
Tobias Koppers
350817ea4f
make identifier of ConcatenatedModule context-independent
2018-12-07 15:36:49 +01:00
Tobias Koppers
cc34ea42b0
add type argument to Module.size
...
add getSize to Generator
2018-12-05 20:18:59 +01:00
Tobias Koppers
7c37a6a972
handle runtime requirements
2018-11-29 16:07:17 +01:00
Tobias Koppers
c1e89c0543
Runtime requirement support in NormalModule, Generators and DependencyTemplate
2018-11-29 16:06:12 +01:00
Tobias Koppers
0232674f9c
Initial runtime module work
2018-11-29 16:03:32 +01:00
Tobias Koppers
d5479d8fa7
move reserved names to top of module
2018-11-29 16:01:37 +01:00
Tobias Koppers
dda3c03b8d
Refactor getInitFragments to a property in templateContext and apply method
...
Having only a single method in DependencyTemplate makes it easier to override
2018-11-16 16:40:03 +01:00
Tobias Koppers
eb28697419
move magic property names on __webpack_require__ into RuntimeGlobals file
2018-11-05 15:28:34 +01:00
Tobias Koppers
4f1905aa5a
Merge tag 'v4.20.2' into next
...
4.20.2
2018-09-25 23:13:58 +02:00
Tobias Koppers
aab3afbef8
fixes #8085
2018-09-25 21:52:03 +02:00
Tobias Koppers
5b4cbb5ee0
add queues to Compilation
...
remove Semaphore and use AsyncQueue instead
deprecate Module.needRebuild, add Module.needBuild
remove Module.unbuild
add Module.invalidateBuild
2018-09-12 13:17:03 +02:00
Tobias Koppers
bad9d8a271
move Module.id into ChunkGraph
...
remove disconnect and unseal from Module
2018-08-28 15:08:52 +02:00
Tobias Koppers
239ce7fcd9
Use ChunkGraph instead of Compilation in updateHash
2018-08-24 12:02:42 +02:00
Tobias Koppers
eb63cf80d6
move built flag into Compilation
2018-08-22 15:33:16 +02:00
Tobias Koppers
26022c86a0
move Module.depth into ModuleGraph
...
nested modules no longer have depth and stay unsorted in stats
2018-08-22 12:45:11 +02:00
Tobias Koppers
a92c23ef76
fixes #7930
2018-08-22 11:11:37 +02:00
Tobias Koppers
42167db4af
move Module.index and index2 into ModuleGraph
2018-08-21 16:16:51 +02:00
Tobias Koppers
3bb5263bfd
move methods from Module into ModuleGraph
2018-08-21 11:04:40 +02:00
Tobias Koppers
c21d59f783
Merge tag 'v4.17.0' into next
...
4.17.0
2018-08-21 11:02:16 +02:00
Tobias Koppers
ed9691585e
Merge pull request #7907 from Connormiha/simplify-context-replacmnet-plugin
...
Get rid of typeof for checking undefined
2018-08-21 10:21:29 +02:00
Mihail Bodrov
1f954b4f12
Get rid typeof undef in all lib
2018-08-21 03:26:50 +03:00
Tobias Koppers
9315ce29aa
fix exporting globals in scope-hoisted modules
...
fixes #7905
2018-08-20 10:54:05 +02:00
Tobias Koppers
3cf01999b5
add ChunkGraph
...
move chunk modules and module chunks into the ChunkGraph
remove outdated unit tests
2018-08-14 15:32:13 +02:00
Tobias Koppers
1345ab252d
fixes #7887
2018-08-14 11:25:59 +02:00
Tobias Koppers
34427c1845
migrate to init fragments in ConcatenatedModule
2018-08-09 15:45:45 +02:00
Tobias Koppers
3618cc1b3c
remove originModule from Dependencies and add parent module to ModuleGraph
2018-08-07 14:20:53 +02:00
Tobias Koppers
d6cf42e4c2
merge used with usedExports
...
usedExports = false now means module is not used
2018-08-06 21:05:11 +02:00
Tobias Koppers
c4e0a9f72e
Move Module.used and Module.usedExports into ModuleGraph
2018-08-06 21:04:01 +02:00
Tobias Koppers
381e2db200
replace Module.reasons and Dependency.module with ModuleGraph
2018-08-02 17:54:44 +02:00
Tobias Koppers
11e127d162
pass moduleGraph along with multiple methods
2018-08-02 17:54:42 +02:00
Tobias Koppers
ec1329a7d4
make libIdent required
...
add types
2018-08-02 16:29:20 +02:00
Tobias Koppers
831e71c797
make argument of DependencyTemplate an object
2018-08-02 16:07:29 +02:00
Tobias Koppers
4ce109f8c1
change arguments of Generator.generate and Module.source into a object to be easier extensible
...
add JavascriptModulesPlugin.getHooks().shouldRender to decide if a module should be rendered
2018-08-02 16:07:29 +02:00
Tobias Koppers
f68c1f7ab6
add additional arguments to updateHash
2018-08-02 16:04:10 +02:00
Tobias Koppers
d6f8e49c3a
refactor getInitFraments to take TemplateContext
...
add a hack to include the current module as property in source
later we will refactor DependencyTemplate.apply to take a TemplateContext too
2018-07-30 23:07:50 +02:00
Tobias Koppers
c5c4f6bdd3
remove DependencyTemplate.getInitFragments.source
2018-07-30 22:42:01 +02:00
Florent Cailhol
6ea5a4ad22
Add types
2018-07-30 22:37:10 +02:00
Florent Cailhol
55b73a54af
Return null when no InitFragment is required
2018-07-30 22:36:23 +02:00
Florent Cailhol
9b7d9eb96f
Fix review comments
2018-07-30 22:36:06 +02:00
Florent Cailhol
dcebd57aa4
Replace harmonyInit calls by InitFragments
2018-07-30 22:34:18 +02:00
Tobias Koppers
cf5f1d723c
format existing code
2018-07-30 21:29:21 +02:00
Florent Cailhol
60ef6a6a30
Make DependencyReference dynamic
2018-07-26 15:31:04 +02:00
Tobias Koppers
ea96c6bc93
type templates in ConcatenatedModule
2018-07-25 13:16:08 +02:00
Tobias Koppers
bc10939096
add types for Module and subclasses
...
better way to handle "optional" methods
2018-07-25 12:12:17 +02:00
Tobias Koppers
66d3f319a6
Merge tag 'v4.16.2' into next
...
4.16.2
2018-07-23 12:19:16 +02:00
Tobias Koppers
8614c75f11
run inherit types tool on existing code
2018-07-21 13:50:18 +02:00
Tobias Koppers
e0abce0dd8
make DependencyTemplates a new class
2018-07-11 13:11:08 +02:00
Tobias Koppers
0a06f19fd8
Merge tag 'v4.15.0' into next
...
4.15.0
2018-07-04 22:19:50 +02:00
Tobias Koppers
bd2e3448ec
Merge tag 'v4.14.0' into next
...
4.14.0
2018-07-04 22:10:53 +02:00
Tobias Koppers
994675c4fe
Merge tag 'v4.12.2' into next
...
4.12.2
2018-07-04 21:55:42 +02:00
Florent Cailhol
d33f49d96f
Rename Parser into JavascriptParser
2018-07-03 14:08:43 +02:00
Tobias Koppers
949df5bb5a
update webpack-sources types and remove second argument
2018-06-29 19:12:33 +02:00
Tobias Koppers
6e68f96d16
Merge branch 'master' into feature/type-compiler-compilation-save
2018-06-29 19:02:35 +02:00
Tobias Koppers
d0c89618f3
Merge branch 'master' into feature/type-compiler-compilation-save
2018-06-27 14:58:10 +02:00
Tobias Koppers
7beac3c645
Merge branch 'master' into feature/hook-into-get-reference
2018-06-27 14:34:28 +02:00
Tobias Koppers
ab7ecb30ee
fixes #7499
2018-06-26 15:27:44 +02:00
Tobias Koppers
41343d1763
add TODO comments
2018-06-25 16:18:21 +02:00
Tobias Koppers
be896f2b34
fix bug
2018-06-23 15:30:04 +02:00
Tobias Koppers
3502287bbb
emit correct code for reexport unused exports
2018-06-23 15:13:17 +02:00
Tobias Koppers
50fe2e79ee
add Compilation.getDependencyReference and hooks to override it
...
expose DependencyReference class
2018-06-23 15:13:14 +02:00
Tobias Koppers
e1f0a66fd9
add note about webpack 5 refactoring
2018-06-23 14:47:09 +02:00
Sean Larkin
c3ebef7f25
Merge branch 'master' into feature/type-compiler-compilation-save
2018-06-21 11:07:33 +03:00
Tobias Koppers
6f90257b5b
Merge pull request #7507 from webpack/feature/dependency-order
...
add order to dependency reference
2018-06-20 12:17:26 +02:00
Tobias Koppers
3f6450410a
improve error message for circular reexports
...
fixes #7547
2018-06-19 23:19:28 +02:00
Tobias Koppers
b4699c0657
add order for DependencyReference
...
and add types for touched code
2018-06-08 13:20:57 +02:00
Sean Larkin
1bae93852a
Merge branch 'master' into feature/type-compiler-compilation-save
2018-05-30 19:35:36 -07:00
Florent Cailhol
2a9452e51b
Add brackets for multiline if/for statements
2018-05-29 15:45:44 +02:00
Tobias Koppers
770847171d
Merge branch 'master' into bugfix/namespace-object
...
# Conflicts:
# lib/RuntimeTemplate.js
2018-05-28 22:42:21 +02:00
Tobias Koppers
115a72ce50
SideEffectsPlugin don't modify cache entries
...
fixes #7400
2018-05-27 21:53:21 +02:00
Sean Larkin
761d73b4e7
chore(types): add Compiler and Compilation type support
2018-05-15 15:04:38 +02:00
Tobias Koppers
a926a19715
create better namespace objects
...
avoid using Object.assign (fixes #7162 )
2018-05-03 12:55:00 +02:00
Kevin Decker
bd7652823c
Invalidate concatenated module on dep change
...
When the moduleSet for a given concatenated module changed, the source for the embedded modules would not necessarily, which lead to caching mismatch between the source and the modulesWithInfo structure.
Fixes #6168
2018-04-28 15:32:28 -05:00
Tobias Koppers
2fa104f73a
avoid walking scopes multiple times for performance reasons
2018-04-03 22:21:04 +02:00
Tobias Koppers
8d8da4cdff
Merge branch 'master' into bump_prettier
2018-03-29 11:48:02 +02:00
Mohsen Azimi
77afc92c5f
Remove extra argument sent to HarmonyExportExpressionDependencyConcatenatedTemplate
2018-03-28 22:06:44 -07:00
Florent Cailhol
f1092ad516
Update prettier toolchain
2018-03-26 16:56:10 +02:00
Florent Cailhol
3983803d30
Destructure 'require' to improve readability
2018-03-22 12:05:58 +01:00
Tobias Koppers
800e7f967b
fix #6688
2018-03-06 15:03:33 +01:00
Tobias Koppers
5238159d21
run prettier on existing code
2018-02-25 02:00:20 +01:00
Florent Cailhol
40ee8c76d2
Use MD4 for hashing
2018-02-22 11:27:11 +01:00
Tobias Koppers
edd8daf1d7
Merge branch 'master' into next
...
# Conflicts:
# lib/optimize/ConcatenatedModule.js
# package.json
# yarn.lock
2018-02-09 17:04:33 +01:00
Florent Cailhol
63b4523a15
Pass 'context' as constructor argument
2018-01-30 21:40:44 +01:00
Olivier Combe
2aebfbe48c
fix(ConcatenatedModule): don't throw on arrays with empty values
...
Fixes #6407
Fixes #5415
Ref https://github.com/angular/angular/issues/21809
2018-01-29 15:52:01 +01:00
Tobias Koppers
7a1b357aad
Merge branch 'next' into for_of_loops
2018-01-24 09:01:31 +01:00
Florent Cailhol
d4811b0d37
Use for-of loops instead of forEach
2018-01-23 22:53:18 +01:00
Florent Cailhol
7f303e5260
Use Buffer.from instead of new Buffer
2018-01-22 17:23:34 +01:00
Florent Cailhol
86e6edf1ab
Refactor how source type is handled by the parser
2018-01-22 09:30:43 +01:00
Tobias Koppers
87fdb61c0a
better names for interop properties
2018-01-05 22:35:54 +01:00
Tobias Koppers
bde926605c
fix a bug with json modules in concatenated modules
2018-01-05 22:27:42 +01:00
Tobias Koppers
53a1d6c7b5
replace harmonyModule flag with exportsType 3-state
...
exportsType falsy: It's non-harmony module
exportsType "namespace": It's a harmony module, the exports is the namespace object
exportsType "default": It's a harmony module, the exports is the default exports, named exports are properties of the default export
2017-12-22 19:42:41 +01:00
Tobias Koppers
2aac6badd5
move generated runtime code to RuntimeTemplate
2017-12-22 19:41:28 +01:00
Tobias Koppers
ba00d7495a
fix unnecessary module concatenation
...
allow to display nested modules in stats
2017-12-20 20:35:16 +01:00
Tobias Koppers
cc63d51f6a
shorter code in concatenated module
2017-12-13 11:17:39 +01:00
Tobias Koppers
c68f224272
move providedExports into buildMeta
2017-12-12 17:01:03 +01:00
Tobias Koppers
ffb977fed4
refactor meta -> buildMeta, add factoryMeta
...
add compat layer to Module.meta
2017-12-12 16:57:50 +01:00
Tobias Koppers
758a388f69
pass runtimeTemplate to DependencyTemplate
...
move outputOptions and requestShortener into runtimeTemplate
2017-12-11 17:59:32 +01:00
Tobias Koppers
aa212a61d0
Merge branch 'master' into next
...
# Conflicts:
# lib/optimize/ConcatenatedModule.js
2017-11-24 22:07:20 +01:00
Tobias Koppers
c772e51f2d
Merge branch 'next' into eslint-scope
2017-11-24 07:58:23 +01:00
Tobias Koppers
9c25669e47
Merge pull request #6012 from webpack/feature/mjs-import-non-esm
...
process imports from mjs to non-esm correctly
2017-11-24 07:36:28 +01:00
wtgtybhertgeghgtwtg
fe46ac1356
Switch from `escope` to `eslint-scope`.
2017-11-23 16:47:01 -07:00