Tobias Koppers
a2e326129c
make filesystem types compatible with memfs and normal fs
...
fixes #12400
2021-01-13 10:14:58 +01:00
highonweb
bc1911bf78
Changed name of memorize function to memoize
2020-12-27 03:02:57 +05:30
Tobias Koppers
e500ad0714
nitpicks
2020-12-14 23:05:40 +01:00
Tobias Koppers
3db039a183
improve serialization of lazy elements
2020-12-14 16:43:29 +01:00
Tobias Koppers
9563338d90
improve reading of cache file
2020-12-14 13:16:20 +01:00
Tobias Koppers
005bdbbefd
fix memory leak when using createReadStream
2020-12-14 11:06:15 +01:00
Tobias Koppers
1b00c9986f
add polyfills for reading 64bit numbers from buffer for node 10
2020-12-14 10:48:21 +01:00
Tobias Koppers
6735b57888
use a dispatch table for performance
2020-12-14 08:16:10 +01:00
Tobias Koppers
8db0edbbcc
microoptimization
2020-12-14 08:16:10 +01:00
Tobias Koppers
f3bd8eda5b
avoid references for single char strings
2020-12-14 08:16:10 +01:00
Tobias Koppers
c194abeb65
dedupe Buffers during serialization
2020-12-14 08:16:09 +01:00
Tobias Koppers
227c16b9a8
improve string (de)serialization
2020-12-14 08:16:09 +01:00
Tobias Koppers
57c3a7eb05
optimize headers and encoding
2020-12-14 08:16:09 +01:00
Tobias Koppers
5a80ba12f1
help the GC
2020-12-14 08:16:09 +01:00
Tobias Koppers
4d1e913f48
avoid copy of data
2020-12-14 08:16:09 +01:00
Tobias Koppers
c6311bae62
allow bigger cache sizes
2020-12-14 08:16:08 +01:00
Tobias Koppers
35363408c6
fix newly found eslint problems
2020-11-26 11:13:17 +01:00
Tobias Koppers
369dfe8997
reduce number of small buffers in BinaryMiddleware
2020-08-24 18:16:56 +02:00
Tobias Koppers
0701f48294
improve error message for weird objects in ObjectMiddleware
...
add Date serializer to default serializers
2020-06-02 16:09:48 +02:00
Tobias Koppers
49a6184e20
add tests to increase code coverage
2020-04-16 22:20:04 +02:00
evilebottnawi
dafa4cd69a
chore: setup cspell
2020-03-12 19:51:26 +03:00
Tobias Koppers
ba832ec08c
Merge pull request #10326 from vankop/refactor-binary-middleware
...
refactor BinaryMiddleware
2020-02-06 09:42:15 +01:00
Ivan Kopeykin
19f5cd879e
( #10326 ) resolve discussions
2020-02-05 13:19:10 +03:00
Ivan Kopeykin
350e397f63
refactor(FileMiddleware): add format information, minor code refactoring
2020-01-31 19:53:50 +03:00
Ivan Kopeykin
3cd865d7ab
refactor(BinaryMiddleware):
2020-01-31 16:52:57 +03:00
Tobias Koppers
eab25de485
dedupe object keys of plain object
2020-01-28 11:35:18 +01:00
Tobias Koppers
f49838c95d
style improvements and test
2020-01-28 11:35:10 +01:00
Tobias Koppers
b40a345451
refactor Persistent Cache
...
cache is split into multiple .pack files which represent usage of cache items
this allows to only read/deserialize files that are needed
and reduces the need to rewrite .pack files
while still packaging multiple cache items together
lazy (de)serialization system has changed to allow writeLazy and writeSeparate
2020-01-28 11:35:06 +01:00
Tobias Koppers
95297186d5
remove Array.prototype.reduce calls to simplify code
2020-01-20 14:41:39 +01:00
Tobias Koppers
b086bfbcc6
faster object type lookup during deserialization
2019-11-13 12:18:04 +01:00
Tobias Koppers
6eb9958643
print warning for large serialized strings
2019-11-10 21:04:54 +01:00
Tobias Koppers
8c594a61c1
Avoid recursion for nested plain objects
2019-11-10 21:04:49 +01:00
Tobias Koppers
d8c93b40be
faster serialization for deserialized data
2019-11-04 10:46:33 +01:00
Tobias Koppers
83c5305872
improve error message when deserialization failed
2019-11-01 12:19:27 +01:00
Tobias Koppers
e9596ac799
faster referenceables in ObjectMiddleware
2019-08-13 17:03:01 +02:00
Tobias Koppers
563f8635b6
performance and memory improvement of BinaryMiddleware
2019-08-13 17:02:57 +02:00
Tobias Koppers
5320fcfbbe
bugfix for nested promises in FileMiddleware
2019-08-13 17:02:47 +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
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
e9c6539645
change Serializer API to be not file serialization specific
2019-01-24 17:42:38 +01:00
Tobias Koppers
ad6e095c43
Improve typings of SerializerMiddlewares
2019-01-24 16:51:05 +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
aa72c93b4d
Use Buffer.allocUnsafe for better performance and buffer pooling
2019-01-24 15:14:39 +01:00
Tobias Koppers
f68d465afa
make reading from file safer and handle unexpected end of file
2019-01-19 11:49:30 +01:00
Tobias Koppers
00065741d2
log a warning when serialization fails
2019-01-19 11:47:19 +01:00
Sergey Tatarintsev
eeb6e2db17
Improve memory consumption of file middleware
...
Buffers.concat creates a new buffer. On a large project, when using resolver
cache and pack store, total size of buffer can reach hundreds of megabytes. Use
streaming write instead.
2019-01-14 19:20:28 +01:00
Tobias Koppers
44663f8c67
allow serializing of objects with null prototype
2018-12-25 22:08:35 +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
aedc34b76d
load internal serializers internally
...
allows to bundle webpack
2018-12-20 11:04:31 +01:00