Philipp Dunkel
2247054dda
vfs: add ZipProvider
...
Add a node:vfs provider backed by a node:zlib ZIP archive - a ZipBuffer
held in memory or a ZipFile on disk - that exposes the archive's members
as a virtual filesystem tree. Directories are recognized both explicitly
(a "name/" entry) and implicitly (any entry under "name/"), and a file
opened for writing commits its content as a new archive entry when its
handle is closed. The provider is read-only unless the backing archive
is writable, and offers both asynchronous and synchronous operations.
Available as vfs.ZipProvider.
Signed-off-by: Philipp Dunkel <pip@pipobscure.com >
PR-URL: https://github.com/nodejs/node/pull/64915
Reviewed-By: Matteo Collina <matteo.collina@gmail.com >
Reviewed-By: James M Snell <jasnell@gmail.com >
2026-09-02 07:27:11 +00:00
..
2026-09-01 12:01:54 +02:00
2026-08-28 17:42:10 +00:00
2026-08-15 16:47:09 -07:00
2026-08-28 13:31:48 +00:00
2026-08-25 16:57:32 -07:00
2026-08-22 17:07:39 +00:00
2026-08-15 21:59:44 +00:00
2026-08-25 10:32:37 +00:00
2026-08-18 16:34:15 +00:00
2026-08-19 15:51:28 +00:00
2026-08-31 14:48:19 +00:00
2026-08-15 21:59:44 +00:00
2026-08-15 21:59:44 +00:00
2026-08-21 00:50:15 +00:00
2026-08-23 15:40:14 +00:00
2026-08-28 09:26:21 +00:00
2026-08-26 12:09:42 +00:00
2026-08-15 13:15:49 -07:00
2026-08-21 21:53:19 +00:00
2026-08-23 08:14:37 +00:00
2026-08-15 13:17:42 -07:00
2026-08-25 23:11:06 +00:00
2026-08-28 09:26:35 +00:00
2026-08-25 23:11:06 +00:00
2026-08-25 23:11:06 +00:00
2026-08-25 23:11:06 +00:00
2026-08-25 23:11:06 +00:00
2026-08-22 10:51:51 +00:00
2026-08-22 10:51:51 +00:00
2026-08-25 23:11:06 +00:00
2026-08-26 18:02:24 +00:00
2026-08-21 13:40:07 +00:00
2026-08-22 10:51:51 +00:00
2026-08-26 21:36:05 +00:00
2026-08-29 00:58:18 +02:00
2026-08-29 00:58:18 +02:00
2026-08-29 00:58:18 +02:00
2026-08-29 00:58:18 +02:00
2026-08-29 00:58:18 +02:00
2026-08-29 00:58:18 +02:00
2026-08-25 23:11:06 +00:00
2026-08-25 23:11:06 +00:00
2026-08-25 23:11:05 +00:00
2026-08-25 23:11:05 +00:00
2026-08-22 10:51:51 +00:00
2026-08-26 21:36:07 +00:00
2026-08-26 21:36:07 +00:00
2026-08-26 21:36:07 +00:00
2026-08-17 11:08:38 +03:00
2026-08-15 21:59:44 +00:00
2026-08-17 11:08:38 +03:00
2026-08-17 11:08:38 +03:00
2026-08-17 11:08:38 +03:00
2026-08-23 02:39:15 +00:00
2026-08-29 09:19:12 +02:00
2026-08-20 00:03:04 +00:00
2026-08-20 00:03:04 +00:00
2026-08-21 00:50:05 +00:00
2026-08-15 21:59:44 +00:00
2026-08-26 21:36:07 +00:00
2026-08-15 21:59:44 +00:00
2026-08-28 17:42:10 +00:00
2026-08-21 13:40:07 +00:00
2026-08-29 13:28:47 +00:00
2026-08-26 18:01:45 +00:00
2026-08-31 05:37:01 +00:00
2026-08-15 21:59:44 +00:00
2026-08-20 11:05:05 +00:00
2026-08-31 17:03:33 +08:00
2026-08-22 17:44:37 +00:00
2026-08-31 17:03:33 +08:00
2026-08-22 17:44:37 +00:00
2026-08-15 21:59:44 +00:00
2026-08-31 10:19:57 -03:00
2026-08-31 10:19:57 -03:00
2026-08-19 13:17:58 +00:00
2026-08-19 13:17:58 +00:00
2026-08-19 13:17:58 +00:00
2026-08-19 06:42:35 +00:00
2026-08-19 13:17:58 +00:00
2026-08-19 13:17:58 +00:00
2026-08-24 07:43:57 +00:00
2026-08-15 21:59:44 +00:00
2026-08-24 04:26:04 +00:00
2026-08-15 21:59:44 +00:00
2026-08-20 11:17:04 +00:00
2026-08-27 01:00:46 +00:00
2026-08-23 20:29:59 +00:00
2026-08-28 17:42:22 +00:00
2026-08-15 21:59:44 +00:00
2026-08-31 17:48:30 +02:00
2026-08-31 13:07:39 +00:00
2026-08-23 20:44:40 +00:00
2026-08-21 13:40:07 +00:00
2026-08-21 13:40:07 +00:00
2026-08-21 13:40:07 +00:00
2026-08-26 18:02:50 +00:00
2026-08-26 16:00:27 +00:00
2026-08-15 21:59:44 +00:00
2026-08-15 21:59:44 +00:00
2026-08-26 16:00:27 +00:00
2026-08-28 10:46:20 -07:00
2026-08-17 19:01:56 +00:00
2026-08-28 10:46:20 -07:00
2026-08-15 21:59:44 +00:00
2026-08-15 21:59:44 +00:00
2026-08-28 10:46:20 -07:00
2026-08-22 17:44:04 +00:00
2026-08-15 21:59:44 +00:00
2026-08-24 09:54:15 +00:00
2026-08-17 13:03:06 +00:00
2026-08-15 21:59:44 +00:00
2026-08-22 17:44:15 +00:00
2026-08-21 13:40:07 +00:00
2026-08-31 17:25:06 +00:00
2026-09-02 03:55:41 +00:00
2026-08-23 15:40:24 +00:00
2026-08-29 09:54:40 +02:00
2026-08-19 13:18:11 +00:00
2026-08-28 09:26:21 +00:00
2026-08-21 19:33:38 -07:00
2026-08-21 19:33:38 -07:00
2026-08-20 23:02:33 +00:00
2026-08-24 03:14:09 +00:00
2026-08-21 17:05:31 +00:00
2026-08-21 13:40:07 +00:00
2026-08-25 16:57:32 -07:00
2026-08-26 02:28:31 +00:00
2026-08-15 13:15:47 -07:00
2026-08-28 00:23:11 +00:00
2026-08-27 14:10:47 +00:00
2026-09-02 05:48:32 +00:00
2026-08-31 14:59:47 +00:00
2026-08-24 12:43:36 +00:00
2026-08-24 12:43:36 +00:00
2026-08-24 21:37:56 +00:00
2026-08-21 13:40:07 +00:00
2026-08-28 00:23:11 +00:00
2026-08-27 18:30:25 +00:00
2026-08-27 18:30:25 +00:00
2026-08-27 18:30:25 +00:00
2026-08-27 18:30:25 +00:00
2026-08-27 18:30:25 +00:00
2026-08-27 18:30:25 +00:00
2026-08-20 11:51:41 -07:00
2026-08-23 02:38:57 +00:00
2026-08-27 18:30:25 +00:00
2026-08-20 07:03:21 +00:00
2026-08-27 02:44:30 +00:00
2026-08-20 11:51:41 -07:00
2026-08-27 18:30:25 +00:00
2026-08-23 03:53:29 +00:00
2026-08-26 14:07:26 +00:00
2026-08-23 17:29:01 +00:00
2026-08-28 00:23:11 +00:00
2026-08-28 09:26:21 +00:00
2026-08-28 09:26:21 +00:00
2026-08-28 09:26:21 +00:00
2026-08-21 13:09:19 -07:00
2026-08-21 13:40:07 +00:00
2026-08-20 19:16:07 +00:00
2026-08-21 18:47:46 -07:00
2026-08-21 03:30:10 +00:00
2026-08-31 15:47:32 +00:00
2026-08-21 22:54:43 +00:00
2026-08-17 04:01:47 +00:00
2026-08-21 19:29:17 +02:00
2026-08-23 13:25:30 -07:00
2026-08-23 13:25:30 -07:00
2026-08-19 05:36:15 +00:00
2026-08-17 05:02:53 +00:00
2026-08-23 21:43:31 +00:00
2026-08-25 02:52:18 +00:00
2026-08-17 03:39:42 +00:00
2026-08-17 05:02:53 +00:00
2026-08-26 16:00:27 +00:00
2026-08-28 10:46:20 -07:00
2026-08-26 14:07:26 +00:00
2026-08-18 16:34:12 +00:00
2026-08-23 11:01:09 +00:00
2026-08-24 14:31:20 +00:00
2026-08-24 14:31:20 +00:00
2026-08-22 10:51:51 +00:00
2026-08-31 18:04:06 +00:00
2026-08-19 13:17:58 +00:00
2026-09-02 03:55:31 +00:00
2026-08-27 21:15:40 +00:00
2026-08-24 03:14:23 +00:00
2026-09-02 05:48:32 +00:00
2026-08-21 13:40:07 +00:00
2026-08-21 13:40:07 +00:00
2026-08-21 13:40:07 +00:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-08-31 10:31:16 +02:00
2026-09-02 07:27:11 +00:00
2026-09-02 07:27:11 +00:00
2026-09-02 07:27:11 +00:00
2026-09-02 05:36:48 +00:00
2026-08-27 21:15:16 +00:00
2026-08-30 05:43:31 +00:00
2026-08-27 21:15:16 +00:00
2026-08-27 21:15:16 +00:00
2026-08-27 21:15:16 +00:00
2026-08-27 21:15:13 +00:00
2026-08-30 05:43:31 +00:00
2026-08-28 10:46:20 -07:00
2026-08-29 18:25:16 +00:00
2026-08-22 21:02:18 +00:00
2026-08-17 02:00:16 +00:00
2026-08-23 03:31:17 +00:00
2026-08-22 18:48:28 +00:00
2026-08-25 15:50:17 +00:00
2026-08-15 13:15:47 -07:00
2026-08-30 12:29:59 +00:00
2026-09-02 07:27:11 +00:00