Socket
Socket
Sign inDemoInstall

husky

Package Overview
Dependencies
Maintainers
1
Versions
214
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

husky - npm Package Compare versions

Comparing version 0.15.0-beta.11 to 0.15.0-beta.12

14

docs.md

@@ -53,7 +53,11 @@ # Documentation

```sh
project
packages
A/package.json
B/package.json
C/package.json
project/
package.json # Root package.json
packages/
A/
package.json
B/
package.json
C/
package.json
```

@@ -60,0 +64,0 @@

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const execa = require("execa");
const path = require("path");
const _1 = require("./");
var execa = require("execa");
var path = require("path");
var _1 = require("./");
// Action can be "install" or "uninstall"
// huskyDir is ONLY used in dev, don't use this arguments
const [, , action, huskyDir = path.join(__dirname, '../..')] = process.argv;
var _a = process.argv, action = _a[2], _b = _a[3], huskyDir = _b === void 0 ? path.join(__dirname, '../..') : _b;
// Find Git dir
const { status, stdout, stderr } = execa.sync('git', ['rev-parse', '--git-dir']);
const gitDir = path.resolve(stdout); // Needed to normalize path on Windows
var _c = execa.sync('git', ['rev-parse', '--git-dir']), status = _c.status, stdout = _c.stdout, stderr = _c.stderr;
var gitDir = path.resolve(stdout); // Needed to normalize path on Windows
if (status !== 0) {

@@ -13,0 +13,0 @@ console.log(stderr);

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const fs = require("fs");
const path = require("path");
const pupa = require("pupa");
const slash = require("slash");
var fs = require("fs");
var path = require("path");
var pupa = require("pupa");
var slash = require("slash");
// Used to identify scripts created by Husky
exports.huskyIdentifier = '# husky';
function default_1(userDir) {
const runNodePath = slash(path.relative(userDir, require.resolve('.bin/run-node')));
const { version } = JSON.parse(fs.readFileSync(path.join(__dirname, '../../package.json'), 'utf-8'));
const template = fs.readFileSync(path.join(__dirname, '../../templates/hook.sh'), 'utf-8');
return pupa(template, { huskyIdentifier: exports.huskyIdentifier, runNodePath, version });
var runNodePath = slash(path.relative(userDir, require.resolve('.bin/run-node')));
var version = JSON.parse(fs.readFileSync(path.join(__dirname, '../../package.json'), 'utf-8')).version;
var template = fs.readFileSync(path.join(__dirname, '../../templates/hook.sh'), 'utf-8');
return pupa(template, { huskyIdentifier: exports.huskyIdentifier, runNodePath: runNodePath, version: version });
}
exports.default = default_1;
"use strict";
var __assign = (this && this.__assign) || Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
Object.defineProperty(exports, "__esModule", { value: true });
const fs = require("fs");
const is_ci_1 = require("is-ci");
const path = require("path");
const pkgDir = require("pkg-dir");
const readPkg = require("read-pkg");
const getScript_1 = require("./getScript");
const is_1 = require("./is");
const hookList = [
var fs = require("fs");
var is_ci_1 = require("is-ci");
var path = require("path");
var pkgDir = require("pkg-dir");
var readPkg = require("read-pkg");
var getScript_1 = require("./getScript");
var is_1 = require("./is");
var hookList = [
'applypatch-msg',

@@ -37,9 +45,9 @@ 'pre-applypatch',

// Get name, used for logging
const name = path.basename(filename);
var name = path.basename(filename);
// Check if hook exist
if (fs.existsSync(filename)) {
const hook = fs.readFileSync(filename, 'utf-8');
var hook = fs.readFileSync(filename, 'utf-8');
// Migrate
if (is_1.isGhooks(hook)) {
console.log(`migrating existing ghooks script: ${name} `);
console.log("migrating existing ghooks script: " + name + " ");
return writeHook(filename, script);

@@ -49,3 +57,3 @@ }

if (is_1.isPreCommit(hook)) {
console.log(`migrating existing pre-commit script: ${name}`);
console.log("migrating existing pre-commit script: " + name);
return writeHook(filename, script);

@@ -58,3 +66,3 @@ }

// Skip
console.log(`skipping existing user hook: ${name}`);
console.log("skipping existing user hook: " + name);
return;

@@ -66,7 +74,7 @@ }

function createHooks(filenames, script) {
filenames.forEach(filename => createHook(filename, script));
filenames.forEach(function (filename) { return createHook(filename, script); });
}
function canRemove(filename) {
if (fs.existsSync(filename)) {
const data = fs.readFileSync(filename, 'utf-8');
var data = fs.readFileSync(filename, 'utf-8');
return is_1.isHusky(data);

@@ -83,16 +91,16 @@ }

function getHooks(gitDir) {
const gitHooksDir = path.join(gitDir, 'hooks');
return hookList.map(hookName => path.join(gitHooksDir, hookName));
var gitHooksDir = path.join(gitDir, 'hooks');
return hookList.map(function (hookName) { return path.join(gitHooksDir, hookName); });
}
function getConf(huskyDir) {
const pkg = readPkg.sync(huskyDir);
const defaults = {
var pkg = readPkg.sync(huskyDir);
var defaults = {
skipCI: true
};
return Object.assign({ defaults }, pkg.husky);
return __assign({ defaults: defaults }, pkg.husky);
}
function install(gitDir, huskyDir) {
console.log('husky > setting up git hooks');
const userDir = pkgDir.sync(path.join(huskyDir, '..'));
const conf = getConf(userDir);
var userDir = pkgDir.sync(path.join(huskyDir, '..'));
var conf = getConf(userDir);
if (is_ci_1.default && conf.skipCI) {

@@ -107,12 +115,12 @@ console.log('CI detected, skipping Git hooks installation"');

if (path.join(userDir, '.git') !== gitDir) {
console.log(`Expecting package.json to be at the same level than .git, skipping Git hooks installation`);
console.log(`gitDir: ${gitDir}`);
console.log(`userDir: ${userDir}`);
console.log("Expecting package.json to be at the same level than .git, skipping Git hooks installation");
console.log("gitDir: " + gitDir);
console.log("userDir: " + userDir);
return;
}
// Create hooks
const hooks = getHooks(gitDir);
const script = getScript_1.default(userDir);
var hooks = getHooks(gitDir);
var script = getScript_1.default(userDir);
createHooks(hooks, script);
console.log(`husky > done`);
console.log("husky > done");
}

@@ -122,6 +130,6 @@ exports.install = install;

console.log('husky > uninstalling git hooks');
const userDir = pkgDir.sync(path.join(huskyDir, '..'));
var userDir = pkgDir.sync(path.join(huskyDir, '..'));
if (path.join(userDir, '.git') === gitDir) {
// Remove hooks
const hooks = getHooks(gitDir);
var hooks = getHooks(gitDir);
removeHooks(hooks);

@@ -128,0 +136,0 @@ }

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const getScript_1 = require("./getScript");
var getScript_1 = require("./getScript");
function isHusky(data) {

@@ -5,0 +5,0 @@ return data.indexOf(getScript_1.huskyIdentifier) !== -1;

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const _1 = require("./");
const status = _1.default(process.argv);
var _1 = require("./");
var status = _1.default(process.argv);
process.exit(status);
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const execa = require("execa");
const readPkg = require("read-pkg");
function default_1([, , hookName = ''], { cwd = process.cwd() } = {}) {
const pkg = readPkg.sync(cwd);
const command = pkg && pkg.husky && pkg.husky.hooks && pkg.husky.hooks[hookName];
const oldCommand = pkg && pkg.scripts && pkg.scripts[hookName.replace('-', '')];
var execa = require("execa");
var readPkg = require("read-pkg");
function default_1(_a, _b) {
var _c = _a[2], hookName = _c === void 0 ? '' : _c;
var _d = (_b === void 0 ? {} : _b).cwd, cwd = _d === void 0 ? process.cwd() : _d;
var pkg = readPkg.sync(cwd);
var command = pkg && pkg.husky && pkg.husky.hooks && pkg.husky.hooks[hookName];
var oldCommand = pkg && pkg.scripts && pkg.scripts[hookName.replace('-', '')];
try {
if (command) {
console.log(`husky > ${hookName} (node ${process.version})`);
execa.shellSync(command, { cwd, stdio: 'inherit' });
console.log("husky > " + hookName + " (node " + process.version + ")");
execa.shellSync(command, { cwd: cwd, stdio: 'inherit' });
return 0;

@@ -17,10 +19,10 @@ }

console.log();
console.log(`Warning: Setting ${hookName} script in package.json > scripts will be deprecated in v1.0`);
console.log(`Please move it to husky.hooks in package.json`);
console.log(`Or run ./node_modules/.bin/husky-upgrade for automatic update`);
console.log("Warning: Setting " + hookName + " script in package.json > scripts will be deprecated in v1.0");
console.log("Please move it to husky.hooks in package.json");
console.log("Or run ./node_modules/.bin/husky-upgrade for automatic update");
console.log();
console.log(`See https://github.com/typicode/husky/tree/dev for usage`);
console.log("See https://github.com/typicode/husky/tree/dev for usage");
console.log();
console.log(`husky > ${hookName} (node ${process.version})`);
execa.shellSync(oldCommand, { cwd, stdio: 'inherit' });
console.log("husky > " + hookName + " (node " + process.version + ")");
execa.shellSync(oldCommand, { cwd: cwd, stdio: 'inherit' });
return 0;

@@ -31,6 +33,6 @@ }

catch (e) {
const noVerifyMessage = hookName === 'prepare-commit-msg'
var noVerifyMessage = hookName === 'prepare-commit-msg'
? '(cannot be bypassed with --no-verify due to Git specs)'
: '(add --no-verify to bypass)';
console.log(`husky > ${hookName} hook failed ${noVerifyMessage}`);
console.log("husky > " + hookName + " hook failed " + noVerifyMessage);
return 1;

@@ -37,0 +39,0 @@ }

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const index_1 = require("./index");
var index_1 = require("./index");
index_1.default(process.cwd());
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const fs = require("fs");
const path = require("path");
const readPkg = require("read-pkg");
const hookList = {
var fs = require("fs");
var path = require("path");
var readPkg = require("read-pkg");
var hookList = {
applypatchmsg: 'applypatch-msg',

@@ -28,20 +28,20 @@ commitmsg: 'commit-msg',

function migrate(dir) {
const pkgFile = path.join(dir, 'package.json');
var pkgFile = path.join(dir, 'package.json');
if (fs.existsSync(pkgFile)) {
const pkg = readPkg.sync(dir, { normalize: false });
pkg.husky = { hooks: {} };
console.log(`husky > upgrading ${pkgFile}`);
Object.keys(hookList).forEach(name => {
const script = pkg.scripts[name];
var pkg_1 = readPkg.sync(dir, { normalize: false });
pkg_1.husky = { hooks: {} };
console.log("husky > upgrading " + pkgFile);
Object.keys(hookList).forEach(function (name) {
var script = pkg_1.scripts[name];
if (script) {
delete pkg.scripts[name];
const newName = hookList[name];
pkg.husky.hooks[newName] = script;
console.log(`moved scripts.${name} to husky.hooks.${newName}`);
delete pkg_1.scripts[name];
var newName = hookList[name];
pkg_1.husky.hooks[newName] = script;
console.log("moved scripts." + name + " to husky.hooks." + newName);
}
});
fs.writeFileSync(pkgFile, JSON.stringify(pkg, null, 2), 'utf-8');
console.log(`husky > done`);
fs.writeFileSync(pkgFile, JSON.stringify(pkg_1, null, 2), 'utf-8');
console.log("husky > done");
}
}
exports.default = migrate;
{
"name": "husky",
"version": "0.15.0-beta.11",
"version": "0.15.0-beta.12",
"description": "Prevents bad commit or push (git hooks, pre-commit/precommit, pre-push/prepush, post-merge/postmerge and all that stuff...)",

@@ -5,0 +5,0 @@ "scripts": {

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