Skip to content

Commit

Permalink
docs(vehicle_info): add docs for versioning
Browse files Browse the repository at this point in the history
Signed-off-by: kosuke55 <[email protected]>
  • Loading branch information
kosuke55 committed Jan 14, 2024
1 parent 39642d2 commit 9dcf16f
Show file tree
Hide file tree
Showing 2 changed files with 30 additions and 0 deletions.
29 changes: 29 additions & 0 deletions vehicle/vehicle_info_util/Readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,35 @@ This package is to get vehicle info parameters.
### Description

In [here](https://autowarefoundation.github.io/autoware-documentation/main/design/autoware-interfaces/components/vehicle-dimensions/), you can check the vehicle dimensions with more detail.
The current format supports only the Ackermann model and will not be extended to other models in the future. This file defines the model assumed in autoware path planning, control, etc. and does not represent the exact physical model. If a model other than the Ackermann model is used, it is assumed that a vehicle interface will be designed to change the control output for the model.

### Versioning Policy

We have implemented a versioning system for the `vehicle_info.param.yaml` file to ensure clarity and consistency in file format across different versions of Autoware and its external applications. Please see [discussion](https://github.com/orgs/autowarefoundation/discussions/4050 for the details).

#### How to Operate

- The current file format is set as an unversioned base version (`version:` field is commented out).
- For the next update involving changes (such as additions, deletions, or modifications):
- Uncomment and update the version line at the beginning of the file.
- Initiate versioning by assigning a version number, starting from `0.1.0`. Follow the semantic versioning format (MAJOR.MINOR.PATCH).
- Update this Readme.md too.
- For subsequent updates, continue incrementing the version number in accordance with the changes made.
- Discuss how to increment version depending on the amount of changes made to the file.

```
/**:
ros__parameters:
# version: 0.1.0 # Uncomment and update this line for future format changes.
wheel_radius: 0.383
...
```

#### Why Versioning?

- Consistency Across Updates: Implementing version control will allow accurate tracking of changes over time and changes in vehicle information parameters.
- Clarity for External Applications: External applications that depend on `vehicle_info.param.yaml` need to reference the correct file version for optimal compatibility and functionality.
- Simplified Management for Customized Branches: Assigning versions directly to the `vehicle_info.param.yaml` file simplifies management compared to maintaining separate versions for multiple customized Autoware branches. This approach streamlines version tracking and reduces complexity.

### Scripts

Expand Down
1 change: 1 addition & 0 deletions vehicle/vehicle_info_util/config/vehicle_info.param.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
/**:
ros__parameters:
# version: 0.1.0 # uncomment this line in the next update of this file format
wheel_radius: 0.39
wheel_width: 0.42
wheel_base: 2.74 # between front wheel center and rear wheel center
Expand Down

0 comments on commit 9dcf16f

Please sign in to comment.