You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Feel free to post any opinions regarding this. We are happy to discuss a better way to enhance the code quality of Autoware with less efforts.
Introduction
Autoware contains a large number of spelling errors (nearly 700 at the current stage). There is a spell-check CI running, but it is optional and essentially not functioning. As a result, misspellings are being produced daily. Spelling mistakes can potentially lead to unexpected behavior. Some spelling mistakes are exposed in interfaces, etc. to other products and tools, and there's a potential for causing mistakes during implementation in other products.
Spelling mistakes increase daily, and the more they increase, the more difficult it may become to assure their quality. It is considered less costly to resolve this debt sooner.
Goals and Non-goals
Goals
Introduce a mechanism that prevents spelling mistakes from infiltrating important places like interfaces.
Correcting spelling mistakes that involve destructive changes and require a certain amount of time and effort.
How to proceed
We would like to change the spell-check-differential CI from optional to required for the entire Autoware Universe. This should suppress all spelling mistakes, including interfaces.
However, unless we bring the state of spelling mistakes to zero once, we cannot set the CI to required, and we cannot maintain a state that suppresses spelling mistakes by the system. Even from what we currently understand, there are areas such as bytetrack where a reasonable discussion is required to reduce spell-check detection items, so we need to proceed carefully.
For a gradual introduction, we have introduced a spell-check CI called spell-check-partial that applies spell-check only to some files. Currently, it is only applied to the map directory (where no spelling mistakes exist now), but components that have reduced spelling mistakes to zero will be added to the scope of application sequentially.
This is expected to foster a shared awareness among all developers to reduce spelling mistakes. At the very least, it is necessary to reduce all existing spelling mistakes once, and it is assumed that individual discussions will be held for this (of course, it's also fine to have these discussions here in this Discussion thread).
Alternative: Selectively apply CI to only important parts
An alternative means is to selectively apply CI only to important parts such as .param.yaml or .msg. Major parts such as .cpp or .hpp are ignored, so it will be difficult to ensure the quality of spelling in these parts, but the workload to introduce it is not that high.
If there are strong concerns in the main means, such as hindrance to the developer experience, we will also leave the option to transition to this alternative.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
TLDR
Introduction
Autoware contains a large number of spelling errors (nearly 700 at the current stage). There is a spell-check CI running, but it is optional and essentially not functioning. As a result, misspellings are being produced daily. Spelling mistakes can potentially lead to unexpected behavior. Some spelling mistakes are exposed in interfaces, etc. to other products and tools, and there's a potential for causing mistakes during implementation in other products.
Spelling mistakes increase daily, and the more they increase, the more difficult it may become to assure their quality. It is considered less costly to resolve this debt sooner.
Goals and Non-goals
Goals
Introduce a mechanism that prevents spelling mistakes from infiltrating important places like interfaces.
Non-goals
Correcting spelling mistakes outside Autoware Universe
Correcting spelling mistakes that involve destructive changes and require a certain amount of time and effort.
How to proceed
We would like to change the spell-check-differential CI from optional to required for the entire Autoware Universe. This should suppress all spelling mistakes, including interfaces.
However, unless we bring the state of spelling mistakes to zero once, we cannot set the CI to required, and we cannot maintain a state that suppresses spelling mistakes by the system. Even from what we currently understand, there are areas such as bytetrack where a reasonable discussion is required to reduce spell-check detection items, so we need to proceed carefully.
For a gradual introduction, we have introduced a spell-check CI called spell-check-partial that applies spell-check only to some files. Currently, it is only applied to the map directory (where no spelling mistakes exist now), but components that have reduced spelling mistakes to zero will be added to the scope of application sequentially.
This is expected to foster a shared awareness among all developers to reduce spelling mistakes. At the very least, it is necessary to reduce all existing spelling mistakes once, and it is assumed that individual discussions will be held for this (of course, it's also fine to have these discussions here in this Discussion thread).
Alternative: Selectively apply CI to only important parts
An alternative means is to selectively apply CI only to important parts such as .param.yaml or .msg. Major parts such as .cpp or .hpp are ignored, so it will be difficult to ensure the quality of spelling in these parts, but the workload to introduce it is not that high.
If there are strong concerns in the main means, such as hindrance to the developer experience, we will also leave the option to transition to this alternative.
Related links
Beta Was this translation helpful? Give feedback.
All reactions