docs(guidelines/development): add missing commit types

This commit is contained in:
light7734 2025-08-06 12:13:31 +03:30
parent 813e8a3a3a
commit cd571d4a9d
Signed by: light7734
GPG key ID: 8C30176798F1A6BA

View file

@ -2,8 +2,8 @@
Development Development
=================================================================================================== ===================================================================================================
As a solo-project, I am not only the **developer**, but also the **manager** of this project. Therefore As a solo-project, I am not only the **developer**, but also the **manager**.
there is a need, if this project is to succeed, to have a development plan. Therefore there is a need, if this project is to succeed, to have a development plan.
Such a plan should: Such a plan should:
@ -16,7 +16,7 @@ These are the **management** aspects of the project, which help the development
---by pulling my mind out of its **engineering dreamland**, and make it focus on the **broader picture**. ---by pulling my mind out of its **engineering dreamland**, and make it focus on the **broader picture**.
Cycle Cycle
-------------------- ---------------------------------------------------------------------------------------------------
A cycle is one **step** in development, one cycle = one ticket, and it consists of 4 stages: A cycle is one **step** in development, one cycle = one ticket, and it consists of 4 stages:
1 - Make it known 1 - Make it known
@ -53,46 +53,69 @@ A cycle is one **step** in development, one cycle = one ticket, and it consists
4 - Make it fast 4 - Make it fast
- This is an engine, at the end of the day, **performance** is king. - This is an engine, at the end of the day, **performance** is king.
- Get a performance and/or memory profile and try to alleviate the bottlenecks. - Get a performance and/or memory profile and try to alleviate the bottlenecks.
- Avoid premature optimizations, be certain what you change has performance benefits.
Sprint Sprint
-------------------- ---------------------------------------------------------------------------------------------------
A sprint is the collection of all the finished cycles in one week. A sprint is the collection of all the finished cycles in one week.
It's meant to provide insight on development speed and help projecting the future. It's meant to provide insight on development speed and help projecting the future.
Commit Message Specification Commit Message Specification
-------------------- ---------------------------------------------------------------------------------------------------
The project follows the `Conventional Commits Specification <https://www.conventionalcommits.org/en/v1.0.0-beta.4>`_. The project follows the `Conventional Commits Specification <https://www.conventionalcommits.org/en/v1.0.0-beta.4>`_.
.. code-block:: md
<type>[optional scope]: <description>
[optional body]
[optional footer]
With the following commit types: With the following commit types:
- feat - feat
- For adding new features. - For adding a new feature.
- Coressponds to a **minor** semantic bump in version. - Causes a **minor** bump in version.
- refactor
- For refactoring existing code.
- Coressponds to a **patch** semantic bump in version.
- fix - fix
- For fixing an issue. - For changes that fix one or more bug.
- Coressponds to a **patch** semantic bump in version. - Causes a **patch** bump in version.
- refactor
- For non feat/fix changes that improve the implementation and/or the interface.
- Causes a **patch** bump in version.
- perf
- For changes that (hopefully) improve the performance.
- Causes a **patch** bump in version.
- build - build
- For changes to the build pipeline. - For changes that affect the build system or external dependencies.
- Coressponds to a **patch** semantic bump in version. - Causes a **patch** bump in version.
- asset
- For changes to the files under the ``/data`` directory.
- Causes a **patch** bump in version.
- test
- For adding missing tests or correcting the existing tests.
- Does not affect the version.
- chore - chore
- For releases, .gitignore changes, deleting unused files, etc. - For releases, .gitignore changes, deleting unused files, etc.
- Does not affect the version. - Does not affect the version.
- ci - ci
- For anything related to the ci/cd pipelines like .drone.yml changes. - For changes to our CI configuration files and scripts, including files under ``/tools/ci``.
- Does not affect the version.
- docs
- For changes to the documentations.
- Does not affect the version. - Does not affect the version.
- asset
- test
Semantic Versioning Semantic Versioning
--------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------
Coupled with conventional commit style messages, we can automajically version the project following Coupled with conventional commit style messages, we can automajically version the project following