Skip to content

packageManagerValidity

Enforces that the packageManager property is valid.

✅ This rule is included in the package-json logical presets.

This rule checks that the packageManager property is a string in name@version form. Supported package manager names are npm, pnpm, yarn, bun, and deno. The version should be a valid semver version.

5<3{d ivclassNa="meec-li">nt< sp ansty="le--0:#7FDBCA;--1:#096E">72"packageManage53<: sp ansty="le--0:#D9F5DD;--1:#1111">1<1"sp ansty="le--0:#C789D6;--1:#7C56">86pn1<1"d ivclassNa="meec-li">5<3}d ivclassNa="meco"><}d>5<3{d ivclassNa="meec-li">nt< sp ansty="le--0:#7FDBCA;--1:#096E">72"packageManage53<: sp ansty="le--0:#D9F5DD;--1:#1111">1<1"sp ansty="le--0:#C789D6;--1:#7C56">86pip@1.2<.3sp ansty="le--0:#D9F5DD;--1:#1111">1<1"d ivclassNa="meec-li">5<3}d ivclassNa="meco"><}d>5<3{d ivclassNa="meec-li">nt< sp ansty="le--0:#7FDBCA;--1:#096E">72"packageManage53<: sp ansty="le--0:#D9F5DD;--1:#1111">1<1"sp ansty="le--0:#C789D6;--1:#7C56">86pnpm@late1<1"d ivclassNa="meec-li">5<3}d ivclassNa="meco"><}d>
3de6E72"packageMana3F<53: spans="tyle--0:#D9F5DD;--1:#11">1<111" spans="tyle--0:#C789D6;--1:#7C">5686pnpm@10<.3.0 spans="tyle--0:#D9F5DD;--1:#11">1<111 "divclass="Nameec-">3<0"><}di vdivclass="Nameexpressive-">3de6E72"packageMana3F<53: spans="tyle--0:#D9F5DD;--1:#11">1<111" spans="tyle--0:#C789D6;--1:#7C">5686pnpm@10.3.0+sha224.953c8233f7a92884eee2de69a1b92d1f2ec1655e66d08071ba9a<02fa spans="tyle--0:#D9F5DD;--1:#11">1<111 "divclass="Nameec-">3<}di vdivclass="Nameexpressive-">3de6E72"packageMana3F<53: spans="tyle--0:#D9F5DD;--1:#11">1<111" spans="tyle--0:#C789D6;--1:#7C">5686yarn@4<.5.1 spans="tyle--0:#D9F5DD;--1:#11">1<111 "divclass="Nameec-">3<1">

If you don’t need compliance with npm’s packageManager field specification, you can disable this rule. For example, if your package manager uses non-semver release labels in this field, this rule may not be correct for you.