1.5.0
Add optional default repository configuration (#77)
Server administrators can now provide a default repository configuration that will be used when a repository does not define a .bulldozer.yml
file. To enable this, set options.default_repository_config
in the server configuration to a valid configuration. Repositories that specify a .bulldozer.yml
file override the default configuration.
Support whitelisting and blacklisting based on target branch (#99)
By using the branches
option in the whitelist
or blacklist
section, you can enable or block auto-merging based on the target branch of the pull request. This is useful if you only want automatic merges to happen to your default or development branch, but not a production branch.
Add strategies for generating commit titles (#101) ⚠️
When using the the SquashAndMerge
strategy, the title
option controls how the commit title is generated. The three options are:
pull_request_title
- use the title of the pull request; this is the new default behaviorfirst_commit_title
- use the first line of the first (oldest) commit messagegithub_default_title
- let GitHub generate the title; this was the old default behavior
Projects that wish to retain the old behavior can set the title
strategy to github_default_title
, but we believe the new default will produce the same or better results in most cases.
Add support for merging to branches with push restrictions (#106)
Server administrators can now set the options.push_restriction_user_token
property to the personal access token of a normal user account. Bulldozer will use this user when merging into protected branches that have push restrictions. This is to work around a GitHub limitation that prevents GitHub App identities from appearing in the restricted users list.
Other Changes
- Update all dependencies to latest versions
- Add development instructions to the README
- Refactor code to remove duplication and improve testing