Forgejo v7.0 is available
Forgejo v7.0 was released 23 April 2024. You will find the most interesting changes it introduces below and in a complete list in the release notes.
A dedicated test instance is available to try it out. Before upgrading it is strongly recommended to make a full backup as explained in the upgrade guide and carefully read all breaking changes from the release notes. If in doubt, do not hesitate to ask for help on the Fediverse, or in the chat room.
The adoption of Semantic Versioning 2.0.0 is the reason for the version bump from v1.21
to v7.0
and is compatible with existing tools.
-
Translations in four new languages with a usable level of completion are available to users: Bulgarian, Esperanto, Filipino and Slovenian.
-
SourceHut Builds integration can be used to submit jobs to SourceHut on push events.
-
Source code search code now available by default using git grep.
-
Activity graphs show the contributors, code frequency and the recent commits in the activity tab of repositories.
-
The wiki can be edited by any user with read permissions by selecting
Allow anyone to edit the wiki
on the repository settings. The default is to only allow users with write permissions on the repository. -
Git repositories using SHA-256 are supported. Although Git repositories using SHA-1 are not vulnerable to collision attacks since Git v2.13.0, this hash algorithm is still weak. Git transition to a SHA-256 hash function was decided to be trustworthy and useful in practice for at least 10 years. As of Forgejo 7.0.2 some features are still unreliable when using SHA-256.
-
Repository badges can be used to embed information about a given repository such as the CI state, the number of issues, etc.
Read more in the Forgejo v7.0.0 release notes.
7.0 Long Term Support (LTS) and semantic versioning
The 7.0
version is the first Long Term Support (LTS) release. Critical bug and security fixes will be published in patch releases (7.0.1
, 7.0.2
, etc.) until July 2025. It is also the first version to use semantic versioning. Forgejo implemented semantic versioning internally in earlier releases (for instance v1.21
is v6.0
) and it is now exposed publicly.
Gitea API compatibility
Tools that are developed for the Gitea API will keep working with the new Forgejo numbering scheme. They typically make assertions on the release number to unlock new functionalities and that logic will not be impacted by a bump in the release number. The proprietary version of Gitea has a different numbering scheme (v21.X.Y, v22.X.Y) and is in a similar situation.
Read more about Gitea compatibility in the blog post explaining the hard fork that happened in February 2024.
Time based release schedule
The time based release schedule was established to publish a release every three months. Patch releases will be published more frequently, depending on the severity of the bug or security fixes they contain. The exact number of the release cannot be known in advance because it will be determined by the features and breaking changes it contains, as specified by the Semantic Versioning 2.0.0 specifications.
Date | Version | Release date | End Of Life |
---|---|---|---|
2024 Q1 | 7.0.0+gitea-1.22.0 | 23 April 2024 | 16 July 2025 |
2024 Q2 | 8.0.0+gitea-A.B.C | 17 July 2024 | 16 October 2024 |
2024 Q3 | X.Y.Z+gitea-A.B.C | 16 October 2024 | 15 January 2025 |
2024 Q4 | X.Y.Z+gitea-A.B.C | 15 January 2025 | 16 April 2025 |
7.0-test daily releases
Releases are built daily from the latest changes found in the v7.0/forgejo development branch. They are deployed to the https://v7.next.forgejo.org instance for manual verification in case a bug fix is of particular interest ahead of the next patch release. It can also be installed locally with:
Their name stays the same but they are replaced by a new build every day.
Webhook subsystem refactor
The webhook subsystem underwent a substantial refactor to ease the additions of new webhook types. The SourceHut Builds is a driving example of how the refactored webhook architecture can be used to implement a new webhook type.
Localization
Forgejo now got its own independent localization foundation. New teams were formed, a Weblate project was set up. The localization no longer relies on a proprietary service.
Work on refactoring base localization to improve User eXperience and translatability is in progress. Lots of strings were updated to improve readability and be easier to understand, many got basic plural support. File and repo sizes were made translatable, localization of activity heatmap was fixed.
As soon as the initiative was announced in January, the call for participation got a great response and volunteers from around the world are working daily to improve translations. New languages were added. The ones which got active maintainers and have reached a usable level of completion were made available to the users: Bulgarian, Esperanto, Filipino, Slovenian.
Anyone is welcome to participate in improving translation for their language as well as the English base.
Federation
Does Forgejo
support federation? Not yet. Was there progress? Yes.
The monthly reports have details on these progress.
Forges have existed for over twenty years and none of them has achieved data portability let alone federation. Forgejo is one year old and it will take it a some time to get there.
Get Forgejo v7.0
See the download page for instructions on how to install Forgejo, and read the release notes for more information.
Upgrading
Carefully read the breaking changes section of the release notes.
The actual upgrade process is as simple as replacing the binary or container image
with the corresponding Forgejo binary
or container image.
If you’re using the container images, you can use the
7.0
tag
to stay up to date with the latest 7.0.Y
patch release automatically.
Make sure to check the Forgejo upgrade documentation for recommendations on how to properly backup your instance before the upgrade.
Contribute to Forgejo
If you have any feedback or suggestions for Forgejo do not hold back, it is also your project. Open an issue in the issue tracker for feature requests or bug reports, reach out on the Fediverse, or drop into the Matrix space (main chat room) and say hi!