FS#56975 - [npm] broken semver symlink

Attached to Project: Community Packages
Opened by Corubba (corubba) - Saturday, 06 January 2018, 15:28 GMT
Last edited by Eli Schwartz (eschwartz) - Wednesday, 11 April 2018, 18:40 GMT
Task Type Bug Report
Category Packages
Status Closed
Assigned To Felix Yan (felixonmars)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:
The npm package contains the file /usr/lib/node_modules/npm/node_modules/.bin/semver, which is a symlink that currently points to the non-existing executable /usr/lib/node_modules/npm/node_modules/semver/bin/semver . The referenced semver directory is explicitly removed in the PKGBUILD, which I assume is because semver is provided by its own package and dublication is not wanted. But since semver is installed in the global nodes_modules, the PKGBUILD should fix the symlink and point it to /usr/lib/node_modules/semver/bin/semver .

% ll /usr/lib/node_modules/npm/node_modules/.bin/semver
lrwxrwxrwx 1 root root 20 2. Dez 03:11 /usr/lib/node_modules/npm/node_modules/.bin/semver -> ../semver/bin/semver

% ll /usr/lib/node_modules/npm/node_modules/semver/bin/semver
ls: cannot access '/usr/lib/node_modules/npm/node_modules/semver/bin/semver': No such file or directory

% ll /usr/lib/node_modules/semver/bin/semver
-rwxr-xr-x 1 root root 4092 8. Feb 2017 /usr/lib/node_modules/semver/bin/semver


Additional info:
* package version(s)
nodejs v9.3.0-1
npm 5.6.0-1
semver 5.4.1-1
This task depends upon

Closed by  Eli Schwartz (eschwartz)
Wednesday, 11 April 2018, 18:40 GMT
Reason for closing:  Fixed
Additional comments about closing:  removed entirely in npm 5.8.0-2
Comment by Corubba (corubba) - Saturday, 06 January 2018, 15:33 GMT
The same with the symlink /usr/lib/node_modules/npm/node_modules/node-gyp/node_modules/.bin/semver .
Comment by Eli Schwartz (eschwartz) - Wednesday, 11 April 2018, 18:34 GMT
It's a garbage symlink, its only purpose is so npm run can find the command via $PATH by appending the .bin/ directory. But it's already available in $PATH via /usr/bin so we don't need it at all.

Loading...