Description
In my opinion, these categories have two kinds: note and warning. (The words are picked from compiler message. I just don't know better words.)
For example, Added
is a "note". User doesn't need to know what's added to upgrade safely. Fixed
is also a "note". Although a fix might change behavior, the behavior is incorrect, unexpected, and/or different from the documentation.
In the other hand, Deprecated
and Removed
are "warnings". They indicate to user preparation is needed.
However, Changed
seems very wide, including various big and small changes. Changes to functionality, behavior, and interface are "warnings" without a doubt, but there are also other kinds of changes in this category. A common one is optimization, which doesn't added new thing, fix a bug, or change any behavior but improve the performance. Optimization seems not changes any public interface but it does matter and users care, unlike really "invisible" ones such as changes to unit test and CI.
It seems inconvenient to find a change fast because Changed
has a such vary importance, and makes bumping semantic version numbers harder—other categories are obvious; Fixed
increases patch version, Added
increases minor version, and Removed
increases major version, etc.
Do I understand Changed
wrong? Where should I put optimization?
Activity