@putout/plugin-package-json

7.2.0 • Public • Published

@putout/plugin-package-json NPM version

🐊Putout plugin helps to automate fixing package.json.

Install

npm i @putout/plugin-package-json -D

Rules

{
    "rules": {
        "package-json/add-type": "on",
        "package-json/remove-nyc": "on",
        "package-json/remove-commit-type": "on",
        "package-json/find-file": "off"
    }
}

add-type

Add type field to package.json:

{
    "name": "hello",
    "version": "1.0.0",
+   "type": "commonjs"
}

remove-nyc

  • additional fields in package.json produces more traffic then users of your package really need;
  • c8 uses same config name and format so transition between tools will be much easier;

❌ Example of incorrect code

nyc section in package.json:

{
    "nyc": {
        "check-coverage": "on",
        "all": "on",
        "exclude": [
            "**/*.spec.js",
            "**/fixture",
            "test",
            ".*.js"
        ],
        "branches": 100,
        "lines": 100,
        "functions": 100,
        "statements": 100
    }
}

✅ Example of correct code

File .nycrc.json:

{
    "check-coverage": "on",
    "all": "on",
    "exclude": [
        "**/*.spec.js",
        "**/fixture",
        "test",
        ".*.js"
    ],
    "branches": 100,
    "lines": 100,
    "functions": 100,
    "statements": 100
}

remove-commit-type

Since 🎁Wisdom v14 commitType set to colon be default, so it can be dropped from package.json if it's value not paren: Check out in 🐊Putout Editor.

{
    "name": "hello",
    "version": "1.0.0",
    "commitType": "colon"
}

find-file

Find package.json inside of .filesystem.json and applies all other package-json rules. Checkout in 🐊Putout Editor.

{
    "name": "hello",
    "version": "1.0.0",
+   "type": "commonjs"
}

License

MIT

Package Sidebar

Install

npm i @putout/plugin-package-json

Weekly Downloads

5,166

Version

7.2.0

License

MIT

Unpacked Size

7.67 kB

Total Files

9

Last publish

Collaborators

  • coderaiser