Commit graph

1596 commits

Author SHA1 Message Date
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
Rhys Arkins
53abbc064a refactor: lessen npmrc logging 2018-05-15 06:07:10 +02:00
Rhys Arkins
8c2ae3248c fix: use yarn workspaces packages if defined, the lerna 2018-05-15 05:58:18 +02:00
Rhys Arkins
3fa8ea22ea logs: log packageFile when failing to look up dependency 2018-05-14 21:53:00 +02:00
Rhys Arkins
1dd623c917 fix: set npmrc before calling getDependency 2018-05-14 21:02:50 +02:00
Rhys Arkins
9db821682c refactor: debug token when npm lookup fails 2018-05-14 13:33:36 +02:00
Rhys Arkins
2bc93e285b fix: correct nested config recommendation 2018-05-14 10:08:41 +02:00
Rhys Arkins
1352bbeb18 feat: discard npmrc if containing variables
.npmrc files will fail during lock file generation if they contain unexpanded variables, so it’s better to discard them instead.
2018-05-14 08:11:23 +02:00
Rhys Arkins
2b2b1d92ab logs: packageFiles -> config 2018-05-14 07:56:17 +02:00
Rhys Arkins
7e8148dfae fix: restore non-root package.json config validation errors 2018-05-14 07:54:24 +02:00
Rhys Arkins
69b264cf01 fix(npm): don’t read npmrc files if ignoreNpmrcFiles=true 2018-05-13 23:06:27 +02:00
Rhys Arkins
ebe9607d79 fix(npm): npmrc/ignoreNpmrc logic 2018-05-13 22:04:06 +02:00
Marco Massarotto
4b5efca7a7 feat: improve compatibility with nexus private npm repo (#1965)
as nexus hosted npm repository does not automatically 'extracts' any value from the published versions we have to manually pick the repository and namepage fields from the latest version if not already defined in the reponse root
2018-05-13 21:39:30 +02:00
Rhys Arkins
57552d5d2b fix(npm): skip packageFile npmrc if ignoreNpmrc 2018-05-13 21:31:46 +02:00
Rhys Arkins
49bbcd48e8 fix(onboarding): rebase existing content
# Conflicts:
#	lib/workers/repository/onboarding/branch/rebase.js
2018-05-13 14:43:07 +02:00
Rhys Arkins
0fa499cd66 fix: getPr canRebase calculation
Closes #1961
2018-05-13 14:36:56 +02:00
Rhys Arkins
8a2818db8e fix(automerge): default to pr, not pr-comment 2018-05-13 08:01:58 +02:00
Rhys Arkins
37874127db fix: return null for large files off master 2018-05-12 06:32:30 +02:00
Rhys Arkins
a8a3197629 fix(github): check pull request reviews before merging 2018-05-12 06:17:24 +02:00
Rhys Arkins
32fc33eedc fix(npm): don’t warn for ENOTFOUND lookup 2018-05-12 05:45:21 +02:00
Rhys Arkins
6cf4faeedf fix: use npm Basic authorization if massaging _auth 2018-05-11 21:01:36 +02:00
Rhys Arkins
2b2fbe97f1 fix(npm): massage _auth to _authToken 2018-05-11 20:10:07 +02:00
Rhys Arkins
a60940497e fix: log redacted auth details if npm lookup fails 2018-05-11 18:44:56 +02:00
Rhys Arkins
8ca30e5b92 fix: use getBranchPr not findPr for onboarding
This allows for the case where the user renames the PR.
2018-05-11 17:59:30 +02:00
Rhys Arkins
6f583ab0e6 fix(presets): set npmrc after first decrypt
In case the renovate config has a npmrc in it that is used to decrypt a preset.
2018-05-11 15:43:14 +02:00
Rhys Arkins
16f6b5810a fix(npm): skip lock file check if no npm package files 2018-05-11 07:23:26 +02:00
Rhys Arkins
680a0bc193 fix: don’t fetch .npmrc in initApis
It will be fetched if there is a package.json anyway
2018-05-10 21:03:25 +02:00
Rhys Arkins
916e258bbd fix: spoil github autolinking even for private repos
Closes #1931
2018-05-09 20:09:34 +02:00
Rhys Arkins
4babdd989e fix: delete branch if PR fails with 502 error 2018-05-09 19:53:46 +02:00
Rhys Arkins
5dfe14b71c logs: less getPrList 2018-05-09 18:44:41 +02:00
Rhys Arkins
16de6a2912 logs: less changelog 2018-05-09 18:42:47 +02:00
Rhys Arkins
e7a9c0fe44 logs: don’t log changelog headings 2018-05-09 18:38:32 +02:00
Rhys Arkins
eccef72b52 fix(npm): restore autodetect pinVersions 2018-05-09 18:17:11 +02:00
Rhys Arkins
4791742060 fix: close configuration issue 2018-05-09 18:03:48 +02:00
Rhys Arkins
3989d47f76 fix: re-enable semantic commit detection 2018-05-09 14:38:17 +02:00
Rhys Arkins
9c7600d6d3 fix: check npmrc before calling includes 2018-05-09 14:20:10 +02:00
Rhys Arkins
407f8fc576 refactor: drop key after decrypt 2018-05-09 13:43:23 +02:00
Rhys Arkins
2ebc0b7718 fix: don’t write .npmrc if contains unexpanded variables 2018-05-09 13:38:24 +02:00
Rhys Arkins
43ac21778f logs: decrease debugging 2018-05-09 13:31:04 +02:00
Rhys Arkins
66804bf211 logs: drop excessive debug 2018-05-09 13:26:16 +02:00
Rhys Arkins
4ecd691325 fix: expand criteria for keeping package.json files 2018-05-09 12:36:58 +02:00
Rhys Arkins
1631757e61 logs: don’t debug package.json content 2018-05-09 12:35:22 +02:00
Rhys Arkins
d4de9108af feat: skip PR generation if lock file generation fails 2018-05-09 12:10:45 +02:00