Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I add comments to package.json for npm install?

Tags:

comments

npm

I've got a simple package.json file and I want to add a comment. Is there a way to do this, or are there any hacks to make this work?

{   "name": "My Project",   "version": "0.0.1",   "private": true,   "dependencies": {     "express": "3.x",     "mongoose": "3.x"   },   "devDependencies" :  {     "should": "*"     /* "mocha": "*" not needed as should be globally installed */   } } 

The example comment above doesn't work as npm breaks. I've also tried // style comments.

like image 955
Will Shaver Avatar asked Jan 08 '13 18:01

Will Shaver


People also ask

Can you put comments in package json?

You can find most of the possible ways to add comments to JSON in the linked article. This will be a good way for adding comments to your package. json file if you maintain a good structure of your comments preferably close to the structure of your package. json file itself.

How do I put comments in a JSON file?

Can I add a comment in JSON? No, JSON is a data-only format. Comments in the form //, #, or /* */, which are used in popular programming languages, are not allowed in JSON. You can add comments to JSON as custom JSON elements that will hold your comments, but these elements will still be data.

Does npm install add to package json?

When you (or another user) run npm install , npm will download dependencies and devDependencies that are listed in package. json that meet the semantic version requirements listed for each.

Does npm install modify package json?

npm ci will install packages based on package-lock. json file and if the file does not exist or does not match the packages specified in the package. json it will throw an error and fail.


1 Answers

This has recently been discussed on the Node.js mailing list.

According to Isaac Schlueter who created npm:

... the "//" key will never be used by npm for any purpose, and is reserved for comments ... If you want to use a multiple line comment, you can use either an array, or multiple "//" keys.

When using your usual tools (npm, yarn, etc.), multiple "//" keys will be removed. This survives:

{ "//": [   "first line",   "second line" ] } 

This will not survive:

{ "//": "this is the first line of a comment",   "//": "this is the second line of the comment" } 
like image 77
Igor Soarez Avatar answered Sep 28 '22 19:09

Igor Soarez