It sounds like a simple question, but it can require multiple steps to find the answer. The following description should work for most projects using GitHub releases with some minor variations. However, the specifics are for Elastic’s release strategy.

Scope the Problem #

The specific question was:

Did the Logstash pull request #14605 make the 7.17.8 release?

The merge in question

To make it more complex:

  • The pull request was merged on the 16th of November and the 7.17.8 release happened on the 8th of December. But the 7.17.8 label was only added to the pull request on the 13th of December; so after the release. Can it be trusted?
  • The fix was a backport to the previous major version 7.x rather than the current one. Features and fixes are developed on the main branch and are then backported on a case-by-case basis for the previous major version.
  • This specific pull request needed a manual cherry-pick since it didn’t backport cleanly. That’s also the reason why the 7.17.8 label wasn’t applied automatically by our backport tool.
  • The fix isn’t mentioned in the release notes.

So did it make the release or not?

Follow the Source #

You can follow along with plain Git but for easier linking (and not having to clone a large repository), the following steps use the GitHub interface.

The basic assumption is that the release tag is what was released. So in this example, it’s the Logstash 7.17.8 release. The release page also shows the commit of the release — 4366546 is the shortened commit hash. Logstash 7.17.8 release

The last remaining part is the backporting strategy: Elastic projects always have a minor version branch from which the releases are cut. So in this example, it’s the 7.17 branch. You can also see that the 4366546 commit happened on that branch. Commit to the 7.17 branch

In the commit history of the branch, you can see:

  • commit 4366546 of the release, and before that,
  • commit 69ce6eb of the bugfix in question.

So it has indeed been part of the release. Commit history on the 7.17 branch

Wrapping Up #

Usually, the quickest way to answer “did a pull request make a specific release” is through the release notes. Or if that is missing, since it’s a manual process for now, through the release label on the pull request. But if that’s also missing or cannot be fully trusted, you must follow along with the source.