This release stands as a monumental milestone in our development journey with a record-breaking incorporation of 1481 pull requests. It marks the most extensive update in Gitea's history, showcasing a plethora of new features and infrastructure improvements.
Noteworthy advancements in this release include the introduction of HTMX
and Tailwind
, signaling a strategic shift as we gradually phase out jquery
and Fomantic UI
. These changes reflect our commitment to embracing modern technologies and enhancing the user experience.
Key highlights of this release encompass significant changes categorized under BREAKING
, FEATURES
, ENHANCEMENTS
, and PERFORMANCE
, each contributing to a more robust and efficient Gitea platform.
Instances on Gitea Cloud will be automatically upgraded to this version during the specified maintenance window.
Known Issues
- Gitea 1.22.0 fails to start when cache ADAPTER=memcache ("Init failed: cache: unknown adapter 'memcache'(forgot to import?)"), it has been fixed in 1.22-nightly.
- When visiting some repositories, a 500 error occurs (admin could see error
FindRecentlyPushedNewBranches
), it has been fixed in 1.22-nightly.
BREAKING
- Improve reverse proxy documents and clarify the AppURL guessing behavior (#31003) (#31020)
- Remember log in for a month by default (#30150)
- Breaking summary for template refactoring (#29395)
- All custom templates need to follow these changes
- Recommend/convert to use case-sensitive collation for MySQL/MSSQL (#28662)
- Make offline mode as default to not connect external avatar service by default (#28548)
- Include public repos in the doer's dashboard for issue search (#28304)
- Use restricted sanitizer for repository description (#28141)
- Support storage base path as prefix (#27827)
- Enhanced auth token / remember me (#27606)
- Rename the default themes to
gitea-light
,gitea-dark
,gitea-auto
(#27419)- If you didn't see the new themes, please remove the
[ui].THEMES
config option fromapp.ini
- If you didn't see the new themes, please remove the
- Require MySQL 8.0, PostgreSQL 12, MSSQL 2012 (#27337)
FEATURES
- Allow everyone to read or write a wiki by a repo unit setting (#30495)
- Use raw Wiki links for non-renderable Wiki files (#30273)
- Render embedded code preview by permalink in markdown (#30234) (#30249)
- Support repo code search without setting up an indexer (#29998)
- Support pasting URLs over markdown text (#29566)
- Allow to change primary email before account activation (#29412)
- Customizable "Open with" applications for repository clone (#29320)
- Allow options to disable user deletion from the interface on app.ini (#29275)
- Extend issue template YAML engine (#29274)
- Add support for
linguist-detectable
andlinguist-documentation
(#29267) - Implement code frequency graph (#29191)
- Show commit status for releases (#29149)
- Add user blocking (#29028)
- Actions Artifacts v4 backend (#28965)
- Add merge style
fast-forward-only
(#28954) - Retarget depending pulls when the parent branch is deleted (#28686)
- Add global setting on how timestamps should be rendered (#28657)
- Implement actions badge SVGs (#28102)
- Add skip ci functionality (#28075)
- Show latest commit for file (#28067)
- Allow to sync tags from the admin dashboard (#28045)
- Add Profile Readme for Organisations (#27955)
- Implement contributors graph (#27882)
- Artifact deletion in actions ui (#27172)
- Add API routes to get runner registration token (#27144)
- Add support for forking single branch (#25821)
- Add support for sha256 repositories (#23894)
- Add admin API route for managing user's badges (#23106)
ENHANCEMENTS
- Make gitea webhooks openproject compatible (#28435) (#31081)
- Support using label names when changing issue labels (#30943) (#30958)
- Fix various problems around project board view (#30696) (#30902)
- Improve context popup rendering (#30824) (#30829)
- Allow to save empty comment (#30706)
- Prevent allow/reject reviews on merged/closed PRs (#30686)
- Initial support for colorblindness-friendly themes (#30625)
- Some NuGet package enhancements (#30280) (#30324)
- Markup color and font size fixes (#30282) (#30310)
- Show 12 lines in markup code preview (#30255) (#30257)
- Add
[other].SHOW_FOOTER_POWERED_BY
setting to hidePowered by
(#30253) - Pulse page improvements (#30149)
- Render code tags in commit messages (#30146)
- Prevent re-review and dismiss review actions on closed and merged PRs (#30065)
- Cancel previous runs of the same PR automatically (#29961)
- Drag-and-drop improvements for projects and issue pins (#29875)
- Add default board to new projects, remove uncategorized pseudo-board (#29874)
- Prevent layout shift in
<overflow-menu>
items (#29831) - Add skip ci support for pull request title (#29774)
- Add more stats tables (#29730)
- Update API to return 'source_id' for users (#29718)
- Determine fuzziness of bleve indexer by keyword length (#29706)
- Expose fuzzy search for issues/pulls (#29701)
- Put an edit file button on pull request files to allow a quick operation (#29697)
- Fix action runner offline label padding (#29691)
- Update allowed attachment types (#29688)
- Completely style the webkit autofill (#29683)
- Highlight archived labels (#29680)
- Add a warning for disallowed email domains (#29658)
- Set user's 24h preference from their current OS locale (#29651)
- Add setting to disable user features when user login type is not plain (#29615)
- Improve natural sort (#29611)
- Make wiki default branch name changeable (#29603)
- Unify search boxes (#29530)
- Add support for API blob upload of release attachments (#29507)
- Detect broken git hooks (#29494)
- Sync branches to DB immediately when handling git hook calling (#29493)
- Allow options to disable user GPG key configuration from the interface on app.ini (#29486)
- Allow options to disable user SSH key configuration from the interface on app.ini (#29447)
- Use relative links for commits, mentions, and issues in markdown (#29427)
- Add
<overflow-menu>
, rename webcomponents (#29400) - Include resource state events in Gitlab downloads (#29382)
- Properly migrate target branch change GitLab comment (#29340)
- Recolor dark theme to blue shade (#29283)
- Partially enable MSSQL case-sensitive collation support (#29238)
- Auto-update the system status in the admin dashboard (#29163)
- Integrate alpine
noarch
packages into other architectures index (#29137) - Document how the TOC election process works (#29135)
- Tweak repo header (#29134)
- Make blockquote border size less aggressive (#29124)
- Downscale pasted PNG images based on metadata (#29123)
- Show
View at this point in history
for every commit (#29122) - Add support for action artifact serve direct (#29120)
- Change webhook-type in create-view (#29114)
- Drop "@" from the email sender to avoid spam filters (#29109)
- Allow non-admin users to delete review requests (#29057)
- Improve user search display name (#29002)
- Include username in email headers (#28981)
- Show whether a PR is WIP inside popups (#28975)
- Also match weakly validated ETags (#28957)
- Support nuspec manifest download for Nuget packages (#28921)
- Fix hardcoded GitHub icon used as migrated release avatar (#28910)
- Propagate install_if and provider_priority to APKINDEX (#28899)
- Add artifacts v4 JWT to job message and accept it (#28885)
- Enable/disable owner and repo projects independently (#28805)
- Add non-JS fallback for reaction tooltips (#28785)
- Add the ability to see open and closed issues at the same time (#28757)
- Move sign-in labels to be above inputs (#28753)
- Display the latest sync time for pull mirrors on the repo page (#28712)
- Show in Web UI if the file is vendored and generated (#28620)
- Add orphaned topic consistency check (#28507)
- Add branch protection setting for ignoring stale approvals (#28498)
- Add option to set language in admin user view (#28449)
- Fix incorrect run order of action jobs (#28367)
- Add missing exclusive in advanced label options (#28322)
- Added instance-level variables (#28115)
- Add edit option for README.md (#28071)
- Fix link to
Code
tab on wiki commits (#28041) - Allow to set explore page default sort (#27951)
- Improve PR diff view on mobile (#27883)
- Properly migrate automatic merge GitLab comments (#27873)
- Display issue task list on project cards (#27865)
- Add Index to pull_auto_merge.doer_id (#27811)
- Fix display member unit in the menu bar if there are no hidden members in public org (#27795)
- List all Debian package versions in
Packages
(#27786) - Allow pull requests Manually Merged option to be used by non-admins (#27780)
- Only show diff file tree when more than one file changed (#27775)
- Show placeholder email in privacy popup (#27770)
- Revamp repo header (#27760)
- Add
must-change-password
command line parameter (#27626) - Unify password changing and invalidate auth tokens (#27625)
- Add border to file tree 'sub-items' and add padding to 'item-file' (#27593)
- Add slow SQL query warning (#27545)
- Pre-register OAuth application for tea (#27509)
- Differentiate between
push
andpull
mirror sync in progress
(#27390) - Link to file from its history (#27354)
- Add a shortcut to user's profile page to admin user details (#27299)
- Doctor: delete action entries without existing user (#27292)
- Show total TrackedTime on issue/pull/milestone lists (#26672)
- Don't show the new pull request button when the page is not compare pull (#26431)
- Add
Hide/Show all checks
button to commit status check (#26284) - Improvements of releases list and tags list (#25859)
PERFORMANCE
- Fix package list performance (#30520) (#30616)
- Add commit status summary table to reduce query from commit status table (#30223)
- Refactor markup/csv: don't read all to memory (#29760)
- Lazy load object format with command line and don't do it in OpenRepository (#29712)
- Add cache for branch divergence on branch list page (#29577)
- Do some performance optimization for issues list and view issue/pull (#29515)
- Cache repository default branch commit status to reduce query on commit status table (#29444)
- Use
crypto/sha256
(#29386) - Some performance optimization on the dashboard and issues page (#29010)
- Add combined index for issue_user.uid and issue_id (#28080)