diff --git a/website/docs/_posts/2017-10-05-configuration-options.md b/website/docs/_posts/2017-10-05-configuration-options.md index c7f3b45a4b79dad061a98912d6a71483c4e2d2ba..21d197796a76eaac7b7689b9e201d119bded8e6c 100644 --- a/website/docs/_posts/2017-10-05-configuration-options.md +++ b/website/docs/_posts/2017-10-05-configuration-options.md @@ -735,11 +735,9 @@ Whether to convert ranged versions in `package.json` to pinned versions. | name | value | | ------- | ------- | | type | boolean | -| default | true | - -This is a very important feature to consider, because not every repository's requirements are the same. Although Renovate's default value for pinVersions is `true` - i.e. pin versions of all dependencies, there are cases where you may want to keep ranges, for example if your project is a web library that is consumed by others. In that case, you may wish to keep ranges for `dependencies` but pin versions for `devDependencies`, for example. +| default | null | -When creating the onboarding PR, Renovate will try to detect the best setting for `pinVersions` and apply that in the `renovate.json` file. In most cases it will suggest pinning `devDependencies` and ranges for everything else, however if a repository's `package.json` files are flagged as `private` then Renovate will recommend pinning all dependencies. +This is a very important feature to consider, because not every repository's requirements are the same. The default value for this field is `null`, which means Renovate attempts to autodetect what's best for the project. `devDependencies` in `package.json` will alway be pinned, but `dependencies` will only be pinned if the package is `private` or has no `main` entry defined - both indicators that it is not intended to be published and consumed by other packages. If you wish to override this autodetection you can configure `pinVersions` either at the top level or within configuration objects such as `dependencies` or `devDependencies`. ## prBody