Rhys Arkins
b7703e3beb
refactor: ls -l before yarn install
2018-05-16 06:58:07 +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
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
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
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
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
Rhys Arkins
57552d5d2b
fix(npm): skip packageFile npmrc if ignoreNpmrc
2018-05-13 21:31:46 +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
eccef72b52
fix(npm): restore autodetect pinVersions
2018-05-09 18:17:11 +02:00
Rhys Arkins
9c7600d6d3
fix: check npmrc before calling includes
2018-05-09 14:20:10 +02:00
Rhys Arkins
2ebc0b7718
fix: don’t write .npmrc if contains unexpanded variables
2018-05-09 13:38:24 +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
Rhys Arkins
ee3f7f714e
fix: iterate all lerna dirs
2018-05-09 11:17:50 +02:00
Rhys Arkins
2075c20baa
fix: lock file refactor
2018-05-09 10:42:38 +02:00
Rhys Arkins
10012f343a
fix: manager -> lernaClient
2018-05-09 10:14:21 +02:00
Rhys Arkins
a332d8fb50
fix: lernaLockFile -> lernaClient
2018-05-09 09:38:11 +02:00
Rhys Arkins
f1f88e4443
fix: always write config.npmrc
2018-05-09 09:35:02 +02:00
Rhys Arkins
3c0e6b7e88
fix: default lerna client to npm
2018-05-09 09:32:21 +02:00
Rhys Arkins
ecdcd9df4f
feat: refactor dependency extraction ( #1912 )
...
Rewrite of dependency extraction, particularly for npm. Paves way for easier addition of new package managers.
Closes #1882
2018-05-09 08:03:59 +02:00
Rhys Arkins
19e35ffee0
refactor: return object from extract ( #1914 )
2018-05-03 18:09:18 +02:00
Rhys Arkins
a94088ba28
feat: deprecate packageFiles ( #1898 )
...
This PR deprecates the use of `packageFiles` and migrates it to `includePaths` and `packageRules`.
Closes #1887
2018-05-01 09:21:15 +02:00
Rhys Arkins
c356bb0349
feat: custom filenames for package files ( #1894 )
...
Renovate now comes with a variety of package managers supported, each with their own filename pattern(s). These patterns are now exposed for user configuration through the new `fileMatch` list/array configuration option, which has been added to each manager (npm, bazel, docker-compose, etc). `fileMatch` is defined as a mergeable list, meaning that users can add to the default pattern to extend the files being detected.
Closes #799
2018-04-30 13:18:51 +02:00
Rhys Arkins
9753f9dcba
feat: modular branchName/prTitle/commitMessage templating ( #1760 )
...
This PR refactors `branchName`, `commitMessage` and `prTitle` so that they are more easily editable and hopefully more understandable. By breaking each up into subsections, users can modify one part without needing to copy/paste the entire string.
Directly editing any of these fields will now be deprecated and a warning issued.
2018-04-17 08:39:26 +02:00
Rhys Arkins
5bda10af76
logs: drop noisy locked version debug
2018-04-14 07:25:39 +02:00
Rhys Arkins
523b02fbc8
refactor: npm and semver ( #1817 )
2018-04-10 05:20:46 +02:00
Rhys Arkins
1f63173194
fix: remove enabled=true requirement from managers
...
Simplify manager definitions by removing need for explicit enabled=true
2018-04-09 08:23:59 +02:00
Țurcanu Dragomir
2f4d5836f3
feat: Raise config error if config found within nested package.json ( #1777 )
...
Raises config error if renovate config found in a nested package.json
Closes #1742
2018-04-05 22:42:07 +02:00
Rhys Arkins
9a36bdcf1b
refactor: rename setNewValue to updateDependency
2018-03-30 06:05:00 +02:00
Rhys Arkins
533f866c82
fix: don’t raise error for locked private dependencies
...
yarn should be able to handle this now.
Closes #1721
2018-03-29 11:34:36 +02:00
Rhys Arkins
1c96ba54b4
chore: fix Warning typo
2018-03-28 13:33:58 +02:00
Rhys Arkins
9ab4e55bc5
chore: reduce logger.debug volume
2018-03-27 21:57:02 +02:00
Rhys Arkins
acb725beb9
fix: stringify currentVersion before trim
2018-03-27 16:25:06 +02:00
Rhys Arkins
0e658843a2
fix: don’t raise config warning issue when onboarding
2018-03-27 16:02:56 +02:00
Rhys Arkins
b110e22218
fix: filter out deps with no current version
2018-03-27 15:13:16 +02:00
Rhys Arkins
6b7077a3ef
fix: filter and debug failed meteor extraction
2018-03-27 14:00:29 +02:00
Rhys Arkins
94892db991
fix: config warn issue only if using yarn
...
It seems that npm is able to update a lock file even if some of the non-updated deps can not be found. So the renovate halt and warning is only needed if a yarnLock file is present.
2018-03-27 13:41:45 +02:00
Rhys Arkins
fc4d5fc08d
fix: add check if lerna npmClient=yarn
2018-03-22 20:35:25 +01:00
Rhys Arkins
f0cd0cb8b8
feat: raise config action issue if failing to look up locked dependency ( #1704 )
...
If an npm dependency can’t be found, and the package.json has a lock file, then Renovate will encounter lock file errors every time *any* dependency in that package.json has an update. Instead of raising PRs with an error, we instead now stop raising PRs and instead raise a config warning issue. Users can “dismiss” this by setting config option `updateLockFiles` to false.
Closes #1697
2018-03-22 11:55:58 +01:00
Rhys Arkins
3a4a0cb029
feat: updateLockFiles ( #1703 )
...
Adds an option “updateLockFiles” which defaults to true. Setting to false means that updating lock files (e.g. package-lock.json, yarn.lock and shrinkwrap.yaml) will be skipped. The main reason for doing this is for repositories that use a dependency we can’t resolve, so that they can keep updating the package.json without lock file.
2018-03-22 10:41:26 +01:00
Rhys Arkins
c2f0a46d9a
feat: npm shrinkwrap
...
Adds support for npm-shrinkwrap.json files.
Closes #67
2018-03-08 09:46:08 +01:00
Rhys Arkins
6530480410
refactor: simplify detectPackageFiles
2018-03-04 20:03:52 +01:00
Rhys Arkins
5e3822d0cc
refactor: use filePattern for each manager
2018-03-04 16:09:12 +01:00
Rhys Arkins
cd9218444d
refactor: move node package lookup to node helper
2018-03-03 17:36:45 +01:00
Rhys Arkins
3c56f8aeb6
refactor: move manager-specific code under lib/manager ( #1573 )
...
Refactors all non-npm code to live inside lib/manager/*
2018-03-03 14:39:39 +01:00
Rhys Arkins
bb2fc1b7ca
refactor: move npm extract from workers to manager
2018-03-01 10:21:26 +01:00
Rhys Arkins
d68d5ccabf
refactor: move npm resolve code into separate file
2018-02-28 07:06:04 +01:00
Rhys Arkins
f95058d66b
refactor: move npm registry to datasource
2018-02-27 10:49:24 +01:00
Rhys Arkins
23e3a62e9a
fix: unset GHE token before checking node releases
...
Fixes #1540
2018-02-20 21:41:16 +01:00
Rhys Arkins
116939ffb5
feat: renovate node engine in package.json ( #1519 )
...
Adds support for upgrading `node` version in `package.json` > `engines` if the current version is pinned.
- Does not convert from range to pin
- Ignores ranges
- Does not upgrade major versions
2018-02-19 14:21:45 +01:00
Rhys Arkins
2e61b3878e
refactor: increase got retries to 5 for npmjs
2018-02-09 10:29:59 +01:00
Rhys Arkins
03302a47cc
fix: retry npmjs when receiving 5xx errors
2018-02-09 10:15:53 +01:00
Rhys Arkins
c2ca0e46b0
fix: return null rather than registry failure when unpublished deps found
2018-02-09 09:54:15 +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
baa27de289
fix: gracefully handle missing versions in npm registry response
2018-02-02 15:02:43 +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
294fc6b3a5
refactor: don’t warn if current version is a file reference
2018-01-28 15:44:35 +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
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
d774a14910
feat: abort repo for most npm registry errors
...
Renovate now aborts processing of repositories if for any 4xx responses except 401 and 404, and also for 200 OK responses which are unparseable.
Closes #1341
2018-01-21 07:16:28 +01:00
Rhys Arkins
537e3cd7e6
refactor: check for RENOVATE_SKIP_CACHE in npm registry
2018-01-20 19:34:27 +01:00
Rhys Arkins
b72bfdf4ba
feat: bumpVersion ( #1413 )
...
Adds a new configuration option that allows you to bump the version number in the package.json being updated. e.g. you might configure Renovate to bump a patch every time, or maybe for dependencies only and not devDependencies. e.g. if you configure `"bumpVersion": "patch"` then a Renovate PR updating a `package.json` that used to be version `1.2.1` will now see it updated to `1.2.2` (in addition to the dependency version(s) being updated too). Thanks to @gunar for the feature suggestion.
Closes #861
2018-01-20 09:27:05 +01:00
Rhys Arkins
b72be53fba
fix: ensure monorepo packages are ignored in workspaces root too
...
Adds an extra check to ensure that monorepo package names are ignored in the workspaces root too.
Closes #1398
2018-01-17 06:32:07 +01:00
Rhys Arkins
ac09b9d7cd
feat: cache npm results in memory per-run
...
We currently use got’s inbuilt caching for npmjs, however it still results in a roundtrip/304 even when cached. The when using presets is that a package like renovate-config-default gets looked up 10+ times unnecessarily. With this feature we assume that npm lookups don’t change for the duration of a run, and even if they did then we’d prefer the reliability of using the first lookup.
Closes #1389
2018-01-15 11:53:02 +01:00
Rhys Arkins
54d3a62284
fix: throw error when receiving 5xx responses from npmjs
...
This is a partial fix for #929 . After this we should catch and retry.
2018-01-14 15:17:57 +01:00
Rhys Arkins
1cb920fa4b
fix: set/reset npmrc during init
...
Detect npmrc in root of repo and make sure it’s set early. Also ensure npmrc is reset at start of each run if necessary.
Helps #1335
2017-12-30 06:11:04 +01:00
Rhys Arkins
383302d433
refactor: info not warn if npm 401 response
2017-12-27 06:40:24 +01:00
Rhys Arkins
82fa5cd64d
refactor: warn if npm lookup fails with other than 404
2017-12-26 06:45:51 +01:00
Rhys Arkins
163ce43a27
feat: update yarn resolutions
...
Detect if the upgraded dependency was already in “resolutions” and update it too if it was an exact match. Warn if it was not.
Closes #1318
2017-12-25 17:10:20 +01:00
Rhys Arkins
3093b3d787
refactor: log dependency name when lookups are blocking
2017-12-14 06:54:46 +01:00
Rhys Arkins
494dc08897
refactor: unsatisfied range warn -> info ( #1278 )
...
* refactor: unsatisfied range warn -> info
* refactor: downgrade setNewValue warn -> info
2017-12-08 09:39:40 +01:00
Rhys Arkins
c2590a56ab
feat: support multiple yarn workspaces in one repository ( #1264 )
2017-12-04 15:41:37 +01:00
Rhys Arkins
d56654cd88
fix: don’t exception if no rollback versions found ( #1263 )
2017-12-04 15:07:35 +01:00
JYC
7a63342ddd
fix: path joins on windows ( #1216 )
...
Use `upath` for windows-friendly path joins.
Closes #1203
2017-11-24 07:50:49 +01:00
Rhys Arkins
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
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
Rhys Arkins
0f80e7d501
fix: use RENOVATE_TMPDIR ( #1202 )
2017-11-20 07:08:30 +01:00
Rhys Arkins
d5f58fcb6e
feat: allow configurable tmpdir for caching ( #1176 )
2017-11-16 10:26:04 +01:00
Rhys Arkins
b3ec1c0156
fix: set npmrc at repository level ( #1169 )
2017-11-15 12:30:39 +01:00
Rhys Arkins
f0b094b006
feat: use persistent cache for npm registry queries ( #1161 )
...
This PR refactors the npm registry code to use `make-fetch-happen` instead of got. Additionally, it will use `cacache` for a disk-based caching solution.
2017-11-13 15:08:30 +01:00
Rhys Arkins
6d17d4a58d
fix: only ignore monorepo packages if matching glob ( #1153 )
...
Previously, packages within a workspace or lerna project were ignores across the entire repo. Now, they are only ignored within package files that exist in the same lerna project or yarn workspace.
Closes #1147
2017-11-12 10:16:46 +01:00
Rhys Arkins
f044aca321
refactor: streamline platform file operations ( #1121 )
...
Remove original getFile, getFileContent, and getFileJson and replace with getFile (which used to be getFileContent.. shortened now for convenience). Also remove unused getSubdirectories functions.
2017-11-08 12:23:32 +01:00
Rhys Arkins
8c479071fd
refactor: use global logger ( #1116 )
2017-11-08 06:44:03 +01:00
Rhys Arkins
602752f9fe
refactor: use platform global ( #1115 )
2017-11-07 13:31:34 +01:00
renovate[bot]
c1df1b2cb8
chore(deps): update dependency prettier to v1.8.0 ( #1113 )
...
* chore(deps): update dependency prettier to v1.8.0
* reformat
2017-11-07 11:52:15 +01:00
Rhys Arkins
f8be45055a
refactor: remove config.api and use platform dispatcher ( #1114 )
2017-11-07 11:46:10 +01:00
Rhys Arkins
bec66f4d40
refactor: add logging to detect/resolve code ( #1106 )
2017-11-05 13:51:29 +01:00
Rhys Arkins
d5462049a6
chore: implement require-await eslint rule ( #1095 )
2017-11-03 11:56:25 +01:00
Rhys Arkins
9c1b7d78cd
refactor: move monorepos logic to npm manager ( #1091 )
...
* refactor: move monorepos logic to npm manager
* fix test
2017-11-03 09:06:42 +01:00
Rhys Arkins
31e7c8a881
refactor: move languages from branch worker to manager ( #1044 )
2017-10-25 06:48:08 +02:00
Rhys Arkins
7d06bebe2e
refactor: push detect dockerfiles to manager ( #1043 )
...
* refactor platform
* refactor detect package files
* fix
* refactor npm detect
* refactor meteor detect
* refactor: move detect package files completely to manager
* update snapshots
2017-10-25 06:00:07 +02:00
Rhys Arkins
da1ded5344
refactor: move more package worker logic to manager
2017-10-24 15:46:47 +02:00
Rhys Arkins
3b180aa679
refactor: move workers/package/npm to manager/npm/package
2017-10-24 15:46:47 +02:00
Rhys Arkins
3960da6e38
refactor: use manager subdirectory for grouping ( #1040 )
2017-10-24 13:12:44 +02:00