This release mainly feature a huge rework of how identities are handled. While they were previously fully embedded in every single bug operations, they are now deported in their own data structure.
Reworking git-bug to add this whole new identity data model has been a long and arduous journey. Indeed, the concept of identity is so central in a bug tracker that it touched pretty much every file of the project. It took two months to be able to fully compile the project again. Good thing that golang allow to proceed step by step and check that everything works with a set of tests!
This work already yielded some benefits: less memory and storage usage, more performance, or simply being able to query bugs by author or participants. But the real benefit is that is will, once we add cryptographic keys to the identities, serve as a foundation to build more advanced features:
- commit signature to authenticate bug edition or even code authors
- an access right policy with different role (administrator , ...)
- encrypted comment or bugs for sensitive discussion
Note: while git-bug will only guarantee a stable data model when the 1.0 version is reached, this huge change is backward compatible !