Commit graph

133 commits

Author SHA1 Message Date
Rhys Arkins
0dd52209b9 tests: drop flakey cache test 2018-12-13 21:24:52 +01:00
Rhys Arkins
320c666a6c chore: prettier 2018-12-12 11:59:43 +01:00
Mike Bryant
9ac84fa4e3 refactor(docker): break out manifest retrieval function (#2931) 2018-12-11 13:04:09 +01:00
Rhys Arkins
f242ef1256 refactor: centralize pypi manual source urls 2018-12-10 09:20:51 +01:00
Rhys Arkins
00de6f2e1e feat: datasource manual source URLs
Adds central location to define manual source URLs for packages.
2018-12-10 06:49:15 +01:00
Rhys Arkins
0f0bae4b65 refactor: datasource manual urls
Provide a central location for mapping changelog and source URLs.
2018-12-10 06:34:39 +01:00
Rhys Arkins
772bc17603 refactor: repositoryUrl -> sourceUrl 2018-12-10 05:59:28 +01:00
Rhys Arkins
e190851f8e
feat(docker): use whole tag as currentValue (#2922) 2018-12-10 04:26:14 +01:00
Sam Bull
d689424ce2 feat(pypi): try multiple hostUrls 2018-11-22 17:14:12 +01:00
Rhys Arkins
36feb03d1c fix(go): filter out versions without leading v
Closes #2850
2018-11-21 22:51:49 +01:00
Rhys Arkins
db0efdf053 feat: trustLevel
New config option replaces existing option exposeEnv. Set trustLevel=high in the bot config if you trust the contents of the repositories you are renovating. Doing so results in env being exposed, access to localhost, etc.

Closes #2739
2018-11-16 12:16:37 +01:00
Ayoub Kaanich
4f320ed9cd feat: Python compatibility (#2736) 2018-11-04 18:12:58 +01:00
Ayoub Kaanich
c6e4379715 refactor: gomod purl (#2729)
<!--
    Before submitting a Pull Request, please ensure you have signed the CLA using this GitHub App:
    https://cla-assistant.io/renovateapp/renovate
-->

<!-- Replace this text with a description of what this PR fixes or adds -->

Closes #2725 <!-- Ideally each PR should be closing an open issue -->
2018-11-02 06:22:42 +01:00
Rhys Arkins
163c4bf53a fix: github getDigest use purl 2018-10-23 13:48:08 +02:00
Rhys Arkins
1409f923d9 feat(composer): packagist.org optimisation
Use direct lookup for packagist.org only
2018-10-18 13:48:30 +02:00
Rhys Arkins
93a331f214 fix(composer): cache per site 2018-10-18 13:11:33 +02:00
Rhys Arkins
81d64bb884 feat: repo mem cache for packagist 2018-10-18 11:06:57 +02:00
Rhys Arkins
5565e4d79d refactor(packagist): don’t warn when 404 registry 2018-10-18 05:52:49 +02:00
Rhys Arkins
956d198f89 fix(composer): handle non-array repositories 2018-10-16 06:33:42 +02:00
Rhys Arkins
0f1710faf8
feat(composer): custom registries and basic auth (#2650)
Adds support for custom Packagist registries.

- [x] Support dynamic packages.json interface for wpackagist.org
- [x] Support static packages.json for satis
- [x] Support basic auth using hostRules
- [x] Write basic auth to `auth.json`

Closes #2574, Closes #2354
2018-10-16 04:52:57 +02:00
Rhys Arkins
ff2e40bd21 feat: terraform datasource
Adds a new datasource for querying terraform module registries.
2018-10-06 09:52:00 +02:00
Rhys Arkins
34061cf53c feat: go datasource getDigest
Closes #2603
2018-10-05 16:04:12 +02:00
Rhys Arkins
f4210631c0
feat: go modules support (#2584)
Adds support for updating go modules (found in go.mod) and the accompanying go.sum checksum files.

Limitations:

- github.com modules only (but supports "redirects" to github e.g. by gopkg.in and golang.org)
- skips major upgrades > v1
- no vendoring support

Closes #933, Closes #2578, Closes #2579
2018-10-01 13:50:36 +02:00
Rhys Arkins
cec7f6dd2e feat(docker): support registryUrls
Adds support for defining a default Docker registry. e.g. if `config.registryUrls = [‘https://docker.company.com']` then lookups for packages like `node` will be done from docker.company.com instead of index.docker.io.
2018-09-19 08:51:43 +02:00
Rhys Arkins
eeae416ac9
feat(npm): support git digest updates (#2528)
Adds support for renovating git references in `package.json` files. Supports updating semver tags or sha1 references ("commit hashes").

Also includes support for updating git references from *private* GitHub repositories, if the following conditions are met:
- Renovate user/token is authorised to read from the source private repository
- Dependency is written like `git+https://github.com/owner/repo.git#ref` in `package.json`

Closes #415, Closes #817
2018-09-17 11:18:18 +02:00
Rhys Arkins
f8cf83380f
refactor: endpoints -> hostRules (#2509)
Renames `endpoints` to `hostRules`
2018-09-12 12:16:17 +02:00
Rhys Arkins
a411b11982 feat(docker): cache docker tags 2018-09-11 14:20:41 +02:00
Rhys Arkins
133505da09 feat(docker): cache digests for 30 minutes 2018-09-11 14:02:06 +02:00
Rhys Arkins
005dab5bcf feat: cache npm results 2018-09-07 14:40:55 +02:00
Rhys Arkins
562ca43859 tests: fix lint 2018-09-03 16:01:47 +02:00
Rhys Arkins
a505376c12 tests: fix github datasource cache test 2018-09-03 15:52:06 +02:00
Rhys Arkins
35b2ce8b42
feat: centralised cache (#2472)
Closes #2466
2018-09-03 07:27:22 +02:00
Rhys Arkins
c1fd79bac7 feat: cache github datasource results for 10 minutes 2018-09-01 07:18:28 +02:00
Rhys Arkins
8cf9334273 tests: update snapshots 2018-08-16 18:37:22 +02:00
Rhys Arkins
e9108a0502 refactor(npm): return package tags 2018-08-16 06:19:39 +02:00
Maximilian Gaß
eb167f571c fix(docker): Only add library/ for Docker Hub images (#2369) 2018-08-11 10:03:03 +02:00
Maximilian Gaß
3a62394435 feat: docker registry authentication (#2339)
Closes #798
2018-08-05 07:25:08 +02:00
Rhys Arkins
048eb6bf6e
feat: github-hosted presets (#2328)
Adds support for GitHub-hosted presets, using the `github>` prefix. Supports single preset per repository only.

Example:

```json
{
  "extends": ["github>renovatebot/renovate"]
}
```

The above would extend the `renovate.json` inside this repository (probably not a good idea, but an example).

Closes #2102, Closes #2312
2018-07-31 06:48:56 +02:00
Nicolas Byl
5a6bce3daa feat(docker): fallback to manifest parsing when digest header is missing (#2316)
As mentioned in #2315 some docker registries don't support the digest header. This PR falls back to parsing the resulting manifest if the header is present.

Closes #2315
2018-07-30 19:00:21 +02:00
Rhys Arkins
83e00f2adc refactor(presets): move more logic into datasource 2018-07-30 08:08:28 +02:00
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
31f2f4c610 refactor: rename getDependency to getPkgReleases 2018-07-29 16:04:00 +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
Rhys Arkins
7066a5dd99 fix(docker): use tag suffix when looking up new digest 2018-07-21 10:47:29 +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
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
5b15554930 fix(packagist): strip v from versions in response 2018-07-17 09:10:42 +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
11c4741271 refactor: fix import order 2018-07-09 11:15:06 +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
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
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
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
4cfc4e769d refactor: skip duplicate setNpmrc 2018-07-03 14:21:46 +02:00
Rhys Arkins
c25e979aad refactor: push docker suffix filter to datasource 2018-06-29 14:28:24 +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
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
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
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
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
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
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
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
Rhys Arkins
603b77799b
feat: refactor unpublishSafe for multiple package managers (#2090) 2018-06-06 11:04:54 +02:00
Rhys Arkins
dd8ca78600 tests: move/rename npm datasource tests 2018-06-06 07:04:54 +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
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
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
a302b11a26
feat: custom docker registries (#1707)
Adds support for custom docker registries. To work (for now), registries must support anonymous public access to their v2 API. Tested against quay.io and gcr.io, including tags pagination for quay. Also needed to add a 10s timeout for registry queries to catch private/firewalled registries that we can't access.

Closes #797
2018-03-23 14:48:36 +01:00
Rhys Arkins
5d73738dde refactor: move docker registry to datasource 2018-02-27 10:28:31 +01:00