Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Summit topic: Bootstrap of Node.js Core #147

Closed
joyeecheung opened this issue Feb 21, 2019 · 6 comments
Closed

Summit topic: Bootstrap of Node.js Core #147

joyeecheung opened this issue Feb 21, 2019 · 6 comments

Comments

@joyeecheung
Copy link
Collaborator

joyeecheung commented Feb 21, 2019

The bootstrap of Node.js had grown organically over the past few years, interleaving setup of globals, processing of CLI options and environment variables, and selection of execution mode across multiple files, both in JavaScript and in C++. This introduces difficulties for several efforts, e.g. V8 snapshot integration, better embedder API.

We recently started to refactor the bootstrap process with at least two goals in mind:

  1. Create a point where an environment-independent V8 snapshot can be captured.
  2. Makes it possible to execute JS scripts with a properly bootstrapped Node.js context from C++, so that we can create cctests for this kind of execution, and eventually deprecate _third_party_main (Deprecating _third_party_main nodejs/node#24017).

In this session we will look into the general ideas behind the recent refactor, the current state of the bootstrap process, and discuss about work that needs to be done to achieve the goals mentioned above (or, if they are done by the time of the summit, just give an introduction about the internals and the principles that need to be followed when growing the bootstrap process).

@suresh-srinivas
Copy link

nodejs/node#27196

@jorydotcom
Copy link
Collaborator

just documenting that this has been added to the working agenda, thank you!

@trivikr
Copy link
Contributor

trivikr commented May 30, 2019

Time: CEST Fri 31-May-2019 16:00 (04:00 PM)
Zoom link: https://zoom.us/j/372142646

@joyeecheung
Copy link
Collaborator Author

I've uploaded the slides in here (there may still be changes before I actually give the talk tomorrow)

@benjamingr
Copy link

@joyeecheung very good session and slides! It was an interesting and succinct overview.

@zackschuster
Copy link

@joyeecheung thank you for posting the slides here -- gives me a nice high-level overview of what the effort/blockers are :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants