compatible with NPM 1.2.11 & onward