Commit graph

274 commits

Author SHA1 Message Date
Rhys Arkins
116939ffb5
feat: renovate node engine in package.json (#1519)
Adds support for upgrading `node` version in `package.json` > `engines` if the current version is pinned.
- Does not convert from range to pin
- Ignores ranges
- Does not upgrade major versions
2018-02-19 14:21:45 +01:00
Rhys Arkins
dd0a436fb2 fix: set prNotPendingHours to 25
Removes race condition between prNotPendingHours and unPublishSafe features.

Closes #1498
2018-02-12 07:55:08 +01:00
Rhys Arkins
94bcca0e8c fix: use details/summary for non-group Release Notes 2018-02-07 09:48:39 +01:00
Luca
95289592a0 chore: add -v parameter to cli (#1489)
NOTE: 
I followed this doc as from what I've seen in the discussion the desired arguments would be `--version` and `-v`, while `commander` uses `-V` as default. This is their suggested way of overwriting it.

https://github.com/tj/commander.js#version-option

Fixes #1469
2018-02-06 07:09:54 +01:00
Rhys Arkins
cecc606674 refactor: default endpoint to null 2018-02-03 07:23:24 +01:00
Rhys Arkins
c70c72f14b
feat: release notes in pull requests (sourced from github releases) (#1465)
Detects and embeds release notes found on GitHub when an npm dependency specifies a GitHub repository as its source and that repository has made use of the "Releases" feature.
2018-02-02 12:37:16 +01:00
Rhys Arkins
7afb693151 fix: update all pr body templates to use h1 headings 2018-02-02 10:56:40 +01:00
Rhys Arkins
360a640e40 fix: use v prefix for versions in PR bodies 2018-02-02 10:55:52 +01:00
Rhys Arkins
a008b1f1cd refactor: use h1 for pr headings 2018-02-02 10:49:27 +01:00
Rhys Arkins
e24aab2c04 fix: include release headings in pr body only if it has commits (group) 2018-02-02 10:45:20 +01:00
Rhys Arkins
139d6b237e fix: include release headings in pr body only if it has commits 2018-02-02 10:41:33 +01:00
Rhys Arkins
e533f96185 fix: escape depName as code in pr bodies 2018-02-01 08:30:44 +01:00
Rhys Arkins
e13e1abab7 fix: don’t escape versions in group pr body 2018-02-01 07:25:37 +01:00
Rhys Arkins
ad4b9feb92 feat: prConcurrentLimit
Adds a new feature to limit the number of concurrent branches/PRs to have open at any one time. Defaults to 0 (disabled), set it to a positive integer to enforce that limit.
2018-01-30 11:43:16 +01:00
Rhys Arkins
a09e9527ce fix: default peerDependencies to not pin Versions 2018-01-28 14:46:05 +01:00
Rhys Arkins
d66dea7ec3
feat: verify status check (GitHub) (#1444)
Adds a `renovate/verify` status check for those migrating and looking for familiarity. Better to check the GPG verified commit, as mentioned in the associated doc.
2018-01-25 13:36:21 +01:00
ctaepper
280e74fa9f feat: expose env to npmrc and npm/yarn/pnpm (#1407)
Adds a config option to bot administrators called `exposeEnv`, for cases where repositories are trusted. If set to true, the bot's full `process.env` can be used for `.npmrc` variable substitution and is passed to child processes when generating lock files. Disabled by default, including in the App.
2018-01-25 10:38:30 +01:00
Rhys Arkins
0925f59262
feat: versionStrategy (#1439)
Adds new config option `versionStrategy` that allows config to override Renovate’s autodetection of when to “widen” an existing semver range, and when to “replace”.
2018-01-24 15:26:37 +01:00
Rhys Arkins
1aad8ec053
feat: peerDependencies support (#1438)
Enables peerDependencies renovation by default, now that complex semver ranges can be upgraded.
2018-01-24 11:39:29 +01:00
Rhys Arkins
9504fb8abb
refactor: use handlebars triple escapes in templates (#1434)
This stops HTML substitution from occurring
2018-01-24 07:18:11 +01:00
otofu-square
f251969fab fix: correct typos in templates (#1423) 2018-01-22 11:17:00 +01:00
Rhys Arkins
3b13591ebc refactor: Add warning to Pin PRs that upgrade PRs will be held up
Closes #1380
2018-01-20 16:20:50 +01:00
Rhys Arkins
b72bfdf4ba
feat: bumpVersion (#1413)
Adds a new configuration option that allows you to bump the version number in the package.json being updated. e.g. you might configure Renovate to bump a patch every time, or maybe for dependencies only and not devDependencies. e.g. if you configure `"bumpVersion": "patch"` then a Renovate PR updating a `package.json` that used to be version `1.2.1` will now see it updated to `1.2.2` (in addition to the dependency version(s) being updated too). Thanks to @gunar for the feature suggestion.

Closes #861
2018-01-20 09:27:05 +01:00
Rhys Arkins
0204da0f97 chore: fix lint 2018-01-16 08:02:08 +01:00
Rhys Arkins
f56a0b5af8
fix: add repository to ignored validation fields 2018-01-16 07:58:58 +01:00
Rhys Arkins
b5db28b242 fix: propagate registry-failure errors to avoid config validation warnings
We don’t want npmjs 5xx errors to cause config validation Issues in repositories.

Closes #1388
2018-01-14 18:58:49 +01:00
Rhys Arkins
dba574950b
feat: baseBranches (multi-branch) support (#1379)
This PR adds the capability to renovate more than one base branch at a time. For instance, a project may have their released `3.x` version on `master`, while an upcoming `4.x` is being prepared using branch `next`. `4.x` might have a quite different set of dependencies (e.g. some removed or some added) so it's not appropriate to only target `master` and keep rebasing, as it will get messy. Instead, it's necessary to target both `master` and `next` to keep both updated.

Closes #1279
2018-01-12 07:47:18 +01:00
Rhys Arkins
2dcb2a70d8 feat: prHourlyLimit
Adds a feature to enforce an hourly limit on PR creations.

Closes #1363
2018-01-11 11:56:16 +01:00
Rhys Arkins
2925c0d9a7 feat: automatically group @types companion packages
By stripping ‘types/ from the branch name, package x and @types/x then become automatically combined in the same PR. We then massage it a little to ensure the decription for the non-types package is used, and a note added saying that types is included.

Closes #1365
2018-01-10 15:35:14 +01:00
Rhys Arkins
72745b6b13 fix: add full npmjs scope when migrating npmToken
commit 7e15d3d488c927df2f11f728f35d493e2821477d
Author: Rhys Arkins <rhys@arkins.net>
Date:   Wed Jan 10 14:26:44 2018 +0100

    Revert "refactor: use _auth= when migrating npm tokens"

    This reverts commit 4a2fdd0477.
2018-01-10 14:27:19 +01:00
Rhys Arkins
ba029d55e3 fix: set pathRules to be mergeable 2017-12-29 15:13:50 +01:00
Rhys Arkins
f8a10a9f4c feat: pathRules
Adds new configuration option “pathRules”. pathRules is an array of path rules. Each rule should contain a “paths” array which uses string or glob matching like the existing ignorePaths. If any of the paths in a rule matches a packageFile then the remaining configuration from the rule is applied to the packageFile.
2017-12-29 15:06:28 +01:00
Rhys Arkins
35d7a63d00 docs: add warning about config.js and extends 2017-12-26 06:28:28 +01:00
Rhys Arkins
6c49ba177e docs: correlate website configuration documentation with source code
This PR adds new checks that:
- Website configuration options are listed in alphabetical order
- Every relevant configuration option in source code is documented on the website
Website docs have been updated accordingly to pass.

Closes #543, Closes #1310
2017-12-26 05:40:14 +01:00
Rhys Arkins
2720688f4c feat: commit body
This PR adds the configuration option “commitMessageBody”. The contents of this will be appended to the commitMessage, separated by two line returns.
2017-12-25 20:37:14 +01:00
Rhys Arkins
4ec85ad818
feat: use version in pr title for synchronised groups (#1333)
Now, if every upgrade in a group has the same new version, then the PR title will include this version.

Closes #1332
2017-12-24 11:14:34 +01:00
Rhys Arkins
1e4bebe627 refactor: use update instead of renovate prefix in group pr titles and commit messages
Closes #1314
2017-12-20 21:15:30 +01:00
Ed Morley
709a68c7ae fix: increase prNotPendingHours default to 24 hours (#1316)
To prevent PRs being opened prior to the `unpublishSafe` check having
transitioned from `pending` to `success`, when using `not-pending`
mode.

Fixes #1312.
2017-12-20 06:47:20 +01:00
Ed Morley
312e164746 fix: remove duplicate 'onboarding' config definition (#1309)
Since it's already defined higher up in the file:
48a2d2de8e/lib/config/definitions.js (L67-L73)
2017-12-18 16:00:09 +01:00
Rhys Arkins
5243c01230 fix: don’t use v prefix in commit message if range 2017-12-18 12:39:59 +01:00
Rhys Arkins
eeefc3c8f3
feat: stop and raise error if repository is misconfigured (#1302)
This PR updates Renovate to detect config validation problems and (1) stop processing, and (2) either raise an Issue if already onboarded, or (2) update the onboarding PR to reflect the error if still onboarding.

Closes #1300
2017-12-18 09:39:52 +01:00
Rhys Arkins
c5a420711b fix: Revert "feat: support mergeable strings in config for npmrc"
This reverts commit 4f65356ba4.

I will attempt to merge npmrc configs a different way, as npm itself does not support merging cascaded configs (it finds the most specific one and just uses it).
2017-12-15 09:15:20 +01:00
Rhys Arkins
c98faa2b34 refactor: default bazel to enabled 2017-12-14 13:19:30 +01:00
Rhys Arkins
b5b714d4b5
fix: writeToken -> forkToken (#1295)
Rename writeToken to forkToken to make it clearer. This enables GitHub API to use one token for all reads, and another token just for writing to the forked repository.
2017-12-14 11:47:00 +01:00
Rhys Arkins
4f65356ba4 feat: support mergeable strings in config for npmrc 2017-12-14 09:56:52 +01:00
Rhys Arkins
4a2fdd0477 refactor: use _auth= when migrating npm tokens 2017-12-14 09:49:50 +01:00
Rhys Arkins
794e149179 refactor: ignore bower_components by default 2017-12-14 06:35:12 +01:00
Rhys Arkins
bbb700c54d feat: add github writeToken capability in github wrapper 2017-12-12 14:54:09 +01:00
Rhys Arkins
18c41df5c1
refactor: fix up config definitions (#1291)
- Remove duplicate autodiscover (fixes #1290)
- Remove npm.pin.automerge=true
2017-12-11 22:26:59 +01:00
Rhys Arkins
cb8fd6b4ed
feat: fork mode (#1287)
This PR adds the capability to run Renovate in a new "fork mode". This new mode must be configured by the Renovate admin, and cannot be configured within repositories themselves (for now). Example use: `renovate --autodiscover --fork-mode`

In this mode: 
* Renovate will fork the repository if necessary (first run only)
* If the fork already existed, Renovate will ensure that its base branch is up to date with the source repository's
 * Branches will be created within the fork, PRs will be created in the source
2017-12-11 19:14:51 +01:00