package.json 对于 Node.js 应用来说是一个不可或缺的文件,它存储了该 Node.js 应用的名字、版本、描述、作者、入口文件、脚本、版权等等信息。npm 官网有 package.json 每个字段的详细介绍:https://docs.npmjs.com/files/package.json

2.5.1 semver

语义化版本(semver)即 dependencies、devDependencies 和 peerDependencies 里的如:"co": "^4.6.0"

semver 格式:主版本号.次版本号.修订号。版本号递增规则如下:

  • 主版本号:做了不兼容的 API 修改
  • 次版本号:做了向下兼容的功能性新增
  • 修订号:做了向下兼容的 bug 修正

更多阅读:

  1. http://semver.org/lang/zh-CN/
  2. http://taobaofed.org/blog/2016/08/04/instructions-of-semver/

作为 Node.js 的开发者,我们在发布 npm 模块的时候一定要遵守语义化版本的命名规则,即:有 breaking change 发大版本,有新增的功能发小版本,有小的 bug 修复或优化则发修订版本。