Commit Graph

194 Commits (v10.1.1)

Author SHA1 Message Date
Rhys Arkins 1e5a5cab79
refactor: move config globals inside functions ()
This was necessary when attempting to use jest mock all
2017-11-03 07:43:26 +01:00
Rhys Arkins c157e747cf
fix: use major version in pr title for docker tag updates () 2017-11-02 15:13:56 +01:00
Rhys Arkins 58784fc958 feat: add renovateFork option
99% of the time we should not Renovate forked repositories. Previously, we skipped onboarding them unless a renovate.json was present. However, that meant that if someone forked a repository where the source was using Renovate, then the fork gets renovated automatically too. After this change, forked repositories need to set renovateFork=true in their renovate.json

Closes 

BREAKING CHANGE: Forked repositories now need to configure renovateFork=true in renovate.json
2017-11-01 13:13:55 +01:00
Rhys Arkins aada8f0b73 feat: support globs in ignorePaths ()
Renovate will now check ignorePaths values for either (a) a string match, or (b) glob pattern. e.g. a string of ‘node_modules/‘ will ignore ‘node_modules/foo/package.json’ and ‘backend/node_modules/foo/package.json’ but it will also ignore ‘not_node_modules/foo/package.json` too. Therefore a blog pattern of `**/node_modules/**` is superior.

Closes 

BREAKING CHANGE: ignorePaths now supports globs and may match more than before, but that’s probably a good thing.
2017-11-01 13:13:55 +01:00
Rhys Arkins af75504e20 feat: deprecate github app ()
BREAKING CHANGE: GitHub *App* support code has been removed from within this repository.
2017-11-01 13:13:55 +01:00
Rhys Arkins 138d99a04f feat: default lockFileMaintenance to disabled ()
Closes 

BREAKING CHANGE: lock file maintenance is now disabled by default.
2017-11-01 13:13:55 +01:00
Rhys Arkins 950c65f827 feat: default pinVersions to null (autodetect) ()
By defaulting pinVersions to null, this allows Renover to autodetect on a per-package file basis. Users may still manually configure (override autodetection) pinning enabled or disabled via config.

Closes 

BREAKING CHANGE: Renovate will no longer default to pinning versions - instead it will autodetect whether to pin, unless overrided.
2017-11-01 13:13:55 +01:00
Rhys Arkins f3273618b2
fix: add uniqueness to docker-digest pr title ()
Use first 6 chars of sha256 digest in PR title to ensure uniqueness and not block future digest updates.

Closes 
2017-10-27 23:33:55 +02:00
Rhys Arkins c972086f2d fix: improve docker templates for pin/digest/upgrade () 2017-10-25 09:57:57 +02:00
Rhys Arkins 3960da6e38 refactor: use manager subdirectory for grouping () 2017-10-24 13:12:44 +02:00
Rhys Arkins fbf0824dd8 refactor: rename lib/api to lib/registry ()
docker and npm
2017-10-24 10:40:47 +02:00
Rhys Arkins 01fedc7e0c refactor: move github and gitlab api to platform () 2017-10-24 10:27:17 +02:00
Rhys Arkins 435478864e feat: renovate docker tag major/minor versions ()
This feature enables docker tag "upgrading". Examples:
- From `node:6` to `node:8`
- From `node:6.10` to `node:6.11`
- From `node:6.11.1` to `node:6.11.3`
- From `node:6.10-onbuild` to `node:6.11-onbuild`
Currently these are disabled by default so they are opt-in, you can enable them by setting e.g. `{ docker: { minor: { enabled: true }, major: { enabled: true }}`

Closes 
2017-10-24 06:36:52 +02:00
Rhys Arkins 7dd8bf13be refactor: add pinDigests configuration option for docker () 2017-10-24 05:33:03 +02:00
Rhys Arkins db05a259e0 refactor: improve docker pin templates () 2017-10-24 05:24:15 +02:00
Rhys Arkins 9c16565a2d feat: enable docker by default ()
Docker does now not need to be explicitly enabled.

Closes 
2017-10-23 13:59:33 +02:00
Rhys Arkins b2f35fef44 fix: do not delete semantic commits when migrating () 2017-10-23 13:06:09 +02:00
Rhys Arkins 827b9af7ef refactor: use deepcopy for migrate and massage () 2017-10-23 12:56:11 +02:00
Rhys Arkins 826753e329 fix: migrate null schedule to [] () 2017-10-23 09:14:50 +02:00
Rhys Arkins 50295417d4 fix: don’t prefix ranges with v in pr body () 2017-10-21 15:15:22 +02:00
Rhys Arkins 636c7d17de feat: skip group name if all depNames are the same ()
This commonly applies to monorepos where the same dependency may be present in multiple.json files. Instead of using the group name to describe the PR, it uses the dependency name.

Closes 
2017-10-21 07:46:47 +02:00
Rhys Arkins 622116f7e0 feat: migrate boolean config objects to enabled true/false () 2017-10-20 13:15:00 +02:00
Rhys Arkins aba27eb757 feat: enable meteor by default ()
Renovate will now check for and update meteor package.js files unless explicitly *disabled*.
2017-10-20 07:04:04 +02:00
Rhys Arkins 1146cfbfe4 fix: pin prs should recreate closed () 2017-10-19 13:10:59 +02:00
Rhys Arkins 665ede8475 fix: migrate excludedPackageNames to excludePackageNames () 2017-10-17 11:16:02 +02:00
Rhys Arkins e1599073d0 fix: migrate ‘ every day’ schedule to empty () 2017-10-14 07:03:44 +02:00
Rhys Arkins 1a174226ed feat: keep branches/PRs updated when out of schedule ()
By default, Renovate will now continue *updating* - but not creating - branches even if off-schedule. This applies to features such as (a) rebasing branches if master changes, (b) updating if new version comes, (c) creating PRs if tests pass, (d) automerging. It is planned that (b) will be configurable in a future feature. To disable this behaviour altogether, set updateNotScheduled to false.

Closes 
2017-10-13 06:42:17 +02:00
Rhys Arkins f91aa14235 fix: cast automerge migration values () 2017-10-12 21:15:10 +02:00
Rhys Arkins c15cfb6406 fix: refactor package file detection to not modify deep state () 2017-10-12 20:02:04 +02:00
Rhys Arkins 19949f2604 fix: migrate automergeMajor automergeMinor automergePatch ()
This is a misconfiguration by a user but no harm in adding it to migrations.
2017-10-12 18:55:46 +02:00
Rhys Arkins 68bcb5e726 fix: convert for loop to for..of ()
* fix: convert for loop to for..of

* chore: lessen preset debugging

* chore: set detectPackageFiles to debug

* fix lint
2017-10-11 18:54:09 +02:00
Rhys Arkins bf2491bfc1 fix: don’t automerge pinned dependencies () 2017-10-11 16:20:17 +02:00
Rhys Arkins 83ecc08541 fix: add commitMessage for pin groups ()
Fixes 
2017-10-11 13:10:12 +02:00
Rhys Arkins df52f68b3e chore: add npm config to definitions 2017-10-11 12:10:31 +02:00
Rhys Arkins 5ad377655f fix: don’t group lockFileMaintenance update ()
Setting lockFileMaintenance.groupName =  null will prevent the case where the user configures a repository groupName like “all” and then that group inherits the schedule of lock file maintenance. Instead, there will be renovate/all and renovate/lock-file-maintenance.

Fixes 
2017-10-05 11:07:15 +02:00
Rhys Arkins e42b4034eb feat: sanitize branch names ()
Previously, you might see branch names like `renovate/@types/jquery-3.x`. Now, such branches will instead be like `renovate/types-jquery-3.x`.
2017-10-02 11:38:42 +02:00
Rhys Arkins b689509eb2 fix: don’t error if packageFile configured () 2017-09-29 09:36:14 +02:00
Rhys Arkins 8125c772ae feat: ignoreNpmrcFile ()
This feature adds support for ignoring .npmrc files in a repository. Set config option to true if you wish to ignore.

Closes 
2017-09-29 08:22:22 +02:00
Rhys Arkins 43bff1ee54 fix: improve every xday schedule migration ()
Fixes 
2017-09-28 19:42:33 +02:00
renovate[bot] f8589fa836 chore(deps): update dependency prettier to v1.7.0 ()
* chore(deps): update dependency prettier to v1.6.1

* chore(deps): update dependency prettier to v1.7.0

* run lint
2017-09-15 20:20:25 +02:00
renovate[bot] cfc6c5ccdf fix: update dependency eslint-config-airbnb-base to v12 ()
* chore(deps): update dependency eslint-config-airbnb-base to v12.0.0

* fix lint
2017-09-15 19:46:25 +02:00
Rhys Arkins a88ba0d16a feat: Dockerfile digest support ()
This feature adds initial support for renovating Dockerfiles. Renovate now:
- Detects all `Dockerfile`s in repo
- Searches for `FROM x` in first non-comment line, breaks x into image, tag, digest
- Queries public Docker registry for image:tag combination to find latest digest
- Patches Dockerfile if necessary
- Creates branches/PRs as like with npm

Closes 
2017-09-14 09:31:36 +02:00
Rhys Arkins dd6f3630b6 refactor: move pin config to definitions () 2017-09-13 20:52:07 +02:00
Rhys Arkins d6a45e5f47 fix: handle null child config in merge () 2017-09-13 20:29:20 +02:00
Rhys Arkins d765b34c33 feat: renovate meteor package.js dependencies ()
This feature adds support for renovating Meteor's `package.js` files. Meteor config is disabled by default so must be manually enabled to work. If enabled, Renovate uses GitHub's search API to look for any files named `package.js` that include the text `Npm.depends`. If so then the file is parsed using Regex to extract its dependencies and check them for updates.

Closes 
2017-09-12 09:33:41 +02:00
Rhys Arkins 1a395a3dd9 fix: fix and improve schedule migrations ()
* fix: migrate “every xday” to “on xday”

* fix: do not migrate before and after if before is after after

e.g. do not migrate “after 1am and before 5am”
2017-09-01 11:27:54 +02:00
Rhys Arkins c889f2eec0 fix: don’t massage encrypted npm token () 2017-09-01 07:43:49 +02:00
Rhys Arkins 6c0d50703f feat: encrypted configuration strings ()
A new config object `encrypted` can be defined at any level and contain encrypted configuration strings. Initial use is for encrypting an npm token for use with the hosted renovate app.

Closes 
2017-09-01 06:45:51 +02:00
Rhys Arkins 16d36a15e2 feat: add npmToken, npmrc and yarnrc configuration support ()
Renovate config can now support the fields `npmToken`, `npmrc` and `yarnrc`. `npmrc` and `yarnrc` (note no `.` prefix) can be used as an alternative to checking the respective files into the repo and have the same effect. `npmToken` is a shorter alternative and allows for just the npm token to be added, defaulting to the public npm registry.
2017-08-29 09:25:44 +02:00
Rhys Arkins deac76b015 feat: support timeout for pr creation = not-pending ()
We should not leave the PR unopened forever if the branch remains in not-pending state too long. Some status checks may leave the status as “pending” instead of “failed”. Defaults to 12 hours but is configurable.

Closes 
2017-08-28 11:37:09 +02:00