Rhys Arkins
1610752547
fix: add check for version.time (npmjs)
2018-02-08 06:50:10 +01:00
Rhys Arkins
4c6e3f7932
fix: use existing lock files when rebasing
...
Check if a lock file already exists in the current *branch* and if so then use it as the base for generating the new lock file and not the master one. Ensures that simple rebases result in same result.
Closes #1481
2018-02-07 16:23:41 +01:00
Rhys Arkins
84fe4f2dff
chore: lower getFile 404 warn to info
2018-02-07 16:23:00 +01:00
Rhys Arkins
a512b416eb
fix: use parent repo for assignees and labels when in fork mode
2018-02-07 12:26:13 +01:00
Rhys Arkins
dc1bcee68e
chore: downgrade closed PR warning to info
2018-02-07 12:03:49 +01:00
Rhys Arkins
430b8237c3
chore: fix lint
2018-02-07 11:03:26 +01:00
Rhys Arkins
c7efe253da
fix: massage changelog release note bodies
2018-02-07 11:01:43 +01:00
Rhys Arkins
5609767748
chore: downgrade release note logs to trace
2018-02-07 11:01:32 +01:00
Rhys Arkins
465849cac5
fix: add url to release notes
2018-02-07 11:00:47 +01:00
Rhys Arkins
7785b6df48
fix: decrease release note heading sizes
2018-02-07 10:59:37 +01:00
Rhys Arkins
545218468f
fix: Better summary/details substitution for gitlab pr bodies
2018-02-07 10:53:44 +01:00
Rhys Arkins
94bcca0e8c
fix: use details/summary for non-group Release Notes
2018-02-07 09:48:39 +01:00
Rhys Arkins
4555dcf38a
chore: downgrade CHANGELOG no entry found log
2018-02-07 09:44:44 +01:00
Rhys Arkins
8b4f116ad6
refactor: log when no entry found in CHANGELOG.md
2018-02-07 08:32:55 +01:00
Rhys Arkins
2deb4a90f7
fix: support parsing [x.y.z] changelog headings
2018-02-07 08:25:30 +01:00
Rhys Arkins
4a7f493ec4
fix: delete branch if create pr returns “validation failed”
2018-02-07 08:05:32 +01:00
Rhys Arkins
19f04bee69
fix: log message when failing to create PR
2018-02-07 07:16:32 +01:00
Rhys Arkins
85a09fffe5
fix: return err.stderr not stderr when npm install fails
2018-02-07 06:30:06 +01:00
Rhys Arkins
40859b10e2
feat: use yarn mutex to ensure only one install at a time
2018-02-07 06:21:25 +01:00
Rhys Arkins
df69c9e3a2
fix: escape links to GitHub usernames
2018-02-06 19:21:22 +01:00
Rhys Arkins
f6e2627774
feat: parse CHANGELOG.md in source repositories ( #1491 )
...
Parses `CHANGELOG.md` for first or second-level markdown headings matching versions. Supports GitHub-only source repositories for now.
Closes #1470
2018-02-06 18:53:36 +01:00
Rhys Arkins
4663967379
fix: better lerna version detection
2018-02-06 15:49:21 +01:00
Rhys Arkins
34ccbe38a3
fix: de-dupe release notes in each PR
2018-02-06 14:24:14 +01:00
Rhys Arkins
da7ad5b342
chore: downgrade cached result log to trace
2018-02-06 14:17:46 +01:00
Rhys Arkins
f721573e94
fix: escape github pull not pulls
2018-02-06 14:01:29 +01:00
Rhys Arkins
29cae7725b
fix: show newDigest for docker digest pinning in onboarding PR
2018-02-06 11:14:55 +01:00
Rhys Arkins
6d7bbaefcc
fix: detect lerna version in dependencies or devDependencies
2018-02-06 10:56:21 +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
Hutson Betts
f7bd7c37d9
fix(yarn): support upgrading windows-only modules
2018-02-06 07:03:47 +01:00
Rhys Arkins
a79222b777
fix: catch initRepo 403 (github)
2018-02-05 22:23:50 +01:00
Rhys Arkins
5dea3f7150
fix: check initRepo res before logging res.body
2018-02-05 22:10:12 +01:00
Rhys Arkins
9c89629183
fix: re-enable lerna bootstrap ( #1487 )
...
* Revert "fix: Revert "feat: lerna bootstrap support (#1486 )""
This reverts commit 4e592d601d
.
* fix: fix lerna.json detection
2018-02-05 20:06:24 +01:00
Rhys Arkins
4e592d601d
fix: Revert "feat: lerna bootstrap support ( #1486 )"
...
This reverts commit 3cab59d2fe
.
2018-02-05 19:40:54 +01:00
Rhys Arkins
3cab59d2fe
feat: lerna bootstrap support ( #1486 )
...
Adds support for running `lerna bootstrap` instead of `npm install` or `yarn install` (without Workspaces), hence allowing support of internally-linked dependencies.
Closes #1441 , Closes #1443
2018-02-05 19:30:07 +01:00
Rhys Arkins
28371c667d
fix: catch blocked repositories properly
2018-02-05 18:38:07 +01:00
Rhys Arkins
f416f4b927
fix: don’t check statusCode for blocked
2018-02-05 14:34:46 +01:00
Rhys Arkins
efa754cbc6
fix: add try/catch to ensureIssue (github)
2018-02-04 22:24:38 +01:00
Rhys Arkins
5dda1eedf9
fix: limit paginated results to 1000
2018-02-04 22:24:20 +01:00
Rhys Arkins
2389cf3f9e
fix: better retries log in github wrapper
2018-02-04 22:22:13 +01:00
Rhys Arkins
4a427adcac
fix: don’t clean branches if repository is not found or blocked
2018-02-04 21:57:43 +01:00
Rhys Arkins
4c267b210b
fix: handle archived repos gracefully
2018-02-04 21:20:28 +01:00
Rhys Arkins
5a11596960
chore: add logging to onboarding pr logic
2018-02-04 13:35:43 +01:00
Rhys Arkins
021242a7bf
fix: use json-stringify-safe on unknown errors
2018-02-03 15:58:14 +01:00
Rhys Arkins
e306f707db
fix: abort renovation if repository has changed during run
...
If attempting to create a branch and it already exists, or attempting to update a branch and it no longer exists, then we abort.
2018-02-03 15:45:43 +01:00
Rhys Arkins
42178e72c9
fix: catch errors creating branches and try update instead (github)
2018-02-03 13:54:42 +01:00
Rhys Arkins
144ce72311
refactor: add better debugging to branch creation (github)
2018-02-03 13:39:16 +01:00
Rhys Arkins
720b46696a
feat: gitlab branch cleanup ( #1475 )
...
Removes the GitHub-only check when cleaning/pruning branches.
2018-02-03 12:06:25 +01:00
Rhys Arkins
aa0b0d68fd
fix: don’t check for branch existing when rebasing (gitlab) ( #1474 )
...
Previously, our GitLab API library was checking if a a branch existed first before trying to create it. But due to caching, a branch we'd deleted ourselves still showed up as existing, so then there was no branch to update the files in. Skip this check and use try/catch for creating branch instead.
Fixes #1468
2018-02-03 11:04:27 +01:00
Rhys Arkins
6101f25dc7
fix: reset file list when setting base branch (gitlab)
2018-02-03 10:39:04 +01:00
Rhys Arkins
03bdfe191f
fix: drop unnecessary changelog debug
2018-02-03 07:53:02 +01:00
Rhys Arkins
fbc46f6c70
fix: unset github token prior to changelog
2018-02-03 07:48:32 +01:00
Rhys Arkins
4d8510246d
Revert "fix: unset ghe token before calling changelog ( #1472 )"
...
This reverts commit fb1c291b39
.
2018-02-03 07:42:08 +01:00
Rhys Arkins
cecc606674
refactor: default endpoint to null
2018-02-03 07:23:24 +01:00
Rhys Arkins
85de185896
chore: remove excess release notes debugging
2018-02-02 23:08:34 +01:00
Rhys Arkins
fb1c291b39
fix: unset ghe token before calling changelog ( #1472 )
...
fix: unset ghe token before calling changelog
2018-02-02 20:32:00 +01:00
Rhys Arkins
b184d3a217
fix: handle 403 blocked from github
2018-02-02 18:04:41 +01:00
Rhys Arkins
40072e2707
refactor: downgrade 5 loops from error to warn
2018-02-02 18:04:26 +01:00
Rhys Arkins
1c33bb1a31
fix: strip NPM_TOKEN lines from npmrc if not exposing env
2018-02-02 16:00:05 +01:00
Rhys Arkins
baa27de289
fix: gracefully handle missing versions in npm registry response
2018-02-02 15:02:43 +01:00
Rhys Arkins
6fc39d75a5
fix: check for null release notes body
2018-02-02 13:08:00 +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
42cb6fe853
fix: improve issue de-linking for public GitHub repos
2018-02-02 06:01:32 +01:00
Rhys Arkins
9195adc58a
refactor: sort versions and commits from oldest to newest
...
List versions and their commits in PR bodies in the order they were made (oldest to newest).
2018-02-02 05:42:22 +01:00
Rhys Arkins
f856b364c6
refactor: downgrade yarn parsing error from warning to info
2018-02-01 16:23:47 +01:00
Rhys Arkins
a708005886
fix: massage issues/pulls links in public repos to be non-linking
2018-02-01 11:36:30 +01:00
Rhys Arkins
e533f96185
fix: escape depName as code in pr bodies
2018-02-01 08:30:44 +01:00
Rhys Arkins
cadb4b796f
fix: massage updated less than/greater than to match existing format
2018-02-01 08:25:52 +01:00
Rhys Arkins
e13e1abab7
fix: don’t escape versions in group pr body
2018-02-01 07:25:37 +01:00
Rhys Arkins
6fc1f94936
feat: list package files in onboarding PR
...
Closes #1461
2018-01-31 13:20:55 +01:00
Rhys Arkins
335844e6b7
feat: strip docker-only descriptions from onboarding PR if no Dockerfiles
2018-01-31 13:10:09 +01:00
Rhys Arkins
5f3b1b7fdf
feat: set repository url for @types/*
packages manually
...
If a dependency has name starting with `@types/` and no repository url returned from the npmjs query, we manually set a URL pointing to the DefinitelyTyped repository.
2018-01-31 11:24:19 +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
5800230cc2
fix: packageRules without packageNames or packagePatterns should match
...
If a packageRule is missing packageNames AND missing packagePatterns, then we should match by default. This allows users to define a single “exclude” rule without needing to add a catchall include rule (e.g. `packagePatterns”: [“.*”]`)
2018-01-30 09:34:42 +01:00
Rhys Arkins
5a02a35afb
chore: log branchList before pruning
2018-01-30 09:23:38 +01:00
Rhys Arkins
b32b7447da
refactor: Revert "refactor: add YARN_CACHE_FOLDER to env"
...
This reverts commit f0111101c9
.
2018-01-29 09:54:49 +01:00
Rhys Arkins
37d83cf61a
refactor: check that workspaces has yarn.lock committed
...
Closes #1451
2018-01-29 09:51:16 +01:00
Rhys Arkins
f5b1c00d8f
refactor: log old/new pr details if updating
2018-01-28 21:46:27 +01:00
Rhys Arkins
64cf41e76e
refactor: sort PRs by type and then title
2018-01-28 16:14:04 +01:00
Rhys Arkins
f64204b992
fix: pin PRs should be sorted before digest ones
2018-01-28 15:57:20 +01:00
Rhys Arkins
294fc6b3a5
refactor: don’t warn if current version is a file reference
2018-01-28 15:44:35 +01:00
Rhys Arkins
f621e93519
chore: add better metadata to packge-file and package logging
2018-01-28 14:51:55 +01:00
Rhys Arkins
a09e9527ce
fix: default peerDependencies to not pin Versions
2018-01-28 14:46:05 +01:00
Rhys Arkins
b2b0e42492
fix: do not jump unstable majors unless configured to do so
2018-01-27 16:18:18 +01:00
Rhys Arkins
6743e5b489
refactor: downgrade yarn.lock parsing error logs to info
2018-01-27 08:30:14 +01:00
Rhys Arkins
8dcc83a4a3
feat: support yarn mutex file
...
Adds yarn mutex file flag to cmd line if set in env
2018-01-27 07:25:08 +01:00
Rhys Arkins
f0111101c9
refactor: add YARN_CACHE_FOLDER to env
2018-01-27 06:41:23 +01:00
Rhys Arkins
a378bbbac3
fix: massage invalid Regex pattern ‘^*$’
2018-01-26 19:30:57 +01:00
Rhys Arkins
f3c8fd23c9
feat: stringify unknown errors for better visibility ( #1449 )
...
feat: stringify unknown errors for better visibility
2018-01-26 19:08:13 +01:00
Rhys Arkins
6c57c5f45b
refactor: lower lock file warning to debug
2018-01-26 16:26:42 +01:00
Rhys Arkins
fda9fcc289
fix: only use lockedVersion when pinning
2018-01-26 12:31:52 +01:00
Rhys Arkins
9e0a798a6b
fix: trace lock files, not info
2018-01-26 12:25:53 +01:00
Rhys Arkins
2830a33aab
fix: check for valid lockedVersion
...
When pinning, check that the “version” in a lock file is a valid semver, and ignore it if not.
2018-01-26 11:49:44 +01:00
Rhys Arkins
79e9ce6d8f
feat: pin npm dependencies using lock files
...
When package-lock.json or yarn.lock files are present, and Renovate needs to “pin” any dependencies (e.g. after onboarding), it will use whatever version is in the lockfile rather than the latest version on npm js that satisfies the semver range. This should increase the chance that Pin Dependencies PRs pass tests, as it should use as close as possible dependencies as the previous time the lock file was committed to master. Thanks to @alexeagle for first suggesting this.
Closes #1362
2018-01-26 10:18:40 +01:00
ctaepper
989114692f
fix: properly handle boolean values in npmrc keys ( #1445 )
...
#1407 introduced a bug where the replacement logic breaks if the value of the npmrc key is a boolean.
2018-01-26 05:26:49 +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
Rhys Arkins
9363fd8acf
refactor: pass object to platform.initRepo
...
Also renames repoName to repository
2018-01-25 12:24:13 +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
bc6d74e0de
refactor: move github init deletions later
2018-01-24 19:18:03 +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
1b535af43e
feat: hyphen range support ( #1437 )
...
Adds support for ranges, such as `”1.x - 2.x”`. Adds support for widening .x ranges, e.g. `”1.x || 2.x”` becomes updated to `”1.x || 2.x || 3.x”`.
Closes #687
2018-01-24 11:23:59 +01:00
Rhys Arkins
f943d6b27c
feat: widen semver || ranges ( #1436 )
...
When an “or” semver (e.g. “react”: “^14.4.0 || ^15.0.0”) is found, we now widen it. e.g. the result will be “^14.4.0 || ^15.0.0”.
2018-01-24 09:44:38 +01:00
Rhys Arkins
bf64d62dc8
feat: advanced semver "less than (and equal to)" support ( #1435 )
...
Adds support for "less than" semver, and for complex semver values that end in "less than" e.g. ">= 1.0.0 < 2.0.0". Also supports complex semver values that end in "less than or equal to", although they make a lot less sense, e.g. ">= 1.0.0 <= 2.0.0".
Closes #1433
2018-01-24 08:43:27 +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
Rhys Arkins
ef17430d7a
refactor: lower bazel and semver warnings to info logs
2018-01-23 13:00:05 +01:00
Rhys Arkins
516142b687
feat: import existing greenkeeper config when onboarding ( #1431 )
...
Detects any greenkeeper configuration fields and migrates them to Renovate’s config during onboarding.
Closes #1429
2018-01-23 11:59:32 +01:00
Rhys Arkins
a7083c5688
refactor: Recommend blocking PRs be renamed and not reopened
2018-01-23 10:50:05 +01:00
Rhys Arkins
0b7deb546c
feat: apply package.json renovate config to whole repository ( #1419 )
...
Changes the way Renovate treats renovate config inside `package.json` files. Before, config used to be applied only to that particular file, meaning that it was not applied for the rest of a monorepo, or for other package managers like Docker. Now, any `renovate` section inside the repository’s root `package.json` will be applied globally, just the sams as if it were contained within a `renovate.json` file. This means there is no longer any case where you *must* have a `renovate.json` file instead of `package.json`.
Closes #1323
BREAKING CHANGE: renovate config in `./package.json` is now applied to whole repository, and renovate config inside non-root `package.json` files is now ignored.
2018-01-23 06:59:01 +01:00
Rhys Arkins
032f104b2c
Revert "fix: make sure lock file maintenance branch is not stale before skipping ( #1265 )"
...
This reverts commit 1aba7c79af
.
Fixes #1425
2018-01-22 13:34:55 +01:00
otofu-square
f251969fab
fix: correct typos in templates ( #1423 )
2018-01-22 11:17:00 +01:00
Rhys Arkins
44813aede2
refactor: add log if package.json renovate config found outside root of repository
2018-01-21 07:54:17 +01:00
Rhys Arkins
d774a14910
feat: abort repo for most npm registry errors
...
Renovate now aborts processing of repositories if for any 4xx responses except 401 and 404, and also for 200 OK responses which are unparseable.
Closes #1341
2018-01-21 07:16:28 +01:00
Rhys Arkins
537e3cd7e6
refactor: check for RENOVATE_SKIP_CACHE in npm registry
2018-01-20 19:34:27 +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
fa68a5a216
refactor: skip ignore notification comment if PR was merged
2018-01-20 15:09:23 +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
5c01f59b7e
refactor: limit github pagination to 1000 total
2018-01-19 15:28:54 +01:00
Rhys Arkins
3e1d8474a9
refactor: always debug log github get requests
2018-01-19 12:00:26 +01:00
Rhys Arkins
285a59b085
fix: filter out “Update branch” commits when determining canRebase ( #1410 )
...
Closes #1405
2018-01-19 07:35:39 +01:00
Rhys Arkins
08cb61f835
feat: support multiple Docker FROM statements ( #1409 )
...
Adds support for multiple FROM statements within a Dockerfile. Thanks to @reicheltp for regex inspiration.
Closes #1011
2018-01-19 06:59:35 +01:00
Rhys Arkins
93521cac74
fix: check for not-pending only if no existing PR exists
...
Closes #1408
2018-01-19 05:46:28 +01:00
Rhys Arkins
dddf402c1c
chore: fix lint
2018-01-18 21:59:11 +01:00
Rhys Arkins
0a9143c9f3
fix: move archived log to correct place
2018-01-18 18:32:08 +01:00
Rhys Arkins
85dfa819c1
fix: skip newlines at start of Dockerfile ( #1402 )
...
Allow for both comment lines or empty lines prior to FROM in Dockerfile
2018-01-17 17:58:28 +01:00
Rhys Arkins
bb46281c2c
tests: update tests after code removal
2018-01-17 16:26:58 +01:00
Rhys Arkins
68f0da5ade
refactor: remove legacy code detecting mistakenly closed PRs
2018-01-17 15:34:08 +01:00
Rhys Arkins
fd813964b3
fix: rename legacy pr titles
2018-01-17 15:33:41 +01:00
Rhys Arkins
284eedc926
refactor: improve github.initRepo structure and comments
2018-01-17 15:25:32 +01:00
Rhys Arkins
eb2c159d02
refactor: simplify archived check
2018-01-17 15:16:52 +01:00
Rhys Arkins
b72be53fba
fix: ensure monorepo packages are ignored in workspaces root too
...
Adds an extra check to ensure that monorepo package names are ignored in the workspaces root too.
Closes #1398
2018-01-17 06:32:07 +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
23e217991c
feat: pnpm shrinkwrap support ( #1392 )
...
This feature adds support for pnpm shrinkwrap.yaml files.
Closes #1391
2018-01-15 16:55:33 +01:00
Rhys Arkins
ac09b9d7cd
feat: cache npm results in memory per-run
...
We currently use got’s inbuilt caching for npmjs, however it still results in a roundtrip/304 even when cached. The when using presets is that a package like renovate-config-default gets looked up 10+ times unnecessarily. With this feature we assume that npm lookups don’t change for the duration of a run, and even if they did then we’d prefer the reliability of using the first lookup.
Closes #1389
2018-01-15 11:53:02 +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
54d3a62284
fix: throw error when receiving 5xx responses from npmjs
...
This is a partial fix for #929 . After this we should catch and retry.
2018-01-14 15:17:57 +01:00
Rhys Arkins
2a5f189573
fix: ignore onboarding branch when calculating pr hourly limit
2018-01-12 10:02:36 +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
Matt R. Wilson
d0d62e6e7b
Allow --renovate-fork Cli flag for onboarding.
...
Fixes https://github.com/renovateapp/renovate/issues/1371 .
2018-01-10 22:52:36 +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
421adcfedc
fix: use author first and then committer when checking pr
...
Lets author take precedence over committer, in case users edit PRs and commit Renovate’s commit back themselves.
Fixes #1364
2018-01-10 12:43:53 +01:00
Rhys Arkins
21a6b1acea
fix: delete blocking branch if it still exists
2018-01-10 10:26:57 +01:00
Rhys Arkins
2e2f53b677
fix: move debug statement to fix tests
2018-01-10 09:38:42 +01:00
Rhys Arkins
a2b3ca440d
refactor: debug if repoIsOnboarded
2018-01-10 09:09:17 +01:00
Rhys Arkins
67eb60fb4f
fix: forking mode should add/edit/delete comments in parent repo
2018-01-10 07:25:56 +01:00
Rhys Arkins
228b823e45
fix: ignore branchPrefix for onboarding branch
2018-01-09 17:24:09 +01:00
Rhys Arkins
0a1b905b0e
fix: forking mode should check commits on parent repo
2018-01-08 22:00:47 +01:00
Rhys Arkins
910793e5f2
fix: check onboarding pr when handling config error
...
Instead of checking for config.repoIsOnboarded, just check for the onboarding PR and reverse the logic.
Closes #1339
2018-01-08 15:53:52 +01:00
Rhys Arkins
28518a4f77
feat: massage ‘*’ packagePattern to ‘.*’
...
‘*’ is actually an invalid regex so fails, however many people might make this mistake so it’s easier to just allow it.
2018-01-06 10:41:10 +01:00
Rhys Arkins
1bbf0c1692
fix: don’t apply custom branchPrefix when onboarding
2018-01-06 10:19:00 +01:00
Rhys Arkins
b711e0c3aa
fix: handle 404 repos gracefully
2017-12-31 20:47:46 +01:00
Rhys Arkins
24b94765ff
feat: skip over archived repositories (github)
2017-12-31 20:28:22 +01:00
Rhys Arkins
8684ff8a6b
fix: don’t debug log the open pr twice
2017-12-30 06:29:40 +01:00
Rhys Arkins
1cb920fa4b
fix: set/reset npmrc during init
...
Detect npmrc in root of repo and make sure it’s set early. Also ensure npmrc is reset at start of each run if necessary.
Helps #1335
2017-12-30 06:11:04 +01:00
Rhys Arkins
45d7c8f257
fix: check pr state for open or opened
2017-12-30 06:03:57 +01:00
Rhys Arkins
002de288c7
refactor: log pr if not
2017-12-29 17:03:27 +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
e735ed9eb0
feat: restart renovation if any pr has changed from open to closed
2017-12-28 17:21:06 +01:00
Rhys Arkins
97fc3e6135
fix: pr should be ensured if branch automerge previously failed
...
If branch automerge *previously* failed, then still make sure we are keeping the PR up to date.
Closes #1336
2017-12-28 17:19:59 +01:00
Rhys Arkins
1a3b0b61ea
refactor: remove edited PR comment and log warn instead
2017-12-28 16:29:03 +01:00
Rhys Arkins
6b91b87dee
feat: stop updating PR if edited
...
Previously, Renovate would attempt to keep a branch up to date even if users had edited it. e.g. adding commits on top of the existing branch if newer versions were released. Now, Renovate adds a warning comment if a user has edited a branch, making it clear that responsibility for the branch is over to them and how they can undo this.
Closes #653
2017-12-27 15:20:32 +01:00
Rhys Arkins
383302d433
refactor: info not warn if npm 401 response
2017-12-27 06:40:24 +01:00
Rhys Arkins
976f2ac57e
feat: deduplicate changelogs
...
Deduplicate changelogs in monorepo PRs. i.e. the same monorepo won’t be included more than once.
2017-12-26 20:38:09 +01:00
Rhys Arkins
e0e0b9defe
fix: Revert "feat: restart renovation after github error"
...
This reverts commit eb579ff388
.
For some reason it seems to be causing a reduction in throughput per hour in the app once deployed.
2017-12-26 19:45:17 +01:00
Rhys Arkins
82fa5cd64d
refactor: warn if npm lookup fails with other than 404
2017-12-26 06:45:51 +01:00
Rhys Arkins
35d7a63d00
docs: add warning about config.js and extends
2017-12-26 06:28:28 +01:00
Rhys Arkins
eb579ff388
feat: restart renovation after github error
...
When 404 or 422 errors are encountered writing updates, Renovate will now restart in an attempt to fix it. Usually this is because branches/PRs have been edited or closed while Renovate is running.
Closes #1299
2017-12-26 06:26:33 +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
163ce43a27
feat: update yarn resolutions
...
Detect if the upgraded dependency was already in “resolutions” and update it too if it was an exact match. Warn if it was not.
Closes #1318
2017-12-25 17:10:20 +01:00
Rhys Arkins
4cfcee7b25
chore: info not warn for unsupported bazel remote
2017-12-24 20:43:44 +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
b850985926
refactor: add ls to npm install to view files in logs
2017-12-23 08:55:47 +01:00
Rhys Arkins
007be13313
feat: add api caching to gitlab ( #1324 )
...
This PR ports across GitHub’s caching approach to the GitLab platform API.
2017-12-23 08:03:16 +01:00
Rhys Arkins
146e8f6982
feat: skip onboarding if renovate config detected in root package.json ( #1322 )
...
Renovate will now detect if renovate config already exists within the project’s ‘package.json’ root, and skip onboarding if so.
Closes #1159
2017-12-22 19:14:26 +01:00
Rhys Arkins
a8cceaa63e
chore: fix Closing issue log location
2017-12-22 19:09:16 +01:00
Rhys Arkins
f4364ccc44
fix: isOnboarded should return true if onboarding is skipped
2017-12-22 18:50:41 +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
Rhys Arkins
2c6a2dd43b
feat: better semantic commit detection
...
Limit to looking at last 10 commit messages and only use semantic commits if angular type is found.
2017-12-19 19:45:34 +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
33e4b51126
feat: raise config validation issue if onboarded repo has invalid package.json
...
Previously, if someone updated a package.json to include invalid JSON, Renovate fails to parse it (as expected), so ignores it. As a result, any existing PRs would be autoclosed. Instead, Renovate will now skip the repository and raise a warning issue until the file parsing is complete or the file is added to Renovate’s ignore list.
2017-12-18 13:43:29 +01:00
Rhys Arkins
464ebc4277
fix: close issue with number, not id
2017-12-18 13:35:30 +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
f351480f18
fix: create issue in parent repo when in forkMode
2017-12-18 10:29:46 +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
cfd02be920
refactor: log renovateConfig when warning of validation errors
2017-12-16 07:09:54 +01:00
Rhys Arkins
b2f3626578
fix: strip leading equals sign from currentVersion
...
e.g. =0.22.0 is treated as 0.22.0
2017-12-16 06:50:18 +01:00
Rhys Arkins
a61ee0b3ef
refactor: log info message when do not have branch protection permissions
2017-12-16 06:33:18 +01:00
Rhys Arkins
bf6d774cfc
refactor: simplify duplicate removal of dependency names
2017-12-15 21:33:54 +01:00
Rhys Arkins
35cd3506db
fix: drop team_reviewers param and github preview header from reviewer requests
2017-12-15 19:51:41 +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
72dbe58ade
chore: add path details to npmrc and yarnrc log
2017-12-15 09:10:35 +01:00
Rhys Arkins
242e2e34c6
fix: query parent repo for issue comments if forking
2017-12-14 21:39:23 +01:00
Rhys Arkins
f7e8414240
fix: remove extraneous newline in bazel replacements
2017-12-14 20:31:21 +01:00
Rhys Arkins
3730c66aa2
feat: bazel http_archive support ( #1296 )
...
This PR adds support for bazel http_archive references where they point to a GitHub download URL.
Closes #1292
2017-12-14 20:05:45 +01:00
Rhys Arkins
c98faa2b34
refactor: default bazel to enabled
2017-12-14 13:19:30 +01:00
Rhys Arkins
c58498a9a9
fix: use forkToken when creating or updating PR
2017-12-14 12:11: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
d3c0559c21
chore: log when setting npmrc
2017-12-14 10:56:54 +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
2a77124069
chore: don’t debug prList
2017-12-14 09:46:31 +01:00
Rhys Arkins
68a37b906a
refactor: log if finding npmrc or yarnrc
2017-12-14 07:13:30 +01:00
Rhys Arkins
3093b3d787
refactor: log dependency name when lookups are blocking
2017-12-14 06:54:46 +01:00
Rhys Arkins
794e149179
refactor: ignore bower_components by default
2017-12-14 06:35:12 +01:00
Rhys Arkins
f5c3642ae7
fix: escape all forward slash with %2f (gitlab) ( #1294 )
...
Use a regex replace all instead of single replace, for cases where projects or branches have more than one forward slash.
Fixes #1293
2017-12-14 06:19:24 +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
39a48c6e55
fix: npm configs should be applied to all package.json files ( #1289 )
2017-12-11 19:43:49 +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
Rhys Arkins
837b53619f
fix: use git data API to retrieve large files ( #1286 )
2017-12-11 12:24:37 +01:00
Rhys Arkins
967e4dd1c4
refactor: remove status checks basic message
2017-12-10 17:57:20 +01:00
Rhys Arkins
ce83c86fa2
refactor: rename branch protection messages
2017-12-10 17:55:23 +01:00
Rhys Arkins
a5c47e082a
refactor: consistency of branch protection logging
2017-12-10 15:58:00 +01:00
Rhys Arkins
aebd63eebe
refactor: use consistent log messages for branch protection
2017-12-10 15:38:47 +01:00
Rhys Arkins
278e9fe14a
refactor: improve branch protection visibility (github) ( #1284 )
2017-12-10 15:22:58 +01:00
Rhys Arkins
0dbd4c3ac0
fix: remove unnecessary loki preview header for repo object ( #1283 )
...
The loki preview header is no longer required, as per https://developer.github.com/changes/2017-09-06-protected-branches-preview-end/
2017-12-10 07:25:36 +01:00
Rhys Arkins
5036360658
feat: gitPrivateKey for signed git commits ( #1282 )
...
This feature enables signing of git commits on GitHub. To achieve this, Renovate must be configured with a gitPrivateKey in format supported by openpgp. There must also be a gitAuthor configured to enable this feature.
Closes #897
2017-12-09 17:56:23 +01:00
Rhys Arkins
70c95add5a
feat: custom git commit author ( #1280 )
...
This PR adds the capability to specify a custom author for git commits on GitHub. Setting this field will mean GitHub uses this value for author and commit instead of the token’s identity. For instance if you are running hosted mode you may set the gitAuthor to “Renovate Bot <bot@renovate.com>” to have commits appear as coming from the renovate-bot account.
2017-12-09 17:09:31 +01:00
Rhys Arkins
61b1c7f25c
refactor: sort branches
...
This makes the onboarding PR easier to understand by putting pin first, then minor, then major.
2017-12-08 11:03:45 +01:00
Rhys Arkins
494dc08897
refactor: unsatisfied range warn -> info ( #1278 )
...
* refactor: unsatisfied range warn -> info
* refactor: downgrade setNewValue warn -> info
2017-12-08 09:39:40 +01:00
DJ Madeira
e212093aa9
fix: find config path in cwd when installed globally ( #1277 )
...
Fixes #1182
2017-12-07 20:16:51 +01:00
Rhys Arkins
d2f54ba763
fix: do not escape unlinked depNames in pr bodies ( #1275 )
2017-12-07 13:57:30 +01:00
Rhys Arkins
696aaa38af
refactor: slim down onboarding PR description ( #1274 )
2017-12-07 13:32:56 +01:00
Rhys Arkins
c499790d94
refactor: add unstablePattern to list of ignored preset keys
2017-12-07 09:50:14 +01:00
Rhys Arkins
987891ba2e
feat: bazel WORKSPACE support ( #1268 )
...
This PR adds support for bazel WORKSPACE package files, as suggested https://github.com/alexeagle/angular-bazel-example/issues/17#issuecomment-349167982
Renovate will:
1. Detect `WORKSPACE` files anywhere in the repository
2. Look for all `git_repository()` sections in the file
3. Extract any dependencies with name, remote and tag values
4. Look up any dependencies that (a) have a github https remote, and (b) a valid semver as tag
5. Update the tag to the latest available
2017-12-07 09:22:10 +01:00
Rhys Arkins
04e505d483
fix: handle existing range with no matching versions ( #1273 )
2017-12-06 18:53:55 +01:00
Rhys Arkins
b5ef020e76
refactor: log npmDep.name when determining upgrades
2017-12-06 17:40:18 +01:00
renovate[bot]
73506f9043
chore(deps): update dependency prettier to v1.9.0 ( #1267 )
...
* chore(deps): update dependency prettier to v1.9.0
* run prettier
2017-12-05 11:50:16 +01:00
Rhys Arkins
b8dadb718d
feat: travis.yml node_js versions support ( #1243 )
...
This PR adds support for renovating the `node_js` versions in `.travis.yml` configuration files. Important notes:
- Functionality is disabled by default and hence opt-in via configuration
- Added a new manager type `node` because it is anticipated to support more than just Travis in future, with mostly unified logic
- Added the config option "policy" with supported values: lts, active, current, lts_latest and lts_active
- Policy is actually an array, to allow additive combining, e.g. `["lts_latest", "current"]`
- Actual node versions are *hardcoded*. There is no perfect metadata source for this and they change infrequently enough that it is definitely not a problem for now (next change will be in April 2018)
- If node versions need updating, they are listed from newest to oldest
- Replacing function attempts to detect the indention (spacing) in file and use that
To enable, configure `node.enabled=true` and optionally `node.policy=["<policy>"]` if you want something other than `lts`.
Closes #1208
2017-12-05 07:50:16 +01:00
Rhys Arkins
ed99d0b2de
refactor: handle mergePr 405 errors specially
2017-12-05 06:43:23 +01:00
Rhys Arkins
1aba7c79af
fix: make sure lock file maintenance branch is not stale before skipping ( #1265 )
2017-12-05 06:17:27 +01:00
Rhys Arkins
c2590a56ab
feat: support multiple yarn workspaces in one repository ( #1264 )
2017-12-04 15:41:37 +01:00
Rhys Arkins
d56654cd88
fix: don’t exception if no rollback versions found ( #1263 )
2017-12-04 15:07:35 +01:00
JYC
560bf727c3
fix: VSTS - add reviewer once even if multiple teams ( #1259 )
...
Closes #1258
2017-12-02 20:22:03 +01:00
Rhys Arkins
5e68613150
refactor: add extends config massage ( #1256 )
2017-12-01 07:16:17 +01:00
JYC
ab3372d33c
feat: copy local packages ( #1244 )
...
If we have in a package.json links to some local lib file:../path/to/folder
Then the local lib package.json will be copied to the tmp folder to be able to generate the right yarn lock file. This is not working with tgz files, only folder reference.
Closes #1215
2017-11-30 06:43:56 +01:00
Rhys Arkins
958f8b5314
fix(deps): Update npm to v5.6.0 ( #1255 )
2017-11-29 06:05:57 +01:00
Rhys Arkins
bd52d7f1b1
fix: delete pr list before first get ( #1253 )
...
This shouldn’t be necessary because we already `config = {};` during the init. But somehow `if (!config.prList)` is returning false sometimes.
2017-11-28 20:29:42 +01:00
Rhys Arkins
8e136c7143
fix: do not delete branches if PR creation fails ( #1252 )
...
GitHub’s API is behaving too flakily and this can end up with closing PRs by accident, which then block future PRs. See https://github.com/ikatyang/emoji-cheat-sheet/pull/110 for example problem
2017-11-28 17:11:52 +01:00
Rhys Arkins
95a28bae2e
refactor: increase getPrList logging for GitHub ( #1251 )
2017-11-28 16:50:56 +01:00
Rhys Arkins
15dfad63b5
refactor: return ‘onboarding’ from ensureOnboardingPr ( #1250 )
2017-11-28 14:58:18 +01:00
Rhys Arkins
cfcea0dbb3
fix: improve pr merged detection logic ( #1248 )
...
Make sure PR is closed and merged_at is a non-zero length string.
Helps #1247
2017-11-28 13:27:37 +01:00
Rhys Arkins
4a57cfd3cd
fix: only return no-work if branch doesn’t exist ( #1245 )
2017-11-28 09:00:59 +01:00
Rhys Arkins
eabff37a15
fix: exit gracefully if no files to commit ( #1242 )
...
This handles case where checking for lock file maintenance but lock file is up-to-date.
2017-11-27 08:25:07 +01:00
Rhys Arkins
e54eafcbd1
chore: log info messages when creating and updating PRs ( #1240 )
2017-11-26 07:27:33 +01:00
Rhys Arkins
57eb471afa
fix: escaping @ mentions should be replace all ( #1239 )
...
Fixes #1238
2017-11-26 07:09:10 +01:00
Rhys Arkins
72d46c20e2
refactor: remove label and assignees description from onboarding pr ( #1235 )
...
These can now be described via presets instead
2017-11-24 12:03:57 +01:00
Rhys Arkins
779ca36bc1
refactor: use semanticCommitType chore for pin/digest ( #1234 )
2017-11-24 10:58:44 +01:00
JYC
7a63342ddd
fix: path joins on windows ( #1216 )
...
Use `upath` for windows-friendly path joins.
Closes #1203
2017-11-24 07:50:49 +01:00
Rhys Arkins
7e6befe4a8
fix: merged PRs should not block new PRs in monorepos ( #1230 )
...
Only block if it was closed unmerged.
Fixes #1205
* check for closed only for monorepos
2017-11-24 07:31:20 +01:00
Rhys Arkins
65a5e90bb7
feat: split semanticPrefix into type and scope
2017-11-24 07:14:58 +01:00
Rhys Arkins
d0a08734e5
fix: remove semanticPrefix override from pin.group to pin ( #1231 )
2017-11-23 19:49:14 +01:00
Rhys Arkins
7675f3a9f1
fix: replace singapore/renovate references with renovateapp/renovate ( #1229 )
2017-11-23 14:08:31 +01:00
Rhys Arkins
67bb02e725
fix: Revert "feat: docker registry cache ( #1210 )" ( #1211 )
...
This reverts commit 371f1cbf3d
.
2017-11-22 15:07:53 +01:00
Rhys Arkins
371f1cbf3d
feat: docker registry cache ( #1210 )
...
Use got’s built-in caching with in-memory map.
Closes #1028
2017-11-22 13:25:07 +01:00
Rhys Arkins
4e7830e831
refactor: use internal got cache ( #1209 )
...
Replace explicit keyv-based memory cache for npm with implicit keyv-based memory cache built into got v8.
2017-11-22 10:24:34 +01:00
JYC
8e1dfa111c
feat: VSTS - Add Reviewers & Assignees ( #1200 )
2017-11-22 05:12:19 +01:00
Rhys Arkins
77dbef5cf0
feat: add back keyv-based memory cache for npm ( #1206 )
...
Disk-based caching for npm responses was overkill and actually started hurting performance after a while as the cache grew.
2017-11-22 04:45:40 +01:00
JYC
4bce262a14
fix: VSTS - Fix reading big file ( #1204 )
...
Closes #1158
* deleteBranch like gitlab
* changes in single commit
* prettier lint and tests
* read big file
* challenging linting!
2017-11-21 06:08:54 +01:00
Hutson Betts
ca3a1c9f9d
fix(github): paginate repo get requests ( #1193 )
...
Enable pagainate for requests made to the `user/repos` endpoint
for fetching all repositories the configured user has access to.
2017-11-20 20:36:40 +01:00
JYC
dbe68efdc7
fix: VSTS - RepoName & ProjectName ( #1201 )
...
* deleteBranch like gitlab
* changes in single commit
* prettier lint and tests
* add project and repo feature
* add case insensitive string compare
2017-11-20 19:47:49 +01:00
Rhys Arkins
0f80e7d501
fix: use RENOVATE_TMPDIR ( #1202 )
2017-11-20 07:08:30 +01:00
JYC
b272b4aab7
fix: VSTS - canRebase ( #1197 )
...
* deleteBranch like gitlab
* changes in single commit
* prettier lint and tests
2017-11-19 11:23:30 +01:00
Rhys Arkins
8ea800dce0
fix: drop “fix devDependencies” customisation ( #1198 )
2017-11-19 06:32:06 +01:00
Rhys Arkins
d3d9b2be02
refactor: packageFile log debug -> trace ( #1191 )
2017-11-17 15:10:59 +01:00
Rhys Arkins
804d7ba955
refactor: don't cache lock files ( #1190 )
...
* refactor: don’t store yarn.lock content in packageFile
* chore: don’t log full lockfile
* refactor: don’t save package-lock.json
* update tests
2017-11-17 14:53:29 +01:00
Rhys Arkins
46f8dd751d
refactor: resolve package files in parallel ( #1189 )
...
Speeds up monorepos substantially
2017-11-17 06:06:06 +01:00
Rhys Arkins
0e81a88a54
fix: drop branchExists check after create ( #1188 )
2017-11-16 23:51:47 +01:00
Rhys Arkins
e27a1b486c
refactor: use simpler api for branchExists ( #1187 )
...
simpler api + cacheable
2017-11-16 22:40:07 +01:00
Rhys Arkins
4c4d5cfdac
refactor: check unpublishsafe only if configured ( #1186 )
2017-11-16 22:34:49 +01:00
Rhys Arkins
fd10299a71
feat: cache github get requests in memory ( #1185 )
...
The existing github wrapper is now extended to cache any get request. The existing pr cache is removed as it is now redundant.
2017-11-16 22:13:54 +01:00
Rhys Arkins
d3955f1a32
fix: only remove lock file warning comment when successfully updating… ( #1184 )
2017-11-16 21:54:13 +01:00
Rhys Arkins
319b790c9c
refactor: debug github api calls ( #1183 )
2017-11-16 19:27:59 +01:00
Rhys Arkins
e89ef0ddb8
chore: add debugging to findPr and getPrList
2017-11-16 14:16:24 +01:00
Rhys Arkins
414fb7d4d7
chore: add debugging to checkOnboardingBranch
2017-11-16 14:16:24 +01:00
Rhys Arkins
bf0cbd38cb
refactor: reset platform config to {} during initRepo
2017-11-16 14:16:24 +01:00
Rhys Arkins
d9db675b68
fix: reset base commit during init ( #1179 )
2017-11-16 13:51:26 +01:00
Rhys Arkins
6dfeebba32
refactor: base commit sha logic and logging ( #1178 )
2017-11-16 13:37:36 +01:00
Rhys Arkins
d5f58fcb6e
feat: allow configurable tmpdir for caching ( #1176 )
2017-11-16 10:26:04 +01:00
Rhys Arkins
15c3a9a8be
refactor: use fileList to speed up getFile 404s ( #1175 )
2017-11-16 07:13:50 +01:00
Rhys Arkins
3921c4007d
refactor: cache pull requests (github) ( #1174 )
2017-11-15 15:39:39 +01:00
Rhys Arkins
c89b957b8a
refactor: defer branch protection check ( #1173 )
2017-11-15 15:31:20 +01:00
Rhys Arkins
feb1f4e3fd
fix: move github 409 catch after refactor ( #1172 )
2017-11-15 14:41:36 +01:00
Rhys Arkins
0e68e4aa50
refactor: defer getBaseCommitSHA until needed ( #1171 )
2017-11-15 14:20:17 +01:00
Rhys Arkins
7c72156562
refactor: move semantic commit detection from init to later updates ( #1170 )
2017-11-15 13:39:44 +01:00
Rhys Arkins
b3ec1c0156
fix: set npmrc at repository level ( #1169 )
2017-11-15 12:30:39 +01:00
Rhys Arkins
59d3be4d1c
fix: replace h4 with ** (gitlab) ( #1167 )
...
Helps #954
2017-11-14 20:44:32 +01:00
Manuel Rueda
a19421fff6
fix: normalize GitLab findPr with GitHub and add PR cache ( #1165 )
...
Closes #1164
2017-11-14 09:55:05 +01:00
Rhys Arkins
d9974a8994
refactor: drop unused isClosed from github and gitlab ( #1166 )
2017-11-14 09:24:19 +01:00
Rhys Arkins
d2cd755f37
feat: persistent disk cache for changelog data ( #1163 )
...
Use `cacache` to persist changelog results between runs.
2017-11-13 17:44:09 +01:00
Rhys Arkins
f0b094b006
feat: use persistent cache for npm registry queries ( #1161 )
...
This PR refactors the npm registry code to use `make-fetch-happen` instead of got. Additionally, it will use `cacache` for a disk-based caching solution.
2017-11-13 15:08:30 +01:00
JYC
c9335d5bf6
Add VSTS support ( #1049 )
...
This PR adds support for Microsoft's [Visual Studio Team Services](https://www.visualstudio.com/team-services/ ) platform (in addition to existing GitHub and GitLab support).
Closes #571
2017-11-12 10:26:53 +01:00
Rhys Arkins
6d17d4a58d
fix: only ignore monorepo packages if matching glob ( #1153 )
...
Previously, packages within a workspace or lerna project were ignores across the entire repo. Now, they are only ignored within package files that exist in the same lerna project or yarn workspace.
Closes #1147
2017-11-12 10:16:46 +01:00
Rhys Arkins
9c086703c6
fix: strip windows line returns from templates ( #1151 )
2017-11-12 07:23:09 +01:00
Rhys Arkins
ce88c32f94
refactor: drop {{#if isGitHub}} from templates ( #1150 )
...
Pull Request and PR are already search/replaced in JS code for GitLab.
2017-11-12 07:22:13 +01:00
Rhys Arkins
fca3a1fbd1
feat: json logging ( #1146 )
2017-11-11 07:51:36 +01:00
Rhys Arkins
c3d84d4767
fix: find .renovaterc.json when onboarding ( #1145 )
2017-11-11 05:18:24 +01:00
Rhys Arkins
36dc55b894
fix: remove release.date conversion ( #1144 )
2017-11-10 16:04:25 +01:00
Rhys Arkins
3e34d52819
feat: cache changelog responses ( #1143 )
...
Returns cached value if from the to versions are an exact match. No expiry.
Closes #262
2017-11-10 14:48:14 +01:00
Rhys Arkins
ede1a59527
feat: support .renovaterc json configuration file ( #1142 )
...
Renovate will now check for `renovate.json`, `.renovaterc`, and `.renovaterc.json` in that order. JSON-only supported (no YAML).
Closes #969
2017-11-10 14:10:16 +01:00
Rhys Arkins
88fc9c4155
refactor: use Object.entries when looping over key/val ( #1141 )
...
Closes #1079
2017-11-10 13:46:16 +01:00
Rhys Arkins
ca5b080aac
refactor: check blocked PR before checking schedule ( #1140 )
...
Instead of checking schedule first, now we check first if the PR is blocked by a closed PR. This provides more consistent feedback.
Closes #1100
2017-11-10 13:32:33 +01:00
Rhys Arkins
28a7ea7193
feat: enable Docker minor and patch tag upgrades ( #1137 )
2017-11-10 13:11:51 +01:00
Rhys Arkins
8a87bcd918
feat: rebase onboarding branch ( #1139 )
...
Previously, Renovate's "Configure Renovate" onboarding branch would never get rebased after it was created. Now, it will be rebased every time the base branch is updated, unless the list of modified files is more than `renovate.json` alone.
Closes #1111
2017-11-10 13:07:06 +01:00
Rhys Arkins
e9bf2a26e1
fix: check commit message before ignoring web-flow commits ( #1138 )
2017-11-10 13:00:18 +01:00
Rhys Arkins
f78b52d235
fix: use assignee_id when adding assignees in gitlab ( #1136 )
...
GitLab’s API requires assignee *id* and not *username* when adding assignees to a merge request. Now, we allow Renovate users to still configure usernames and we will look up the ID and use it in the request instead.
Closes #1131
2017-11-10 09:59:12 +01:00
Rhys Arkins
f9e9351409
fix: use gitlab iid consistently in all pr-related functions ( #1135 )
2017-11-10 09:29:24 +01:00
Rhys Arkins
30b82c06a7
fix: gitlab MR bodies should use html ( #1134 )
2017-11-10 09:15:51 +01:00
Rhys Arkins
51cde5d03f
feat: multipleMajorPrs ( #1129 )
...
With this PR, Renovate will default to raising only one major PR at a time. e.g. if you have Webpack 1.x then you will get only one major PR for webpack v3 and not also for v2. set multipleMajorPrs=true to get multiple.
Closes #1101
2017-11-10 04:57:07 +01:00
Rhys Arkins
c5c6a55c1a
fix: docker separateMajorReleases and groupName ( #1130 )
...
Bring docker config support up to npm support.
2017-11-09 20:53:25 +01:00
Rhys Arkins
793c2c95bd
fix: basBranch typo in gitlab api ( #1128 )
2017-11-09 15:30:00 +01:00
Rhys Arkins
53b6848061
fix: don’t upgrade docker from unstable to new major unstable ( #1126 )
...
Before, if current node version was 7 then Renovate would propose upgrades to versions 8 and 9. However, like with npm we should allow upgrades to unstable only if it’s the same major version or if ignoreUnstable is explicitly set to false.
2017-11-09 10:15:08 +01:00
Rhys Arkins
4cebc7ad64
feat: unstablePattern ( #1125 )
...
This adds a configuration option unstablePattern - used only by Docker currently - that can be used to define a regex patternt to identify “unstable” versions.
Closes #1035
2017-11-08 21:57:34 +01:00
Rhys Arkins
0c882ce135
refactor: add logger master ( #1124 )
2017-11-08 15:43:09 +01:00
Rhys Arkins
0251fad68b
fix: allow multiple whitespace in dockerfile from line ( #1123 )
2017-11-08 14:47:52 +01:00
Rhys Arkins
0bc2953113
fix: lock file stderr was not being included in pr comments ( #1122 )
2017-11-08 13:26:55 +01:00
Rhys Arkins
f044aca321
refactor: streamline platform file operations ( #1121 )
...
Remove original getFile, getFileContent, and getFileJson and replace with getFile (which used to be getFileContent.. shortened now for convenience). Also remove unused getSubdirectories functions.
2017-11-08 12:23:32 +01:00
Rhys Arkins
55307389a4
refactor: improve docker digest lookup logging ( #1119 )
2017-11-08 11:21:13 +01:00
Rhys Arkins
00e7821fcb
feat: use mostly markdown for pr bodies ( #1118 )
...
Existing solution uses HTML bodies for PR descriptions, as that was the easiest way to get consistency between GitHub and GitLab. However, VSTS supports only markdown so we needed to refactor how this is done. Now, GitHub PR bodies uses only minimal HTML (for summary/details) while GitLab PR bodies are converted to HTML using GitHub flavoured markdown for maximum compatibility. VSTS will be able to strip out the minimal markdown.
Closes #1018
2017-11-08 11:09:26 +01:00
Rhys Arkins
89e13d05fe
fix: refactor logger addStream and depType logging ( #1117 )
...
* fix: refactor logger addstream
* remove depTyp setMeta
2017-11-08 09:59:32 +01:00
Rhys Arkins
8c479071fd
refactor: use global logger ( #1116 )
2017-11-08 06:44:03 +01:00
Rhys Arkins
602752f9fe
refactor: use platform global ( #1115 )
2017-11-07 13:31:34 +01:00
renovate[bot]
c1df1b2cb8
chore(deps): update dependency prettier to v1.8.0 ( #1113 )
...
* chore(deps): update dependency prettier to v1.8.0
* reformat
2017-11-07 11:52:15 +01:00
Rhys Arkins
f8be45055a
refactor: remove config.api and use platform dispatcher ( #1114 )
2017-11-07 11:46:10 +01:00
Rhys Arkins
35e83b2211
fix: split registry and namespace correctly ( #1112 )
2017-11-06 13:19:41 +01:00
Rhys Arkins
1af60f5158
feat: Support 'AS' names in Dockerfile from line ( #1110 )
...
This PR adds support for 'AS' names in Dockerfiles. e.g. `FROM node:8 AS base`. It also adds logic to detect and ignore - for now - any image sources from custom registries.
2017-11-06 11:36:06 +01:00
Rhys Arkins
76a680b98d
fix: add check for Dockerfile content before parsing ( #1107 )
2017-11-05 14:23:20 +01:00
Rhys Arkins
bec66f4d40
refactor: add logging to detect/resolve code ( #1106 )
2017-11-05 13:51:29 +01:00
Rhys Arkins
edfca74ede
refactor: make common platform public API ( #1104 )
...
Refactors file system of platforms and adds test to ensure GitHub and GitLab have same module.exports signatures.
2017-11-05 08:18:20 +01:00
Rhys Arkins
5a852baa61
fix: do not clean uninitiated repository ( #1102 )
2017-11-05 06:27:46 +01:00
Rhys Arkins
f4d0fea6ae
fix: use colon not at when describing existing docker image:tag ( #1103 )
2017-11-05 06:17:16 +01:00
Rhys Arkins
80bed05146
feat: return result from renovateRepository
...
Repository logic code has been rearranged for better logic and file separation.
Closes #654
2017-11-05 05:45:49 +01:00
Rhys Arkins
8c27d97d5d
feat: rebase stale pin branches ( #1099 )
2017-11-03 20:15:44 +01:00
Rhys Arkins
7d5d330d8f
fix: loosen docker digest replace regex ( #1098 )
...
By searching for the *original* value, this caused problems if a tag gets updated multiple times in the same PR.
Closes #1050 hopefully for the last time
2017-11-03 14:48:14 +01:00
Rhys Arkins
14883f818b
refactor: automerge npm pins ( #1096 )
2017-11-03 12:07:12 +01:00
Rhys Arkins
d5462049a6
chore: implement require-await eslint rule ( #1095 )
2017-11-03 11:56:25 +01:00
Rhys Arkins
dcdfc0d004
fix: refactor pin dependencies first using array.some ( #1094 )
2017-11-03 11:50:57 +01:00
Rhys Arkins
935a70e88c
refactor: use plain markdown for onboarding pr body ( #1093 )
...
This PR refactors the onboarding PR logic into its own subdirectory and redesigns it to use plain markdown instead of html. Plain markdown in PR bodies is a requirement for adding VSTS Support ( #1049 ).
2017-11-03 10:01:54 +01:00
Rhys Arkins
9769f5a5db
refactor: detectPackageFiles returns packageFiles not config ( #1092 )
2017-11-03 09:25:18 +01:00
Rhys Arkins
9c1b7d78cd
refactor: move monorepos logic to npm manager ( #1091 )
...
* refactor: move monorepos logic to npm manager
* fix test
2017-11-03 09:06:42 +01:00