From 8c16e2a7cb8dbf6b5806eca39646b4cc9892f4e3 Mon Sep 17 00:00:00 2001 From: Darshan Sen Date: Mon, 5 Sep 2022 19:23:35 +0530 Subject: [PATCH 1/3] doc: add minutes for meeting 5 Sep 2022 Signed-off-by: Darshan Sen --- meetings/2022-09-05.md | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 meetings/2022-09-05.md diff --git a/meetings/2022-09-05.md b/meetings/2022-09-05.md new file mode 100644 index 0000000..21d7e59 --- /dev/null +++ b/meetings/2022-09-05.md @@ -0,0 +1,29 @@ +# Node.js Single-Executable Meeting 2022-09-05 + +## Links + +* **Recording**: https://youtu.be/93cIMtkQaak +* **GitHub Issue**: https://github.com/nodejs/single-executable/discussions/19 + +## Present + +* Anna Henningsen @addaleax +* Darshan Sen @RaisinTen +* Jean Burellier @sheplu +* Juan Cruz Viotti @jviotti +* Maël Nison @arcanis +* Tobias Nießen @tniessen + +## Agenda + +* Document the complete list of requirements for the VFS [#28](https://github.com/nodejs/single-executable/pull/28) + * ; + +* How are native addons going to interact with the VFS? [#29](https://github.com/nodejs/single-executable/discussions/29) + * ; + +## Upcoming Meetings + +* **Node.js Project Calendar**: + +Click `+GoogleCalendar` at the bottom right to add to your own Google calendar. From fb5f50ff5ce6a5d9bdc69aafbc9d0735399e9ec1 Mon Sep 17 00:00:00 2001 From: Juan Cruz Viotti Date: Mon, 5 Sep 2022 10:08:30 -0400 Subject: [PATCH 2/3] Add notes Signed-off-by: Juan Cruz Viotti --- meetings/2022-09-05.md | 43 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/meetings/2022-09-05.md b/meetings/2022-09-05.md index 21d7e59..9997a56 100644 --- a/meetings/2022-09-05.md +++ b/meetings/2022-09-05.md @@ -22,6 +22,49 @@ * How are native addons going to interact with the VFS? [#29](https://github.com/nodejs/single-executable/discussions/29) * ; +## Notes + +During this call, most of the discussions revolved around the problem of +designing a general Virtual File System that would fit every necessary use +case, ranging from compression support, native add-on interoperability, etc. + +The key conclusion from the call is that designing a truly universal VFS that +checks all the boxes that we care about and the ones that are probably unknown +so far is not trivial. For this reason, we will attempt to make VFS +user-defined for the SEA MVP. That way, we will have a better sandbox to play +with VFS', see what people come up with and eventually bring back these +learnings to the SEA project without getting indefinitely stuck at the VFS +phase. + +To accomplish this decoupling, we hope to: + +- Provide hooking capabilities to Node.js to allow developers to extend + `require()`, `fs` and related key components of Node.js to support arbitrary + virtual file systems without monkey-patching these modules like i.e. + Electron, Yarn and PKG do at the moment. + +- Fix remaining issues on the Resource Injector current implementation + (https://github.com/postmanlabs/postject) for injecting multiple sections of + data. One of these sections will contain the VFS byte-stream, and the other + one will contain the bootstrap script that can be injected to `teach` Node.js + about the VFS of choice. + +Once we have a better grasp on what the ideal VFS should look like, we will +attempt to ship the SEA project with a blessed VFS implementation. + +We also touched on what the definition of "Single Executable Application" +means. Does it mean we will go out of our way to package every Node.js +application as a single file (embedding native add-ons, etc on the executable +itself)? Does an app that consists of the main executable along with sibling +".node" shared libraries still qualifies as a SEA? Clearly defining what an SEA +is (and is not) is key for identifying the core constrains for the ideal VFS +implementation later down the road. + +## Action Items + +- [ ] Make defining user-land VFS' feasible (given the plan outlined above) +- [ ] Define and document what SEAs really mean + ## Upcoming Meetings * **Node.js Project Calendar**: From 27c69a3a668f025801df121203a59636d0ceff15 Mon Sep 17 00:00:00 2001 From: Darshan Sen Date: Thu, 8 Sep 2022 16:18:29 +0530 Subject: [PATCH 3/3] fixup! Add notes Signed-off-by: Darshan Sen --- meetings/2022-09-05.md | 8 -------- 1 file changed, 8 deletions(-) diff --git a/meetings/2022-09-05.md b/meetings/2022-09-05.md index 9997a56..3375f99 100644 --- a/meetings/2022-09-05.md +++ b/meetings/2022-09-05.md @@ -14,14 +14,6 @@ * Maël Nison @arcanis * Tobias Nießen @tniessen -## Agenda - -* Document the complete list of requirements for the VFS [#28](https://github.com/nodejs/single-executable/pull/28) - * ; - -* How are native addons going to interact with the VFS? [#29](https://github.com/nodejs/single-executable/discussions/29) - * ; - ## Notes During this call, most of the discussions revolved around the problem of