UNPKG

release-checker

Version:
52 lines (51 loc) 1.82 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var read_package_json_1 = require("../../utils/read-package-json"); exports.packageJsonChecker = { canRun: function () { return true; }, cliOption: '--package.json', id: 'package-json-checker', run: function () { return validate(); }, shortCliOption: '-p', statusToDisplayWhileValidating: 'Checking that package.json file exists and is valid', }; function validate() { var validationsErrorsAndWarnings = []; read_package_json_1.ensureThat('package.json') .inDirectory(process.cwd()) .canBeRead() .asString(); read_package_json_1.ensureThat('package.json') .inDirectory(process.cwd()) .canBeRead() .asJson(); var pkg = read_package_json_1.read('package.json') .inDirectory(process.cwd()) .asJson(); if (pkg.name === undefined) { validationsErrorsAndWarnings.push({ reason: 'package.json has no name defined', severity: 'error', }); } if (pkg.version === undefined) { validationsErrorsAndWarnings.push({ reason: 'package.json has no version defined', severity: 'error', }); } warnOnPrepublishScript(validationsErrorsAndWarnings); return validationsErrorsAndWarnings; } function warnOnPrepublishScript(validationErrorsAndWarnings) { var currentFolder = process.cwd(); if (read_package_json_1.jsonPackage() .inDirectory(currentFolder) .hasScript('prepublish')) { validationErrorsAndWarnings.push({ reason: 'Consider to rename the "prepublish" script in package.json to "prepublishOnly"', severity: 'warning', }); } } exports.warnOnPrepublishScript = warnOnPrepublishScript;