Commit graph

2138 commits

Author SHA1 Message Date
Rhys Arkins
89de664e7c fix: restore renovate-config to dependency return 2018-07-30 07:36:15 +02:00
Rhys Arkins
32c775265a refactor: separate npm.getPresets 2018-07-30 07:12:30 +02:00
Rhys Arkins
ac5e0313e0 refactor: rename getDependencyInner to getDependency 2018-07-29 16:13:11 +02:00
Rhys Arkins
31f2f4c610 refactor: rename getDependency to getPkgReleases 2018-07-29 16:04:00 +02:00
Rhys Arkins
1da53671b8 feat: vulnerabilityAlertsOnly
For use in new app
2018-07-29 09:03:54 +02:00
Rhys Arkins
ac371e2a37
feat(github): vulnerability alerts (#2321)
Adds rules to skip any configured grouping or schedules that prevent insecure packages from being updated immediately.

If GitHub's vulnerability alerts are detected, package rules are added to force empty schedule and grouping for each affected package. Settings are configurable via new `vulnerabilityAlerts` config object, e.g. so that custom PR titles, labels or assignees can be configured.

Closes #1567
2018-07-29 06:35:25 +02:00
Rhys Arkins
21ed038eed fix: add commitMessageSuffix to definitions 2018-07-28 20:47:25 +02:00
Rhys Arkins
0a50abbbca fix(github): handle case of no vulnerability alerts 2018-07-28 10:32:25 +02:00
Rhys Arkins
0fa593d5ab feat: log github vulnerability alerts 2018-07-28 08:47:49 +02:00
Rhys Arkins
a01b0b80ba fix(gitlab): html formatting to fix details/summary
Fixes #2317
2018-07-27 19:49:56 +02:00
Rhys Arkins
b932829060 fix: Revert "refactor(github): don’t try/catch getAllRenovateBranches"
This reverts commit ba12183626.
2018-07-27 19:26:18 +02:00
Rhys Arkins
728b44d74a refactor(github): don’t try/catch getBranchCommit 2018-07-26 21:28:10 +02:00
Rhys Arkins
fa7b3b5643 fix: pass platform-failure errors up from ensure pr 2018-07-26 21:13:56 +02:00
Rhys Arkins
ba12183626 refactor(github): don’t try/catch getAllRenovateBranches 2018-07-26 21:13:41 +02:00
Rhys Arkins
d336f35ebb logs: log registry and repository when docker token fails 2018-07-26 21:04:23 +02:00
Rhys Arkins
eaf73394d8 feat: linkify changelog/release notes
Adds the library `linkify-markdown` to actively linkify urls, issues and usernames so that they can then be linked to the renovatebot redirector for github.
2018-07-26 17:13:01 +02:00
Rhys Arkins
10620707c0 tests: fix coverage 2018-07-26 16:43:12 +02:00
Nicolas Byl
5819c114ea feat: use www-authenticate headers for docker auth (#2314)
Adds support for processing www-authenticate Header to obtain a token from the Docker servers. In particular, this enables Artifactory to work (without username/passwords for now). This is backwards-compatible to Docker Hub which issues this header with the current hard-coded URLs.
2018-07-26 16:25:44 +02:00
Mathias Schreck
4868a0e9d9 fix: strip yarn-path option from yarnrc (#2311)
Removing the `yarn-path` option from `yarnrc` makes sure that renovate always uses its bundled version of `yarn`.

Closes #2310
2018-07-26 16:18:37 +02:00
Rhys Arkins
785ff84c31 feat(github): replace github links with renovatebot redirects
Converts to HTML then replaces hrefs to github.com with renovatebot.com/gh/. Skips if non-github.com endpoint detected.

Closes #1804
2018-07-25 19:34:01 +02:00
Rhys Arkins
56de9339b5 fix(github): throw platform-failure for 5xx errors 2018-07-25 15:22:23 +02:00
Rhys Arkins
9555b27d9e fix(lookup): use major/minor/patch updateType instead of bump
Helps https://github.com/renovatebot/config-help/issues/67 and https://github.com/renovatebot/config-help/issues/70#issuecomment-407595535
2018-07-25 08:58:17 +02:00
Rhys Arkins
8c41640c87 fix: pass platform errors up 2018-07-23 16:47:37 +02:00
Rhys Arkins
9064e0af62 fix(baseBranches): apply special branch and PR naming only when multiple
baseBranch will be applied in PR title and in branch name only if there are more than one.

Closes #2306
2018-07-23 16:40:30 +02:00
Rhys Arkins
2bb97240f1 fix(github): detect rate limit correctly 2018-07-23 13:11:56 +02:00
Rhys Arkins
dcd90827a1 refactor(onboarding): don’t @ me 2018-07-23 11:27:14 +02:00
Rhys Arkins
1ada8b7913 feat: improved onboarding description
Adds description if onboarding PR is edited or conflicted. Removes config description if PR has been edited. Adds description of PR rate limiting.

Closes #1317, Closes #1684, Closes #1359
2018-07-23 11:11:27 +02:00
Rhys Arkins
bd249c8a86 refactor(onboarding): simplify update text
De-dupplicates text in the onboarding PR and makes it closer to what the theoretical commit message would be.

Closes #1315, Closes #2211
2018-07-22 22:38:59 +02:00
Rhys Arkins
945353376b feat(onboarding): use <details><summary>
Closes #2304
2018-07-22 22:26:45 +02:00
Rhys Arkins
adf5b0d13a fix(onboarding): use platform getPrBody 2018-07-22 22:05:53 +02:00
Rhys Arkins
30334c2722 refactor(onboarding): consistent header depth 2018-07-22 22:05:39 +02:00
Rhys Arkins
1892b90348 feat(gitlab): use markdown for pr bodies 2018-07-22 22:03:14 +02:00
Rhys Arkins
6f868c83f2 refactor(lookup): return warnings object 2018-07-22 11:43:47 +02:00
Rhys Arkins
28afece617 feat: use release notes name in pr body if found 2018-07-22 10:29:55 +02:00
Rhys Arkins
11d85f1ad5 fix(pr): remove double vv versions from pr body
Fixes #2283, Fixes #2119
2018-07-22 10:26:00 +02:00
Rhys Arkins
c97c71a31d refactor(buildkite): use default pr body template 2018-07-22 10:21:07 +02:00
Rhys Arkins
efff72a5e1 chore: fix lint 2018-07-22 09:39:35 +02:00
Rhys Arkins
fa6e23f414 fix: deduplicate file matches
Closes #2299
2018-07-22 09:37:10 +02:00
Rhys Arkins
250c4d8162 feat(npm): ignore vendorised package.json files
Closes #2291
2018-07-22 09:29:19 +02:00
Rhys Arkins
efa5edbdf3 fix(onboarding): delete onboarding PR branch if pr not found 2018-07-22 09:07:31 +02:00
Rhys Arkins
bb28ae27a2 fix: check for valid fromVersion before pinning 2018-07-22 08:05:21 +02:00
Rhys Arkins
981d5a1cce feat: set prBody formatting per-platform
Pushes “getPrBody” logic into platform level to allow platforms to individually do things like text replacements and body length limiting.

Closes #2267
2018-07-22 07:47:23 +02:00
Rhys Arkins
95475be47a refactor(docker): disable rollback PRs by default 2018-07-22 06:51:20 +02:00
Rhys Arkins
14cbd68d42 feat: rollbackPrs
Adds new config option `rollbackPrs` which defaults to `true` (current behaviour). Setting to false will disable creation of rollback PRs - configurable globally, per-language, per-package, etc.
2018-07-22 06:49:04 +02:00
Rhys Arkins
37b1c8f0de
feat: gitlabci.yml support (#1744)
Adds support for .gitlabci.yml files. Part of the logic is same as Docker Compose files, however the “services” list is new/different so requires additional logic.

Closes #1598
2018-07-22 06:33:11 +02:00
Rhys Arkins
cffef4f1b4 logs: debug rollback versions, not info 2018-07-22 06:32:17 +02:00
Rhys Arkins
91215af1ba refactor(js): use language ‘js’ for npm and meteor 2018-07-21 21:28:38 +02:00
Rhys Arkins
a0e2a18e7a
refactor(docker): rename docker manager to dockerfile (#2298)
"docker" in config now refers to the Docker "language", which is the parent of dockerfile, docker-compose and circleci managers.
2018-07-21 19:40:50 +02:00
Rhys Arkins
7066a5dd99 fix(docker): use tag suffix when looking up new digest 2018-07-21 10:47:29 +02:00
Rhys Arkins
2b0cfd436e refactor(docker): don’t include language in extract 2018-07-21 09:38:12 +02:00
Rhys Arkins
d2e1bc38e4 refactor(docker): remove unused exports 2018-07-21 09:34:27 +02:00
Rhys Arkins
03b7bc40ff refactor(circleci): use docker extract 2018-07-21 09:07:11 +02:00
Rhys Arkins
8a116f9ab5 refactor(docker-compose): use docker extract 2018-07-21 09:03:49 +02:00
Rhys Arkins
8175f363b7 refactor: docker.getDep 2018-07-21 09:00:31 +02:00
Rhys Arkins
2af433094c fix(github): treat 401 Bad Credentials as platform failure 2018-07-21 08:38:13 +02:00
Rhys Arkins
482892042a fix(docker): filter out failed digest lookups 2018-07-20 18:59:30 +02:00
Rhys Arkins
5d0b63bd06 fix(github): try large files only if in root dir 2018-07-20 18:52:23 +02:00
Rhys Arkins
a3b4dd4f96 fix(docker): return valid only if valid version 2018-07-20 10:25:44 +02:00
Rhys Arkins
2635b234c7 refactor: don’t warn if no versions found 2018-07-20 10:03:18 +02:00
Rhys Arkins
441eac73b7 fix(docker): currentTag in pr body 2018-07-20 09:40:56 +02:00
Rhys Arkins
7254b5f16c
feat: use generic lookup for docker (#2280)
Removes custom Docker lookup code and instead integrates it with the generic lookup routine used by other package managers. Logic for digest support was added but is used by Docker-only for now.

Closes #2081, Closes #2276
2018-07-20 09:09:01 +02:00
Rhys Arkins
8c0857b88b fix: scheduler parse check 2018-07-20 08:40:43 +02:00
Rhys Arkins
6d86a2753d feat: retry gitlab 429 for up to 5 minutes
Retries every minute up to 5 times if receiving 429 from gitlab.

Closes #1578
2018-07-19 18:17:00 +02:00
Rhys Arkins
c4389cb11b
feat(composer): composer.lock support (#2255)
Adds logic to support updating the accompanying `composer.lock` file whenever `composer.json` is updated.

Closes #2098
2018-07-19 09:14:34 +02:00
Rhys Arkins
449f72131b fix: better enabled/disabled/onboarding/unknown status 2018-07-19 08:54:15 +02:00
Rhys Arkins
b52620f68f refactor: getUpdatedPackageFiles 2018-07-18 20:18:40 +02:00
Rhys Arkins
997904cc63 refactor: branch files plus tests 2018-07-18 20:10:50 +02:00
Rhys Arkins
b3fb4e3bf7 fix: ignore $schema when validating 2018-07-18 09:31:55 +02:00
Rhys Arkins
7a52575738 fix: npm raw/res typo 2018-07-17 20:02:13 +02:00
Rhys Arkins
ad3ac0967c refactor: log npmjs headers 2018-07-17 19:24:05 +02:00
Rhys Arkins
5cb03c94ae fix: log stack trace for unknown errors 2018-07-17 12:18:28 +02:00
Rhys Arkins
a6d2104c63
feat(composer): composer short versions (#2275)
Adds support for "short" versions like `1.0`, `v2.4`, etc.

Closes #2272
2018-07-17 10:23:56 +02:00
Rhys Arkins
63caf742f7 fix(composer): replace ‘v’ prefix in composer.json
If the user already has a ‘v’ prefix then we keep using it. If they don’t, then we don’t. We ignore what is actually on packagist.

Closes #2264
2018-07-17 09:22:46 +02:00
Rhys Arkins
5b15554930 fix(packagist): strip v from versions in response 2018-07-17 09:10:42 +02:00
Rhys Arkins
b77fbeaec9 fix: replace vv in commitMessage 2018-07-17 08:24:43 +02:00
Rhys Arkins
97c19cf3c3 refactor: packagist use semver composer 2018-07-17 08:23:41 +02:00
Rhys Arkins
aa73819e16 fix(semver): handle unstable range replacements better 2018-07-14 10:12:59 +02:00
Rhys Arkins
37e247e114 refactor(npm): major minor handling 2018-07-14 09:49:53 +02:00
Rhys Arkins
cddd9cd858 feat: raise prs with lock file warning
Raises PRs and includes warning if lock file updates fail and release timestamp is greater than a day old.

Closes #2233
2018-07-14 08:14:02 +02:00
Rhys Arkins
e83cb0a9c2 feat: skip schedule for pin dependencies PRs
Pin dependencies PRs can hold up other PRs, so should not be restricted by configured schedules.

Relevant to https://github.com/renovatebot/config-help/issues/64
2018-07-13 06:58:39 +02:00
Rhys Arkins
ca23927735 feat: pin PRs should only block necessary PRs
Previously if there were any “pin” updates then that would block all non-pin updates until the pin one was merged. However, this doesn’t make sense if the other PR is for an unrelated dependency.

Closes https://github.com/renovatebot/config-help/issues/64
2018-07-13 06:48:52 +02:00
Kyle Hornberg
c59a9fdeb5 feat(pip): use PIP_INDEX_URL for repository url (#2240)
Adds support for PIP_INDEX_URL from environmental variables for self
hosted version. This is used instead of any urls set in the config.
2018-07-13 06:22:04 +02:00
Rhys Arkins
2c8b817b4d fix(config): return config.endpoint from env parsing
This should address the GITHUB_ENDPOINT problem in #2249
2018-07-12 14:10:19 +02:00
Rhys Arkins
d56ca3ae23 fix(vsts): detect VSTS_TOKEN 2018-07-12 14:05:10 +02:00
Rhys Arkins
ef92d69a88 fix(github): throw error if commit checking fails
Closes #2246
2018-07-12 07:58:31 +02:00
Rhys Arkins
ee4132fd14 refactor: if/else with return 2018-07-09 11:28:42 +02:00
Rhys Arkins
11c4741271 refactor: fix import order 2018-07-09 11:15:06 +02:00
Rhys Arkins
98bccb37a9 fix(npm): reset npmrcraw 2018-07-06 17:16:50 +02:00
Rhys Arkins
ae7aecac95 fix: setNpmrc after resolveConfig 2018-07-06 17:04:40 +02:00
Rhys Arkins
42145e60fc refactor: log npmrc 2018-07-06 16:56:29 +02:00
Rhys Arkins
19e1eab56e fix(pypi): replace all hyphen with underscore before comparing names 2018-07-06 07:34:36 +02:00
Ayoub Kaanich
219950399e feat: endpoints credentials handling 2018-07-06 07:26:52 +02:00
Rhys Arkins
9616fab1af fix: delete bloat from updateConfig 2018-07-06 07:14:26 +02:00
Rhys Arkins
80c6ca1e72 fix: don’t discard updateTypes rules before they’re applied 2018-07-06 06:43:02 +02:00
Rhys Arkins
2d4aa131a3 fix: empty packageRules after applying to update 2018-07-05 22:23:48 +02:00
Rhys Arkins
41b733ce4f fix: Revert "fix: force pin dependencies config"
This reverts commit 247bdf6bb3.
2018-07-05 22:08:19 +02:00
Rhys Arkins
9521b08b03 refactor: use isSingleVersion in template instead of isRage
Refactors template logic to test for isSingleVersion instead of the negative of isRange. This means that new values like `==1.2.0` in python will be presented as v1.2.0
2018-07-05 21:11:58 +02:00
Rhys Arkins
d4f2572651 fix: assign config.force after every mergeChildConfig 2018-07-05 18:55:00 +02:00
Rhys Arkins
13f09b9f36 refactor: simplify patch branch name 2018-07-05 18:21:43 +02:00
Rhys Arkins
85e40963a0 logs: log pypi lookupUrl if name mismatch 2018-07-05 17:56:23 +02:00
Rhys Arkins
47bd56f10e fix(pypi): normalize name before compare 2018-07-05 17:43:23 +02:00
Rhys Arkins
6d82d7b46a fix: check before lower case 2018-07-05 15:58:43 +02:00
Rhys Arkins
a16754c501 fix: case-insensitive datasource name compare 2018-07-05 15:47:43 +02:00
Rhys Arkins
6643a3d09e feat: npm token substitution in npmrc
If an encrypted npmToken is found alongside an unencrypted npmrc in config, then the token will replace any `${NPM_TOKEN}` placeholder found, or be appended to the end of the file. This enables large npmrc files to be defined in config without needing to enrypt the entire thing.

Closes #1796
2018-07-05 15:44:42 +02:00
Rhys Arkins
b2183fe0c2 logs: log regUrl for mismatched npm lookup 2018-07-05 15:42:02 +02:00
Rhys Arkins
16d88aee4c feat: ignoreDeprecated
Renovate now ignores any upgrades that are marked as deprecated, unless the current version is itself also deprecated. The new config option `ignoreDeprecated` can be set to false to disable this if necessary.

Closes #1988
2018-07-05 15:10:50 +02:00
Rhys Arkins
7c0a17e9d0 feat: group together deprecation warnings
Previously, deprecation warnings were done as part of dependency lookups, which were run concurrently. This meant the chance of duplicate issues was high, due to race conditions. Instead, raising the issues is done once all package are looked up, to ensure only one issue per manager/dependency. It also means we can list all of the affected package files, in case of a monorepo.

Closes #2224, Closes #2225
2018-07-05 14:23:28 +02:00
Rhys Arkins
180e68fd43 feat(github): delete duplicate issues when ensuring issue 2018-07-05 14:05:29 +02:00
Rhys Arkins
247bdf6bb3 fix: force pin dependencies config 2018-07-05 12:40:30 +02:00
Rhys Arkins
0144bac228 fix: force config after each package rules apply 2018-07-05 12:37:46 +02:00
Rhys Arkins
6ba8722a2a fix: don’t delete packageRules after apply 2018-07-05 12:29:37 +02:00
Rhys Arkins
8e14804a2c fix: typo delete packageRules 2018-07-05 12:25:28 +02:00
Rhys Arkins
5ea6955aac fix: don’t reuse lock files in branch if any updates are lock file maintenance 2018-07-05 12:06:55 +02:00
Rhys Arkins
517de6f545
feat: repositoryUrls (#2221)
Adds config option repositoryUrls which can be used by pip to define an alternate host to pypi.

Closes #2181
2018-07-05 11:33:50 +02:00
Rhys Arkins
9153e3905f fix: check returned pypi name against requested name 2018-07-05 11:25:48 +02:00
Rhys Arkins
db38553d05 fix(npm): verify that received package name matches requested name 2018-07-05 11:10:25 +02:00
Rhys Arkins
0f1d946c90 fix: delete issueList after creating issue
Delete cached issueList after creating any new issue, so that we don’t end up with “old” state and potentially create duplicate issues.
2018-07-05 09:52:31 +02:00
Rhys Arkins
f3c3761772 refactor: opts.useCache
Adds option for useCache to github and gitlab wrappers.
2018-07-05 09:46:36 +02:00
Rhys Arkins
24a89a775b
feat(npm): deprecation warnings (#2222)
Raises a deprecation warning issue per-dependency. Uses logic that if latest version is deprecated then the package is deprecated.

Closes #1592
2018-07-05 09:16:53 +02:00
Rhys Arkins
07b652507b refactor: remove unused contentPatterns
Closes #2168
2018-07-04 22:40:06 +02:00
Rhys Arkins
1a72984fe2 feat(npm): detect deprecated packages
Adds logic to detect presence of “deprecated” field in latest version. First step towards #1592
2018-07-04 20:33:48 +02:00
Rhys Arkins
cd9adf76b5 refactor: RENOVATE_REUSE_PACKAGE_LOCK
Attempted workaround for #1984
2018-07-04 19:20:34 +02:00
Rhys Arkins
8a8890f82f feat: support updateType=bump
Refactors updateType logic so that a type of “bump” is returned when bumping versions within existing ranges, instead of minor or major. Updates that fall *outside* the existing range will continue to be labeled as minor or major as appropriate.

This value can now be used within packageRules, e.g.

```
  “updateTypes”: [“bump”],
  “labels”: [“bumped version only”]
```

Closes #1942
2018-07-04 10:26:31 +02:00
Rhys Arkins
ebbd417e47 chore: prettier 2018-07-04 10:21:41 +02:00
Rhys Arkins
fb6271e4f7 refactor: rename update.type -> update.updateType 2018-07-04 10:11:53 +02:00
Rhys Arkins
17f54934e2 refactor: remove unused nuget.getPackageUpdates 2018-07-04 10:04:52 +02:00
Rhys Arkins
38334fc362 feat: packageRules updateTypes
Adds an `updateTypes` field to `packageRules` that lets you specify rules based on update types such as major, minor, patch, pin, etc.
2018-07-04 09:30:29 +02:00
Rhys Arkins
173a2b7c26 feat: enable pip requirements support by default
Closes #2216
2018-07-04 07:45:36 +02:00
Rhys Arkins
7669dc36d5 chore: fix prettier formatting 2018-07-03 15:05:06 +02:00
Rhys Arkins
9fb25cb434 fix(npm): strip trailing \n from npmToken 2018-07-03 14:45:13 +02:00
Rhys Arkins
4cfc4e769d refactor: skip duplicate setNpmrc 2018-07-03 14:21:46 +02:00
Rhys Arkins
1242cc5735 logs: log masked token after decryption 2018-07-03 14:21:29 +02:00
Rhys Arkins
d8667619d8 fix(npm): move ignoreNpmrcFile logic out of mirror mode
Logic to automatically ignoreNpmrcFile=true when npmrc found was in the wrong location.
2018-07-03 13:51:59 +02:00
Rhys Arkins
0e83d471fe feat(github): pagination page limit 2018-07-03 11:53:09 +02:00
Rhys Arkins
b2cecc38da logs: print versions when rolling back 2018-07-03 11:49:19 +02:00
Rhys Arkins
c99c74b8e4 logs: additional logs for abuse detection rejection 2018-07-02 21:31:37 +02:00
Rhys Arkins
7c99089b6a logs: debug ignoring npmrc files 2018-07-02 20:26:11 +02:00
Rhys Arkins
d206897113 refactor: Revert "refactor: debug log npm token for each lookup"
This reverts commit b46a95a9e2.
2018-07-02 19:42:48 +02:00
Rhys Arkins
b46a95a9e2 refactor: debug log npm token for each lookup 2018-07-02 19:25:23 +02:00
Rhys Arkins
068ff16ec4 fix: Revert "feat: endpoint credentials handling (#2146)"
This reverts commit 04e0ca1f80.
2018-07-02 13:18:37 +02:00
Dragomir Țurcanu
3e19a4708e feat(gitlab): mergeBranch (#2178) 2018-07-02 11:27:08 +02:00
Ayoub Kaanich
04e0ca1f80 feat: endpoint credentials handling (#2146)
Refactors credentials/token handling to rely less on env variables and instead use an endpoints middleware for credentials handling.

First step towards #2105
2018-07-02 10:01:42 +02:00
Rhys Arkins
8b633f1d2b fix: don’t try branch automerge on first run
Fixes #2201
2018-07-02 09:33:45 +02:00
Rhys Arkins
83bf162949 fix: automerge only if every upgrade in branch is automerge
When generating a branch’s config, iterate through all upgrades and set automerge=true for the branch only if all upgrades have automerge=true. Similarly, set canBeUnpublished=true if ANY upgrade can be unPublished.

Closes #1999
2018-07-02 07:43:21 +02:00
Rhys Arkins
c1bd2197e2 refactor: use res object for lookup 2018-07-01 07:53:26 +02:00
Rhys Arkins
d2eb44ea04 fix(gitlab): massage state opened -> open
Closes #2200
2018-06-30 23:07:37 +02:00
Rhys Arkins
41efc97e60 fix(docker): harden currentValue check 2018-06-29 17:50:29 +02:00
Rhys Arkins
6ad0aba860 tests: fix coverage 2018-06-29 17:44:17 +02:00
Rhys Arkins
7be16a4fd5 fix(docker): update Dockerfile by line number 2018-06-29 17:17:52 +02:00
Rhys Arkins
02b79b96b0 refactor(docker): set newValue to version not version-suffix 2018-06-29 17:15:27 +02:00
Rhys Arkins
103f54402e refactor(docker): extract Dockerfile line by line 2018-06-29 15:54:13 +02:00
Rhys Arkins
1eaf512710 refactor(docker): use extracted value and suffix 2018-06-29 15:18:43 +02:00
Rhys Arkins
c25e979aad refactor: push docker suffix filter to datasource 2018-06-29 14:28:24 +02:00
Rhys Arkins
0eef46102f refactor: docker getTags filter suffix and version 2018-06-29 14:14:36 +02:00
Rhys Arkins
0fb704ff29 refactor(docker): rename currentPlatform to tagSuffix 2018-06-29 14:09:59 +02:00
Rhys Arkins
ebfb97ba78
refactor: use docker versioning (#2195) 2018-06-29 12:59:15 +02:00
Marvin Altemeier
a29228398a fix(gitlab): correct prFiles gitlab api (#2192)
Fixes call to Gitlab API.
Settings require direct path to API, the fixed string doubled it
2018-06-29 12:09:11 +02:00
Rhys Arkins
511fef8135 refactor: use docker versioning
Initially docker versioning is just a node semver wrapper, but it will later be expanded with custom support for docker-specific version tags.
2018-06-29 09:02:49 +02:00
Rhys Arkins
01ccb03b94 feat: massage docker Node.js branches
Manually finds and massages node updates in Docker, Docker Compose and Circle CI so that they should take on the same “renovate/node-8.x” style branch naming. The goal is to unify all node updates into a single branch.
2018-06-29 06:55:42 +02:00
Rhys Arkins
25a35b871d fix(npm): set lockedVersion only if valid semver 2018-06-29 06:31:12 +02:00
Rhys Arkins
b4f7ed2e0d refactor: simplify mergeBranch 2018-06-28 13:56:08 +02:00
Rhys Arkins
46bc8d0068 fix: restore lockFile set for lerna 2018-06-28 13:41:11 +02:00
Rhys Arkins
ae62215936 feat(npm): lerna lockFile maintenance
Adds support for lock file maintenance when lerna is in use.

Closes #1974
2018-06-28 12:33:45 +02:00
Rhys Arkins
645ec7f171 fix: add releaseTimestamp to update 2018-06-28 10:52:56 +02:00
Rhys Arkins
6e0c6affdc logs: setMeta repository before handling error 2018-06-28 10:38:25 +02:00
Rhys Arkins
a3043c47ec feat: log warning if lock file error persists for 1 day
Raises an additional log file warning whenever lock file errors persist for a day or longer. The idea of this is that temporary errors - e.g. caused by npmjs itself - should not disturb the user. 1 day seems like a reasonable time for multiple attemps to be made first, assuming it has been scheduled. Once this is tested in production for a little while and no unexpected problems, it will be converted to actually raise a config warning issue in the repo to get user attention.
2018-06-28 10:17:17 +02:00
Rhys Arkins
108e8cb2b6 fix: remove console.log in npm datasource 2018-06-28 10:03:39 +02:00
Rhys Arkins
edb67e6083 refactor: add latest releaseTimestamp to config 2018-06-28 09:54:31 +02:00
Rhys Arkins
40962940a0
refactor: harmonize release timestamp (#2189)
Renames "date" and "time" values from datasources to instead be "releaseTimestamp".
2018-06-28 09:07:28 +02:00
Rhys Arkins
aa4aee0e56
feat: check pr commit author against gitAuthor (#2170)
If gitAuthor is configured, checks that a PR’s commit matches. If not, it is assumed that someone else force pushed to the repo and we should not rebase it.

Closes #2169
2018-06-28 08:45:28 +02:00
Rhys Arkins
57249e105b
feat: pass gitAuthor to platform during init (#2183)
Refactors platforms to take the admin-only `gitAuthor` and `gitPrivateKey` values during repository initialisation instead of during file commits.
2018-06-27 18:40:54 +02:00
Rhys Arkins
dca7eb6983 fix: match against non-starred workspaces packages
Previously we were missing out cases like `app/package.json` if the workspaces packages were defined like `[“packages/*”, “app/“]`.

Fixes #2186
2018-06-27 14:22:45 +02:00
Dragomir Țurcanu
eec196b8b8 fix: Update GitLab wrapper and snapshots (#2185) 2018-06-27 10:35:33 +02:00
Dragomir Țurcanu
17005fa3e8 fix: Shortened the URLs in the GitLab wrapper (#2184)
fix: Shortened the URLs in the GitLab wrapper
2018-06-27 10:15:15 +02:00
Rhys Arkins
d8b50d7b09 logs: simplify releases 2018-06-27 07:21:17 +02:00
Rhys Arkins
74d567897c fix: apply packageRules after merging upgrade type settings
Fixes #2180
2018-06-27 07:14:41 +02:00
Rhys Arkins
65c1075bd7 fix: reduce embedded changelogs to last 15 2018-06-26 14:45:13 +02:00
Rhys Arkins
88a13f3ab9 fix: loosen default github endpoint check 2018-06-26 14:44:54 +02:00
Rhys Arkins
8da5888ef6 feat: combine branch automergeTypes
This deprecates branch-push and branch-merge-commit automergeTypes and replaces with “branch”, which has the same behaviour as the previous branch-push.

BREAKING CHANGE: branch-merge-commit automergeType behaviour is no longer supported, all branch automerges now use branch push approach.
2018-06-26 14:01:13 +02:00
Rhys Arkins
4d44752847 feat: disable pinDigests by default 2018-06-26 14:01:13 +02:00
Rhys Arkins
cab66158e0 feat: make gitAuthor admin-only
Changes gitAuthor to be an admin-only setting, i.e. configurable by bot admin and not by repo admin.

BREAKING CHANGE: gitAuthor can no longer be configured in repository config and can be set by bot admin only.
2018-06-26 14:01:13 +02:00
Rhys Arkins
1362d980b9 logs: info not warn when branch automerge fails 2018-06-26 12:54:57 +02:00
Rhys Arkins
e51f152eaf feat: gitlab recursive file list disabling
For very large repositories, recursing through the entire repo can be very time consuming. Bot admins can now disable file list recursion by setting the env `RENOVATE_DISABLE_FILE_RECURSION=true`. Then only files within the root directory of repositories will be found.

Closes #2172
2018-06-26 12:28:43 +02:00
Rhys Arkins
25ecbb8a18 fix: correct/update all urls
Updates renovateapp -> renovatebot
2018-06-26 11:31:18 +02:00
Rhys Arkins
46fae9473a fix: abort renovation if branch’s PR has been closed or merged
This fixes a race condition where if someone merged multiple PRs in a row then a renovation-in-progress would get confused and post a “PR has been edited” message to an already-merged PR.

Closes #2115
2018-06-26 11:20:26 +02:00
Rhys Arkins
1b935db8ad fix: skip setBranchStatus when in forkMode 2018-06-26 10:51:27 +02:00
Rhys Arkins
a08adb4291 fix: don’t replace github token if endpoint is api.github.com 2018-06-25 20:01:22 +02:00
Rhys Arkins
47305b975e refactor: add pro pr footer 2018-06-25 11:55:12 +02:00
Rhys Arkins
0e123661cd fix(pip): enable non-equals package patterns 2018-06-25 11:24:59 +02:00
Rhys Arkins
f1e130bf79 fix(docker): pass registry failure up 2018-06-25 00:49:26 +02:00
Rhys Arkins
ec5ac5fbf6 logs: lower npm.update debugs to trace 2018-06-22 22:39:21 +02:00
Rhys Arkins
9d92a958c4 refactor: massage [] or empty string for cli lists 2018-06-21 10:40:55 +02:00
Rhys Arkins
53b6050017
feat: force, forceCli (#2145)
Adds config options force and forceCli. These cover the use case where a certain setting is desired to be forced by the bot admin, regardless of repository config, for example removing all configured schedules in order to force PR creation.

Closes #1731
2018-06-21 10:23:59 +02:00
Rhys Arkins
2decb37a1d refactor: resolve configs immediately 2018-06-21 08:43:19 +02:00
Dragomir Țurcanu
12519bbf8f feat: Add GitLab issue functions (#2150)
This PR adds issue handling functions to the GitLab platform. The implemented functions are `getIssueList`, `ensureIssue` and `ensureIssueClosing` (migrated from GitHub).

Closes #1587
2018-06-21 08:39:24 +02:00
Rhys Arkins
163bad03c9 fix: catch JSON.parse error for renovate config 2018-06-20 19:11:57 +02:00
Rhys Arkins
eb21abf118 feat: flatten nested packageRules after resolving
This solves the problem of nested packageRules, such as when a paths-based rule is used to extend a preset that itself includes packageRules.

Closes https://github.com/renovatebot/config-help/issues/58
2018-06-20 14:57:05 +02:00
Rhys Arkins
bdfc1145df fix: add back from/to versions to cache key 2018-06-20 13:54:47 +02:00
Rhys Arkins
eddd5e4748 refactor: changelog lookup key
Closes #2151
2018-06-20 12:26:32 +02:00
Rhys Arkins
90782ccfe8 logs: warn whenever creating rollback PRs 2018-06-20 07:38:21 +02:00
Rhys Arkins
65122fc3ba fix: throw err for bad credentials when fetching commit messages 2018-06-20 07:38:02 +02:00
Rhys Arkins
6916d924c5 refactor(github): log rate limit when receiving bad-credentials 2018-06-19 19:18:01 +02:00
Rhys Arkins
ccb7bd5cd8 fix: typo 2018-06-19 15:45:04 +02:00
Rhys Arkins
068e6daa01 fix: pass Bad credentials error up from ensurePr 2018-06-19 15:34:37 +02:00
Rhys Arkins
93d8b72e9a fix: throw error for getTags bad credentials 2018-06-19 15:32:26 +02:00
Rhys Arkins
7651029064 feat: strip Reviewable content before comparing existing PR body
Closes #2141
2018-06-19 15:15:13 +02:00
Dragomir Țurcanu
e82e5d0d7b feat: GitLab getPrFiles function (#2131)
This PR integrates the `getPrFiles` function into the GitLab's wrapper.
2018-06-19 13:39:25 +02:00
Ayoub Kaanich
e0ebf03e5a feat: PEP440 ranges (#2137)
Closes #2085
2018-06-19 13:32:05 +02:00
Rhys Arkins
321c5285fb fix: don’t use npm homepage as repositoryurl 2018-06-17 09:40:41 +02:00
Rhys Arkins
3ca84399d6 fix(changelog): use upgrade for lookups 2018-06-16 19:45:16 +02:00
Rhys Arkins
b23a61b890 fix: use manager in changelog cache lookup key 2018-06-16 19:45:16 +02:00
Rhys Arkins
ddf479dec3 fix(onboarding): Correct onboarding “merged or closed” statement 2018-06-16 09:58:14 +02:00
Rhys Arkins
4ccbc20bc1
fix: match current version (#2135)
fix: match current version
2018-06-16 09:28:11 +02:00
Rhys Arkins
52309282b1 refactor: log changelog cache expiry 2018-06-15 08:07:05 +02:00
Rhys Arkins
67c7d9a6cf fix(gitlab): remove absolute gitlab.com api endpoints 2018-06-15 07:20:48 +02:00
Rhys Arkins
5705ee32fe refactor: enable nuget by default 2018-06-14 16:13:47 +02:00
Rhys Arkins
124807974a feat(nuget): support changelogs
Refactors nuget lookups to use generatic logic and fill in repositoryUrl to enable changelogs.
2018-06-14 15:52:37 +02:00
Rhys Arkins
de0590116d fix(semver): expand isVersion to ensure only one param passed 2018-06-14 12:06:58 +02:00
Sam Neirinck
87575f49a3 feat: nuget support
Adds basic support for renovating C# project files. The scope is initially limited to:

- .Csproj only (no VB.NET / F#)
- SDK style csproj's only (this is the default in .net core anyway)
- Limited to nuget.org support (no custom repository support)

Closes #935, Closes #2050
2018-06-14 11:17:14 +02:00
Rhys Arkins
cca41dc2fa fix: add changelog json check 2018-06-14 10:50:18 +02:00
Rhys Arkins
bcd708fd7c feat: cache full changelog 2018-06-14 09:54:00 +02:00
Rhys Arkins
26f23eb50e feat: expire changelog cache after 1 hour 2018-06-14 09:48:00 +02:00
Rhys Arkins
f8a9ebf9bd fix: changeloge cache expiry 1 hour 2018-06-14 09:42:38 +02:00
Rhys Arkins
466cb07d02 refactor: changelog filename 2018-06-14 09:39:23 +02:00
Rhys Arkins
373b9d8a0a refactor: simplify githubBaseURL/opts 2018-06-14 09:32:59 +02:00
Ayoub Kaanich
4bcfabd2c3 feat: manager-agnostic changelog (#2109)
Closes #2101 #2092
2018-06-13 11:00:58 +02:00
Rhys Arkins
a60c210076 fix(docker): extract Dockerfile FROM on adjacent lines 2018-06-13 10:25:42 +02:00
Dragomir Țurcanu
188005c91e feat: GitLab wrapper commenting functionality (#2091)
Adds a series of functions related to the commenting aspect of GitLab for the API wrapper. These functions are: `getComments`, `addComment`, `editComment`, `deleteComment`, `ensureComment` and `ensureCommentRemoval`.
2018-06-12 07:18:28 +02:00
Rhys Arkins
c9f7b74bc7 refactor: add releases to lookupUpdates return 2018-06-12 06:53:56 +02:00
Rhys Arkins
db45e5cc71 refactor: push repositoryUrl down 2018-06-12 06:47:43 +02:00
Rhys Arkins
5166b86a1b refactor: lookupUpdates return object not array 2018-06-12 06:45:57 +02:00
Rhys Arkins
c47019ff57 Revert "fix: refactor changelog npm to work with new datasource"
This reverts commit 7bc9a2db8e.
2018-06-11 16:29:06 +02:00
Rhys Arkins
7bc9a2db8e fix: refactor changelog npm to work with new datasource 2018-06-11 15:06:53 +02:00
Rhys Arkins
688ec14b6a refactor: datasource return array of releases 2018-06-11 14:28:50 +02:00
Rhys Arkins
65eea92c8f refactor: add gitRef to packagist datasource 2018-06-11 13:16:59 +02:00
Rhys Arkins
c82c348c8e refactor: add gitRef to npm datasource 2018-06-11 13:16:42 +02:00
Rhys Arkins
dc9125e4a3 refactor: add gitRef to github datasource 2018-06-11 13:15:47 +02:00
Rhys Arkins
819acba06a refactor: Revert "refactor: use gitRef instead of gitHead"
This reverts commit 29d00aa477.
2018-06-11 10:30:40 +02:00
Rhys Arkins
29d00aa477 refactor: use gitRef instead of gitHead 2018-06-11 10:21:55 +02:00
Rhys Arkins
bb78d47e15 refactor: filter and sort versions in datasource 2018-06-11 09:55:44 +02:00
Rhys Arkins
71c662c11f fix: purl return empty qualifiers object 2018-06-11 07:32:38 +02:00
Rhys Arkins
371c10f259 refactor: rename clean=true to sanitize=true 2018-06-11 07:15:54 +02:00
Ayoub Kaanich
dc143eb4e5 fix: use better tag endpoint for github datasource 2018-06-11 06:54:17 +02:00
Rhys Arkins
45d0dcf492 fix: pass auto’d rangeStrategy to getNewValue
Closes #2111
2018-06-11 05:52:46 +02:00
Rhys Arkins
801bfbef11 fix(github): don’t check branch protection if fork mode
Closes #2073
2018-06-08 11:33:46 +02:00
Rhys Arkins
453fb7033f fix(npm): gracefully skip empty dependency version 2018-06-08 11:26:18 +02:00
Rhys Arkins
dbfb5606e5 logs: lower pnpm lock file error to info 2018-06-08 11:25:53 +02:00
Rhys Arkins
01d2fb3bca
feat: datasource wrapper (#2100)
Adds a wrapper to all datasources to provide a generic purl-based interface.
2018-06-08 10:49:08 +02:00
Rhys Arkins
94cdf2cd3e
feat: composer range support (#2099)
Adds range support for composer. Mostly leverages existing npm semver range support, but massages where necessary to support Composer differences.

Closes #2097
2018-06-08 08:44:16 +02:00
Rhys Arkins
f7babff2fa fix: handle additional npm semver range types 2018-06-08 07:35:20 +02:00
Ayoub Kaanich
697b80aaf0 feat: composer exact semver support (without lockfile updates) (#1993)
This PR adds the packagist datasource plus basic exact semver Composer support. Composer lockfile updating is not yet supported.
2018-06-08 06:15:13 +02:00
Dragomir Țurcanu
aa84074d76 feat: comment in PR when branch automerge fails (#2058)
This PR adds the feature of commenting on a failed automerge. It's done by adding a conditional in `lib/workers/branch/automerge.js` which, in case of receiving `failure` or `error` from the `getBranchStatus` function, returns the "branch status error" value. Another modification is in `lib/workers/branch/index.js`, which is an adition to the failure response of the `tryBranchAutomerge` function. The added functionality is the ability to add a comment to the PR which had a failure automerging. In case of receiving the aforementioned "branch status error" value, to the comment is appended a note which emphasize the fact that there're multiple failed status checks.

Closes #1934
2018-06-07 14:42:51 +02:00
Rhys Arkins
4919306265 fix(npm): correct npmrc replace regex 2018-06-07 13:05:56 +02:00
Rhys Arkins
2a0f2fbba9 fix(npm): filter out package-lock = false in .npmrc
This prevents us from updating npm lock files
2018-06-07 12:39:49 +02:00
Rhys Arkins
3dffefd82b logs: fix npm lockfile debug filename and command 2018-06-07 12:32:38 +02:00
Rhys Arkins
5fd996c9cc refactor: use isSingleVersion not isRange 2018-06-06 12:25:10 +02:00
Rhys Arkins
8b9d4b106c fix(pep440): return ==version when pinning 2018-06-06 12:21:16 +02:00
Rhys Arkins
603b77799b
feat: refactor unpublishSafe for multiple package managers (#2090) 2018-06-06 11:04:54 +02:00
Rhys Arkins
b21f873cf5 fix(travis): retain existing full config when updating
Also improved sorting and quotation detection.

Closes #2087
2018-06-05 18:40:05 +02:00
Rhys Arkins
bef7f13de2 feat: versioning.isSingleVersion() 2018-06-05 16:08:00 +02:00
Ayoub Kaanich
f283104988 feat: use purl for pip requirements (#2067) 2018-06-05 11:26:08 +02:00
Rhys Arkins
96b4788697 tests: fix coverage 2018-06-05 11:22:21 +02:00
Rhys Arkins
bc652673ba fix: properly handle null rollback 2018-06-05 10:48:38 +02:00
Rhys Arkins
c2c50222cc refactor(pip): expand matches logic 2018-06-05 10:26:58 +02:00
Rhys Arkins
775b2979eb fix(pip): reset regex before each search 2018-06-05 10:21:36 +02:00
Rhys Arkins
05260a5b16 refactor: remove semver dependency from github datasource
Instead, perform isVersion filter in lookup
2018-06-05 08:15:11 +02:00
Rhys Arkins
468349d8f4 feat: pypi datasource
Adds pypi datasource, compatible with existing npm and github ones. Performs no validation/filtering of versions.
2018-06-05 07:55:22 +02:00
Rhys Arkins
98e9198c8e refactor: replace indexOfs 2018-06-04 20:44:32 +02:00
Connor Brathwaite
398303235b (refactor): delegate generic predicate checking to @sindresorhus/is (#2021)
Closes #1764
2018-06-04 20:07:22 +02:00
Rhys Arkins
9fbaf9a3ca fix: unpublishable / unpublishSafe
Corrected logic mistake and renamed unpublishable (internal) to canBeUnpublished to make it easier to follow logic.

Closes #2080
2018-06-04 14:56:47 +02:00
Rhys Arkins
0aaee7bd82 refactor: simplify lookup 2018-06-04 12:23:21 +02:00
Rhys Arkins
233fa20781 refactor: source yarn versions from npm not github 2018-06-04 06:40:13 +02:00
Rhys Arkins
188f1d90b6 refactor: configurable github datasource versioning
Closes #2062
2018-06-04 06:38:13 +02:00
Rhys Arkins
7feca361af refactor: github datasource default to tags 2018-06-04 06:36:48 +02:00
Rhys Arkins
fd03b8c7fa refactor: github datasource clean 2018-06-04 06:33:36 +02:00
Rhys Arkins
c21029ecbb
refactor: rename some versioning interface (#2078)
isPinnedVersion -> isVersion
rangify -> getNewValue
2018-06-04 06:03:21 +02:00
Rhys Arkins
d8cb261ecb
refactor: rename version -> value (#2076)
Renames currentVersion to currentValue, newVersion to newValue, newVersionMajor to newMajor, and newVersionMinor to newMinor.
2018-06-04 05:48:20 +02:00
Rhys Arkins
24e341b5b4 feat: support semver equals (=)
Adds support for upgrading equals values, e.g. from `=1.0.0` to `=1.0.1`.
2018-06-03 22:25:27 +02:00
Ayoub Kaanich
549b12529f feat: use versionScheme for changelog 2018-06-03 19:32:34 +02:00
Rhys Arkins
dc6959c939 fix: set versionScheme for all manager extracts 2018-06-03 19:13:39 +02:00
Rhys Arkins
b367d8030b fix: suppress empty versionScheme warnings 2018-06-03 19:07:59 +02:00
Ayoub Kaanich
c81be6c7c0 fix: update pep440 2018-06-03 18:42:55 +02:00
Ayoub Kaanich
1a5ffae679 refactor: package rules use versionScheme 2018-06-03 18:32:44 +02:00
Ayoub Kaanich
85f17eed74 feat: pep440 versioning 2018-06-03 18:24:30 +02:00
Ayoub Kaanich
ec53ef78e9 refactor: lookup use versioning wrapper 2018-06-03 18:08:32 +02:00
Ayoub Kaanich
6278410be1 refactor: remove semver.intersects, use matches instead 2018-06-03 17:13:51 +02:00
Ayoub Kaanich
c54d0ab69d refactor: add versioning wrapper 2018-06-03 17:02:53 +02:00
Rhys Arkins
0523a6ef99 refactor: simplify filterVersions 2018-06-03 16:45:34 +02:00
Rhys Arkins
527c355b48
refactor: move getRangeStrategy to manager (#2072) 2018-06-03 14:25:05 +02:00
Rhys Arkins
b6ee52e74d fix(github): do not retry blog size 403s 2018-06-03 09:44:35 +02:00
Rhys Arkins
dd09707c20 refactor: default versionScheme to ‘semver’ 2018-06-03 07:43:09 +02:00
Rhys Arkins
d982056cd3 fix: skip non-semver nvmrc 2018-06-02 19:36:12 +02:00
Rhys Arkins
d1f49e93eb fix: buildkite semverScheme -> versionScheme 2018-06-02 18:59:02 +02:00
Rhys Arkins
13e8e1a2ff fix: travis get clean versions 2018-06-02 18:58:48 +02:00
Rhys Arkins
2bdc54501a feat: use purl for nvm 2018-06-02 18:28:54 +02:00
Rhys Arkins
e6c43be773 refactor: simplify Node.js commit message 2018-06-02 18:23:18 +02:00
Rhys Arkins
ecb81eff39 fix: disable ghe token when looking up git datasource 2018-06-02 17:07:15 +02:00
Rhys Arkins
0a38cfbc22 chore: add versionScheme to purl extract 2018-06-02 10:19:36 +02:00
Rhys Arkins
2383c5c462 fix(npm): bumpVersion use correct from version
Closes #2060
2018-06-02 07:44:01 +02:00
Rhys Arkins
ba4d9b4f24 fix: use major template for buildkite 2018-06-01 19:50:48 +02:00
Rhys Arkins
7c68d57612 fix: correctly filter pinned versions 2018-06-01 19:34:10 +02:00
Rhys Arkins
a8786a1714 logs: don’t log full pr in branch 2018-06-01 19:33:52 +02:00
Rhys Arkins
1f72f473d1 fix: look up npm versions from npmjs not github 2018-06-01 19:07:55 +02:00
Rhys Arkins
fc48fac138 fix: ignore unknown engines fields
Ignores any engines fields in package.json that aren’t node, npm or yarn.

Closes #2059
2018-06-01 18:14:49 +02:00
Rhys Arkins
5a8c9f57f6 logs: info not warn for no rollback 2018-06-01 17:51:14 +02:00
Rhys Arkins
0c71862aa7 logs: info not warn for github retrieval problem 2018-06-01 17:13:16 +02:00
Rhys Arkins
8b279fd38b feat: use purl for buildkite 2018-06-01 17:12:08 +02:00
Rhys Arkins
c86ea5a4ec refactor: bazel use purl 2018-06-01 16:23:13 +02:00
Rhys Arkins
784a0598b9 refactor: use options for github datasource 2018-06-01 15:32:17 +02:00
Rhys Arkins
bc7728f1d2 refactor: use purl.parse 2018-06-01 14:48:49 +02:00
Rhys Arkins
04f1e40c30 fix: disable major node engines updates 2018-06-01 11:49:44 +02:00
Rhys Arkins
795df6e4bf fix: check for res.repository.url 2018-06-01 10:36:35 +02:00
Rhys Arkins
d02914fd3b tests: update test for repositoryUrl 2018-06-01 10:11:42 +02:00
Rhys Arkins
761573a865 fix: massage www out of npm repository url 2018-06-01 09:55:43 +02:00
Rhys Arkins
e39cc9a584
feat: use purl for package lookups (#2041) 2018-06-01 09:02:51 +02:00
Rhys Arkins
8bdc7a6c95 refactor: add purl for meteor 2018-05-31 22:21:28 +02:00
Rhys Arkins
122bb3e3d8 refactor: don’t massage @types url 2018-05-31 22:07:44 +02:00
Rhys Arkins
54e4733ca5 refactor: fetch return if skipReason present 2018-05-31 21:02:07 +02:00
Rhys Arkins
d6132ff634 fix: flatten only if updates are present 2018-05-31 20:53:29 +02:00
Rhys Arkins
077923109e
feat: add purl to npm packages (#2053) 2018-05-31 19:19:42 +02:00
Rhys Arkins
d37eb1d694
logs: debug new node releases 2018-05-31 16:28:01 +02:00
Rhys Arkins
b5fdc67872
feat: github datasource getDependency (#2051)
Add new function `getDependency` with same structure as in npm.
2018-05-31 16:24:14 +02:00
Rhys Arkins
c429e4b157 feat: support bumping greater than or equal to ranges 2018-05-31 13:11:56 +02:00
Rhys Arkins
a8bcd004dd logs: fix fileCount 2018-05-31 13:07:09 +02:00
Rhys Arkins
f347e500a0 fix: use getBranchPr for finding open PR for rebase check 2018-05-30 11:03:30 +02:00
Rhys Arkins
830d56875e
fix: restore allowedVersions filter (#2044)
Also adds tests to make sure it’s never lost again.

Fixes https://github.com/renovatebot/config-help/issues/49
2018-05-30 08:27:49 +02:00
Rhys Arkins
8737a324df fix(yarn): handle complex workspaces packages 2018-05-29 22:06:36 +02:00
Rhys Arkins
5475e567d7 fix(node): use semver sort 2018-05-29 15:17:41 +02:00
Rhys Arkins
1da997dbe6 fix: pin when range strategy is autodetected to pin 2018-05-29 14:27:34 +02:00
Rhys Arkins
51108d3fed logs: log dep name with pin message 2018-05-29 14:20:28 +02:00
Rhys Arkins
6cb8f7f583
feat: refactor lookup/package logic for npm (#2038) 2018-05-29 12:44:01 +02:00
Rhys Arkins
d71639bbf8 refactor: fetch array or object 2018-05-29 10:27:41 +02:00
Rhys Arkins
16e66ad67b fix: do not log find before lock file
Closes #2039
2018-05-29 10:04:51 +02:00
Rhys Arkins
9e80c2bde7 fix(npm): unpublishable calculation 2018-05-29 09:52:32 +02:00
Rhys Arkins
1271414cb0 fix: respect latest only if ignoring unstable 2018-05-29 09:32:15 +02:00
Rhys Arkins
7ad306da44 feat: allow rollback + upgrades
If a current version is missing, we now return both rollback as well as upgrades if upgrades are present.
2018-05-29 07:13:44 +02:00
Rhys Arkins
6c2cabac6e feat: optimise lerna reuse
Removes `npx` approach and instead installs each version globally.

Closes #1801
2018-05-29 06:25:46 +02:00
Rhys Arkins
7b149df595 logs: less debug 2018-05-28 22:25:33 +02:00
Rhys Arkins
720c280421 refactor: handle lock file errors due to registry not being ready 2018-05-28 20:12:17 +02:00
Rhys Arkins
6f77953795 fix(npm): use —no-audit 2018-05-28 19:41:34 +02:00
Rhys Arkins
4ae2ee10e9 refactor: run find after npm install 2018-05-28 19:19:10 +02:00
Rhys Arkins
98c250af1a fix: log info messages if package being updated fails 2018-05-28 18:47:58 +02:00
Rhys Arkins
f211ebedaa fix: limit embedded changelogs to last 20 releases 2018-05-28 17:11:55 +02:00
Rhys Arkins
3ba49df83d refactor: disable non-offline tests 2018-05-28 16:25:53 +02:00
Rhys Arkins
19550a328c refactor: log npm 429 retries 2018-05-28 16:16:30 +02:00
Rhys Arkins
1210300dd2 fix: retry 429 with retry-after 2018-05-28 16:10:23 +02:00
Rhys Arkins
11d5a8b02e fix: don’t update starred versions 2018-05-28 15:18:40 +02:00
Rhys Arkins
1c115ae6b6 refactor: move getRangeStrategy into npm/lookup 2018-05-28 13:25:54 +02:00
Rhys Arkins
c9e9bb73a8 fix: widen complex bump range instead of skip 2018-05-28 12:42:02 +02:00
Rhys Arkins
b43f51dac7 fix: embed release notes for at most first 50 releases
Closes #2032
2018-05-28 10:13:50 +02:00
Rhys Arkins
addf184473
feat: refactor getPackageUpdates for manager expansion (#1994)
The goal of this PR is to refactor npm's version lookup/grouping as much as possible to enable the same logic to be used for other package managers.
2018-05-28 09:09:22 +02:00
Dragomir Țurcanu
65b9934a5b tests: remove semver validation (#2027)
Closes #2024
2018-05-27 16:54:11 +02:00
Rhys Arkins
a9f47ca0b0 fix(yarn): read yarnrc contents properly
Properly fixes #2020
2018-05-26 18:22:32 +02:00
Rhys Arkins
941d06172d fix: fortify get changelog to not error
Adds check for res before res.project and wraps in try/catch so that any future errors are ignored and don’t stop the PR.

Fixes #2023
2018-05-26 06:58:02 +02:00
Rhys Arkins
c2100ffc21 fix(yarn): look for .yarnrc for every package file
Closes #2020
2018-05-25 12:12:03 +02:00
Rhys Arkins
2610015467 fix: abort repository when lockfile error 2018-05-24 16:28:36 +02:00
Dragomir Țurcanu
89978d4ebe fix: GitLab MR rebasing logic (#2006)
Fixed the 404 error on branch rebasing. (GitLab)

Closes #1992
2018-05-23 19:26:56 +02:00
Rhys Arkins
6799374e34 fix(npmrc): don’t massage naked ‘_auth’ 2018-05-23 19:18:27 +02:00
Rhys Arkins
c338bdd2dd fix(nmprc): massage _auth to _authToken only if base64 encoded 2018-05-23 18:13:17 +02:00
Rhys Arkins
d6cc5b0755 fix: default rangeStrateg to “replace” 2018-05-23 11:17:20 +02:00
Rhys Arkins
00031c09fa refactor: return latestVersion with npmjs result 2018-05-21 17:42:49 +02:00
Rhys Arkins
7f8dd25a97 refactor: matchesSemver -> matches 2018-05-21 17:40:15 +02:00
Rhys Arkins
63f2669153 refactor: semverSort -> sortVersions 2018-05-21 17:35:50 +02:00
Rhys Arkins
7a1d30c8b6 refactor: move semver to lib/versioning 2018-05-21 17:30:55 +02:00
Rhys Arkins
d45f957cfd refactor: defer isX upgrade classifications 2018-05-21 17:20:41 +02:00
Rhys Arkins
2f1e1a979a fix: Revert "feat: permission check in initRepo (#1983)"
This reverts commit 09978ae8dd.
2018-05-19 09:15:10 +02:00
Dragomir Țurcanu
09978ae8dd feat: permission check in initRepo (#1983)
Added permission checking on `initRepo` which, in case of an error, throws a clear message (`The token doesn't have the write permissions to the repository`)

Closes #509
2018-05-19 08:33:41 +02:00
Rhys Arkins
c89929d3e2 fix: rename changelog cache file 2018-05-19 08:22:37 +02:00
Marco Massarotto
929231b46c Feat/allow ghe changelog (#1981)
This PR follows up and fixes #1968

The previous PR didn't behave correctly as it was expecting Github Enterprise to ALWAYS been configured and that the github.com token was available in the `GITHUB_COM_TOKEN` env variable.
But for non GHE project `GITHUB_COM_TOKEN` is not defined and github.com token is available at the `GITHUB_TOKEN` env variable instead.

This updated PR fix this issue and avoid further problems by prioritising `github.com` over GHE.
Now the code is NOOP if no `GITHUB_ENDPOINT` is configured.

If it's configured, instead, now the codes assumes that, by DEFAULT, a dependency is hosted on `github.com` so it removes `GITHUB_ENDPOINT` and use `GITHUB_COM_TOKEN` as Github token immediately.
They are restored only if needed, when a dependency is hosted on the provided GithubEnterprise.
2018-05-19 07:44:56 +02:00
Rhys Arkins
702ccee67a refactor: rename changelog fields 2018-05-18 17:20:20 +02:00
Rhys Arkins
4c80a433df fix(npm): handle jump between unstable releases in same major
Closes #1990
2018-05-18 16:07:33 +02:00
Rhys Arkins
4822bc5d91 fix: Revert "fix(npm): ignore deprecated versions"
This reverts commit 7fcbb47b3a.
2018-05-18 08:34:34 +02:00
Rhys Arkins
ced6ee20bb fix: Revert "fix(npm): deprecate only if deprecated === ‘this’"
This reverts commit 080d945153.
2018-05-18 08:34:17 +02:00
Rhys Arkins
080d945153 fix(npm): deprecate only if deprecated === ‘this’ 2018-05-18 08:23:49 +02:00
Rhys Arkins
7fcbb47b3a fix(npm): ignore deprecated versions
Closes #1988
2018-05-18 07:44:34 +02:00
Rhys Arkins
93379c4b79 refactor: separatePatchReleases -> separateMinorPatch
Closes #1952
2018-05-17 07:40:29 +02:00
Rhys Arkins
6c3645d18c refactor: separateMajorReleases -> separateMajorMinor 2018-05-17 07:37:37 +02:00
Rhys Arkins
eaf10143c2 refactor: rename multipleMajorPrs -> separateMultipleMajor 2018-05-17 07:33:59 +02:00
Rhys Arkins
7f4cb4aa57
feat: rangeStrategy (#1954)
This PR replaces the existing `pinVersions`, `upgradeInRange` and `versionStrategy` settings with a single one: `rangeStrategy`.

Previously:
 - `pinVersions` could be `true` or `false`, but defaulted to `null`, which meant that Renovate would decide. `true` meant that Renovate would replace existing ranges like `^1.0.0` with an exact/pinned version such as `1.2.0`.
 - `upgradeInRange` could be true or false, default to false. If `true`, it would mean Renovate would replace an existing range like `^1.0.0` with something like `^1.2.0`
 - `versionStrategy` could be `replace` or `widen` and was mainly used for `peerDependencies` to widen existing ranges, e.g. from `^1.0.0` to `^1.0.0 || ^2.0.0`

It was possible to set conflicting settings, e.g. configuring `pinVersions=true` and `upgradeInRange=true`.

Now, we combine them into a single setting: `rangeStrategy`:
 - `auto` = Renovate decides (this will be done on a manager-by-manager basis)
 - `pin` = convert ranges to exact versions
 - `bump` = same as `upgradeInRange` previously, e.g. bump the range even if the new version satisifies the existing range
 - `replace` = Same as pinVersions === false && upgradeInRange === false, i.e. only replace the range if the new version falls outside it
 - `widen` = Same as previous versionStrategy==='widen'
2018-05-17 07:16:13 +02:00
Rhys Arkins
407b302cfe logs: info not warn for no packageFile content 2018-05-16 08:50:30 +02:00
Rhys Arkins
10fae47aa0 logs: print cmd when lockfile error 2018-05-16 08:22:28 +02:00
Rhys Arkins
d8aac6aff6 refactor: run find before installs 2018-05-16 08:20:51 +02:00
Ayoub Kaanich
70252b0513 feat(github): parallel paginate (#1973)
Fetch pages 2..10 in parallel

Closes #1944
2018-05-16 07:23:59 +02:00
Rhys Arkins
6dbf9c52ad fix: Revert "feat: support retrieving changelog from ghe hosted repositories (#1968)"
This reverts commit f2fb2e6bda.
2018-05-16 07:04:59 +02:00
Rhys Arkins
c4d3b3dfb4 refactor: pass bad credentials error from branch to repo 2018-05-16 07:03:27 +02:00
Rhys Arkins
b7703e3beb refactor: ls -l before yarn install 2018-05-16 06:58:07 +02:00
Marco Massarotto
f2fb2e6bda feat: support retrieving changelog from ghe hosted repositories (#1968) 2018-05-16 06:38:14 +02:00
Rhys Arkins
791f31b9ac fix: handle null content returned for package file 2018-05-16 06:37:26 +02:00
Rhys Arkins
f63a882cc7 logs: trace getFile 2018-05-16 06:37:01 +02:00
Rhys Arkins
7f49e1b617 logs: fix circleci debug 2018-05-16 06:36:48 +02:00
Rhys Arkins
fc203bcc89 refactor(github): do not retry 401 Bad Credentials 2018-05-16 06:04:55 +02:00
Rhys Arkins
71a8fb894f fix(docker): update old docs link
Closes #1977
2018-05-16 05:44:43 +02:00
Rhys Arkins
2167eeba11 fix(lerna): return gracefully for lock file maintenance 2018-05-16 05:27:12 +02:00
Rhys Arkins
b7c90ce15d refactor(lerna): throw error if no lernaClient 2018-05-15 21:38:39 +02:00
Rhys Arkins
9f8852c1e3 refactor(lerna): debug missing lernaClient 2018-05-15 21:27:47 +02:00
Rhys Arkins
f3584b5fea fix(yarn): optimise existing file writing 2018-05-15 20:52:25 +02:00
Rhys Arkins
da562aadd2 fix(npm): write package-lock.json and npm-shrinkwrap.json 2018-05-15 20:03:06 +02:00
Rhys Arkins
4f5896c908 refactor: monorepo -> internal-package 2018-05-15 13:46:41 +02:00
Rhys Arkins
2323820df9 refactor: replace config dot notation in npm lookup 2018-05-15 07:29:42 +02:00
Rhys Arkins
409cd4adde refactor: monorepoPackages -> internalPackages 2018-05-15 07:21:10 +02:00