Skip to content

Instantly share code, notes, and snippets.

View MylesBorins's full-sized avatar

Myles Borins MylesBorins

View GitHub Profile
@MylesBorins
MylesBorins / hack.patch
Created April 21, 2022 20:55
Allow for automation tokens when setting 2FA mode via CLI
diff --git a/workspaces/libnpmaccess/lib/index.js b/workspaces/libnpmaccess/lib/index.js
index 71219d009..27cebddec 100644
--- a/workspaces/libnpmaccess/lib/index.js
+++ b/workspaces/libnpmaccess/lib/index.js
@@ -169,7 +169,7 @@ function setRequires2fa (spec, required, opts = {}) {
return npmFetch(uri, {
...opts,
method: 'POST',
- body: { publish_requires_tfa: required },
+ body: { publish_requires_tfa: required, automation_token_overrides_tfa: required },
@MylesBorins
MylesBorins / index.mjs
Created February 21, 2021 21:09
No more CJS `$ node --experimental-loader ./no-cjs.mjs index.mjs`
import './no-more.cjs';
@MylesBorins
MylesBorins / index.js
Created February 12, 2021 16:02
example wrapper
const namespace = require('./wrapper');
console.log(namespace);
@MylesBorins
MylesBorins / maybe-simple.md
Created January 8, 2021 02:53
An attempt to document exports

The "exports" field allows defining the entry points of a package. Through the use of conditional exports loader specific entries can be defined.

It can be a string an object or an array

If package.exports is a string an import or require of your package will always resolve to that string

If package.exports is an object you can define two types of fields.

@MylesBorins
MylesBorins / 15.x-commits.md
Created January 5, 2021 16:25
branch-diff v15.x-staging upstream/master --exclude-label semver-major,dont-land-on-v15.x,backport-requested-v15.x,backported-to-v15.x,backport-blocked-v15.x,backport-open-v15.x --filter-release
@MylesBorins
MylesBorins / fs-promises-polyfill.js
Created January 4, 2021 15:51
fs/promises polyfill
try {
require('fs/promises');
} catch (e) {
const {join} = require('path');
const {promises} = require('fs');
const polyfillRoot = join(__dirname, 'node_modules', 'fs')
const polyfillPath = join(polyfillRoot, 'promises.js');
require.cache[polyfillPath] = {
id: polyfillPath,
path: polyfillRoot,
@MylesBorins
MylesBorins / v14.x-diff.md
Last active December 11, 2020 23:02
branch-diff v14.x-staging upstream/v15.x --exclude-label semver-major,semver-minor,dont-land-on-v14.x,backport-requested-v14.x,backported-to-v14.x,backport-blocked-v14.x,backport-open-v14.x,baking-for-lts --filter-release
@MylesBorins
MylesBorins / v12.x-backport.md
Last active November 3, 2020 22:30
branch-diff v12.x-staging upstream/v14.x --exclude-label semver-major,dont-land-on-v12.x,backport-requested-v12.x,backported-to-v12.x,backport-blocked-v12.x,backport-open-v12.x --filter-release
diff --git a/lib/npm.js b/lib/npm.js
index 79d276722..7fb234cc9 100644
--- a/lib/npm.js
+++ b/lib/npm.js
@@ -3,6 +3,30 @@
// we define and instantiate the singleton ahead of loading any modules
// required for its methods.
+/* istanbul ignore next */ {
+ const timers = {}
@MylesBorins
MylesBorins / changes.md
Last active August 17, 2020 20:29
branch-diff v14.x-staging upstream/master --exclude-label semver-major,dont-land-on-v14.x,backport-requested-v14.x,backported-to-v14.x,backport-blocked-v14.x,backport-open-v14.x --filter-release