question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

use npm as the default client-side package manager

See original GitHub issue

When using Vaadin I expect that by default it makes a reasonable choice of the front-end package manager. Since Vaadin 14.2 and Vaadin 15 the default has been pnpm because in late 2019 it was determined to be significantly faster than npm for repeated builds (see #6150). In early 2021 the situation has changed: both npm and pnpm have improved build times and the speed benefit of using pnpm became negligible (see https://github.com/vaadin/flow/issues/9835).

~Therefore, starting from Vaadin 20 (ETA June 2021) I expect Vaadin to use npm by default and to deprecate the pnpm support. Starting from Vaadin 21 (ETA September 2021) I expect pnpm support to be dropped completely.~

UPD: no timeline on this. As of early 2021 npm 7.x does not have a way to force / override transitive dependencies, which makes it ill-suited for use ‘as-is’ in Vaadin projects regardless of the performance (details).

DoD:

more context in the feature design document

Issue Analytics

  • State:closed
  • Created 3 years ago
  • Reactions:4
  • Comments:5 (4 by maintainers)

github_iconTop GitHub Comments

2reactions
Avec112commented, Feb 23, 2021

From a Flow developers perspective I can only see benefits with pnpm support continuing until npm catches up also in other areas then just build speed. It is easy to configure and it just works. Pnpm uses a local cache instead of downloading everything for all new projects. Pnpm also uses symlinks/junctions and thus will not take up more space then what is in the local cache. This is not the case for NPM. Please consider not removing this since pnpm support brings great benefits. Here is the Discord discussion between @marcushellberg and me about the issue.

0reactions
enver-haasecommented, Dec 21, 2021
Read more comments on GitHub >

github_iconTop Results From Across the Web

node.js - Is npm designed to be used to manage client-side ...
Save this answer. Show activity on this post. NPM was designed specifically to manage JavaScript packages running under Node. js (server side).
Read more >
Using npm to manage frontend dependencies - Agiliq
One frequently ocurring confusion is how npm which is a package manager for Node.js can be used for managing client side libraries.
Read more >
Manage npm packages - Visual Studio (Windows)
Visual Studio helps you to manage packages using the Node.js package manager (npm)
Read more >
npm for Beginners: A Guide for Front-end Developers
The CLI (or npm client) is a tool installed on a developer's machine. It allows you to publish packages, install packages, and update...
Read more >
Package management basics - Learn web development | MDN
In the case of npm (and JavaScript- and Node-based package managers) you have two options for where you install your dependencies.
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found