Skip to content

Node.js needs to lose weight #43811

Description

@sbfkcel

What is the problem this feature will solve?

Binaries are getting bigger and bigger.
From the original 30MB to nearly 100MB,

The warehouse image on docker contains too much, from the original 100MB to nearly 1GB, please remove those programs except Node.js. (Example: Python)

Overly large programs seem to be far from elegant runtimes.

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

Reduce the size of Node.js and exclude other programs.

What alternatives have you considered?

No response

Activity

  1. bnoordhuis commented on Jul 13, 2022

    @bnoordhuis
    Member

    Chesterton's fence: those megabytes and programs are probably there for a reason. The beauty of open source is that with some code spelunking you can find out why. I'll provide clues: V8, i18n, add-ons.

  2. mvduin commented on Jul 13, 2022

    @mvduin

    A while back I did some testing to try to figure out why the nodejs binary got so much larger between 12 and 14, and unicode tables turned out to be a ridiculously large part of it. These are some nodejs v14.17.2 armhf (armv7+neon, thumb) executable sizes I got while fiddling with various options:

    61M v8_enable_object_print=0
    60M v8_enable_object_print=0 v8_enable_inspector=0
    29M v8_enable_object_print=0 v8_enable_inspector=0 v8_enable_i18n_support=0
    36M icu_small=true v8_enable_inspector=0
    37M icu_small=true
    
  3. bnoordhuis commented on Jul 15, 2022

    @bnoordhuis
    Member

    OP has had some time to follow up with more concrete proposals but didn't so I'll go ahead and close this.

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    feature requestIssues requesting new Node.js features.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions