-
Notifications
You must be signed in to change notification settings - Fork 37
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
feat: add autoware_version_manager package #80
Conversation
(Edited after revision) # Autoware version (CalVer with YYYY.0M.MICRO)
# https://calver.org/#scheme
autoware-version:
year: 2023
month: 7
micro: 0
# Autoware component interface version (SemVer)
# https://semver.org/
component-interface-version:
major: 1
minor: 0
patch: 0 // Autoware version (CalVer with YYYY.0M.MICRO)
// https://calver.org/#scheme
struct VersionAutoware
{
uint16_t year; // year of release
uint16_t month; // month of release
uint16_t micro; // increments for bug fixes or patches
};
// Autoware component interface version (SemVer)
// https://semver.org/
struct VersionInterface
{
uint16_t major; // increments for breaking changes
uint16_t minor; // increments for non-breaking changes
uint16_t patch; // increments for bug fixes or patches
}; |
@mitsudome-r I've edited this post a couple of times to avoid confusion. The current versioning scheme Looking at different versioning schemes, I suggest we adopt a slightly modified approach for Autoware: Under this system, the To deal with breaking changes, it might make sense to decouple the What is a breaking change for Autoware?In the context of Autoware, I believe we need a clear definition of "breaking change". The concept of breaking changes could extend to dropping support for certain sensors, but since we aim to maintain sensor manufacturer neutrality in Autoware, these changes wouldn't impact the Looking forward to hearing your thoughts on these suggestions. Some ideas generated by ChatGPT for a breaking change (not that it will affect the versioning system mentioned above)Breaking Changes
|
Signed-off-by: M. Fatih Cırıt <[email protected]>
517ee08
to
85490dc
Compare
Signed-off-by: M. Fatih Cırıt <[email protected]>
Signed-off-by: M. Fatih Cırıt <[email protected]>
Signed-off-by: M. Fatih Cırıt <[email protected]>
@isamu-takagi -san this PR is ready for review, after the review, I will populate the readme file with instructions. I am open to any kind of suggestions, version schemes, the way they are stored, fetched, anything basically. Thanks for reviewing. |
Signed-off-by: M. Fatih Cırıt <[email protected]>
This package is great for getting the version at runtime! So how about generating hpp files based on Note: It's fine to separate the implementation of this proposal from this pull-request. |
I think it's good to manage versions for each component/scope. For example, even if the interface for the vehicle driver changes, the sensor driver want to keep the version. |
Signed-off-by: M. Fatih Cırıt <[email protected]>
54b1e93
to
82bfb89
Compare
Signed-off-by: M. Fatih Cırıt <[email protected]>
82bfb89
to
2bc885a
Compare
Signed-off-by: M. Fatih Cırıt <[email protected]>
@HansRobo @isamu-takagi Now I am working on an implementation for generating the version header files. For this, I will restructure this package as follows:
|
@isamu-takagi I think it's a good idea but also challenging to implement. We should define what Autoware really uses for each interface. (For each component.) ( Edit: I've just seen your work on this topic:
Until then I suggest we start with a large scope version for the interface. What do you think? |
This pull request has been automatically marked as stale because it has not had recent activity. |
I'm closing all of my message migration PRs. |
Description
Continuation of discussion in:
Related to (depends on):
Related issue:
Tests performed
You should merge:
before testing.
Compile and run it with:
You can call the services:
Pre-review checklist for the PR author
The PR author must check the checkboxes below when creating the PR.
In-review checklist for the PR reviewers
The PR reviewers must check the checkboxes below before approval.
Post-review checklist for the PR author
The PR author must check the checkboxes below before merging.
After all checkboxes are checked, anyone who has write access can merge the PR.