reduce bundle size

This commit is contained in:
silverwind 2020-03-10 20:50:59 +01:00
parent a115133f3b
commit 9b82c2edfb
Signed by: silverwind
GPG Key ID: 2E62B41C93869443
3 changed files with 37 additions and 17 deletions

@ -29,24 +29,24 @@
"@rollup/plugin-commonjs": "11.0.2",
"@rollup/plugin-json": "4.0.2",
"@rollup/plugin-node-resolve": "7.1.1",
"ansi-regex": "5.0.0",
"colorette": "1.1.0",
"create-test-server": "3.0.1",
"del": "5.1.0",
"eslint": "6.8.0",
"eslint-config-silverwind": "10.0.0",
"eslint-config-silverwind": "10.0.1",
"execa": "4.0.0",
"hosted-git-info": "3.0.4",
"jest": "25.1.0",
"make-fetch-happen": "8.0.3",
"minimist": "1.2.0",
"minimist": "1.2.3",
"node-fetch": "2.6.0",
"rc": "1.2.8",
"registry-auth-token": "4.1.1",
"rollup": "2.0.2",
"rollup": "2.0.3",
"rollup-plugin-hashbang": "2.2.2",
"rollup-plugin-terser": "5.3.0",
"semver": "7.1.3",
"string-width": "4.2.0",
"tempy": "0.5.0",
"text-table": "0.2.0",
"versions": "8.2.4"

@ -1,6 +1,20 @@
const {writeSync} = require("tempy");
const {name} = require("./package.json");
const tempFile = writeSync("module.exports = null");
const nullTemp = writeSync("export default null;", {extension: "mjs"});
const nullRouted = new Set([
"cacache",
"socks-proxy-agent",
"ssri",
"stripJsonComments",
"encoding",
]);
const fnTemp = writeSync("export default () => () => {};", {extension: "mjs"});
const fnRouted = new Set([
"depd",
"debug",
]);
module.exports = {
input: `${name}.js`,
@ -11,19 +25,24 @@ module.exports = {
},
plugins: [
require("rollup-plugin-hashbang")(),
require("@rollup/plugin-json")(),
require("@rollup/plugin-json")({
indent: "",
preferConst: true,
}),
require("@rollup/plugin-node-resolve")({
preferBuiltins: true,
customResolveOptions: {
packageFilter: (pkg) => {
if (pkg.name === "cacache") {
return {main: tempFile};
}
packageFilter: pkg => {
if (nullRouted.has(pkg.name)) return {main: nullTemp, type: "module"};
if (fnRouted.has(pkg.name)) return {main: fnTemp, type: "module"};
return pkg;
}
},
}
}),
require("@rollup/plugin-commonjs")(),
require("rollup-plugin-terser").terser({output: {comments: false}}),
require("@rollup/plugin-commonjs")({
sourceMap: false,
}),
require("rollup-plugin-terser").terser({
output: {comments: false},
}),
],
};

@ -1,13 +1,13 @@
#!/usr/bin/env node
"use strict";
const ansiRegex = require("ansi-regex")();
const fetch = require("make-fetch-happen");
const minimist = require("minimist");
const rat = require("registry-auth-token");
const rc = require("rc");
const ru = require("registry-auth-token/registry-url");
const semver = require("semver");
const stringWidth = require("string-width");
const textTable = require("text-table");
const {cwd: cwdFn} = require("process");
const {fromUrl} = require("hosted-git-info");
@ -300,6 +300,7 @@ function fetchFromRegistry(name, registry, auth) {
const opts = {
maxSockets,
cacheManager: null,
integrity: null,
retry: 5,
};
@ -443,8 +444,8 @@ function formatDeps() {
}
return textTable(arr, {
hsep: " ".repeat(2),
stringLength: stringWidth,
hsep: " ",
stringLength: str => str.replace(ansiRegex, "").length,
});
}