nodejs / nodejs/node

Option to have a shared V8 library?

Open
#53,509 17 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

feature request help wanted v8 engine
Dominant language
JavaScript
Stars
122k
Forks
37.3k
Avg merge
4d 2h
Merged PRs (30d)
283

Description

What is the problem this feature will solve?

In distros like NixOS and GuixSD, building NodeJS from scratch is a heavy computation. Building vendored V8 NodeJS is not only computationally heavy, but it also makes caching the good parts of the library impossible for a simple failed test. It is painful having to wait for a day to have a package build, only for the tests to fail for the package maintainer to disable or patch them one by one per build.

What is the feature you are proposing to solve the problem?

With V8 as a shared library, it would be possible to not only cache the dependency in a functional package manager, but also use it with other packages that require them.

What alternatives have you considered?

None, as I've read somewhere than v8 dependencies are patched, which would make it impossible to use vanilla v8 alongside.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names no files, entry points, or tests. Start by reviewing the issue discussion and Node.js's V8 build integration, then determine the scope and compatibility requirements for shared-library support; done means a defined, tested approach that addresses patched V8 dependencies and package-manager caching.

Written by the indexing model from the issue text.

Assessment

Tech stack
nodejs
Domain
build-system
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.