Skip to content

Release note placeholder might be empty, make parsing lines nil tolerant.#17026

Merged
mashhurs merged 1 commit intoelastic:mainfrom
mashhurs:fix-release-note-generator-for-major-release
Feb 5, 2025
Merged

Release note placeholder might be empty, make parsing lines nil tolerant.#17026
mashhurs merged 1 commit intoelastic:mainfrom
mashhurs:fix-release-note-generator-for-major-release

Conversation

@mashhurs
Copy link
Copy Markdown
Contributor

@mashhurs mashhurs commented Feb 5, 2025

Release notes

[rn:skip]

What does this PR do?

Modifies release note generator in a way that notes might be empty, parsing should be nil tolerant.
Before, generator was failing with following error:

Switched to a new branch '9.0'
./tools/release/generate_release_notes.rb:[5](https://github.com/elastic/logstash/actions/runs/13162596537/job/36734882969#step:6:6)1:in `block in <main>': undefined method `match' for nil:NilClass (NoMethodError)
	from ./tools/release/generate_release_notes.rb:51:in `any?'
	from ./tools/release/generate_release_notes.rb:51:in `<main>'
Error: Process completed with exit code 1.

Why is it important/What is the impact to the user?

No user impact.

Checklist

  • [ ] My code follows the style guidelines of this project
  • [ ] I have commented my code, particularly in hard-to-understand areas
  • [ ] I have made corresponding changes to the documentation
  • [ ] I have made corresponding change to the default configuration files (and/or docker env variables)
  • [ ] I have added tests that prove my fix is effective or that my feature works

Author's Checklist

  • [ ]

How to test this PR locally

Checkout 9.0 branch and run ruby tools/release/generate_release_notes.rb

Related issues

Use cases

Screenshots

Logs


report << "[[logstash-#{current_release_dashes}]]" unless release_notes.any? { |line| line.match(/^\[\[logstash-#{current_release_dashes}/) }
report << "=== Logstash #{current_release} Release Notes\n" unless release_notes.any? { |line| line.match(/^=== Logstash #{current_release}/)}
report << "[[logstash-#{current_release_dashes}]]" unless release_notes.any? { |line| line&.match(/^\[\[logstash-#{current_release_dashes}/) }
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

while I don't doubt that this fixes an issue where release_notes has a nil entry, I am baffled as to how release_notes could possibly have a nil entry, as it is composed from the result of String#split, possibly with a string inserted.

@elastic-sonarqube
Copy link
Copy Markdown

Quality Gate passed Quality Gate passed

Issues
0 New issues
0 Fixed issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarQube

@elasticmachine
Copy link
Copy Markdown

💚 Build Succeeded

@mashhurs mashhurs merged commit e23da79 into elastic:main Feb 5, 2025
@mashhurs mashhurs deleted the fix-release-note-generator-for-major-release branch February 5, 2025 19:08
@mashhurs mashhurs mentioned this pull request Feb 5, 2025
5 tasks
v1v pushed a commit to v1v/logstash that referenced this pull request Feb 25, 2025
v1v added a commit to v1v/logstash that referenced this pull request Feb 25, 2025
…gify

* upstream/main: (27 commits)
  Add Windows 2025 to CI (elastic#17133)
  Update container acceptance tests with stdout/stderr changes (elastic#17138)
  entrypoint: avoid polluting stdout (elastic#17125)
  Fix acceptance test assertions for updated plugin remove (elastic#17126)
  Fix acceptance test assertions for updated plugin `remove` (elastic#17122)
  plugins: improve `remove` command to support multiple plugins (elastic#17030)
  spec: improve ls2ls spec (elastic#17114)
  allow concurrent Batch deserialization (elastic#17050)
  CPM handle 404 response gracefully with user-friendly log (elastic#17052)
  qa: use clean expansion of LS tarball per fixture instance (elastic#17082)
  Allow capturing heap dumps in DRA BK jobs (elastic#17081)
  Use centralized source of truth for active branches (elastic#17063)
  Update logstash_releases.json (elastic#17055)
  fix logstash-keystore to accept spaces in values when added via stdin (elastic#17039)
  Don't honor VERSION_QUALIFIER if set but empty (elastic#17032)
  Release note placeholder might be empty, making parsing lines nil tolerant. (elastic#17026)
  Fix BufferedTokenizer to properly resume after a buffer full condition respecting the encoding of the input string (elastic#16968)
  Add short living 9.0 next and update main in CI release version definition. (elastic#17008)
  Core version bump to 9.1.0 (elastic#16991)
  Add 9.0 branch to the CI branches definition (elastic#16997)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants