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

Document how to work with experimental event types #335

Closed
magnusbaeck opened this issue Nov 15, 2022 · 1 comment · Fixed by #343
Closed

Document how to work with experimental event types #335

magnusbaeck opened this issue Nov 15, 2022 · 1 comment · Fixed by #343
Assignees

Comments

@magnusbaeck
Copy link
Member

magnusbaeck commented Nov 15, 2022

Description

At the Oct 2022 summit we discussed deployment events and the suggestion was made to start with an experimental v0 version of the proposed EiffelArtifactDeployedEvent (see #322). If we decide to do this there are few practical matters that aren't obvious and therefore should be documented:

  • What's the first version of an experimental event? 0.0.1 or 0.1.0 or something else?
  • Are we allowed to make any kind of backwards incompatible changes within the v0 line? If so, how should SDKs handle the event versions? For normal non-experimental versions we can use the same data type for all event versions that share a major version because changes will always be forward compatible, but if that no longer is true we can't assume that a particular data type can be used for both, say, 0.1.0 and 0.2.0 of en event.
  • ...

Motivation

If we're going to introduce such a concept we should document how it should be used so that we can be consistent. Documenting things also forces us to really think things through.

Exemplification

As a maintainer of eiffelevents-sdk-go I'd like to know if and how the experimental events will affect how I generate the SDK, or how the SDK can be used by clients.

Benefits

Less ambiguity.

Possible Drawbacks

None.

@magnusbaeck magnusbaeck self-assigned this Nov 15, 2022
@e-backmark-ericsson
Copy link
Member

Notes from community meeting on Dec 8th.

Reference info
Semver states that pre 1.x versions should be allowed to change anything: https://semver.org/#spec-item-4

What should the first version of an experimental event type be? 0.0.1 or 0.1.0?

What about links to experimental event types?

  • It should be ok to link to an experimental event type from an existing event type. Minor version stepping as usual when adding such a link type, with a note saying "This is a link to an experimental event type which might be removed in a later version".
  • If removing such a link to an experimental event type we should step the major version as usual.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

2 participants