Skip to content

Releases: sorenlouv/backport

v6.0.0

29 Dec 09:32
Compare
Choose a tag to compare

Add support for multiple path properties (#273)

This feature makes it possible to list commits that only touch certain files. This is useful in monorepos where many developers work on different projects within a single repo.

backport --path my/project1 --path my/project2

Or via the config file:

{
  "commitPaths": ["my/project1", "my/project2"]
}

Show hint about missing backports (#276, #282)

Sometimes it is not possible to backport a change cleanly due to conflicts. In many cases the conflicts are caused by missing backports. It is often easier and safer to perform the missing backports than manually resolving the conflict. To help the user do this the backport tool will now suggest what is causing the conflict, and which backports are missing.

Details view (#277)

The new details view shows the usual interactive list view but with a little more info and clickable links, enabling the user to jump straight to existing pull requests.

backport --details

Add --reviewer option (#280)

This option makes it possible to request a review when creating the backport:

backport --reviewer sqren

Add status comment to source pull request (#281)

This will add a comment to the source pull request (the pull request that was backported) to indicate the resulting backport pull requests.

Other changes:

  • Update all dependencies and bump to Node 16 (#272)
  • Refactoring and improving tests (#274, #278)

v5.6.6: Automatically merge backport PRs when required checks pass

17 Feb 18:41
Compare
Choose a tag to compare

Add support for --autoMerge and --autoMergeMethod (#248)

v5.5.6: Handle empty commit message

09 Sep 11:03
Compare
Choose a tag to compare

Fix: If a user aborts the cherry pick operation the command git commit --no-edit would previously fail with the error "Aborting commit due to empty commit message". #230

v5.5.0 Add `ci` option

12 Jul 09:03
Compare
Choose a tag to compare
  • Add --ci option to enable programmatic interface and disable interactive prompts (#213)
  • Show url to existing backport PR instead of showing an error (#210)

v5.4.4: `autoFixConflicts` option and redact access token in logs

22 Jun 07:35
Compare
Choose a tag to compare
  • Redact access token from logs (#207)
  • Add autoFixConflicts option (#206)

Example:

// backport.js
require('backport').run({
  async autoFixConflicts(files, directory, log) {
    const didFix = customLogicForFixingConflicts(files, directory, log);
    return didFix;
  }
})
node backport.js

v5.4.3 Add options: `auto-assign` and `assignees`

21 Jun 13:34
Compare
Choose a tag to compare

Example: assign yourself to the backport pull request

backport --auto-assign

if you always want to assign yourself to your backport PRs you can add the following to .backport/config.json:

{
  "autoAssign": true
}

Example: assign another user to the backport pull request:

backport --assign watson

v5.4.0

03 May 11:44
Compare
Choose a tag to compare
  • Add epilogue to --help section which info about reporting bugs (#190)
  • Add --sourcePRsFilter option to filter PRs by the Github query syntax (#189)
  • Add --no-verify and --verify options (#190)

Renames the following cli and config arguments:

  • “branches” -> “targetBranchChoices” (#185)
  • “commitsCount” -> “maxNumber” (#183)
  • "labels" -> "targetPRLabels" (#183)
  • "backportCreatedLabels" -> "sourcePRLabels" (#183)

v5.3.0

04 May 08:07
Compare
Choose a tag to compare
  • Add --dry-run option (#182)

5.2.0

15 Apr 23:30
Compare
Choose a tag to compare
  • Split conflict resolution and staging into separate steps (#175)
  • Add --mainline option (#179)
  • Add branchLabelMapping option: Pre-select branches by reading the labels on the source PR (#180)

5.1.2 Fixes to related backports and perf improvement for conflict resolution phase

01 Apr 09:24
Compare
Choose a tag to compare
  • Find related backports by looking at mergedCommit.oid
  • Improve error reporting by writing the error.message in console and the rest in logs
  • Change setInterval to recursive setTimeout to avoid flooding with requests (mostly relevant for huge git repos)