Support listing out npm cache - #194

Closed
jacobtolar wants to merge 3 commits into
npm:latestfrom
jacobtolar:add-cache-ls
Closed

Support listing out npm cache#194
jacobtolar wants to merge 3 commits into
npm:latestfrom
jacobtolar:add-cache-ls

Conversation

@jacobtolar

Copy link
Copy Markdown

The documentation for npm-cache says it can list the contents of the cache folder:

Used to add, list, or clean the npm cache folder.

The list functionality isn't actually present, but is supported by cacache.

This PR adds a list (or ls) subcommand to npm cache that outputs the contents of the cache in the following format:

$ npm cache list
...
make-fetch-happen:request-cache:https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz
url = https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz
path = /Users/jtolar/.npm/_cacache/content-v2/sha1/45/26/92cb711d5f79dc7f85e440ce41b9f244d221
size = 1752
time = 1556301242419
make-fetch-happen:request-cache:https://registry.npmjs.org/ultron
url = https://registry.npmjs.org/ultron
path = /Users/jtolar/.npm/_cacache/content-v2/sha512/bb/79/1e224496f3bcf5cc6d503ca512a9ff44625ee82e436a7fb24dfde1591a56068846ef7ed2c6fe3f7f233afd74c2d672a4c18e711595d1b2fe64c81f54e9d0
size = 2101
time = 1556301242411
...

If a different output format would be preferable, I'm happy to change this PR.

@isaacs

Copy link
Copy Markdown
Contributor

This is a good idea. But it should use the cache.ls.stream interface instead, or else it loads the entire cache into memory. Otherwise, a fantastic patch.

@isaacs

Copy link
Copy Markdown
Contributor

Also, it should have a --json version.

