Deprecate unused+archived `@npmcli` packages
lukekarrys opened this issue Β· comments
Now that we have all our packages on the @npmcli
team, it was easier to do something I've wanted to do before: map our packages to their GitHub repos and use in the CLI. Using this data as a signal I was able to identify a number of packages I think we should deprecate. All of the deprecations are to match repos that are already archived, although some of the repos were archived as part of my findings here.
There is one outlier npm-merge-driver
that I'm not sure what to do with. It's usage has been brought up before by other teams at GitHub. The repo is archived, but I'm not sure if it should be officially deprecated on the registry.
Here are the packages I think we should deprecate and the message we should use to deprecate them:
name | downloads | message |
---|---|---|
gauge | 85,496,147 | This package is no longer supported. |
npmlog | 84,944,008 | This package is no longer supported. |
are-we-there-yet | 84,637,471 | This package is no longer supported. |
read-package-json | 32,676,257 | This package is no longer supported. Please use @npmcli/package-json instead. |
fs-write-stream-atomic | 21,872,169 | This package is no longer supported. |
move-concurrently | 21,800,758 | This package is no longer supported. |
copy-concurrently | 21,361,080 | This package is no longer supported. |
osenv | 18,001,523 | This package is no longer supported. |
fstream | 17,417,284 | This package is no longer supported. |
uid-number | 3,146,340 | This package is no longer supported. |
read-installed | 2,997,918 | This package is no longer supported. |
@npmcli/disparity-colors | 2,018,842 | This package is no longer supported. |
fstream-ignore | 1,227,570 | This package is no longer supported. |
libnpx | 826,798 | This package is no longer supported. |
npm-registry-client | 800,938 | This package is no longer supported. |
npm-cache-filename | 760,099 | This package is no longer supported. |
lock-verify | 523,768 | This package is no longer supported. |
find-npm-prefix | 510,375 | This package is no longer supported. |
npx | 480,460 | This package is now part of the npm CLI. |
libnpm | 416,481 | This package is no longer supported. |
fstream-npm | 251,332 | This package is no longer supported. |
normalize-git-url | 144,093 | This package is no longer supported. |
realize-package-specifier | 91,141 | This package is no longer supported. |
npm-merge-driver | 38,252 | ???? |
npmc | 11,573 | This package is no longer supported. Please use npm instead. |
npm-registry-couchapp | 1,424 | This package is no longer supported. |
cipm | 205 | This package is no longer supported. |
npm-profile-cli | 16 | This package is no longer supported. |
fallback-fs | 16 | This package is no longer supported. |
do-you-even-lift | 15 | This package is no longer supported. |
@npmcli/infer-owner | 6 | This package is no longer supported. |
@npmcli/publish-test | 5 | This package is no longer supported. |
Below is the full data I used to find the above packages to deprecate.
I went through it all manually since there are no perfect signals here. Eg: some deprecated packages map to active repos and some unused packages are tools that aren't used by the CLI but we don't want to deprecate/archive.
Full Data
npm-merge-driver
is a standalone bin that is not really related to the automated merge resolution that npm does internally. It would take a bit of work to get it up to working condition again, namely we would want to spawk
what it does now and enforce it, and then we could clean it up. I don't know if this is a priority however. It may just have to be kept on the backlog for now.
In handy script form to run with npm-merge-drived
removed:
#!/usr/bin/env bash
set -xe
npm deprecate gauge "This package is no longer supported.""
npm deprecate npmlog "This package is no longer supported.""
npm deprecate are-we-there-yet "This package is no longer supported.""
npm deprecate read-package-json "This package is no longer supported. Please use @npmcli/package-json instead.""
npm deprecate fs-write-stream-atomic "This package is no longer supported.""
npm deprecate move-concurrently "This package is no longer supported.""
npm deprecate copy-concurrently "This package is no longer supported.""
npm deprecate osenv "This package is no longer supported.""
npm deprecate fstream "This package is no longer supported.""
npm deprecate uid-number "This package is no longer supported.""
npm deprecate read-installed "This package is no longer supported.""
npm deprecate @npmcli/disparity-colors "This package is no longer supported.""
npm deprecate fstream-ignore "This package is no longer supported.""
npm deprecate libnpx "This package is no longer supported.""
npm deprecate npm-registry-client "This package is no longer supported.""
npm deprecate npm-cache-filename "This package is no longer supported.""
npm deprecate lock-verify "This package is no longer supported.""
npm deprecate find-npm-prefix "This package is no longer supported.""
npm deprecate npx "This package is now part of the npm CLI.""
npm deprecate libnpm "This package is no longer supported.""
npm deprecate fstream-npm "This package is no longer supported.""
npm deprecate normalize-git-url "This package is no longer supported.""
npm deprecate realize-package-specifier "This package is no longer supported.""
npm deprecate npmc "This package is no longer supported. Please use npm instead.""
npm deprecate npm-registry-couchapp "This package is no longer supported.""
npm deprecate cipm "This package is no longer supported.""
npm deprecate npm-profile-cli "This package is no longer supported.""
npm deprecate fallback-fs "This package is no longer supported.""
npm deprecate do-you-even-lift "This package is no longer supported.""
npm deprecate @npmcli/infer-owner "This package is no longer supported.""
npm deprecate @npmcli/publish-test "This package is no longer supported.""
Thanks @lukekarrys I'll run that ... not on a weekend.
Gonna make a back-burner issue for npm-merge-driver
separately