Commit Graph

67 Commits

Author SHA1 Message Date
Tobias Koppers 8fcd251a7f fix cacheWithContext inversion 2019-11-13 12:18:32 +01:00
Tobias Koppers 1a3b391352 compute asset hash lazily to avoid hash computation when memory cache is used
Cache accepts null as break condition when etag mismatches
MemoryCachePlugin caches cache mismatches
2019-11-12 16:07:50 +01:00
Tobias Koppers a8b289bbc9 merge concurrent ResolverCache requests 2019-11-10 21:04:57 +01:00
Tobias Koppers 81d413a175 Make Pack optimization less noisy and don't invalidate file 2019-11-10 21:04:51 +01:00
Tobias Koppers da5ab282e6 fix resolve caching with different resolve options 2019-11-10 21:04:48 +01:00
Tobias Koppers 23f4a53819 respect cacheWithContext in ResolverCachePlugin, default to false 2019-11-10 21:04:46 +01:00
Tobias Koppers b401713633 fix problem with snapshotting managed items
add support for child loggers
add logging for snapshot errors
improve FileSystemInfo logging
improve managed item reading performance
upgrade enhanced-resolve for readdir purge fix
2019-11-05 23:12:02 +01:00
Tobias Koppers 00fcd1dbe8 use LazySet in ResolverCachePlugin 2019-11-01 12:21:55 +01:00
Tobias Koppers 8ba5ff6184 remove temporary workaround for fileDependencies in enhanced-resolve 2019-11-01 12:18:17 +01:00
Tobias Koppers 92e1fc2860 only log ResolverCachePlugin debug message when it has information to provide 2019-11-01 12:17:35 +01:00
Tobias Koppers 87abd00c6e remove all options for cache.store expect "pack"
these are incomplete and may be readded later
2019-10-21 09:22:38 +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 7f7673e5ab provide error fallback when validation errors occur 2019-08-22 10:44:48 +02:00
Tobias Koppers 82452939f5 Move version into PackContainer 2019-08-20 14:50:13 +02:00
Tobias Koppers b3729d40fa improve logging of PackFileCacheStrategy 2019-08-20 14:50:13 +02:00
Tobias Koppers e425ab9345 Avoid retry of unserializable entries in pack 2019-08-20 14:50:12 +02:00
Tobias Koppers cb4c02ebe1 store snapshot of resolving dependencies and re-resolve when needed
to be able to invalidate cache when PnP build dependencies change

cacheDirectory defaults to .pnp/.cache/webpack when PnP is used
fallback cacheDirectory is now .cache/webpack instead of tmpdir
2019-08-20 14:50:09 +02:00
Tobias Koppers a2caa36b8e add immutablePaths next to managedPaths for paths in the yarn cache
for PnP support
2019-08-20 14:50:07 +02:00
Tobias Koppers e8e313b576 capture build dependencies only when pack is invalid
capture build dependencies during storing phase

capture only new build dependencies
2019-08-13 18:59:17 +02:00
Tobias Koppers 03491deca9 Debug message when item invalidated pack
Check identity before invalidating the pack
2019-08-13 18:53:41 +02:00
Tobias Koppers a777ec40b3 restore and check buildSnapshot before reading pack content 2019-08-13 17:02:49 +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 856235d76f track and config build dependencies 2019-08-12 23:07:41 +02:00
Tobias Koppers f236df1bc9 replace logging in persistent caching with infrastructure logger
remove cache.loglevel
2019-08-12 13:41:23 +02:00
Tobias Koppers c21fb4bd58 Add LazySet for file/context/missingDependencies for performance 2019-08-07 16:13:56 +02:00
Tobias Koppers fd35041dd3
Merge pull request #9476 from webpack/logging/times
add more timestamp logging to some core parts
2019-07-26 15:01:50 +02:00
Tobias Koppers 0750da4dc3 add statistics report to ResolverCachePlugin 2019-07-26 14:03:22 +02:00
Tobias Koppers d2181eeffa pass missing idleTimeout options to CachePlugin 2019-07-26 13:59:15 +02:00
Tobias Koppers e2b1ab3258 adding some random types 2019-07-18 14:15:20 +02:00
Tobias Koppers c94073b31c update enhanced-resolve 2019-07-05 00:45:41 +02:00
Tobias Koppers b2e7837288 replace Object.assign with object spread 2019-06-19 13:16:05 +02:00
Tobias Koppers e9c0d068dd refactor filesystem interfaces
add Compiler.intermediateFileSystem
avoid using `path` and `fs` module when possible
move `join`, `mkdirp` and `dirname` into utils
join and dirname is optional in FileSystem interface
remove mkdirp from Filesystem interface
2019-06-11 17:32:58 +02:00
Tobias Koppers 39c75ee6a9 add stages for Cache plugins 2019-05-13 11:03:10 +02:00
Tobias Koppers 180f912493 Merge tag 'v4.29.2' into next
4.29.2
2019-02-06 15:37:11 +01:00
Tobias Koppers 7c0d845af3 Refactor FileCachePlugin into multiple modules 2019-01-25 19:21:45 +01:00
Tobias Koppers e9c6539645 change Serializer API to be not file serialization specific 2019-01-24 17:42:38 +01:00
Tobias Koppers 3a1eefec0a Measure size of objects to decide about inline or lazy storing 2019-01-24 15:14:41 +01:00
Tobias Koppers cf71cd0dd8 faster way to provide got handlers for cache 2019-01-19 12:31:24 +01:00
Tobias Koppers ba6ac9ae81 add cache.idleTimeoutForInitialStore
to allow to force an initial store
2019-01-19 12:07:26 +01:00
Tobias Koppers e4a5e59570 add cache.idleTimeout option to delay cache storing 2019-01-19 11:47:53 +01:00
Tobias Koppers 00065741d2 log a warning when serialization fails 2019-01-19 11:47:19 +01:00
Tobias Koppers 4492c30ac4 Update watching system to report more timing info to webpack
Add snapshotting feature to FileSystemInfo for better performance
2019-01-09 14:42:54 +01:00
Tobias Koppers 0fd50ddd84 avoid JSON.stringify for better performance 2019-01-08 15:14:30 +01:00
Tobias Koppers ef9e25d8ea report dependencies from resolver to the compilation
refactor NormalModuleFactory
2019-01-08 15:14:25 +01:00
Florent Cailhol e06a808763 Expose the serialization API 2018-12-28 13:21:19 +01:00
Tobias Koppers 77c2e61a31 remove memory cache from FileCachePlugin
support layers of caches
2018-12-27 20:57:54 +01:00
Tobias Koppers ea255fd38a Remember unserializable things and avoid trying again 2018-12-21 12:36:38 +01:00
Tobias Koppers f15956f19f The context result is not a context dependency
The resulting directory should be threated as file dependency
as it doesn't depend on the content of the directory
2018-12-21 12:29:49 +01:00
Tobias Koppers d9238f061d memorize lazy data on access
remove need for read on write
add queue for file accesses in FileMiddleware to support concurrent access
2018-12-21 12:05:29 +01:00
Tobias Koppers 14ec0aa4cf remove the static memory cache, leaving only the per compilation memory cache
Otherwise this leaks memory
2018-12-20 17:32:52 +01:00