(If you don't get to this, I will eventually, no sweat, not a blocker.)

@isaacsisaacs self-assigned this Jun 26, 2019
@jacobtolar

jacobtolar commented Jul 2, 2019

Copy link
Copy Markdown
Author

thanks for looking; updated to use ls.stream and added a --json option.

I don't write much nodejs code, so happy to refactor a bit if you have suggestions for improvements.

@darcyclarkedarcyclarke added Release 6.x work is associated with a specific npm 6 release pr: needs tests requires tests before merging labels Nov 19, 2019
@darcyclarke

Copy link
Copy Markdown
Contributor

@jacobtolar can you add some test coverage? We'd love to land this in our next minor 6.x release if you can get to it in the next week or so.

@mikemimik

Copy link
Copy Markdown
Contributor

Hey @jacobtolar just a heads up that we'll be releasing a 6.14.0 next week (Dec 3rd, 2019). If you'd like this change to land, could you add some test coverage for it? :D

@mikemimikmikemimik modified the milestone: Release 6.14.0Nov 26, 2019
@darcyclarkedarcyclarke added this to the OSS - Sprint 8 milestone Jun 11, 2020
@th0rgall

Copy link
Copy Markdown

If you need this listing feature in the CLI now, a workaround can be found here: https://github.com/yilmazdurmaz/npm-cache-list

@darcyclarkedarcyclarke removed this from the OSS - Sprint 8 milestone Oct 5, 2020
@darcyclarkedarcyclarke modified the milestone: OSS - Sprint 17Oct 5, 2020
@darcyclarke

Copy link
Copy Markdown
Contributor

@jacobtolar apologize this wasn't able to get pulled into v6. We'd love to see list & remove added to cache for v7 if you're willing to rework this PR or update based on the major refactoring we've done. Unfortunately, we're trying not to land any feature work on v6, so I'm going to close this PR for now, but again, encourage this as a feature to be added to v7.

github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 7, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 17, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 17, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 17, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Aug 7, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Aug 17, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr: needs testsrequires tests before mergingRelease 6.xwork is associated with a specific npm 6 releasesemver:minornew backwards-compatible feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@jacobtolar@isaacs@darcyclarke@mikemimik@th0rgall@lehtu
, 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
 blocks
(function() {
function addCopyButtons() {
document.querySelectorAll('pre code').forEach(function(codeBlock) {
if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
codeBlock.parentElement.setAttribute('data-copy-added', 'true');
var btn = document.createElement('button');
btn.textContent = 'Copy';
btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
btn.onmouseover = function() { this.style.opacity = '1'; };
btn.onmouseout = function() { this.style.opacity = '0.7'; };
btn.onclick = function() {
navigator.clipboard.writeText(codeBlock.textContent).then(function() {
btn.textContent = 'Copied!';
setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
});
};
codeBlock.parentElement.style.position = 'relative';
codeBlock.parentElement.appendChild(btn);
});
}
addCopyButtons();
// Re-run on dynamic content
var observer = new MutationObserver(addCopyButtons);
observer.observe(document.body, { childList: true, subtree: true });
})();
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Support listing out npm cache - #194

Closed
jacobtolar wants to merge 3 commits into
npm:latestfrom
jacobtolar:add-cache-ls
Closed

Support listing out npm cache#194
jacobtolar wants to merge 3 commits into
npm:latestfrom
jacobtolar:add-cache-ls

Conversation

@jacobtolar

Copy link
Copy Markdown

The documentation for npm-cache says it can list the contents of the cache folder:

Used to add, list, or clean the npm cache folder.

The list functionality isn't actually present, but is supported by cacache.

This PR adds a list (or ls) subcommand to npm cache that outputs the contents of the cache in the following format:

$ npm cache list
...
make-fetch-happen:request-cache:https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz
url = https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz
path = /Users/jtolar/.npm/_cacache/content-v2/sha1/45/26/92cb711d5f79dc7f85e440ce41b9f244d221
size = 1752
time = 1556301242419
make-fetch-happen:request-cache:https://registry.npmjs.org/ultron
url = https://registry.npmjs.org/ultron
path = /Users/jtolar/.npm/_cacache/content-v2/sha512/bb/79/1e224496f3bcf5cc6d503ca512a9ff44625ee82e436a7fb24dfde1591a56068846ef7ed2c6fe3f7f233afd74c2d672a4c18e711595d1b2fe64c81f54e9d0
size = 2101
time = 1556301242411
...

If a different output format would be preferable, I'm happy to change this PR.

@isaacs

Copy link
Copy Markdown
Contributor

This is a good idea. But it should use the cache.ls.stream interface instead, or else it loads the entire cache into memory. Otherwise, a fantastic patch.

@isaacs

Copy link
Copy Markdown
Contributor

Also, it should have a --json version.

(If you don't get to this, I will eventually, no sweat, not a blocker.)

@isaacsisaacs self-assigned this Jun 26, 2019
@jacobtolar

jacobtolar commented Jul 2, 2019

Copy link
Copy Markdown
Author

thanks for looking; updated to use ls.stream and added a --json option.

I don't write much nodejs code, so happy to refactor a bit if you have suggestions for improvements.

@darcyclarkedarcyclarke added Release 6.x work is associated with a specific npm 6 release pr: needs tests requires tests before merging labels Nov 19, 2019
@darcyclarke

Copy link
Copy Markdown
Contributor

@jacobtolar can you add some test coverage? We'd love to land this in our next minor 6.x release if you can get to it in the next week or so.

@mikemimik

Copy link
Copy Markdown
Contributor

Hey @jacobtolar just a heads up that we'll be releasing a 6.14.0 next week (Dec 3rd, 2019). If you'd like this change to land, could you add some test coverage for it? :D

@mikemimikmikemimik modified the milestone: Release 6.14.0Nov 26, 2019
@darcyclarkedarcyclarke added this to the OSS - Sprint 8 milestone Jun 11, 2020
@th0rgall

Copy link
Copy Markdown

If you need this listing feature in the CLI now, a workaround can be found here: https://github.com/yilmazdurmaz/npm-cache-list

@darcyclarkedarcyclarke removed this from the OSS - Sprint 8 milestone Oct 5, 2020
@darcyclarkedarcyclarke modified the milestone: OSS - Sprint 17Oct 5, 2020
@darcyclarke

Copy link
Copy Markdown
Contributor

@jacobtolar apologize this wasn't able to get pulled into v6. We'd love to see list & remove added to cache for v7 if you're willing to rework this PR or update based on the major refactoring we've done. Unfortunately, we're trying not to land any feature work on v6, so I'm going to close this PR for now, but again, encourage this as a feature to be added to v7.

github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 7, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 17, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 17, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 17, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Aug 7, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Aug 17, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr: needs testsrequires tests before mergingRelease 6.xwork is associated with a specific npm 6 releasesemver:minornew backwards-compatible feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@jacobtolar@isaacs@darcyclarke@mikemimik@th0rgall@lehtu
, 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Support listing out npm cache - #194

Closed
jacobtolar wants to merge 3 commits into
npm:latestfrom
jacobtolar:add-cache-ls
Closed

Support listing out npm cache#194
jacobtolar wants to merge 3 commits into
npm:latestfrom
jacobtolar:add-cache-ls

Conversation

@jacobtolar

Copy link
Copy Markdown

The documentation for npm-cache says it can list the contents of the cache folder:

Used to add, list, or clean the npm cache folder.

The list functionality isn't actually present, but is supported by cacache.

This PR adds a list (or ls) subcommand to npm cache that outputs the contents of the cache in the following format:

$ npm cache list
...
make-fetch-happen:request-cache:https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz
url = https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz
path = /Users/jtolar/.npm/_cacache/content-v2/sha1/45/26/92cb711d5f79dc7f85e440ce41b9f244d221
size = 1752
time = 1556301242419
make-fetch-happen:request-cache:https://registry.npmjs.org/ultron
url = https://registry.npmjs.org/ultron
path = /Users/jtolar/.npm/_cacache/content-v2/sha512/bb/79/1e224496f3bcf5cc6d503ca512a9ff44625ee82e436a7fb24dfde1591a56068846ef7ed2c6fe3f7f233afd74c2d672a4c18e711595d1b2fe64c81f54e9d0
size = 2101
time = 1556301242411
...

If a different output format would be preferable, I'm happy to change this PR.

@isaacs

Copy link
Copy Markdown
Contributor

This is a good idea. But it should use the cache.ls.stream interface instead, or else it loads the entire cache into memory. Otherwise, a fantastic patch.

@isaacs

Copy link
Copy Markdown
Contributor

Also, it should have a --json version.

(If you don't get to this, I will eventually, no sweat, not a blocker.)

@isaacsisaacs self-assigned this Jun 26, 2019
@jacobtolar

jacobtolar commented Jul 2, 2019

Copy link
Copy Markdown
Author

thanks for looking; updated to use ls.stream and added a --json option.

I don't write much nodejs code, so happy to refactor a bit if you have suggestions for improvements.

@darcyclarkedarcyclarke added Release 6.x work is associated with a specific npm 6 release pr: needs tests requires tests before merging labels Nov 19, 2019
@darcyclarke

Copy link
Copy Markdown
Contributor

@jacobtolar can you add some test coverage? We'd love to land this in our next minor 6.x release if you can get to it in the next week or so.

@mikemimik

Copy link
Copy Markdown
Contributor

Hey @jacobtolar just a heads up that we'll be releasing a 6.14.0 next week (Dec 3rd, 2019). If you'd like this change to land, could you add some test coverage for it? :D

@mikemimikmikemimik modified the milestone: Release 6.14.0Nov 26, 2019
@darcyclarkedarcyclarke added this to the OSS - Sprint 8 milestone Jun 11, 2020
@th0rgall

Copy link
Copy Markdown

If you need this listing feature in the CLI now, a workaround can be found here: https://github.com/yilmazdurmaz/npm-cache-list

@darcyclarkedarcyclarke removed this from the OSS - Sprint 8 milestone Oct 5, 2020
@darcyclarkedarcyclarke modified the milestone: OSS - Sprint 17Oct 5, 2020
@darcyclarke

Copy link
Copy Markdown
Contributor

@jacobtolar apologize this wasn't able to get pulled into v6. We'd love to see list & remove added to cache for v7 if you're willing to rework this PR or update based on the major refactoring we've done. Unfortunately, we're trying not to land any feature work on v6, so I'm going to close this PR for now, but again, encourage this as a feature to be added to v7.

github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 7, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 17, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 17, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 17, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Aug 7, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Aug 17, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr: needs testsrequires tests before mergingRelease 6.xwork is associated with a specific npm 6 releasesemver:minornew backwards-compatible feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@jacobtolar@isaacs@darcyclarke@mikemimik@th0rgall@lehtu
, 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Support listing out npm cache - #194

Closed
jacobtolar wants to merge 3 commits into
npm:latestfrom
jacobtolar:add-cache-ls
Closed

Support listing out npm cache#194
jacobtolar wants to merge 3 commits into
npm:latestfrom
jacobtolar:add-cache-ls

Conversation

@jacobtolar

Copy link
Copy Markdown

The documentation for npm-cache says it can list the contents of the cache folder:

Used to add, list, or clean the npm cache folder.

The list functionality isn't actually present, but is supported by cacache.

This PR adds a list (or ls) subcommand to npm cache that outputs the contents of the cache in the following format:

$ npm cache list
...
make-fetch-happen:request-cache:https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz
url = https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz
path = /Users/jtolar/.npm/_cacache/content-v2/sha1/45/26/92cb711d5f79dc7f85e440ce41b9f244d221
size = 1752
time = 1556301242419
make-fetch-happen:request-cache:https://registry.npmjs.org/ultron
url = https://registry.npmjs.org/ultron
path = /Users/jtolar/.npm/_cacache/content-v2/sha512/bb/79/1e224496f3bcf5cc6d503ca512a9ff44625ee82e436a7fb24dfde1591a56068846ef7ed2c6fe3f7f233afd74c2d672a4c18e711595d1b2fe64c81f54e9d0
size = 2101
time = 1556301242411
...

If a different output format would be preferable, I'm happy to change this PR.

@isaacs

Copy link
Copy Markdown
Contributor

This is a good idea. But it should use the cache.ls.stream interface instead, or else it loads the entire cache into memory. Otherwise, a fantastic patch.

@isaacs

Copy link
Copy Markdown
Contributor

Also, it should have a --json version.

(If you don't get to this, I will eventually, no sweat, not a blocker.)

@isaacsisaacs self-assigned this Jun 26, 2019
@jacobtolar

jacobtolar commented Jul 2, 2019

Copy link
Copy Markdown
Author

thanks for looking; updated to use ls.stream and added a --json option.

I don't write much nodejs code, so happy to refactor a bit if you have suggestions for improvements.

@darcyclarkedarcyclarke added Release 6.x work is associated with a specific npm 6 release pr: needs tests requires tests before merging labels Nov 19, 2019
@darcyclarke

Copy link
Copy Markdown
Contributor

@jacobtolar can you add some test coverage? We'd love to land this in our next minor 6.x release if you can get to it in the next week or so.

@mikemimik

Copy link
Copy Markdown
Contributor

Hey @jacobtolar just a heads up that we'll be releasing a 6.14.0 next week (Dec 3rd, 2019). If you'd like this change to land, could you add some test coverage for it? :D

@mikemimikmikemimik modified the milestone: Release 6.14.0Nov 26, 2019
@darcyclarkedarcyclarke added this to the OSS - Sprint 8 milestone Jun 11, 2020
@th0rgall

Copy link
Copy Markdown

If you need this listing feature in the CLI now, a workaround can be found here: https://github.com/yilmazdurmaz/npm-cache-list

@darcyclarkedarcyclarke removed this from the OSS - Sprint 8 milestone Oct 5, 2020
@darcyclarkedarcyclarke modified the milestone: OSS - Sprint 17Oct 5, 2020
@darcyclarke

Copy link
Copy Markdown
Contributor

@jacobtolar apologize this wasn't able to get pulled into v6. We'd love to see list & remove added to cache for v7 if you're willing to rework this PR or update based on the major refactoring we've done. Unfortunately, we're trying not to land any feature work on v6, so I'm going to close this PR for now, but again, encourage this as a feature to be added to v7.

github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 7, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 17, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 17, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 17, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Aug 7, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Aug 17, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr: needs testsrequires tests before mergingRelease 6.xwork is associated with a specific npm 6 releasesemver:minornew backwards-compatible feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@jacobtolar@isaacs@darcyclarke@mikemimik@th0rgall@lehtu
, 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Support listing out npm cache - #194

Closed
jacobtolar wants to merge 3 commits into
npm:latestfrom
jacobtolar:add-cache-ls
Closed

Support listing out npm cache#194
jacobtolar wants to merge 3 commits into
npm:latestfrom
jacobtolar:add-cache-ls

Conversation

@jacobtolar

Copy link
Copy Markdown

The documentation for npm-cache says it can list the contents of the cache folder:

Used to add, list, or clean the npm cache folder.

The list functionality isn't actually present, but is supported by cacache.

This PR adds a list (or ls) subcommand to npm cache that outputs the contents of the cache in the following format:

$ npm cache list
...
make-fetch-happen:request-cache:https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz
url = https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz
path = /Users/jtolar/.npm/_cacache/content-v2/sha1/45/26/92cb711d5f79dc7f85e440ce41b9f244d221
size = 1752
time = 1556301242419
make-fetch-happen:request-cache:https://registry.npmjs.org/ultron
url = https://registry.npmjs.org/ultron
path = /Users/jtolar/.npm/_cacache/content-v2/sha512/bb/79/1e224496f3bcf5cc6d503ca512a9ff44625ee82e436a7fb24dfde1591a56068846ef7ed2c6fe3f7f233afd74c2d672a4c18e711595d1b2fe64c81f54e9d0
size = 2101
time = 1556301242411
...

If a different output format would be preferable, I'm happy to change this PR.

@isaacs

Copy link
Copy Markdown
Contributor

This is a good idea. But it should use the cache.ls.stream interface instead, or else it loads the entire cache into memory. Otherwise, a fantastic patch.

@isaacs

Copy link
Copy Markdown
Contributor

Also, it should have a --json version.

(If you don't get to this, I will eventually, no sweat, not a blocker.)

@isaacsisaacs self-assigned this Jun 26, 2019
@jacobtolar

jacobtolar commented Jul 2, 2019

Copy link
Copy Markdown
Author

thanks for looking; updated to use ls.stream and added a --json option.

I don't write much nodejs code, so happy to refactor a bit if you have suggestions for improvements.

@darcyclarkedarcyclarke added Release 6.x work is associated with a specific npm 6 release pr: needs tests requires tests before merging labels Nov 19, 2019
@darcyclarke

Copy link
Copy Markdown
Contributor

@jacobtolar can you add some test coverage? We'd love to land this in our next minor 6.x release if you can get to it in the next week or so.

@mikemimik

Copy link
Copy Markdown
Contributor

Hey @jacobtolar just a heads up that we'll be releasing a 6.14.0 next week (Dec 3rd, 2019). If you'd like this change to land, could you add some test coverage for it? :D

@mikemimikmikemimik modified the milestone: Release 6.14.0Nov 26, 2019
@darcyclarkedarcyclarke added this to the OSS - Sprint 8 milestone Jun 11, 2020
@th0rgall

Copy link
Copy Markdown

If you need this listing feature in the CLI now, a workaround can be found here: https://github.com/yilmazdurmaz/npm-cache-list

@darcyclarkedarcyclarke removed this from the OSS - Sprint 8 milestone Oct 5, 2020
@darcyclarkedarcyclarke modified the milestone: OSS - Sprint 17Oct 5, 2020
@darcyclarke

Copy link
Copy Markdown
Contributor

@jacobtolar apologize this wasn't able to get pulled into v6. We'd love to see list & remove added to cache for v7 if you're willing to rework this PR or update based on the major refactoring we've done. Unfortunately, we're trying not to land any feature work on v6, so I'm going to close this PR for now, but again, encourage this as a feature to be added to v7.

github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 7, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 17, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 17, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 17, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Aug 7, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Aug 17, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr: needs testsrequires tests before mergingRelease 6.xwork is associated with a specific npm 6 releasesemver:minornew backwards-compatible feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@jacobtolar@isaacs@darcyclarke@mikemimik@th0rgall@lehtu
, 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Support listing out npm cache - #194

Closed
jacobtolar wants to merge 3 commits into
npm:latestfrom
jacobtolar:add-cache-ls
Closed

Support listing out npm cache#194
jacobtolar wants to merge 3 commits into
npm:latestfrom
jacobtolar:add-cache-ls

Conversation

@jacobtolar

Copy link
Copy Markdown

The documentation for npm-cache says it can list the contents of the cache folder:

Used to add, list, or clean the npm cache folder.

The list functionality isn't actually present, but is supported by cacache.

This PR adds a list (or ls) subcommand to npm cache that outputs the contents of the cache in the following format:

$ npm cache list
...
make-fetch-happen:request-cache:https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz
url = https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz
path = /Users/jtolar/.npm/_cacache/content-v2/sha1/45/26/92cb711d5f79dc7f85e440ce41b9f244d221
size = 1752
time = 1556301242419
make-fetch-happen:request-cache:https://registry.npmjs.org/ultron
url = https://registry.npmjs.org/ultron
path = /Users/jtolar/.npm/_cacache/content-v2/sha512/bb/79/1e224496f3bcf5cc6d503ca512a9ff44625ee82e436a7fb24dfde1591a56068846ef7ed2c6fe3f7f233afd74c2d672a4c18e711595d1b2fe64c81f54e9d0
size = 2101
time = 1556301242411
...

If a different output format would be preferable, I'm happy to change this PR.

@isaacs

Copy link
Copy Markdown
Contributor

This is a good idea. But it should use the cache.ls.stream interface instead, or else it loads the entire cache into memory. Otherwise, a fantastic patch.

@isaacs

Copy link
Copy Markdown
Contributor

Also, it should have a --json version.

(If you don't get to this, I will eventually, no sweat, not a blocker.)

@isaacsisaacs self-assigned this Jun 26, 2019
@jacobtolar

jacobtolar commented Jul 2, 2019

Copy link
Copy Markdown
Author

thanks for looking; updated to use ls.stream and added a --json option.

I don't write much nodejs code, so happy to refactor a bit if you have suggestions for improvements.

@darcyclarkedarcyclarke added Release 6.x work is associated with a specific npm 6 release pr: needs tests requires tests before merging labels Nov 19, 2019
@darcyclarke

Copy link
Copy Markdown
Contributor

@jacobtolar can you add some test coverage? We'd love to land this in our next minor 6.x release if you can get to it in the next week or so.

@mikemimik

Copy link
Copy Markdown
Contributor

Hey @jacobtolar just a heads up that we'll be releasing a 6.14.0 next week (Dec 3rd, 2019). If you'd like this change to land, could you add some test coverage for it? :D

@mikemimikmikemimik modified the milestone: Release 6.14.0Nov 26, 2019
@darcyclarkedarcyclarke added this to the OSS - Sprint 8 milestone Jun 11, 2020
@th0rgall

Copy link
Copy Markdown

If you need this listing feature in the CLI now, a workaround can be found here: https://github.com/yilmazdurmaz/npm-cache-list

@darcyclarkedarcyclarke removed this from the OSS - Sprint 8 milestone Oct 5, 2020
@darcyclarkedarcyclarke modified the milestone: OSS - Sprint 17Oct 5, 2020
@darcyclarke

Copy link
Copy Markdown
Contributor

@jacobtolar apologize this wasn't able to get pulled into v6. We'd love to see list & remove added to cache for v7 if you're willing to rework this PR or update based on the major refactoring we've done. Unfortunately, we're trying not to land any feature work on v6, so I'm going to close this PR for now, but again, encourage this as a feature to be added to v7.

github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 7, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 17, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 17, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 17, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Aug 7, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Aug 17, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr: needs testsrequires tests before mergingRelease 6.xwork is associated with a specific npm 6 releasesemver:minornew backwards-compatible feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@jacobtolar@isaacs@darcyclarke@mikemimik@th0rgall@lehtu
, 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Support listing out npm cache - #194

Closed
jacobtolar wants to merge 3 commits into
npm:latestfrom
jacobtolar:add-cache-ls
Closed

Support listing out npm cache#194
jacobtolar wants to merge 3 commits into
npm:latestfrom
jacobtolar:add-cache-ls

Conversation

@jacobtolar

Copy link
Copy Markdown

The documentation for npm-cache says it can list the contents of the cache folder:

Used to add, list, or clean the npm cache folder.

The list functionality isn't actually present, but is supported by cacache.

This PR adds a list (or ls) subcommand to npm cache that outputs the contents of the cache in the following format:

$ npm cache list
...
make-fetch-happen:request-cache:https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz
url = https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz
path = /Users/jtolar/.npm/_cacache/content-v2/sha1/45/26/92cb711d5f79dc7f85e440ce41b9f244d221
size = 1752
time = 1556301242419
make-fetch-happen:request-cache:https://registry.npmjs.org/ultron
url = https://registry.npmjs.org/ultron
path = /Users/jtolar/.npm/_cacache/content-v2/sha512/bb/79/1e224496f3bcf5cc6d503ca512a9ff44625ee82e436a7fb24dfde1591a56068846ef7ed2c6fe3f7f233afd74c2d672a4c18e711595d1b2fe64c81f54e9d0
size = 2101
time = 1556301242411
...

If a different output format would be preferable, I'm happy to change this PR.

@isaacs

Copy link
Copy Markdown
Contributor

This is a good idea. But it should use the cache.ls.stream interface instead, or else it loads the entire cache into memory. Otherwise, a fantastic patch.

@isaacs

Copy link
Copy Markdown
Contributor

Also, it should have a --json version.

(If you don't get to this, I will eventually, no sweat, not a blocker.)

@isaacsisaacs self-assigned this Jun 26, 2019
@jacobtolar

jacobtolar commented Jul 2, 2019

Copy link
Copy Markdown
Author

thanks for looking; updated to use ls.stream and added a --json option.

I don't write much nodejs code, so happy to refactor a bit if you have suggestions for improvements.

@darcyclarkedarcyclarke added Release 6.x work is associated with a specific npm 6 release pr: needs tests requires tests before merging labels Nov 19, 2019
@darcyclarke

Copy link
Copy Markdown
Contributor

@jacobtolar can you add some test coverage? We'd love to land this in our next minor 6.x release if you can get to it in the next week or so.

@mikemimik

Copy link
Copy Markdown
Contributor

Hey @jacobtolar just a heads up that we'll be releasing a 6.14.0 next week (Dec 3rd, 2019). If you'd like this change to land, could you add some test coverage for it? :D

@mikemimikmikemimik modified the milestone: Release 6.14.0Nov 26, 2019
@darcyclarkedarcyclarke added this to the OSS - Sprint 8 milestone Jun 11, 2020
@th0rgall

Copy link
Copy Markdown

If you need this listing feature in the CLI now, a workaround can be found here: https://github.com/yilmazdurmaz/npm-cache-list

@darcyclarkedarcyclarke removed this from the OSS - Sprint 8 milestone Oct 5, 2020
@darcyclarkedarcyclarke modified the milestone: OSS - Sprint 17Oct 5, 2020
@darcyclarke

Copy link
Copy Markdown
Contributor

@jacobtolar apologize this wasn't able to get pulled into v6. We'd love to see list & remove added to cache for v7 if you're willing to rework this PR or update based on the major refactoring we've done. Unfortunately, we're trying not to land any feature work on v6, so I'm going to close this PR for now, but again, encourage this as a feature to be added to v7.

github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 7, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 17, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 17, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 17, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Aug 7, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Aug 17, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr: needs testsrequires tests before mergingRelease 6.xwork is associated with a specific npm 6 releasesemver:minornew backwards-compatible feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@jacobtolar@isaacs@darcyclarke@mikemimik@th0rgall@lehtu
, 'i'); if (__m === '*' || __re.test(location.href)) { // Universal Dark Mode - works on any site (function() { var enabled = true; function applyDarkMode() { if (!enabled) return; // Create style element if it doesn't exist var style = document.getElementById('universal-dark-mode-style'); if (!style) { style = document.createElement('style'); style.id = 'universal-dark-mode-style'; document.head.appendChild(style); } // Dark mode CSS - inverts colors but preserves images/video style.textContent = ' /* Invert everything except media */ html { filter: invert(1) hue-rotate(180deg) !important; background: #1a1a2e !important; } /* Restore images, videos, iframes, canvas */ img, video, iframe, canvas, svg, picture, [style*="background-image"] { filter: invert(1) hue-rotate(180deg) !important; } /* Preserve specific elements that should not be inverted */ .no-dark-mode, .no-dark-mode *, [data-theme="light"], [data-theme="light"], .ace_editor, .ace_editor *, .CodeMirror, .CodeMirror *, .monaco-editor, .monaco-editor *, .markdown-body pre, .markdown-body pre *, .highlight, .highlight *, pre code, pre code * { filter: none !important; } /* Fix common UI elements */ .modal, .popup, .dropdown-menu, .tooltip, .popover { filter: invert(1) hue-rotate(180deg) !important; background: #2d2d44 !important; border-color: #444 !important; } /* Scrollbars */ ::-webkit-scrollbar { background: #1a1a2e !important; } ::-webkit-scrollbar-thumb { background: #444 !important; } ::-webkit-scrollbar-thumb:hover { background: #555 !important; } /* Selection */ ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; } ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; } '; } function removeDarkMode() { var style = document.getElementById('universal-dark-mode-style'); if (style) style.remove(); } // Toggle with Alt+Shift+D document.addEventListener('keydown', function(e) { if (e.altKey && e.shiftKey && e.key === 'D') { e.preventDefault(); enabled = !enabled; if (enabled) { applyDarkMode(); console.log('[Universal Dark Mode] Enabled'); } else { removeDarkMode(); console.log('[Universal Dark Mode] Disabled'); } } }); // Apply on load applyDarkMode(); // Re-apply on dynamic content var observer = new MutationObserver(function(mutations) { if (enabled && !document.getElementById('universal-dark-mode-style')) { applyDarkMode(); } }); observer.observe(document.head, { childList: true }); console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle'); })(); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Support listing out npm cache - #194

Closed
jacobtolar wants to merge 3 commits into
npm:latestfrom
jacobtolar:add-cache-ls
Closed

Support listing out npm cache#194
jacobtolar wants to merge 3 commits into
npm:latestfrom
jacobtolar:add-cache-ls

Conversation

@jacobtolar

Copy link
Copy Markdown

The documentation for npm-cache says it can list the contents of the cache folder:

Used to add, list, or clean the npm cache folder.

The list functionality isn't actually present, but is supported by cacache.

This PR adds a list (or ls) subcommand to npm cache that outputs the contents of the cache in the following format:

$ npm cache list
...
make-fetch-happen:request-cache:https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz
url = https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz
path = /Users/jtolar/.npm/_cacache/content-v2/sha1/45/26/92cb711d5f79dc7f85e440ce41b9f244d221
size = 1752
time = 1556301242419
make-fetch-happen:request-cache:https://registry.npmjs.org/ultron
url = https://registry.npmjs.org/ultron
path = /Users/jtolar/.npm/_cacache/content-v2/sha512/bb/79/1e224496f3bcf5cc6d503ca512a9ff44625ee82e436a7fb24dfde1591a56068846ef7ed2c6fe3f7f233afd74c2d672a4c18e711595d1b2fe64c81f54e9d0
size = 2101
time = 1556301242411
...

If a different output format would be preferable, I'm happy to change this PR.

@isaacs

Copy link
Copy Markdown
Contributor

This is a good idea. But it should use the cache.ls.stream interface instead, or else it loads the entire cache into memory. Otherwise, a fantastic patch.

@isaacs

Copy link
Copy Markdown
Contributor

Also, it should have a --json version.

(If you don't get to this, I will eventually, no sweat, not a blocker.)

@isaacsisaacs self-assigned this Jun 26, 2019
@jacobtolar

jacobtolar commented Jul 2, 2019

Copy link
Copy Markdown
Author

thanks for looking; updated to use ls.stream and added a --json option.

I don't write much nodejs code, so happy to refactor a bit if you have suggestions for improvements.

@darcyclarkedarcyclarke added Release 6.x work is associated with a specific npm 6 release pr: needs tests requires tests before merging labels Nov 19, 2019
@darcyclarke

Copy link
Copy Markdown
Contributor

@jacobtolar can you add some test coverage? We'd love to land this in our next minor 6.x release if you can get to it in the next week or so.

@mikemimik

Copy link
Copy Markdown
Contributor

Hey @jacobtolar just a heads up that we'll be releasing a 6.14.0 next week (Dec 3rd, 2019). If you'd like this change to land, could you add some test coverage for it? :D

@mikemimikmikemimik modified the milestone: Release 6.14.0Nov 26, 2019
@darcyclarkedarcyclarke added this to the OSS - Sprint 8 milestone Jun 11, 2020
@th0rgall

Copy link
Copy Markdown

If you need this listing feature in the CLI now, a workaround can be found here: https://github.com/yilmazdurmaz/npm-cache-list

@darcyclarkedarcyclarke removed this from the OSS - Sprint 8 milestone Oct 5, 2020
@darcyclarkedarcyclarke modified the milestone: OSS - Sprint 17Oct 5, 2020
@darcyclarke

Copy link
Copy Markdown
Contributor

@jacobtolar apologize this wasn't able to get pulled into v6. We'd love to see list & remove added to cache for v7 if you're willing to rework this PR or update based on the major refactoring we've done. Unfortunately, we're trying not to land any feature work on v6, so I'm going to close this PR for now, but again, encourage this as a feature to be added to v7.

github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 7, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 17, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 17, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Jul 17, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Aug 7, 2026
github-actionsBot added a commit to Kevinlee7250/cli that referenced this pull request Aug 17, 2026
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr: needs testsrequires tests before mergingRelease 6.xwork is associated with a specific npm 6 releasesemver:minornew backwards-compatible feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants

@jacobtolar@isaacs@darcyclarke@mikemimik@th0rgall@lehtu