Socket
Socket
Sign inDemoInstall

heroku-cli-util

Package Overview
Dependencies
Maintainers
2
Versions
155
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

heroku-cli-util - npm Package Compare versions

Comparing version 5.9.3 to 5.10.0

lib/spinner.js

1

index.js

@@ -36,1 +36,2 @@ 'use strict';

exports.linewrap = require('./lib/linewrap');
exports.Spinner = require('./lib/spinner');

@@ -12,4 +12,7 @@ 'use strict';

options = options || {};
cli.console.writeError(message + '... ');
let spinner = new cli.Spinner({text: `${message}... `});
spinner.start();
return promise.then(function (result) {
spinner.stop();
if (options.success !== false) {

@@ -20,2 +23,3 @@ cli.console.error(options.success || 'done');

}).catch(function (err) {
spinner.stop();
if (err.body && err.body.id === 'two_factor') {

@@ -22,0 +26,0 @@ cli.console.error(cli.color.yellow.bold('!'));

3

lib/errors.js

@@ -15,3 +15,4 @@ 'use strict';

errtermwidth(), {
skipScheme: 'ansi-color'
skipScheme: 'ansi-color',
skip: /^\$ .*$/,
})(msg || '');

@@ -18,0 +19,0 @@ }

@@ -6,2 +6,5 @@ 'use strict';

let tunnel = require('tunnel-agent');
let fs = require('fs');
let path = require('path');
let hush = require('./console').hush;

@@ -27,3 +30,3 @@ function findProxy(urlParsed) {

function agent(urlParsed, proxyParsed) {
function agent(urlParsed, proxyParsed, certs) {
let tunnelMethod = findTunnel(urlParsed);

@@ -41,12 +44,54 @@ let opts = {

return tunnelMethod(opts);
if (certs.length > 0) {
opts.ca = certs;
}
let tunnelAgent = tunnelMethod(opts);
if (urlParsed.protocol === 'https:') {
tunnelAgent.defaultPort = 443;
}
return tunnelAgent;
}
function addProxyToOpts(url, opts) {
function sslCertFile() {
return process.env.SSL_CERT_FILE ? [process.env.SSL_CERT_FILE] : [];
}
function sslCertDir() {
let cert_dir = process.env.SSL_CERT_DIR;
if (cert_dir) {
return fs.readdirSync(cert_dir).map(f => path.join(cert_dir, f));
} else {
return [];
}
}
function getCerts() {
let filenames = sslCertFile().concat(sslCertDir());
if (filenames.length > 0) {
hush('Adding the following trusted certificate authorities');
}
return filenames.map(function(filename) {
hush(' ' + filename);
return fs.readFileSync(filename);
});
}
function addToOpts(url, opts) {
let urlParsed = urlLib.parse(url);
let proxy = findProxy(urlParsed);
let certs = getCerts();
if (proxy) {
let proxyParsed = urlLib.parse(proxy);
opts = Object.assign({}, opts, {agent: agent(urlParsed, proxyParsed)});
opts = Object.assign({}, opts, {agent: agent(urlParsed, proxyParsed, certs)});
}
if (certs.length > 0) {
opts = Object.assign({}, opts, {ca: certs});
}
return opts;

@@ -56,7 +101,7 @@ }

function got(url, opts) {
return gotDelegate(url, addProxyToOpts(url, opts));
return gotDelegate(url, addToOpts(url, opts));
}
got.stream = function (url, opts) {
return gotDelegate.stream(url, addProxyToOpts(url, opts));
return gotDelegate.stream(url, addToOpts(url, opts));
};

@@ -63,0 +108,0 @@

{
"name": "heroku-cli-util",
"version": "5.9.3",
"version": "5.10.0",
"description": "Set of helpful CLI utilities",

@@ -26,3 +26,5 @@ "main": "index.js",

"nock": "7.7.2",
"proxyquire": "1.7.4"
"proxyquire": "1.7.4",
"sinon": "1.17.2",
"sinon-chai": "2.8.0"
},

@@ -32,2 +34,3 @@ "dependencies": {

"chalk": "1.1.3",
"cli-cursor": "1.0.2",
"co": "4.6.0",

@@ -38,4 +41,5 @@ "got": "6.2.0",

"opn": "3.0.3",
"supports-color": "3.1.2",
"tunnel-agent": "0.4.2"
}
}
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc