Commit Graph

144 Commits (v9.17.0)

Author SHA1 Message Date
Rhys Arkins b55ba07b47 feat(repository): Ignore package files discovered inside node_modules
Renovate will now ignore any package.json files found within node_modules folders, with the option to disable this functionality by setting config.ignoreNodeModules=false.
2017-07-08 07:00:58 +02:00
Rhys Arkins 7a841de7e6 feat(onboarding): dependencies.pinVersions=true for private repos ()
Closes 
2017-07-08 06:01:02 +02:00
Rhys Arkins 3fa4d9236e refactor(workers): Rename core function names for readability 2017-07-07 19:44:49 +02:00
Rhys Arkins 1395187ccc feat(npm): Support packagelock.json maintenance ()
Renovate will now "maintain" npm@5's `package-lock.json` files on the same schedule as existing `yarn.lock` maintenance.

Closes 
2017-07-07 13:57:43 +02:00
Rhys Arkins 4897d2721f fix(onboarding): fix typo in description 2017-07-07 12:53:24 +02:00
Rhys Arkins 6bd74c979d refactor: send config to ensurePr 2017-07-07 12:37:33 +02:00
Rhys Arkins 0e00dc3f83 fix(templates): Set semanticPrefix for Pin Dependencies 2017-07-07 11:16:03 +02:00
Rhys Arkins d8a054410b feat(onboarding): Allow update of renovate.json if it’s unmodified ()
This allows for improvements to renovate’s default renovate.json to be passed on to users who haven’t merged or modified their Configure Renovate PR.

Closes 
2017-07-07 11:09:52 +02:00
Rhys Arkins fd33996f0f refactor(onboarding): Update onboarding description ()
Better describe renovate.json and if/when it needs to be added.
2017-07-07 09:53:22 +02:00
Rhys Arkins 06504b4abe feat(onboarding): conventional commits detection ()
When onboarding, retrieve the most recent commits from the repository and use https://github.com/conventional-changelog/conventional-commits-detector to parse the commit messages to detect if any conventional commit approach is being used.

Closes 
2017-07-07 07:54:09 +02:00
Rhys Arkins 04e20dce8e feat: Prune all orphan branches ()
Schedule logic has been refactored to enable the pruning of all orphan branches. 
Now, schedules aren't checked at package-time, instead package upgrades are queued regardless of schedule. 
At branch time, it is checked whether the *branch* is scheduled and then the branch is not created/updated if it's off-schedule.
This enables the repository worker to know all possible branches and hence be able to determine which remaining branches in the repository are "orphans" to be deleted.

Closes , Closes 
2017-07-07 06:25:38 +02:00
Rhys Arkins eb468341c4 fix: Don’t stringify options body for PR labels ()
This has been broken since the upgrade to got 7.x

Closes 
2017-07-06 19:24:09 +02:00
Rhys Arkins 0ee24ebadf refactor: Use (deps) in semantic prefix defaults ()
Closes 
2017-07-06 14:39:50 +02:00
Rhys Arkins 44de0886a0 feat: Skip schedules when onboarding ()
All PRs/branches will be shown in onboarding even if they have been scheduled for another day or time, providing a "full view" in the onboarding.

Closes 
2017-07-06 14:31:39 +02:00
Rhys Arkins 997c4efac2 feat: baseBranch onboarding ()
baseBranch is now used when computing the onboarding description in 'Configure Renovate' PR.
2017-07-06 14:12:52 +02:00
Rhys Arkins 3f35ba73d0 feat: Detect duplicate keys in renovate.json ()
Closes 
2017-07-06 14:09:35 +02:00
Rhys Arkins ff8d7f23d5 fix: update repositoryWorker tests 2017-07-06 12:31:02 +02:00
Rhys Arkins 1122f76e98 fix: branchifyUpgrades should return an object () 2017-07-06 10:59:25 +02:00
Rhys Arkins 48c960b841 refactor: Move generateConfig code from branchWorker to repositoryWorker ()
This allows the onboarding PR to share the grouping logic and not have to duplicate it.
2017-07-06 10:35:27 +02:00
Rhys Arkins dc5773c2e5 feat: Configurable base branch for PRs ()
Collaborator
rarkins commented 14 hours ago
Base branch for Pull Requests is now configurable via a new baseBranch configuration option. To take effect, this much be present in the default branch (e.g. master in most cases) so that it can be discovered and used. See FAQ for more details.

Closes 
2017-07-06 10:26:18 +02:00
Rhys Arkins ea4e370d3f feat: Prune stale branches ()
A separate routine is run after branch creation to detect any branches that should be deleted. A branch will be removed if:
- It was not created by renovate in the last run, AND
- It has no PR, or its corresponding PR is not mergeable

Closes , Closes 
2017-07-05 11:57:22 +02:00
Rhys Arkins 5c34b74b08 feat: Show schedules in PRs ()
Closes 
2017-07-05 08:09:35 +02:00
Rhys Arkins 1716e122cd feat: expand PR errors ()
Errors in PRs are expanded to include:
- If renovate.json parsing fails
- If an empty or unparseable package.json was found

