Back to Freedom.Tech Back
All Gitea releasesAll versions
Release Sun, Oct 18, 2026 2 min read

Gitea 28.2.0

Original release notes

[28.2.0] - 2026-10-18

Enhancements

  • *(oauth)* Pre-register a builtin OAuth2 application for gitea-vscode (#39785) (#39801)
  • Allow custom watches to bypass on-mention email restriction (#39652) (#39837)

Bug Fixes

  • Various bugs (#39661) (#39667)
  • *(markup)* Display MathML has no space below it (#39663) (#39668)
  • Correct websocket notification for change password page (#39671) (#39670)
  • *(webhook)* Keep line breaks in Telegram rich messages (#39650) (#39677)
  • Correct "go get" URL ssh scheme, fix form binding (#39674, #39528) (#39676)
  • OIDC discovery advertises unsupported id_token response_type (#39498) (#39689)
  • *(deps)* Update module golang.org/x/net to v0.60.0 [security] (#39695) (#39701)
  • *(git)* Leave reflog expiry to git's defaults (#39703) (#39711)
  • *(actions)* Settle cancelled reusable workflow runs stuck in cancelling (#39706) (#39717)
  • *(git)* Match git config values exactly when syncing (#39728) (#39729)
  • *(actions)* Harden log cursor, activity type and actor filter handling (#39721) (#39731)
  • *(packages)* Copy selected Debian installation values (#39718) (#39734)
  • *(auth)* Prevent competing remember-me token rotations (#39686) (#39688)
  • *(packages/npm)* Restore former tarball URLs (#39681) (#39749)
  • *(issues)* Allow selecting a tag in the issue Branch/Tag dropdown (#39747) (#39753)
  • Validate "state" for OpenID (#39642) (#39744)
  • Correct label deletion and release attachment load (#39743) (#39752)
  • *(markup)* Resolve and proxy srcset links of <source> elements (#39708) (#39756)
  • *(lfs)* Validate OID before building filesystem object path (#39762) (#39766)
  • *(markup)* Restore code copy newline strip and fix copying rendered blocks (#39755) (#39765)
  • *(user)* Don't match a commit with an empty author email to a user (#39777) (#39780)
  • *(gitdiff)* Unquote C-quoted paths from git diff-tree --raw (#39781) (#39783)
  • *(actions)* Fix schedule cleanup and default branch switch (#39740) (#39786)
  • Skip commit-graph write when fetching remote commits (#39798)
  • *(webauthn)* Accept unsolicited client extension outputs from WebKit clients (#39792) (#39806)
  • *(pull)* Fix code context of review comments on unchanged lines (#39799) (#39805)
  • *(pull)* Don't auto-detect empty pull requests as manually merged (#39807) (#39812)
  • *(actions)* Keep folded block scalars intact across serialization (#39787) (#39817)
  • *(actions)* Bound request body size in artifacts v4 twirp handlers (#39818) (#39822)
  • Prevent Gitea from crashing by notification panic (#39835)
  • *(pull)* Recover PRs whose recorded merge commit never reached the base repo (#39831) (#39840)
  • Use correct template variable on milestone page (#39834) (#39843)
  • *(mailer)* Reject incoming email tokens of users who cannot sign in (#39833) (#39841)
  • Add missing checks to several handlers and models (#39839) (#39847)