Commit Graph

2241 Commits

Author SHA1 Message Date
Rhys Arkins 239fb93a24 chore: add test for packageNames + packagePatterns combined 2017-12-20 07:26:29 +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 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 5243c01230 fix: don’t use v prefix in commit message if range 2017-12-18 12:39:59 +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 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 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 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 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 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 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 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 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 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 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
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 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 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 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
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 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
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 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