Skip to content

Releases: palantir/bulldozer

1.7.0

06 Aug 15:42
Compare
Choose a tag to compare

Add basic support for loading configuration from the environment (#139)

All GitHub configuration and certain sensitive values in the Bulldozer configuration can now be read from environment variables. Values in the environment override values set in the configuration file. The variables are described next to the matching configuration property in the example configuration.

Fix handling of check_run events (#142)

GitHub does not always include a full pull request object in webhook payloads for the check_run event. Always use a full object loaded from the API for processing instead.

Other Changes

  • Build with Go 1.12.7 (#140)
  • Upgrade Godel to 2.16.0 (#140)
  • Documentation improvements (#137, #138)

1.6.2

03 Jul 09:24
Compare
Choose a tag to compare

Update palantir/go-github app (#134)

Fixes tagging for rate limit metrics.

1.6.1

27 Jun 20:43
00811c5
Compare
Choose a tag to compare

Fix commit message generation when delimiters are expected but do not exist (#131)

Documentation for the message_delimiter option states that the commit message will be the content of the pull request body that appears between delimiters. This implies that the message should be empty if the delimiters do not appear in the pull request body, which was not the case.

1.6.0

25 Jun 08:41
bbca0cc
Compare
Choose a tag to compare

Add client caching for GitHub requests (#129)

GitHub responses are now cached and requests are made conditionally when possible. This reduces the request load Bulldozer places on GitHub and avoids hitting rate limits. Cached requests are always re-validated with GitHub to avoid working with stale data. The maximum size of the cache is also configurable by administrators.

Add support for Github Checks (#110)

Bulldozer now correctly considers checks created with the GitHub Checks API when considering pull requests for merging. This change requires accepting new permissions to lookup check status and listen to check_run events.

Other Changes

  • Use standardized logging configuration from palantir/go-baseapp (#109)
  • Improve logging for configuration loading and when skipping branch deletions (#114)

1.5.0

26 Mar 23:07
432b45e
Compare
Choose a tag to compare

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 behavior
  • first_commit_title - use the first line of the first (oldest) commit message
  • github_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

1.4.0

25 Jan 01:16
Compare
Choose a tag to compare

Add ability to extract commit messages from pull request bodies (#72)

When the merge method is squash, you can now select a section of the pull request body text to use as the commit message. The text must be surrounded by the value of the message_delimiter option. For example:

This line will not be included.

==COMMIT_MSG==
This will be the new message for the commit.
==COMMIT_MSG==

This line will not be included.

Allow per-branch merge methods (#90)

Use the new branch_method option to override the default merge method for specific target branches. This is useful if you want to squash commits into develop but use merge commits for master.

Other Changes

  • Log at the INFO level by default if no logging level is configured (#75)
  • Improve README (#74, #79, #83, #84)

1.3.1

29 Nov 09:14
Compare
Choose a tag to compare

Other Changes

  • Fix a regression in whitelisting introduced in 1.3.0 (#73)

1.3.0

27 Nov 11:49
fd299d7
Compare
Choose a tag to compare

Evaluate PR Body independently from comments (#69)

Add a new option to evaluate only the PR Body for whitelists/blacklists

Other Changes

  • Update README

1.2.0

16 Nov 18:54
76d281f
Compare
Choose a tag to compare
  • Feature: When evaluating labels, ignore the case.

1.1.1

14 Nov 04:53
c368ee1
Compare
Choose a tag to compare
  • Fix bug that updated PRs when no update configuration was present.