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

add "backwardsCompatibility" and "identical" to types #1

Open
olinux opened this issue Jun 28, 2023 · 7 comments
Open

add "backwardsCompatibility" and "identical" to types #1

olinux opened this issue Jun 28, 2023 · 7 comments
Labels
enhancement New feature or request

Comments

@olinux
Copy link
Member

olinux commented Jun 28, 2023

add structures to reflect

"backwardsCompatibility": {
"v1.0": [],
"v2.0": ["v1.0"],
"v3.0": ["v1.0", "v2.0"]
},
"identical": [["v1.0", "v2.0"], ["v3.0"]],

@lzehl
Copy link
Member

lzehl commented Oct 21, 2024

@olinux @annapaola could you please clarify the interpretation/format for both?
(what is now backwards compatible with what and what is identical to what?)

@olinux
Copy link
Member Author

olinux commented Oct 21, 2024

@lzehl : This issue has been created a long time ago, but to the best of my knowledge, we said that we wanted to specify if a type has changed between the versions and/or if it was remaining backwards compatible.
In the example, you would see a type which is identical in v1.0 and v2.0 but has a change in v3.0 - however, the version in v3.0 is still backwards compatible to v1.0 and v2.0

@lzehl
Copy link
Member

lzehl commented Oct 22, 2024

@Raphael-Gazzotti I think we could track this automatically and extent the pipeline (vocab builder) with this suggestion.

@Raphael-Gazzotti
Copy link
Member

In PR #36, the "identical" property was introduced to the vocabulary of types. However, I'm unsure about the next steps regarding the "backwardsCompatibility" property.

@lzehl
Copy link
Member

lzehl commented Jan 27, 2025

@Raphael-Gazzotti what is unclear about the "backwardsCompatibility" property?

@Raphael-Gazzotti
Copy link
Member

Automatically detecting backwards compatibility breaks isn’t straightforward.

  • Fixing a typo is safe. But if we tweak a description’s meaning, that’s a breaking change. How do we programmatically tell the difference? (use of NLP?)
  • We can catch added/removed properties or changes in data types, but how to deal with subtler changes.

Where’s the line between a harmless tweak and a breaking change?

@Raphael-Gazzotti Raphael-Gazzotti added the enhancement New feature or request label Jan 27, 2025
@lzehl
Copy link
Member

lzehl commented Jan 27, 2025

backwards compatible:

  • typos in string values (e.g. for properties: instructions / descriptions / names)
  • additional properties
  • additional linked/embedded types
  • getting rid of requirements

not backwards compatible:

  • attype changes
  • atid changes (instance issue)
  • namespace change
  • typos/changes in property names
  • expected value type changes (single value to array)
  • introducing requirements

@openMetadataInitiative/openminds-developers please think about this a bit more.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants