CrowdStrike / cloud-resource-estimator

Cloud deployment size calculation utilities
The Unlicense
17 stars 19 forks source link

Consider using tagged releases for better project management #29

Open carlosmmatos opened 1 year ago

carlosmmatos commented 1 year ago

I would like to propose that we start using tagged releases for our project. Tagged releases can significantly improve project management, making it easier for users and developers to understand the project's progress and history.

Benefits of tagged releases:

  1. Versioning: Tagged releases provide clear and well-defined version numbers, making it easy for users and developers to identify the latest stable version of the project. This helps avoid confusion when multiple releases or updates are made.

  2. Changelogs: With tagged releases, we can generate and maintain a changelog that summarizes the changes made in each release. This allows users and developers to quickly understand the differences between versions, and identify new features, bug fixes, or performance improvements.

  3. Easier collaboration: Tagged releases make it easier for contributors to track the project's progress and identify the specific version they are working on. This can prevent potential issues when merging code or addressing bugs.

  4. Dependency management: When our project is used as a dependency by other projects, tagged releases help ensure that users can easily specify and update the version of our project they depend on. This can minimize compatibility issues and improve the overall stability of the dependent projects.

  5. Rollbacks: In case a new release introduces a bug or breaks compatibility, tagged releases make it easy to roll back to a previous stable version, ensuring minimal disruption for users.

Suggested approach:

  1. Adopt a versioning scheme, such as Semantic Versioning, to provide a consistent and meaningful versioning system for our project.
  2. Use Git tags to mark each release with the corresponding version number.
  3. Publish tagged releases on GitHub, providing release notes that summarize the changes made in each version.

By adopting tagged releases, we can improve project management and make it easier for users and developers to understand and contribute to our project.

Please share your thoughts and suggestions on this proposal.