Commit Graph

350 Commits (v9.45.2)

Author SHA1 Message Date
Rhys Arkins 52b2de3bdb fix: equalize carriage returns before comparing lock files ()
Eliminating one more possibility for 
2017-08-22 10:46:27 +02:00
Rhys Arkins 238a72b1eb fix: only migrate known strings for automerge ()
Leave the rest to error.
2017-08-22 08:12:42 +02:00
Rhys Arkins 21aa961264 feat: re-use node_modules per package file ()
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 
2017-08-22 06:28:46 +02:00
Rhys Arkins 2ca2e7c8ca fix: expand automerge string to fill all upgrade types ()
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 
2017-08-22 06:20:23 +02:00
Rhys Arkins b657d3c291 feat: support lock file maintenance automerge ()
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 
2017-08-21 13:41:48 +02:00
Rhys Arkins f598c5f899 fix: do not automerge pr if it has been modified ()
Add check for pr.canRebase. This will be false if the PR has been modified.

Fixes 
2017-08-21 11:17:47 +02:00
Rhys Arkins cffbc00f65 fix: resolve all presets before merge ()
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 
2017-08-21 10:19:48 +02:00
Rhys Arkins 71c49ecd77 fix: separate gh-got-retry to separate file () 2017-08-20 09:49:39 +02:00
Rhys Arkins e649d49615 fix: retry after github abuse trigger () 2017-08-19 11:46:30 +02:00
Rhys Arkins d6c5aa6663 fix: info not warn for scoped package 404s () 2017-08-19 07:01:21 +02:00
Rhys Arkins 68033a7040 fix: imply lerna packages dir if not in config () 2017-08-19 06:50:53 +02:00
Rhys Arkins d72dccfbe1 fix: do not resolve packageFile content () 2017-08-18 21:01:08 +02:00
Rhys Arkins 26cdabe57e fix: array objects should be migrated () 2017-08-18 19:47:13 +02:00
Rhys Arkins 573b434d2f fix: arrays of objects should be massaged () 2017-08-18 19:24:27 +02:00
Rhys Arkins 7187821416 fix: hand-craft onboarding config string for better formatting () 2017-08-18 12:56:48 +02:00
Rhys Arkins 3265cbbb51 fix: onboarding packages should have : prefix () 2017-08-18 10:29:27 +02:00
Rhys Arkins ad40f0abd8 feat: shareable preset configs ()
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 , Closes , Closes 
2017-08-18 06:10:19 +02:00
Rhys Arkins c28176e879 refactor: use logger const in repository worker () 2017-08-17 12:33:21 +02:00
Rhys Arkins c44bd198c7 fix: cast groupName to string in case it’s not () 2017-08-17 11:24:22 +02:00
Rhys Arkins f2f15c0650 fix: invalid schedule should only warn in logs () 2017-08-17 11:22:30 +02:00
Rhys Arkins ddb1629d9a fix: return massaged config from migrateAndValidate ()
* 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 () 2017-08-15 11:54:36 +02:00
Rhys Arkins c120b7389d fix: migrate automerge=false to automerge=none () 2017-08-15 09:30:40 +02:00
Rhys Arkins 06358e32c7 fix: print schedule text along with error message ()
* 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 () 2017-08-15 07:18:45 +02:00
Rhys Arkins c38e2cdcfe fix: wrap and warn non-array schedule () 2017-08-14 22:16:28 +02:00
Rhys Arkins 4a82b7379d fix: better stringify yarn lock error message () 2017-08-14 20:18:26 +02:00
Rhys Arkins 43660d51c4 feat: validate schedule ()
Also enables config errors to be shown in Configure Renovate PR.

Closes 
2017-08-14 11:09:14 +02:00
Rhys Arkins 7970f62a7d feat: massage true/false strings to boolean ()
Closes 
2017-08-14 07:49:33 +02:00
Rhys Arkins e9f672060e fix: disable unpublish-safe default ()
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 
2017-08-14 06:27:00 +02:00
Rhys Arkins 99e68cddd3 feat: process all package rules in parent->child order () 2017-08-11 08:03:18 +02:00
Rhys Arkins d27d35e535 feat: allow strings instead of lists ()
Updates definitions for schedule and package rules to allow strings to be massaged to lists - instead of erroring.

Closes 
2017-08-11 07:29:16 +02:00
Rhys Arkins 88aaaccfb9 fix: don't detect semantic commits if config set globally ()
Fixes 
2017-08-10 22:35:05 +02:00
Rhys Arkins 117316c0b1 fix: check current status check before setting ()
Fixes 
2017-08-08 23:03:52 +02:00
Rhys Arkins ccb66310b1 feat: Pre-fetch all package.json files ()
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 
2017-08-08 06:25:44 +02:00
Rhys Arkins b369f670d6 fix: use baseBranch when branchName is null ()
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 () 2017-08-07 10:39:32 +02:00
Rhys Arkins 12e4b1eb90 fix: use fix(deps) for dependencies () 2017-08-07 07:45:43 +02:00
Ika 126e2fdd49 docs(status-checks): fix typo in url () 2017-08-07 05:21:00 +02:00
Rhys Arkins d7a6bbe367 feat: unpublish-safe status check ()
Renovate now adds a status check renovate/unpublish-safe that has the following behaviour:
If any upgrade in the branch is < 24 hours old then the status check state is "pending"
If all upgrades in the branch are 24 hours or more old then the status check state is "success"
This is able to be disabled via a new option "unpublishSafe".

Closes 
2017-08-06 15:38:10 +02:00
Rhys Arkins cfa495da61 feat: support package rule merging ()
packageRules are now mergeable between parent and child. Child rules will be placed before parent rules.

Closes 
2017-08-06 06:41:45 +02:00
Rhys Arkins ae38fd5d06 fix: return false after successful branch automerge ()
This prevents attempts to view the PR or check branch status again.

Fixes 
2017-08-06 06:36:04 +02:00
Hutson Betts 4b60bb2d17 fix(gitlab): only fetch projects user belongs to ()
Fixes 
2017-08-05 21:53:22 +02:00
Rhys Arkins d484f9bf8b fix: add yarnCacheFolder to removedOptions () 2017-08-05 07:48:12 +02:00
Rhys Arkins 99ac394305 fix: lock file generation logger errors () 2017-08-05 06:49:05 +02:00
Rhys Arkins 6d688412b4 fix: parse/stringify lockfile error messages () 2017-08-05 06:20:54 +02:00
Rhys Arkins a1e1b1770f fix: log full package lock generation error () 2017-08-05 05:53:24 +02:00
Rhys Arkins cb3c4ece38 refactor: improve github retry logic ()
5 retries
use settimeout
retry on any 5xx error code
2017-08-04 18:13:49 +02:00
Rhys Arkins ab7884008b fix: always pass logger to getLockFile () 2017-08-04 17:47:03 +02:00
Rhys Arkins e913feb6ab fix: npm and yarn use branch logger ()
Closes 
2017-08-04 16:23:45 +02:00