Commit graph

958 commits

Author SHA1 Message Date
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