Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Discuss] Support providing hints for breaking changes #817

Open
jsoriano opened this issue Oct 16, 2024 · 4 comments
Open

[Discuss] Support providing hints for breaking changes #817

jsoriano opened this issue Oct 16, 2024 · 4 comments

Comments

@jsoriano
Copy link
Member

There are situations where breaking changes may be unavoidable. Currently packages can indicate this in changelogs and/or bumping their major versions, but from a user perspective upgrading to versions with breaking changes looks the same as any other upgrade. After the upgrade they may be missing fields or having other kinds of issues.

It should be possible to include hints in packages to handle breaking changes. There can be two kinds of hints:

  • Hints for Fleet, in case it can do anything during the upgrade.
  • Hints for users, in case they need to be aware of some change or perform some manual action.

These hints should help with the migration path to versions with breaking changes.

There are some places where the hints could appear:

  • In breaking change notes in the changelog, a new field could be added with additional information. We should ensure that breaking changes are displayed to users in the UI when upgrading ([Fleet] Detect breaking changes in integration change logs and flag them to users during integration upgrades kibana#187481), and if possible also in API responses.
  • In field definitions, we could keep definitions of removed fields, along with additional information to indicate if it was completely removed, moved or whatsoever.
  • In READMEs we could also add some notes, but this can be difficult to enforce and users may not read it.

We should also assess frequent reasons for breaking changes.

Try to find opportunities to improve the situation here.

Related issues

@Oddly
Copy link

Oddly commented Feb 5, 2025

Not sure if this is the right place, but deprecation hints when using elastic-package to build packages would be very welcome for those of us who build our own packages.

@jlind23
Copy link
Collaborator

jlind23 commented Feb 18, 2025

@kpollich @jamiehynds @nimarezainia instead of over engineering this could we imagine an easy solution which would be to display a pop up warning the users whenever there is major version bumped in the package ready to be installed? This would avoid us to implement any flags or any logic in the package spec itself. Any thoughts?

@kpollich
Copy link
Member

Do we enforce a major version bump in the integration's version when its targeted stack/Kibana version is bumped by a major? I think this could be a simple way to get some of this behavior, but I don't know that we have any kind of enforcement on package maintainers that would guarantee we trigger the pop-up when it's intended.

@ebeahan
Copy link
Member

ebeahan commented Feb 19, 2025

I don't know that we have any kind of enforcement on package maintainers that would guarantee we trigger the pop-up when it's intended.

The changelog spec includes a breaking-change type maintainers should use for any breaking changes.

Maybe the upgrade banner includes a warning if a newer changelog entry contains a breaking-change?

Image

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

No branches or pull requests

5 participants