Skip to content

Release v2.16.0#10760

Open
jschmidt-icinga wants to merge 5 commits intomasterfrom
changelog-216
Open

Release v2.16.0#10760
jschmidt-icinga wants to merge 5 commits intomasterfrom
changelog-216

Conversation

@jschmidt-icinga
Copy link
Copy Markdown
Contributor

@jschmidt-icinga jschmidt-icinga commented Mar 16, 2026

Aggregation of the changes in master since v2.15 was branched of. If anything is missing, please tell me.

I also need feedback on how (or if) to summarize the changes related to the REST API in the upgrading docs.

TODO

  • Add remaining changes that get merged until release
  • Update release date
  • Add some detail for prominent new features
  • Add some introductory text
  • Properly add fixes from security releases prepared in private branches
  • Re-categorize and polish
  • Double-check no contributors were missed
  • Finish upgrading docs

CHANGELOG.md Outdated

### Bugfixes

+ Fixed a race condition in the `v1/console` handler: [#10681](https://github.com/Icinga/icinga2/pull/10681) and [#10675](https://github.com/Icinga/icinga2/pull/10675)
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.

The rest of the file uses * instead of + for list items.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

Somehow overlooked this. Will change this on the next push.

@jschmidt-icinga jschmidt-icinga changed the title [WIP] Update changelog for v2.16 [WIP] Update changelog and upgrading docs for v2.16 Apr 1, 2026
@jschmidt-icinga
Copy link
Copy Markdown
Contributor Author

  • Moved the deprecated section.
  • Added an initial version of the upgrading docs containing only a paragraph on the ElasticsearchWriter -> OTLPMetricsWriter migration and the user-defined Namespace deprecation so far.

Questions regarding the upgrading docs:

  • Should I mention the other features deprecated earlier that are going to be removed in v2.18 and their migration paths?
  • How much detail do we want on the REST API Changes? I'll have to look through the pull-requests again, but I think it's mostly that some commands now return errors for individual objects under several circumstances.
  • Anything else relevant?

@julianbrost
Copy link
Copy Markdown
Member

Should I mention the other features deprecated earlier that are going to be removed in v2.18 and their migration paths?

I'd avoid having incomplete lists in the sense that if there's a list, that should list all. But for the things that were deprecated previously, I wouldn't write much more than for example "IDO -> switch to Icinga DB", "ExternalCommandListener -> switch to REST API" (i.e. not going into much details).

How much detail do we want on the REST API Changes? I'll have to look through the pull-requests again, but I think it's mostly that some commands now return errors for individual objects under several circumstances.

Are you referring to the change that when responses are streamed, the HTTP status code can no longer reflect possible errors that happen later on?

@jschmidt-icinga
Copy link
Copy Markdown
Contributor Author

Are you referring to the change that when responses are streamed, the HTTP status code can no longer reflect possible errors that happen later on?

It's not only when streaming, but also a 503 code being returned for individual objects when the wait group gets locked on shutdown. This also affects handlers that don't actually stream the results on the fly, like DeleteObjectHandler.

Copy link
Copy Markdown
Member

@yhabteab yhabteab left a comment

Choose a reason for hiding this comment

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

Can you please explain your exclusion process? Like, how do PRs in your eyes qualify to be mentioned in the Changelog? I've found here quite a bunch of PRs that IMHO should be mentioned in the Changelog, but they aren't. Also, there should be an introduction to the Changelog, stating that it is not a complete list of all changes, and referring to the milestone for a complete list of changes.

@yhabteab
Copy link
Copy Markdown
Member

yhabteab commented Apr 1, 2026

This also affects handlers that don't actually stream the results on the fly, like DeleteObjectHandler.

Aren't those changes already part of v2.15?

@jschmidt-icinga
Copy link
Copy Markdown
Contributor Author

Can you please explain your exclusion process? Like, how do PRs in your eyes qualify to be mentioned in the Changelog?

User facing changes in the released part of the software.

So no fixed compiler warnings, documentation changes, CI-stuff, testing-stuff and things like that. While some previous version entries had "Code Quality Improvements" as a category, I personally don't think that's worthwhile, but I'm happy to add any of these categories back in if that's the consensus.

Also, there should be an introduction to the Changelog, stating that it is not a complete list of all changes, and referring to the milestone for a complete list of changes.

I can do that.

@yhabteab
Copy link
Copy Markdown
Member

yhabteab commented Apr 1, 2026

So no fixed compiler warnings, documentation changes, CI-stuff, testing-stuff and things like that.

Please re-check the list of PRs I provided above (I don't know why GitHub isn't rending the bullet points nicely with their titles - you can edit that comment of mine and go to the preview tab, and GitHub will render them pretty nice), but there is not a single PR about CI there. Compiler warnings, okay, must not be included, but why aren't docs PRs user facing changes? These changes will be rendered on icinga.com once v2.16 is released 🤷!

@julianbrost
Copy link
Copy Markdown
Member

Are you referring to the change that when responses are streamed, the HTTP status code can no longer reflect possible errors that happen later on?

It's not only when streaming, but also a 503 code being returned for individual objects when the wait group gets locked on shutdown. This also affects handlers that don't actually stream the results on the fly, like DeleteObjectHandler.

A quick mention of that, like briefly saying that there are now new cases where errors will be reported for individual objects and that it's a good idea to check those as well would be helpful. Just don't write the part on the streamed responses in a way that would suggest there was no use for checking individual object errors in other cases.

@yhabteab
Copy link
Copy Markdown
Member

yhabteab commented Apr 1, 2026

Are you referring to the change that when responses are streamed, the HTTP status code can no longer reflect possible errors that happen later on?

It's not only when streaming, but also a 503 code being returned for individual objects when the wait group gets locked on shutdown. This also affects handlers that don't actually stream the results on the fly, like DeleteObjectHandler.

A quick mention of that, like briefly saying that there are now new cases where errors will be reported for individual objects and that it's a good idea to check those as well would be helpful. Just don't write the part on the streamed responses in a way that would suggest there was no use for checking individual object errors in other cases.

#10760 (comment)?

@julianbrost
Copy link
Copy Markdown
Member

This also affects handlers that don't actually stream the results on the fly, like DeleteObjectHandler.

Aren't those changes already part of v2.15?

Missed that comment. Well if that's not new at all, no need to mention it as a new change, obviously.

@jschmidt-icinga
Copy link
Copy Markdown
Contributor Author

jschmidt-icinga commented Apr 1, 2026

@yhabteab

Somehow missed this one, likely because I confused it with the check_smart addition:

For these I was still waiting for a clear indicator that they will get merged when I last went over the list:

On the others, unless I've missed any other bugfixes among those, the rest should only be code-quality improvements and documentation. I'm happy to add categories for both of those and probably will now, unless anybody shares in the opinion that that would be too verbose.

PS: You might want to try + for lists in markdown instead of - and *. It works a bit better in most cases and confuses fewer parsers. (Also it is shared syntax with org, which is 99% of why I always use it.)

@yhabteab
Copy link
Copy Markdown
Member

yhabteab commented Apr 1, 2026

On the others, unless I've missed any other bugfixes among those, the rest should only be code-quality improvements and documentation.

I didn't fully check the list again, but these two clearly arn't just docs changes.

PS: You might want to try + for lists in markdown instead of - and *. It works a bit better in most cases and confuses fewer parsers. (Also it is shared syntax with org, which is 99% of why I always use it.)

That didn't help! See my original list of PRs even after editing.

@jschmidt-icinga
Copy link
Copy Markdown
Contributor Author

  • I've added the remaining PRs under a single bullet point per subcategory (docs, code quality, testing, build) to a new Miscellaneous category.
  • Upgrading docs now mentions all deprecated features. I've left out the API changes as discussed in Teams, due to them being very minor edge cases.

Is there anything else to consider for the upgrading docs?

@jschmidt-icinga jschmidt-icinga marked this pull request as ready for review April 2, 2026 07:44
@jschmidt-icinga jschmidt-icinga changed the title [WIP] Update changelog and upgrading docs for v2.16 Update changelog and upgrading docs for v2.16 Apr 2, 2026
@jschmidt-icinga jschmidt-icinga force-pushed the changelog-216 branch 2 times, most recently from c493aec to 5cd7f14 Compare April 2, 2026 12:57
@cla-bot

This comment was marked as resolved.

@cla-bot cla-bot bot removed the cla/signed label Apr 2, 2026
@jschmidt-icinga jschmidt-icinga changed the base branch from master to changelog-forward-port April 2, 2026 13:15
@yhabteab yhabteab force-pushed the changelog-forward-port branch from 75cba99 to f337c2b Compare April 2, 2026 14:46
Base automatically changed from changelog-forward-port to master April 7, 2026 08:32
CHANGELOG.md Outdated
[#10550](https://github.com/Icinga/icinga2/pull/10550),
[#10767](https://github.com/Icinga/icinga2/pull/10767) and
[#10776](https://github.com/Icinga/icinga2/pull/10776)
* Don't upload 32 bit MSIs to Chocolatey: [#10757](https://github.com/Icinga/icinga2/pull/10757)
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.

I consider this a breaking change or deprecation.

ICINGA2_VERSION Outdated
@@ -1,2 +1,2 @@
Version: 2.15.0
Version: 2.15.2
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.

Consider 2.16.0.

@cla-bot cla-bot bot added the cla/signed label Apr 13, 2026
@jschmidt-icinga jschmidt-icinga changed the title Update changelog and upgrading docs for v2.16 Release v2.16.0 Apr 13, 2026
@jschmidt-icinga
Copy link
Copy Markdown
Contributor Author

  • As suggested by @Al2Klimov I've added a commit that changes the version number and renamed the PR Title to reflect the change in scope. This seemed reasonable, since for previous releases we've also updated both the changelog and version number in one PR.
  • Moved the Chocolatey thing to deprecations. Kept it in a separate commit for now, but will squash it down if everyone is happy with that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants