Commit graph

873 commits

Author SHA1 Message Date
Rhys Arkins
21aa961264 feat: re-use node_modules per package file (#704)
tmpDir is now created once per-repository and package.json files are written and lockfiles generated based on the repo's directory structure. This way node_modules can be reused between branches in same run.

Closes #501
2017-08-22 06:28:46 +02:00
Rhys Arkins
2ca2e7c8ca fix: expand automerge string to fill all upgrade types (#714)
This makes for an uglier migration and potentially some redundancy, but is the only easy way to ensure that the migrated behaviour is definitely correct.

Fixes #713
2017-08-22 06:20:23 +02:00
renovate[bot]
6c2775c30b chore(deps): update dependency eslint to v4.5.0 2017-08-21 12:29:09 +00:00
Rhys Arkins
b657d3c291 feat: support lock file maintenance automerge (#712)
Refactored the `automerge` field to change it to boolean. Existing string will be migrated to new config. Automerging lock files is now possible by adding `”lockFileMaintenance”: { ”automerge”: true}` to config.

Closes #706
2017-08-21 13:41:48 +02:00
Rhys Arkins
f598c5f899 fix: do not automerge pr if it has been modified (#711)
Add check for pr.canRebase. This will be false if the PR has been modified.

Fixes #790
2017-08-21 11:17:47 +02:00
Rhys Arkins
cffbc00f65 fix: resolve all presets before merge (#710)
Previously, preset resolution was being done last, after merges of renoate.json or package.json config. This caused wrong ordering of config in cases where both presets + regular config was in use. Instead, resolving of presets is now done at each stage before merging.

Fixes #708
2017-08-21 10:19:48 +02:00
Rhys Arkins
71c49ecd77 fix: separate gh-got-retry to separate file (#705) 2017-08-20 09:49:39 +02:00
Rhys Arkins
e649d49615 fix: retry after github abuse trigger (#703) 2017-08-19 11:46:30 +02:00
Rhys Arkins
7490165cf3 chore: update renovate config to use presets (#695) 2017-08-19 07:38:48 +02:00
Rhys Arkins
841a3a189a tests: add advanced presets test (#702) 2017-08-19 07:31:36 +02:00
Rhys Arkins
d6c5aa6663 fix: info not warn for scoped package 404s (#701) 2017-08-19 07:01:21 +02:00
Rhys Arkins
68033a7040 fix: imply lerna packages dir if not in config (#700) 2017-08-19 06:50:53 +02:00
Rhys Arkins
d72dccfbe1 fix: do not resolve packageFile content (#698) 2017-08-18 21:01:08 +02:00
Rhys Arkins
26cdabe57e fix: array objects should be migrated (#697) 2017-08-18 19:47:13 +02:00
Rhys Arkins
573b434d2f fix: arrays of objects should be massaged (#696) 2017-08-18 19:24:27 +02:00
Rhys Arkins
7187821416 fix: hand-craft onboarding config string for better formatting (#694) 2017-08-18 12:56:48 +02:00
renovate[bot]
581e999364 chore(deps): update dependency mockdate to v2.0.2 (#691) 2017-08-18 12:36:51 +02:00
renovate[bot]
5305ae870b chore(deps): update dependency babel-plugin-transform-object-rest-spread to v6.26.0 2017-08-18 10:24:40 +00:00
Rhys Arkins
3265cbbb51 fix: onboarding packages should have : prefix (#693) 2017-08-18 10:29:27 +02:00
renovate[bot]
13f58c1da8 chore(deps): update dependency babel-cli to v6.26.0 2017-08-18 08:26:55 +00:00
renovate[bot]
1ab452c70c fix(deps): update dependency jsonwebtoken to v7.4.3 2017-08-18 07:24:09 +00:00
Rhys Arkins
ad40f0abd8 feat: shareable preset configs (#658)
This PR implements eslint-inspired shareable configs. With this feature, we:
- Add new config option "extends"
  * This is an array of preset config names that the current config or preset extends/inherits from
- Add new config option "description"
  * Each preset config should include a description of its functionality that is human-readable
- Provide a set of commonly use configs called "preset defaults"
- Provide two "full" preset configs: "app" and "library"
   * Almost the same but app pins *all* version numbers while library only pins devdependencies
- Replace regular config in onboarding with one of these two presets
- Generate human-readable description of config in Onboarding PR
- Support npm for hosting configs (both scoped and non-scoped)

Closes #657, Closes #671, Closes #647
2017-08-18 06:10:19 +02:00
Rhys Arkins
c28176e879 refactor: use logger const in repository worker (#685) 2017-08-17 12:33:21 +02:00
renovate[bot]
9aaf02f535 chore(deps): update dependency eslint-plugin-prettier to v2.2.0 (#682) 2017-08-17 12:19:13 +02:00
Rhys Arkins
c44bd198c7 fix: cast groupName to string in case it’s not (#684) 2017-08-17 11:24:22 +02:00
Rhys Arkins
f2f15c0650 fix: invalid schedule should only warn in logs (#683) 2017-08-17 11:22:30 +02:00
Rhys Arkins
ddb1629d9a fix: return massaged config from migrateAndValidate (#681)
* add massage test

* fix: return massaged config from migrateAndValidate
2017-08-15 13:26:05 +02:00
Rhys Arkins
3099bf9da1 fix: migrate last day of month schedule to first of month (#680) 2017-08-15 11:54:36 +02:00
Rhys Arkins
c120b7389d fix: migrate automerge=false to automerge=none (#678) 2017-08-15 09:30:40 +02:00
Rhys Arkins
06358e32c7 fix: print schedule text along with error message (#679)
* fix: print schedule text along with error message

* update test
2017-08-15 09:13:25 +02:00
Rhys Arkins
26bafe8d7a fix: massage “on every” to “every” in schedules (#677) 2017-08-15 07:18:45 +02:00
Rhys Arkins
c38e2cdcfe fix: wrap and warn non-array schedule (#676) 2017-08-14 22:16:28 +02:00
Rhys Arkins
4a82b7379d fix: better stringify yarn lock error message (#675) 2017-08-14 20:18:26 +02:00
Rhys Arkins
43660d51c4 feat: validate schedule (#674)
Also enables config errors to be shown in Configure Renovate PR.

Closes #550
2017-08-14 11:09:14 +02:00
Rhys Arkins
7970f62a7d feat: massage true/false strings to boolean (#673)
Closes #637
2017-08-14 07:49:33 +02:00
Rhys Arkins
e9f672060e fix: disable unpublish-safe default (#672)
It was a mistake to enable this feature by default, and should be disabled. A check has been made to set the status to “success” if it was previously “pending” and the setting is now false. This should also cover the case when someone enables it and then disables it.

Fixes #667
2017-08-14 06:27:00 +02:00
renovate[bot]
8784ab0b32 fix(deps): update dependency tmp to v0.0.33 2017-08-13 11:01:37 +00:00
Rhys Arkins
99e68cddd3 feat: process all package rules in parent->child order (#666) 2017-08-11 08:03:18 +02:00
Rhys Arkins
d27d35e535 feat: allow strings instead of lists (#665)
Updates definitions for schedule and package rules to allow strings to be massaged to lists - instead of erroring.

Closes #662
2017-08-11 07:29:16 +02:00
Rhys Arkins
88aaaccfb9 fix: don't detect semantic commits if config set globally (#664)
Fixes #656
2017-08-10 22:35:05 +02:00
Mike S
54e967d431 docs(faq): update packageRules examples (#663)
- Updated FAQ based on changes in #582
    - `packages` -> `packageRules`
2017-08-10 19:14:20 +02:00
Rhys Arkins
117316c0b1 fix: check current status check before setting (#655)
Fixes #649
2017-08-08 23:03:52 +02:00
renovate[bot]
2a5604ab6d chore(deps): update dependency eslint to v4.4.1 2017-08-08 18:10:53 +00:00
renovate[bot]
09c85a4427 fix(deps): update dependency chalk to v2.1.0 2017-08-08 06:00:54 +00:00
Rhys Arkins
ccb66310b1 feat: Pre-fetch all package.json files (#642)
Repository initialisation is refactored so that all package files and their content is retrieved up-front before an renovating begins. This allows us to know both how many package files as well as determine if there is renovate json in a package.json before triggering the onboarding PR.

Closes #634
2017-08-08 06:25:44 +02:00
Rhys Arkins
b369f670d6 fix: use baseBranch when branchName is null (#643)
Using fallback in function params only replaces if branchName is undefined but we also need to handle when it is `null`.
2017-08-07 10:51:17 +02:00
Rhys Arkins
57091a1cb4 fix: only concat parent list if non-null (#644) 2017-08-07 10:39:32 +02:00
Rhys Arkins
12e4b1eb90 fix: use fix(deps) for dependencies (#641) 2017-08-07 07:45:43 +02:00
singapore
f9c9f29936 chore: configure renovate pr creation = not-pending 2017-08-07 07:43:19 +02:00
Ika
126e2fdd49 docs(status-checks): fix typo in url (#639) 2017-08-07 05:21:00 +02:00