[needs-packaging] Can't run npm because of outdated nodejs in repos

Bug #1861327 reported by Vlad Basargin
30
This bug affects 6 people
Affects Status Importance Assigned to Milestone
nodejs (Ubuntu)
Confirmed
Wishlist
Unassigned
npm (Ubuntu)
Confirmed
Wishlist
Unassigned

Bug Description

Focal repo contains nodejs/focal 10.15.2~dfsg-2ubuntu1 package, but for proper work I need latest LTS, because if I invoke:
npm install learnyounode
npm returns:
npm WARN npm npm does not support Node.js v10.15.2

And there is no latest stable version in snap, only nightly build available.

tags: added: focal
Revision history for this message
Brian Murray (brian-murray) wrote :

*** This is an automated message ***

This bug is tagged needs-packaging which identifies it as a request for a new package in Ubuntu. As a part of the managing needs-packaging bug reports specification, https://wiki.ubuntu.com/QATeam/Specs/NeedsPackagingBugs, all needs-packaging bug reports have Wishlist importance. Subsequently, I'm setting this bug's status to Wishlist.

summary: - Can't run npm because of outdated nodejs in repos
+ [needs-packaging] Can't run npm because of outdated nodejs in repos
Changed in npm (Ubuntu):
importance: Undecided → Wishlist
Revision history for this message
Brian Murray (brian-murray) wrote :

*** This is an automated message ***

This bug is tagged needs-packaging which identifies it as a request for a new package in Ubuntu. As a part of the managing needs-packaging bug reports specification, https://wiki.ubuntu.com/QATeam/Specs/NeedsPackagingBugs, all needs-packaging bug reports have Wishlist importance. Subsequently, I'm setting this bug's status to Wishlist.

Changed in nodejs (Ubuntu):
importance: Undecided → Wishlist
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in nodejs (Ubuntu):
status: New → Confirmed
Changed in npm (Ubuntu):
status: New → Confirmed
Revision history for this message
Adam Novak (interfect) wrote :

There's something deeply wrong with the way Ubuntu packages Node.

Here's the NodeJS project's release timeline:
https://nodejs.org/en/about/releases/

Node LTS releases are even-numbered and supported for 30 months.
Node 10 isn't even on there anymore. Node 12 is the oldest currently available, in maintenance mode, until it goes fully EOL at the end of April 2022. It's also the Node packaged in Ubuntu 21.10, released last month, which isn't EOL until July 2022. So for the last 3 months of 21.10's life, we've arranged for it to be running a dead NodeJS with no security updates. Presumably the Ubuntu NodeJS packagers have volunteered to backport them? But they can't backport the modules, which is what NodeJS exists to run.

Unless 22.04 skips right ahead to Node 16, it's going to once again ship a NodeJS that's scheduled to go out of support and be left behind by the module ecosystem an entire year before the next Ubuntu LTS is ready. And since the LTS support timeline extends beyond that, if the package isn't bumped during the release lifecycle, it will spend a lot of its life being terminally out of date relative to what people need it for (running modules).

We ought to have a plan to provide an in-support Node for the full life of the LTS release. We do this with other packages like Firefox, right?

Revision history for this message
Andy Allan (launchpad-gravitystorm) wrote :

I'd like to echo Adam's point. Ubuntu 22.04 is about to be released with Node 12, which is EOL this month (April 2022)!

It seems almost unreasonable to release Ubuntu 22.04 with the oldest currently supported Node version, and have only a week or two until it is EOL, when there are already two newer Node LTS releases available. Node 16 was released in April 2021, so whatever packaging policy means that it won't be included in Ubuntu 22.04 needs to be addressed.

Revision history for this message
Arpad Kovacs (minhmeoke) wrote :

I´m fairly new to Node, but I´ve seen several people recommend using Volta (https://github.com/volta-cli/volta) or the older but slower nvm (node version manager: https://github.com/nvm-sh/nvm) to manage Node versions, similar to how you can use virtualenv to install multiple versions of python in parallel.

Volta appears to be somewhat more modern and resolves some issues with nvm, but honestly I´m new to both so I don´t have much experience with either.
https://dev.to/pierre/switch-from-nvm-to-volta-384a

Perhaps it might be possible to offload packaging and dependency management from Ubuntu maintainers to these third-party tools.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.