Closes 
2017-07-05 07:12:25 +02:00
Rhys Arkins c30472dd43 feat: Add ability to skip status checks for automerge ()
This starts off [](https://github.com/singapore/renovate/issues/359) (configurable status checks) but only implements one sub-feature of it: disabling status checks to allow automerge if tests fail or if no tests are present.
2017-07-05 07:02:25 +02:00
Rhys Arkins 6034159909 Fix: add extra check for commit author ()
* fix: Detect undefined commit.author

Closes 

* refactor author check

* Add debug

* Update test
2017-07-04 19:22:09 +02:00
Rhys Arkins e0e0b259c3 feat: Show warnings and errors in regular PRs ()
If errors or warnings are present, they will be displayed in the PR body of all PRs now (not just onboarding).

Closes 
2017-07-04 13:52:23 +02:00
Rhys Arkins 2f987a4037 feat: Show warnings and errors in Onboarding PR ()
Warnings and Errors are bubbled up when renovating a repository, together with the existing upgrades. The Onboarding PR ("Configure Renovate") now displays them and encourages the user to fix before merging/closing the PR.

Closes 
2017-07-04 12:39:28 +02:00
Rhys Arkins f2833c8275 refactor: Add 'package' stage to config definitions ()
* Add package phase

* Rename phase to stage
2017-07-03 10:31:36 +02:00
Rhys Arkins 6dc143e76c fix: delete token before npm api tests () 2017-07-02 21:29:09 +02:00
Rhys Arkins faa754d136 Use NPM_TOKEN for registry lookup 2017-07-02 20:52:31 +02:00
Rhys Arkins 1cf8330125 fix: group branchName handlebars error
Closes 
2017-07-02 07:50:46 +02:00
Rhys Arkins c608ac2e46 refactor: rename branchWorker.updateBranch -> processBranchUpgrades 2017-07-02 06:44:49 +02:00
Rhys Arkins b58452620a refactor: rename groupUpgradesByBranch to branchifyUpgrades 2017-07-02 06:40:40 +02:00
Rhys Arkins 3ec668225a fix: use new config for pin.group.prTitle 2017-07-02 06:38:59 +02:00
Rhys Arkins c4dcad7de8 chore: squash template fields in config log serializer 2017-07-02 06:32:52 +02:00
Rhys Arkins 372b445260 refactor: set recreateClosed in group and lockFileMaintenance 2017-07-02 06:25:42 +02:00
Rhys Arkins 3d9cd11611 refactor: change group config structure
This changes how group are configured to align with the new lock file configuration.

BREAKING CHANGE: old group* template options are no longer supported but can be migrated into group object
2017-07-01 06:49:32 +02:00
Rhys Arkins 6f49927a45 feat: schedule support for lock file maintenance
This feature now allows a custom schedule to be defined for lock file maintenance. It is now enabled by default but runs only before 5m on Sundays. Closes 

BREAKING CHANGE: lock file maintenance is enabled by default.
Rules will apply to both yarn and npm (npm is yet to be implemented however). Existing mainainYarn* variables are removed and replaced by new lockFileMaintenance object.
2017-07-01 06:46:11 +02:00
Rhys Arkins 3a68dafab2 fix: drop packageFile.fileName support
No longer massages packageFile.fileName -> packageFile.packageFile

BREAKING CHANGE: “fileName” notation no longer supported
2017-07-01 06:42:12 +02:00
Rhys Arkins 45c3124a8f feat: support "enabled" config option at all configuration levels 2017-06-30 16:04:23 +02:00
Rhys Arkins 6664110c29 feat: schedules ()
This PR adds a scheduling feature, including timezone support.
It's described in detail in the FAQ, but the summary is:

*   Timezones can be defined so that schedules are written in timezone of target repository
*   Schedules can be written in "plain english"
*   Multiple schedules allowed
*   Schedules can be defined all the way down to package level

Closes 
2017-06-30 14:04:46 +02:00
Rhys Arkins 0ac3625e4f fix: more semanticCommitsEnabled -> semanticCommits 2017-06-30 06:04:15 +02:00
Rhys Arkins 4c79dae98c feat: semantic commit support ()
Defaults to disabled. Included in onboarding.

Closes 
2017-06-29 19:50:26 +02:00
Rhys Arkins 87967b4945 fix: Onboarding config should use repo config, not defaults () 2017-06-29 15:38:18 +02:00
Rhys Arkins 552b5e68c5 Refactor helpers ()
* Move yarn and npm helpers into branch worker

* Fix name

* Move package-json helper

* Update name

* Move changelog

* Move github-app

* Remove unused platform

* Move logger

* Fix lint
2017-06-29 07:29:41 +02:00
Rhys Arkins 742060c8b5 Improve npm and yarn lock error messages ()
Closes  

* Detect versions at startup

* Add meaningful error messages when problems with npm or yarn

* Test helpers

* Test global versions
2017-06-28 22:33:27 +02:00
Rhys Arkins fe82c7ad7c Skip repositories with no package.json ()
* Skip repositories with no package.json

Closes 

* Fix await

* Refactor file file check

* Update tests
2017-06-28 19:37:08 +02:00
Rhys Arkins 698a63ad32 Fetch multiple pages from gitlab projects api endpoint ()
Fixes 
2017-06-28 15:01:05 +02:00
Rhys Arkins c459ba66d6 Fix rebasing logic ()
* Add debug messages to API

* Fix rebase logic

* Fix tests

* Simplify logic

* Update branch.spec.js
2017-06-28 13:20:31 +02:00
Rhys Arkins a8da588f13 Don’t warn if currentVersion is a known tag
Closes 
2017-06-28 12:45:18 +02:00