[!WARNING] Please upgrade to 1.26.4 directly. A regression in this release can cause "context deadline exceeded" errors when opening any repository's code pages (#38177). Please hold off on upgrading until a fix is released.
This PR contains the following updates:
| Package | Update | Change |
|---|---|---|
| [gitea/gitea](https://github.com/go-gitea/gitea) | minor | `1.24.3` → `1.27.3` |
---
> ⚠️ **Warning**
>
> Some dependencies could not be looked up. Check the [Dependency Dashboard](issues/91) for more information.
---
### Release Notes
<details>
<summary>go-gitea/gitea (gitea/gitea)</summary>
### [`v1.27.3`](https://github.com/go-gitea/gitea/releases/tag/v1.27.3)
[Compare Source](https://github.com/go-gitea/gitea/compare/v1.27.2...v1.27.3)
- SECURITY
- fix(packages): restrict/limited/token-scope access ([#​39041](https://github.com/go-gitea/gitea/issues/39041), [#​39043](https://github.com/go-gitea/gitea/issues/39043), [#​39044](https://github.com/go-gitea/gitea/issues/39044), [#​39047](https://github.com/go-gitea/gitea/issues/39047), [#​39046](https://github.com/go-gitea/gitea/issues/39046)) ([#​39058](https://github.com/go-gitea/gitea/issues/39058))
- fix(attachments): enforce owning repository path ([#​39048](https://github.com/go-gitea/gitea/issues/39048)) ([#​39077](https://github.com/go-gitea/gitea/issues/39077))
- fix(markup): enforce same-repository issue access ([#​39045](https://github.com/go-gitea/gitea/issues/39045)) ([#​39054](https://github.com/go-gitea/gitea/issues/39054))
- fix(actions): verify raw artifact signatures first ([#​39049](https://github.com/go-gitea/gitea/issues/39049)) ([#​39053](https://github.com/go-gitea/gitea/issues/39053))
- fix(api): hide limited users from restricted viewers ([#​39004](https://github.com/go-gitea/gitea/issues/39004)) ([#​39039](https://github.com/go-gitea/gitea/issues/39039))
- fix(repo): limit gitignore template selections ([#​39027](https://github.com/go-gitea/gitea/issues/39027)) ([#​39040](https://github.com/go-gitea/gitea/issues/39040))
- fix(migrations): cancel GitLab version probes ([#​39023](https://github.com/go-gitea/gitea/issues/39023)) ([#​39035](https://github.com/go-gitea/gitea/issues/39035))
- fix(packages): limit Swift package manifests ([#​39025](https://github.com/go-gitea/gitea/issues/39025)) ([#​39032](https://github.com/go-gitea/gitea/issues/39032))
- fix(migrations): bound OneDev version responses ([#​39024](https://github.com/go-gitea/gitea/issues/39024)) ([#​39033](https://github.com/go-gitea/gitea/issues/39033))
- fix(packages): limit Maven checksum uploads ([#​39028](https://github.com/go-gitea/gitea/issues/39028)) ([#​39031](https://github.com/go-gitea/gitea/issues/39031))
- fix(packages): bound Alpine metadata entries ([#​39026](https://github.com/go-gitea/gitea/issues/39026)) ([#​39029](https://github.com/go-gitea/gitea/issues/39029))
- fix(actions): enforce fork pull request trust boundaries ([#​39005](https://github.com/go-gitea/gitea/issues/39005)) ([#​39018](https://github.com/go-gitea/gitea/issues/39018))
- fix(git): restrict hook permissions ([#​39008](https://github.com/go-gitea/gitea/issues/39008)) ([#​39016](https://github.com/go-gitea/gitea/issues/39016))
- fix(api): enforce repository creation token authorization ([#​39007](https://github.com/go-gitea/gitea/issues/39007)) ([#​39014](https://github.com/go-gitea/gitea/issues/39014))
- fix(api): enforce public-only scope for compare heads ([#​39006](https://github.com/go-gitea/gitea/issues/39006)) ([#​39013](https://github.com/go-gitea/gitea/issues/39013))
- fix(repo): hide repositories of hidden owners ([#​39009](https://github.com/go-gitea/gitea/issues/39009)) ([#​39012](https://github.com/go-gitea/gitea/issues/39012))
- fix: avoid enumerating every public repository in issue search ([#​38992](https://github.com/go-gitea/gitea/issues/38992)) ([#​39000](https://github.com/go-gitea/gitea/issues/39000))
- refactor: private endpoints ([#​38964](https://github.com/go-gitea/gitea/issues/38964)) ([#​38965](https://github.com/go-gitea/gitea/issues/38965))
- ENHANCEMENTS
- enhance: add permalinks to pull request reviews ([#​38849](https://github.com/go-gitea/gitea/issues/38849)) ([#​39036](https://github.com/go-gitea/gitea/issues/39036))
- BUGFIXES
- fix: add missing query parameters on runner list page ([#​39163](https://github.com/go-gitea/gitea/issues/39163))
- fix(actions): keep step-level continue-on-error expressions unevaluated ([#​39141](https://github.com/go-gitea/gitea/issues/39141)) ([#​39148](https://github.com/go-gitea/gitea/issues/39148)
- fix(packages): preserve SemVer prerelease identifiers in Swift Registry ([#​39156](https://github.com/go-gitea/gitea/issues/39156)) ([#​39158](https://github.com/go-gitea/gitea/issues/39158))
- fix(repo): prevent MarkAsBrokenEmpty when repository is being migrated ([#​39091](https://github.com/go-gitea/gitea/issues/39091)) ([#​39092](https://github.com/go-gitea/gitea/issues/39092))
- fix(asymkey): do not verify OpenPGP signatures with an SSH instance key ([#​39073](https://github.com/go-gitea/gitea/issues/39073)) ([#​39086](https://github.com/go-gitea/gitea/issues/39086))
- fix(pull): keep the merged state in sync with git ([#​39062](https://github.com/go-gitea/gitea/issues/39062)) ([#​39118](https://github.com/go-gitea/gitea/issues/39118))
- fix(pull): name the head repository in default compare links ([#​39075](https://github.com/go-gitea/gitea/issues/39075)) ([#​39079](https://github.com/go-gitea/gitea/issues/39079))
- fix(git): parse co-author trailers that are not RFC 5322 addresses ([#​39076](https://github.com/go-gitea/gitea/issues/39076)) ([#​39081](https://github.com/go-gitea/gitea/issues/39081))
- fix(actions): show "Complete job" logs when the last step is skipped ([#​38939](https://github.com/go-gitea/gitea/issues/38939)) ([#​39003](https://github.com/go-gitea/gitea/issues/39003))
- fix(actions): Fix how jobs in matrixes are grouped ([#​38980](https://github.com/go-gitea/gitea/issues/38980)) ([#​38998](https://github.com/go-gitea/gitea/issues/38998))
- fix: resolve YAML anchors and aliases in Actions workflows ([#​38984](https://github.com/go-gitea/gitea/issues/38984)) ([#​38996](https://github.com/go-gitea/gitea/issues/38996))
- fix: honor environment variables during install ([#​38974](https://github.com/go-gitea/gitea/issues/38974)) ([#​38976](https://github.com/go-gitea/gitea/issues/38976))
- fix: grant limited-org unit read access to authenticated non-members ([#​38871](https://github.com/go-gitea/gitea/issues/38871)) ([#​38963](https://github.com/go-gitea/gitea/issues/38963))
- fix: allow anonymous theme switching when REQUIRE_SIGNIN_VIEW is set ([#​38956](https://github.com/go-gitea/gitea/issues/38956)) ([#​38961](https://github.com/go-gitea/gitea/issues/38961))
- fix(actions): drop wrapper span around the action status icon ([#​38957](https://github.com/go-gitea/gitea/issues/38957)) ([#​38959](https://github.com/go-gitea/gitea/issues/38959))
- fix(issues): sort scoped labels by exclusive order in dropdowns ([#​38893](https://github.com/go-gitea/gitea/issues/38893)) ([#​38954](https://github.com/go-gitea/gitea/issues/38954))
- fix(indexer): correct bleve indexer token filters ([#​38853](https://github.com/go-gitea/gitea/issues/38853)) ([#​38951](https://github.com/go-gitea/gitea/issues/38951))
- fix: make "login_name" field optional for API edit user ([#​38917](https://github.com/go-gitea/gitea/issues/38917)) ([#​38945](https://github.com/go-gitea/gitea/issues/38945))
- fix(actions): reject non-mapping matrix include/exclude ([#​38933](https://github.com/go-gitea/gitea/issues/38933))
- fix(ui): respect FEED_PAGING_NUM on the dashboard feed ([#​38935](https://github.com/go-gitea/gitea/issues/38935)) ([#​38936](https://github.com/go-gitea/gitea/issues/38936))
- MISC
- chore: repo compare link ([#​39088](https://github.com/go-gitea/gitea/issues/39088)) ([#​39119](https://github.com/go-gitea/gitea/issues/39119))
- ci: remove AWS S3 uploads from release workflows ([#​38928](https://github.com/go-gitea/gitea/issues/38928)) ([#​38929](https://github.com/go-gitea/gitea/issues/38929))
- chore: Pre-register a builtin OAuth2 application for the official Gitea mobile app ([#​38880](https://github.com/go-gitea/gitea/issues/38880)) ([#​38922](https://github.com/go-gitea/gitea/issues/38922))
Instances on **[Gitea Cloud](https://cloud.gitea.com)** will be automatically upgraded to this version during the specified maintenance window.
### [`v1.27.2`](https://github.com/go-gitea/gitea/releases/tag/v1.27.2)
[Compare Source](https://github.com/go-gitea/gitea/compare/v1.27.1...v1.27.2)
- SECURITY
- Fix: update collaborator access mode and httpsign ([#​38894](https://github.com/go-gitea/gitea/issues/38894), [#​38862](https://github.com/go-gitea/gitea/issues/38862)) ([#​38895](https://github.com/go-gitea/gitea/issues/38895))
- Refactor: external render ([#​38885](https://github.com/go-gitea/gitea/issues/38885)) ([#​38898](https://github.com/go-gitea/gitea/issues/38898))
- Fix(actions): resolve pull_request_target reusable workflows at the base commit ([#​38886](https://github.com/go-gitea/gitea/issues/38886)) ([#​38897](https://github.com/go-gitea/gitea/issues/38897))
- Refactor: markup render ([#​38864](https://github.com/go-gitea/gitea/issues/38864)) ([#​38869](https://github.com/go-gitea/gitea/issues/38869))
- Fix(deps): update dependency mermaid to v11.16.1 ([#​38816](https://github.com/go-gitea/gitea/issues/38816))
- Fix(auth): set WebAuthn user verification per request ([#​38805](https://github.com/go-gitea/gitea/issues/38805)) ([#​38810](https://github.com/go-gitea/gitea/issues/38810))
- Fix: render highlight language ([#​38793](https://github.com/go-gitea/gitea/issues/38793)) ([#​38795](https://github.com/go-gitea/gitea/issues/38795))
- ENHANCEMENTS
- enhance: add missing npm package metadata properties ([#​38826](https://github.com/go-gitea/gitea/issues/38826)) ([#​38831](https://github.com/go-gitea/gitea/issues/38831))
- BUGFIXES
- fix(actions): keep github.event.inputs as strings for workflow_dispatch ([#​38899](https://github.com/go-gitea/gitea/issues/38899)) ([#​38908](https://github.com/go-gitea/gitea/issues/38908))
- fix(actions): let a rerun of selected jobs read the previous attempt's artifacts ([#​38857](https://github.com/go-gitea/gitea/issues/38857)) ([#​38901](https://github.com/go-gitea/gitea/issues/38901))
- fix(lfs): accept successful transfer responses ([#​38866](https://github.com/go-gitea/gitea/issues/38866)) ([#​38875](https://github.com/go-gitea/gitea/issues/38875))
- fix(packages): ignore nested Package.swift ([#​38788](https://github.com/go-gitea/gitea/issues/38788)) ([#​38836](https://github.com/go-gitea/gitea/issues/38836))
- fix: drop newline-bearing member names in arch ParsePackage ([#​38102](https://github.com/go-gitea/gitea/issues/38102)) ([#​38830](https://github.com/go-gitea/gitea/issues/38830))
- fix(storage): fix Azure Blob dump failing with file does not exist ([#​38814](https://github.com/go-gitea/gitea/issues/38814)) ([#​38828](https://github.com/go-gitea/gitea/issues/38828))
- fix(migration): migration deletion returned json redirection ([#​38796](https://github.com/go-gitea/gitea/issues/38796)) ([#​38825](https://github.com/go-gitea/gitea/issues/38825))
- fix(ui): change underlines to default browser style ([#​38819](https://github.com/go-gitea/gitea/issues/38819)) ([#​38823](https://github.com/go-gitea/gitea/issues/38823))
- fix(actions): allow cancelling runs without running jobs ([#​35842](https://github.com/go-gitea/gitea/issues/35842)) ([#​38812](https://github.com/go-gitea/gitea/issues/38812))
- fix(actions): evaluate each `${{ }}` part on its own ([#​38754](https://github.com/go-gitea/gitea/issues/38754)) ([#​38797](https://github.com/go-gitea/gitea/issues/38797))
- fix(actions): write an action task report in one transaction ([#​38792](https://github.com/go-gitea/gitea/issues/38792)) ([#​38794](https://github.com/go-gitea/gitea/issues/38794))
- fix: markup link ([#​38764](https://github.com/go-gitea/gitea/issues/38764)) ([#​38765](https://github.com/go-gitea/gitea/issues/38765))
- fix: set a minio part size when the content size is unknown ([#​38753](https://github.com/go-gitea/gitea/issues/38753)) ([#​38755](https://github.com/go-gitea/gitea/issues/38755))
- fix: bad path escape in subpath archive download ([#​38749](https://github.com/go-gitea/gitea/issues/38749)) ([#​38750](https://github.com/go-gitea/gitea/issues/38750))
- fix: remove the pull merge box from UI when the refreshed page doesn't contain it ([#​38742](https://github.com/go-gitea/gitea/issues/38742)) ([#​38744](https://github.com/go-gitea/gitea/issues/38744))
- fix(markdown): fix double strikethough on code ([#​38707](https://github.com/go-gitea/gitea/issues/38707)) ([#​38729](https://github.com/go-gitea/gitea/issues/38729))
- fix(lfs): failed upload deletes a concurrent upload's meta object ([#​38693](https://github.com/go-gitea/gitea/issues/38693)) ([#​38722](https://github.com/go-gitea/gitea/issues/38722))
- fix: correct full url when using sub-path ([#​38712](https://github.com/go-gitea/gitea/issues/38712)) ([#​38716](https://github.com/go-gitea/gitea/issues/38716))
- fix: avoid markup render panic ([#​38698](https://github.com/go-gitea/gitea/issues/38698)) ([#​38703](https://github.com/go-gitea/gitea/issues/38703))
- fix(ui): too many participants shown in commit avatar stacks ([#​38689](https://github.com/go-gitea/gitea/issues/38689)) ([#​38700](https://github.com/go-gitea/gitea/issues/38700))
- fix: support HEAD requests on Alpine registry APKINDEX.tar.gz ([#​38686](https://github.com/go-gitea/gitea/issues/38686)) ([#​38688](https://github.com/go-gitea/gitea/issues/38688))
- fix(migrations): use all configured GitHub tokens ([#​38841](https://github.com/go-gitea/gitea/issues/38841)) ([#​38846](https://github.com/go-gitea/gitea/issues/38846))
Instances on **[Gitea Cloud](https://cloud.gitea.com)** will be automatically upgraded to this version during the specified maintenance window.
### [`v1.27.1`](https://github.com/go-gitea/gitea/releases/tag/v1.27.1)
[Compare Source](https://github.com/go-gitea/gitea/compare/v1.27.0...v1.27.1)
- SECURITY
- Fix: orgmode render include path ([#​38642](https://github.com/go-gitea/gitea/issues/38642)) ([#​38645](https://github.com/go-gitea/gitea/issues/38645))
- Fix: git patch apply ([#​38637](https://github.com/go-gitea/gitea/issues/38637)) ([#​38638](https://github.com/go-gitea/gitea/issues/38638))
* API
- fix(api): align Swagger schemas for UserSettings and TopicListResponse ([#​38590](https://github.com/go-gitea/gitea/issues/38590)) ([#​38592](https://github.com/go-gitea/gitea/issues/38592))
* ENHANCEMENTS
- enhance: improve diff contrast in light and dark themes ([#​37477](https://github.com/go-gitea/gitea/issues/37477)) ([#​38574](https://github.com/go-gitea/gitea/issues/38574))
* BUGFIXES
- fix: skip OIDC end-session after password login for OAuth2 users ([#​38439](https://github.com/go-gitea/gitea/issues/38439)) ([#​38666](https://github.com/go-gitea/gitea/issues/38666))
- fix: make Actions log parser support multiple line message encoding ([#​38659](https://github.com/go-gitea/gitea/issues/38659)) ([#​38664](https://github.com/go-gitea/gitea/issues/38664))
- fix(actions): use base branch ref for pull_request_target context ([#​38636](https://github.com/go-gitea/gitea/issues/38636)) ([#​38657](https://github.com/go-gitea/gitea/issues/38657))
- fix(actions): skip already-approved runs in `ApproveRuns` ([#​38653](https://github.com/go-gitea/gitea/issues/38653)) ([#​38654](https://github.com/go-gitea/gitea/issues/38654))
- fix: orgmode render include path ([#​38642](https://github.com/go-gitea/gitea/issues/38642)) ([#​38645](https://github.com/go-gitea/gitea/issues/38645))
- fix(actions): cancel tasks immediately when the runner stopped reporting ([#​38616](https://github.com/go-gitea/gitea/issues/38616)) ([#​38644](https://github.com/go-gitea/gitea/issues/38644))
- fix(issues): fix label bulk-load key and reduce log noise in LoadLabel ([#​38632](https://github.com/go-gitea/gitea/issues/38632)) ([#​38643](https://github.com/go-gitea/gitea/issues/38643))
- fix(actions): improve runner list status sorting, labels and task job links ([#​38586](https://github.com/go-gitea/gitea/issues/38586)) ([#​38633](https://github.com/go-gitea/gitea/issues/38633))
- fix(actions): correctness and hardening fixes ([#​38518](https://github.com/go-gitea/gitea/issues/38518)) ([#​38631](https://github.com/go-gitea/gitea/issues/38631))
- fix(repo): prevent double-write redirect collisions on dependency errors, fix ui ([#​38627](https://github.com/go-gitea/gitea/issues/38627)) ([#​38628](https://github.com/go-gitea/gitea/issues/38628))
- fix: delete repo-scoped rows of seven more tables when deleting a repository ([#​38534](https://github.com/go-gitea/gitea/issues/38534)) ([#​38618](https://github.com/go-gitea/gitea/issues/38618))
- fix(webhook): remove slack channel name check ([#​38608](https://github.com/go-gitea/gitea/issues/38608)) ([#​38612](https://github.com/go-gitea/gitea/issues/38612))
- fix: download dropdown menu clipped on the branches page ([#​38604](https://github.com/go-gitea/gitea/issues/38604)) ([#​38609](https://github.com/go-gitea/gitea/issues/38609))
- fix(project): prevent database mutations on invalid MoveIssues payload ([#​38600](https://github.com/go-gitea/gitea/issues/38600)) ([#​38602](https://github.com/go-gitea/gitea/issues/38602))
- fix(actions): make SingleWorkflow\.Marshal round-trip multi-line run blocks (stop silent job stranding) ([#​38520](https://github.com/go-gitea/gitea/issues/38520)) ([#​38599](https://github.com/go-gitea/gitea/issues/38599))
- fix(file-tree): handle submodule links and missing view container ([#​38033](https://github.com/go-gitea/gitea/issues/38033)) ([#​38589](https://github.com/go-gitea/gitea/issues/38589))
- fix(actions): fail unexpandable reusable workflow callers and decouple the job emitter's cross-run processing ([#​38565](https://github.com/go-gitea/gitea/issues/38565)) ([#​38587](https://github.com/go-gitea/gitea/issues/38587))
- fix: keep serving valid ACME cert when renewal fails at startup ([#​38554](https://github.com/go-gitea/gitea/issues/38554)) ([#​38583](https://github.com/go-gitea/gitea/issues/38583))
- fix: branch protection user list ([#​38570](https://github.com/go-gitea/gitea/issues/38570)) ([#​38584](https://github.com/go-gitea/gitea/issues/38584))
- fix(pulls): respect diff.orderFile in diff file tree ([#​38566](https://github.com/go-gitea/gitea/issues/38566)) ([#​38578](https://github.com/go-gitea/gitea/issues/38578))
- fix(issue): make issue action (issue list batch operation) elements have correct attributes ([#​38575](https://github.com/go-gitea/gitea/issues/38575)) ([#​38580](https://github.com/go-gitea/gitea/issues/38580))
- fix(actions): support `matrix` when evaluating workflow `if` expression ([#​38474](https://github.com/go-gitea/gitea/issues/38474)) ([#​38557](https://github.com/go-gitea/gitea/issues/38557))
- fix(actions): align status icon span for Safari rendering ([#​38558](https://github.com/go-gitea/gitea/issues/38558)) ([#​38562](https://github.com/go-gitea/gitea/issues/38562))
- fix: revert git clone http redirection forbidden ([#​38530](https://github.com/go-gitea/gitea/issues/38530)) ([#​38545](https://github.com/go-gitea/gitea/issues/38545))
- fix: clean up orphaned user-keyed tables in deleteUser ([#​38511](https://github.com/go-gitea/gitea/issues/38511)) ([#​38514](https://github.com/go-gitea/gitea/issues/38514))
- fix(actions): coerce workflow_dispatch boolean inputs to native types ([#​38472](https://github.com/go-gitea/gitea/issues/38472)) ([#​38521](https://github.com/go-gitea/gitea/issues/38521))
- fix: make the merge box button red if some checks fail ([#​38508](https://github.com/go-gitea/gitea/issues/38508)) ([#​38516](https://github.com/go-gitea/gitea/issues/38516))
- fix(pull): sign the commit when updating a branch by merge ([#​38441](https://github.com/go-gitea/gitea/issues/38441)) ([#​38499](https://github.com/go-gitea/gitea/issues/38499))
- fix: make commit message merge correctly ([#​38490](https://github.com/go-gitea/gitea/issues/38490)) ([#​38502](https://github.com/go-gitea/gitea/issues/38502))
- fix(actions): explain why a blocked or waiting job has not started ([#​38476](https://github.com/go-gitea/gitea/issues/38476)) ([#​38498](https://github.com/go-gitea/gitea/issues/38498))
- fix(actions): make `cancelled()` work in job `if` evaluation ([#​38495](https://github.com/go-gitea/gitea/issues/38495)) ([#​38497](https://github.com/go-gitea/gitea/issues/38497))
- fix(actions): show retention info on hover for expired artifacts ([#​38477](https://github.com/go-gitea/gitea/issues/38477)) ([#​38493](https://github.com/go-gitea/gitea/issues/38493))
- fix(actions): group reusable-workflow matrix legs in the workflow graph ([#​38475](https://github.com/go-gitea/gitea/issues/38475)) ([#​38492](https://github.com/go-gitea/gitea/issues/38492))
- fix: full file highlighting for git diff with CR char ([#​38484](https://github.com/go-gitea/gitea/issues/38484)) ([#​38491](https://github.com/go-gitea/gitea/issues/38491))
- fix(packages): serve noarch Alpine index for any requested architecture ([#​38479](https://github.com/go-gitea/gitea/issues/38479)) ([#​38486](https://github.com/go-gitea/gitea/issues/38486))
- fix: 500 error when updating user visibility ([#​38480](https://github.com/go-gitea/gitea/issues/38480)) ([#​38483](https://github.com/go-gitea/gitea/issues/38483))
- fix(actions): make job list item fully clickable ([#​38462](https://github.com/go-gitea/gitea/issues/38462)) ([#​38471](https://github.com/go-gitea/gitea/issues/38471))
- fix: mail template for push event ([#​38467](https://github.com/go-gitea/gitea/issues/38467)) ([#​38468](https://github.com/go-gitea/gitea/issues/38468))
- fix: make "test push webhook" always work ([#​38425](https://github.com/go-gitea/gitea/issues/38425)) ([#​38455](https://github.com/go-gitea/gitea/issues/38455))
- fix(actions): prevent bulk actions from affecting all runners ([#​38453](https://github.com/go-gitea/gitea/issues/38453)) ([#​38457](https://github.com/go-gitea/gitea/issues/38457))
- fix(org): align follow button and wrap description ([#​38448](https://github.com/go-gitea/gitea/issues/38448)) ([#​38454](https://github.com/go-gitea/gitea/issues/38454))
- fix(actions): populate `github.event` for scheduled runs ([#​38446](https://github.com/go-gitea/gitea/issues/38446)) ([#​38452](https://github.com/go-gitea/gitea/issues/38452))
* MISC
- refactor: git patch apply ([#​38637](https://github.com/go-gitea/gitea/issues/38637)) ([#​38638](https://github.com/go-gitea/gitea/issues/38638))
Instances on **[Gitea Cloud](https://cloud.gitea.com)** will be automatically upgraded to this version during the specified maintenance window.
### [`v1.27.0`](https://github.com/go-gitea/gitea/releases/tag/v1.27.0)
[Compare Source](https://github.com/go-gitea/gitea/compare/v1.26.4...v1.27.0)
- BREAKING
- Feat(actions)!: improve support for reusable workflows ([#​37478](https://github.com/go-gitea/gitea/issues/37478))
- Use Content-Security-Policy: script nonce ([#​37232](https://github.com/go-gitea/gitea/issues/37232))
- SECURITY
- Fix: various security fixes ([#​38406](https://github.com/go-gitea/gitea/issues/38406)) ([#​38426](https://github.com/go-gitea/gitea/issues/38426))
- Fix(security): harden access checks and migration validation ([#​38324](https://github.com/go-gitea/gitea/issues/38324)) ([#​38400](https://github.com/go-gitea/gitea/issues/38400))
- Fix: enforce public-only token scope and harden push options / locale parsing ([#​38323](https://github.com/go-gitea/gitea/issues/38323)) ([#​38399](https://github.com/go-gitea/gitea/issues/38399))
- Fix(pull): re-evaluate review official flag on target branch change ([#​38319](https://github.com/go-gitea/gitea/issues/38319)) ([#​38402](https://github.com/go-gitea/gitea/issues/38402))
- Fix(api): stop leaking private repo metadata after access revocation ([#​38321](https://github.com/go-gitea/gitea/issues/38321)) ([#​38390](https://github.com/go-gitea/gitea/issues/38390))
- Fix(lfs): require proof of possession for cross-repo objects ([#​38322](https://github.com/go-gitea/gitea/issues/38322)) ([#​38389](https://github.com/go-gitea/gitea/issues/38389))
- Fix(mirror): disable HTTP redirects on pull mirror sync ([#​38320](https://github.com/go-gitea/gitea/issues/38320)) ([#​38367](https://github.com/go-gitea/gitea/issues/38367))
- Fix: golang html template url escaping ([#​38363](https://github.com/go-gitea/gitea/issues/38363)) ([#​38369](https://github.com/go-gitea/gitea/issues/38369))
- Fix(release): validate web attachment renames against allowed types ([#​38314](https://github.com/go-gitea/gitea/issues/38314)) ([#​38328](https://github.com/go-gitea/gitea/issues/38328))
- Fix(release): gate draft release attachments on web download endpoints ([#​38318](https://github.com/go-gitea/gitea/issues/38318)) ([#​38325](https://github.com/go-gitea/gitea/issues/38325))
- Fix(deps): update module github.com/go-git/go-git/v5 to v5.19.1 \[security] ([#​37786](https://github.com/go-gitea/gitea/issues/37786))
- Fix(oauth): restrict introspection to the token's client ([#​38042](https://github.com/go-gitea/gitea/issues/38042))
- Fix(api): don't expose private org membership via public_members ([#​38145](https://github.com/go-gitea/gitea/issues/38145))
- Fix(actions): deny fork-PR cross-repo access via collaborative owner ([#​38214](https://github.com/go-gitea/gitea/issues/38214))
- Fix(migrations): prevent path traversal in repository restore ([#​38215](https://github.com/go-gitea/gitea/issues/38215))
- FEATURES
- Feat(actions): add workflow status badge modal ([#​38196](https://github.com/go-gitea/gitea/issues/38196))
- Feat(actions): support owner-level and global scoped workflows ([#​38154](https://github.com/go-gitea/gitea/issues/38154))
- Feat(api): support ref suffixes in compare ([#​38148](https://github.com/go-gitea/gitea/issues/38148))
- Feat(actions): implement `jobs.<job_id>.continue-on-error` ([#​38100](https://github.com/go-gitea/gitea/issues/38100))
- Feat(actions): show run status on browser tab favicon ([#​38071](https://github.com/go-gitea/gitea/issues/38071))
- Feat(api): add token introspection and self-deletion endpoint ([#​37995](https://github.com/go-gitea/gitea/issues/37995))
- Feat(api): add q parameter to list branches API for server-side filtering ([#​37982](https://github.com/go-gitea/gitea/issues/37982))
- Feat(repo): split repository creation limit into user and org scopes ([#​37872](https://github.com/go-gitea/gitea/issues/37872))
- Feat(actions): bulk delete, disable and enable runners in admin UI ([#​37869](https://github.com/go-gitea/gitea/issues/37869))
- Feat(actions): List workflows that were executed once but got removed from the default branch ([#​37835](https://github.com/go-gitea/gitea/issues/37835))
- Feat(org): add team visibility so org members can discover teams ([#​37680](https://github.com/go-gitea/gitea/issues/37680))
- Feat: add raw diff/patch endpoint for repository comparisons ([#​37632](https://github.com/go-gitea/gitea/issues/37632))
- Feat: Add avatar stacks ([#​37594](https://github.com/go-gitea/gitea/issues/37594))
- Feat(actions): add job summaries (GITHUB_STEP_SUMMARY) ([#​37500](https://github.com/go-gitea/gitea/issues/37500))
- Feat(web): Add Jupyter Notebook (.ipynb) Rendering Support ([#​37433](https://github.com/go-gitea/gitea/issues/37433))
- Support for Custom URI Schemes in OAuth2 Redirect URIs ([#​37356](https://github.com/go-gitea/gitea/issues/37356))
- Feat(orgs): Add search bar for organization members tab page ([#​37347](https://github.com/go-gitea/gitea/issues/37347))
- Feat(api): Add assignees APIs ([#​37330](https://github.com/go-gitea/gitea/issues/37330))
- Feat(api): Add GET /repos/{owner}/{repo}/actions/workflows/{workflow_id}/runs ([#​37196](https://github.com/go-gitea/gitea/issues/37196))
- Serve OpenAPI 3.0 spec at /openapi.v1.json ([#​37038](https://github.com/go-gitea/gitea/issues/37038))
- Add project column picker to issue and pull request sidebar ([#​37037](https://github.com/go-gitea/gitea/issues/37037))
- Allow multiple projects per issue and pull requests ([#​36784](https://github.com/go-gitea/gitea/issues/36784))
- Feat(ui): add "follow rename" to file commit history list ([#​34994](https://github.com/go-gitea/gitea/issues/34994))
- Feat(ssh): auto generate additional ssh keys ([#​33974](https://github.com/go-gitea/gitea/issues/33974))
- ENHANCEMENTS
- Enhance(actions): only create filtered-out workflow commit status for required contexts ([#​38371](https://github.com/go-gitea/gitea/issues/38371)) ([#​38385](https://github.com/go-gitea/gitea/issues/38385))
- Enhance: allow builtin default git config options to be overridden ([#​38172](https://github.com/go-gitea/gitea/issues/38172))
- Enhance: allow MathML core elements ([#​38034](https://github.com/go-gitea/gitea/issues/38034))
- Enhance(markup): improve issue title rendering ([#​37908](https://github.com/go-gitea/gitea/issues/37908))
- Enhance(actions): set descriptive browser tab title on run view ([#​37870](https://github.com/go-gitea/gitea/issues/37870))
- Enhance: Migrate remaining gopkg.in/yaml.v3 usages to go.yaml.in/yaml/v4 ([#​37866](https://github.com/go-gitea/gitea/issues/37866))
- Enhance(actions): show workflow name from YAML instead of filename ([#​37833](https://github.com/go-gitea/gitea/issues/37833))
- Feat(actions): add before/after to PR synchronize event payload ([#​37827](https://github.com/go-gitea/gitea/issues/37827))
- Enhance(actions): add branch filters to run list ([#​37826](https://github.com/go-gitea/gitea/issues/37826))
- Enhance(actions): Make Summary UI more beautiful with more infos ([#​37824](https://github.com/go-gitea/gitea/issues/37824))
- Feat: add copy button to action step header, improve other copy buttons ([#​37744](https://github.com/go-gitea/gitea/issues/37744))
- Fix(icon): use repo-forked icon to display forks count ([#​37731](https://github.com/go-gitea/gitea/issues/37731))
- Feat(api): add sort and order query parameters to job list endpoints ([#​37672](https://github.com/go-gitea/gitea/issues/37672))
- Feat(api): add last_sync to repository API ([#​37566](https://github.com/go-gitea/gitea/issues/37566))
- Enhance: Adjust Workflow Graph styling ([#​37497](https://github.com/go-gitea/gitea/issues/37497))
- Improve code editor text selection and clean up lint enablement ([#​37474](https://github.com/go-gitea/gitea/issues/37474))
- Add mirror auth updates to repo edit API and settings ([#​37468](https://github.com/go-gitea/gitea/issues/37468))
- Replace `olivere/elastic` with REST API client, add OpenSearch support ([#​37411](https://github.com/go-gitea/gitea/issues/37411))
- Feat: Add default PR branch update style setting ([#​37410](https://github.com/go-gitea/gitea/issues/37410))
- Fix inconsistent disabled styling on logged-out repo header buttons ([#​37406](https://github.com/go-gitea/gitea/issues/37406))
- Allow fast-forward-only merge when signed commits are required ([#​37335](https://github.com/go-gitea/gitea/issues/37335))
- Enhance styling in actions page ([#​37323](https://github.com/go-gitea/gitea/issues/37323))
- Fix: improve actions status icons and texts ([#​37206](https://github.com/go-gitea/gitea/issues/37206))
- Make Markdown fenced code block work with more syntaxes ([#​37154](https://github.com/go-gitea/gitea/issues/37154))
- Fix: Sort action run jobs by JobID and Name with matrix examples ([#​37046](https://github.com/go-gitea/gitea/issues/37046))
- Add API endpoint to reply to pull request review comments ([#​36683](https://github.com/go-gitea/gitea/issues/36683))
- PERFORMANCE
- Perf(actions): debounce runner heartbeat writes and throttle task picks ([#​38281](https://github.com/go-gitea/gitea/issues/38281)) ([#​38368](https://github.com/go-gitea/gitea/issues/38368))
- Perf(web): sort the action_run query by a repo-scoped index when possible ([#​38155](https://github.com/go-gitea/gitea/issues/38155))
- Perf: Various performance regression fixes ([#​38078](https://github.com/go-gitea/gitea/issues/38078))
- Perf: extend action `c_u` index to include `created_unix` for faster dashboard feeds ([#​38076](https://github.com/go-gitea/gitea/issues/38076))
- Batch-load related data in actions run, job, and task API endpoints ([#​37032](https://github.com/go-gitea/gitea/issues/37032))
- BUGFIXES
- Fix(util): reject invalid characters between time-estimate units ([#​38416](https://github.com/go-gitea/gitea/issues/38416)) ([#​38423](https://github.com/go-gitea/gitea/issues/38423))
- Fix: represent a deleted assignee team as a Ghost team ([#​38413](https://github.com/go-gitea/gitea/issues/38413)) ([#​38419](https://github.com/go-gitea/gitea/issues/38419))
- Fix(turnstile): route CAPTCHA verification through the configured proxy ([#​38412](https://github.com/go-gitea/gitea/issues/38412)) ([#​38420](https://github.com/go-gitea/gitea/issues/38420))
- Fix: refresh pull request merge box when the commit status is pending ([#​38410](https://github.com/go-gitea/gitea/issues/38410)) ([#​38411](https://github.com/go-gitea/gitea/issues/38411))
- Fix: actions task state concurrent update ([#​38405](https://github.com/go-gitea/gitea/issues/38405)) ([#​38409](https://github.com/go-gitea/gitea/issues/38409))
- Fix(actions): keep workflow run trailing on one row with long branch names ([#​38382](https://github.com/go-gitea/gitea/issues/38382)) ([#​38403](https://github.com/go-gitea/gitea/issues/38403))
- Fix(web): use locale-aware date formatting for contribution calendar tooltips ([#​38398](https://github.com/go-gitea/gitea/issues/38398)) ([#​38401](https://github.com/go-gitea/gitea/issues/38401))
- Fix: co-author detection ([#​38392](https://github.com/go-gitea/gitea/issues/38392)) ([#​38397](https://github.com/go-gitea/gitea/issues/38397))
- Fix: incorrect co-author detection on commit page ([#​38386](https://github.com/go-gitea/gitea/issues/38386)) ([#​38387](https://github.com/go-gitea/gitea/issues/38387))
- Fix(ui): restore commits table column widths ([#​38379](https://github.com/go-gitea/gitea/issues/38379)) ([#​38383](https://github.com/go-gitea/gitea/issues/38383))
- Fix: minio init check ([#​38355](https://github.com/go-gitea/gitea/issues/38355)) ([#​38361](https://github.com/go-gitea/gitea/issues/38361))
- Fix: org project view assignee list ([#​38357](https://github.com/go-gitea/gitea/issues/38357)) ([#​38360](https://github.com/go-gitea/gitea/issues/38360))
- Fix(actions): release claimed task if context is cancelled during `FetchTask` ([#​38343](https://github.com/go-gitea/gitea/issues/38343)) ([#​38347](https://github.com/go-gitea/gitea/issues/38347))
- Fix(actions): make runner list pagination order deterministic ([#​38313](https://github.com/go-gitea/gitea/issues/38313)) ([#​38327](https://github.com/go-gitea/gitea/issues/38327))
- Fix: Improve since/until when counting commits for X-Total-Count ([#​38243](https://github.com/go-gitea/gitea/issues/38243)) ([#​38304](https://github.com/go-gitea/gitea/issues/38304))
- Fix(actions): prevent chevron overlap with log text when timestamps are enabled ([#​38227](https://github.com/go-gitea/gitea/issues/38227)) ([#​38307](https://github.com/go-gitea/gitea/issues/38307))
- Fix(workflows): branch protection status checks fail when workflow uses on: paths filter ([#​38237](https://github.com/go-gitea/gitea/issues/38237)) ([#​38302](https://github.com/go-gitea/gitea/issues/38302))
- Fix(oauth2): persist linkAccountData during auto-link 2FA flow ([#​38274](https://github.com/go-gitea/gitea/issues/38274)) ([#​38295](https://github.com/go-gitea/gitea/issues/38295))
- Fix(actions): allow Actions bot to push to protected branches ([#​38284](https://github.com/go-gitea/gitea/issues/38284)) ([#​38293](https://github.com/go-gitea/gitea/issues/38293))
- Fix(actions): include all aggregable run statuses in status filter ([#​38280](https://github.com/go-gitea/gitea/issues/38280)) ([#​38287](https://github.com/go-gitea/gitea/issues/38287))
- Fix(archiver): use serializable repo-archive queue payload ([#​38273](https://github.com/go-gitea/gitea/issues/38273)) ([#​38283](https://github.com/go-gitea/gitea/issues/38283))
- Fix: update npm dependencies, fix misc issues ([#​38257](https://github.com/go-gitea/gitea/issues/38257))
- Fix(api): respect since/until when counting commits for X-Total-Count ([#​38204](https://github.com/go-gitea/gitea/issues/38204))
- Fix: codemirror regressions ([#​38248](https://github.com/go-gitea/gitea/issues/38248))
- Fix(api): support HEAD requests on all API GET endpoints ([#​38245](https://github.com/go-gitea/gitea/issues/38245))
- Fix(actions): Cleanup workflow status badge code ([#​38241](https://github.com/go-gitea/gitea/issues/38241))
- Fix(web): Correctly align the "disabled" label on larger workflow names ([#​38240](https://github.com/go-gitea/gitea/issues/38240))
- Fix(actions): don't swallow HTML entities into linkified URLs ([#​38239](https://github.com/go-gitea/gitea/issues/38239))
- Fix(packages): accept npm "repository" and "bin" in string form ([#​38236](https://github.com/go-gitea/gitea/issues/38236))
- Fix(actions): fix 500 error when canceling a canceling task ([#​38223](https://github.com/go-gitea/gitea/issues/38223))
- Fix(deps): update module golang.org/x/image to v0.43.0 \[security] ([#​38219](https://github.com/go-gitea/gitea/issues/38219))
- Fix(mssql): convert legacy DATETIME columns to DATETIME2 ([#​38216](https://github.com/go-gitea/gitea/issues/38216))
- Fix(api): deny private org member enumeration via /members ([#​38213](https://github.com/go-gitea/gitea/issues/38213))
- Fix(actions): ensure all waiting jobs get runners in large workflows ([#​38200](https://github.com/go-gitea/gitea/issues/38200))
- Fix(deps): update go dependencies ([#​38194](https://github.com/go-gitea/gitea/issues/38194))
- Fix(deps): update npm dependencies ([#​38193](https://github.com/go-gitea/gitea/issues/38193))
- Fix(cli): default must-change-password to false for bot users ([#​38175](https://github.com/go-gitea/gitea/issues/38175))
- Fix(actions): show run index in run view and fix summary graph height ([#​38165](https://github.com/go-gitea/gitea/issues/38165))
- Fix: csp ([#​38162](https://github.com/go-gitea/gitea/issues/38162))
- Fix(deps): update npm dependencies ([#​38123](https://github.com/go-gitea/gitea/issues/38123))
- Fix(mssql): expand legacy issue and comment long-text columns ([#​38120](https://github.com/go-gitea/gitea/issues/38120))
- Fix(packages): validate debian distribution and component names ([#​38116](https://github.com/go-gitea/gitea/issues/38116))
- Fix(packages): validate module version in goproxy ParsePackage ([#​38104](https://github.com/go-gitea/gitea/issues/38104))
- Fix(deps): update dependency esbuild to v0.28.1 \[security] ([#​38097](https://github.com/go-gitea/gitea/issues/38097))
- Fix: git push hook post receive ([#​38089](https://github.com/go-gitea/gitea/issues/38089))
- Fix(ui): prevent commit status popup overflowing its row ([#​38081](https://github.com/go-gitea/gitea/issues/38081))
- Fix: validate gem name in rubygems parseMetadataFile ([#​38061](https://github.com/go-gitea/gitea/issues/38061))
- Fix: commit display name ([#​38057](https://github.com/go-gitea/gitea/issues/38057))
- Fix: csp regressions ([#​38047](https://github.com/go-gitea/gitea/issues/38047))
- Fix: api error message ([#​38031](https://github.com/go-gitea/gitea/issues/38031))
- Fix(deps): update npm dependencies ([#​38029](https://github.com/go-gitea/gitea/issues/38029))
- Fix: pgsql lint ([#​38022](https://github.com/go-gitea/gitea/issues/38022))
- Fix(indexer): fix assignee filters in issue search ([#​38021](https://github.com/go-gitea/gitea/issues/38021))
- Fix: various dropdown problems ([#​38020](https://github.com/go-gitea/gitea/issues/38020))
- Fix: refactor git error handling and make archive streaming handle non-existing commit id ([#​38007](https://github.com/go-gitea/gitea/issues/38007))
- Fix: raise git required version to 2.13 ([#​37996](https://github.com/go-gitea/gitea/issues/37996))
- Fix: remove "no-transfrom" from the cache-control header ([#​37985](https://github.com/go-gitea/gitea/issues/37985))
- Fix(deps): update module github.com/google/go-github/v87 to v88 ([#​37971](https://github.com/go-gitea/gitea/issues/37971))
- Fix: use committer time where ever possible as default ([#​37969](https://github.com/go-gitea/gitea/issues/37969))
- Fix(deps): update npm dependencies, remove nolyfill ([#​37968](https://github.com/go-gitea/gitea/issues/37968))
- Fix(deps): update go dependencies ([#​37967](https://github.com/go-gitea/gitea/issues/37967))
- Fix(pull): preserve squash message trailers and additional commit messages ([#​37954](https://github.com/go-gitea/gitea/issues/37954))
- Fix(deps): update module golang.org/x/image to v0.41.0 \[security] ([#​37904](https://github.com/go-gitea/gitea/issues/37904))
- Fix: support ##\[command] log prefix in action run UI ([#​37882](https://github.com/go-gitea/gitea/issues/37882))
- Fix(deps): update module github.com/google/go-github/v86 to v87 ([#​37845](https://github.com/go-gitea/gitea/issues/37845))
- Fix(deps): update npm dependencies ([#​37844](https://github.com/go-gitea/gitea/issues/37844))
- Fix(deps): update go dependencies ([#​37841](https://github.com/go-gitea/gitea/issues/37841))
- Fix(frontend): resolve Vite assets by manifest source path ([#​37836](https://github.com/go-gitea/gitea/issues/37836))
- Fix(locales): Replace hardcoded strings ([#​37788](https://github.com/go-gitea/gitea/issues/37788))
- Fix(packages): render markdown links relative to linked repo ([#​37676](https://github.com/go-gitea/gitea/issues/37676))
- Fix: persist mirror repository metadata ([#​37519](https://github.com/go-gitea/gitea/issues/37519))
- Fix cmd tests by mocking builtin paths ([#​37369](https://github.com/go-gitea/gitea/issues/37369))
- Add `form-fetch-action` to some forms, fix "fetch action" resp bug ([#​37305](https://github.com/go-gitea/gitea/issues/37305))
- Feat: execute post run cleanup when workflow is cancelled ([#​37275](https://github.com/go-gitea/gitea/issues/37275))
- Fix `relative-time` error and improve global error handler ([#​37241](https://github.com/go-gitea/gitea/issues/37241))
- Refactor flash message and remove SanitizeHTML template func ([#​37179](https://github.com/go-gitea/gitea/issues/37179))
- TESTING
- Test(e2e): fix race in pdf file render test ([#​38380](https://github.com/go-gitea/gitea/issues/38380)) ([#​38381](https://github.com/go-gitea/gitea/issues/38381))
- Test: compare key file contents instead of `FileInfo` in `TestInitKeys` ([#​38330](https://github.com/go-gitea/gitea/issues/38330)) ([#​38331](https://github.com/go-gitea/gitea/issues/38331))
- Test: speed up two tests ([#​37905](https://github.com/go-gitea/gitea/issues/37905))
- Test: Fix random failure test ([#​37887](https://github.com/go-gitea/gitea/issues/37887))
- Test: fix flaky `issue-comment` close test ([#​37880](https://github.com/go-gitea/gitea/issues/37880))
- Test: enable WAL for sqlite integration tests ([#​37861](https://github.com/go-gitea/gitea/issues/37861))
- Test: fix flaky `TestResourceIndex` and reduce its runtime ([#​37847](https://github.com/go-gitea/gitea/issues/37847))
- Test: run `TestAPIRepoMigrate` offline via a local clone source ([#​37817](https://github.com/go-gitea/gitea/issues/37817))
- Ci: shard tests and reduce redundant work ([#​37618](https://github.com/go-gitea/gitea/issues/37618))
- Test(e2e): run playwright via container ([#​37300](https://github.com/go-gitea/gitea/issues/37300))
- Remove external service dependencies in migration tests ([#​36866](https://github.com/go-gitea/gitea/issues/36866))
- BUILD
- Fix(actions): authenticate snapcraft before nightly remote build ([#​38252](https://github.com/go-gitea/gitea/issues/38252))
- Ci: cap Elasticsearch heap in db-tests ([#​37816](https://github.com/go-gitea/gitea/issues/37816))
- Build(snap): publish nightly version to snapcraft via actions ([#​37814](https://github.com/go-gitea/gitea/issues/37814))
- Ci: split pgsql shards into plain jobs, dedupe setup actions ([#​37802](https://github.com/go-gitea/gitea/issues/37802))
- Ci: narrow files-changed frontend filter ([#​37749](https://github.com/go-gitea/gitea/issues/37749))
- Ci: add `zizmor` to `lint-actions` ([#​37720](https://github.com/go-gitea/gitea/issues/37720))
- Chore: clean up "contrib" dir ([#​37690](https://github.com/go-gitea/gitea/issues/37690))
- Fix: snap build (main branch) ([#​37685](https://github.com/go-gitea/gitea/issues/37685))
- Ci: Also lint json5 files ([#​37659](https://github.com/go-gitea/gitea/issues/37659))
- Feat(editor): broaden language detection in web code editor ([#​37619](https://github.com/go-gitea/gitea/issues/37619))
- Build: update pnpm to v11 ([#​37591](https://github.com/go-gitea/gitea/issues/37591))
- Refactor(deps): migrate from `nektos/act` fork to `gitea/runner` ([#​37557](https://github.com/go-gitea/gitea/issues/37557))
- Refactor: lint bare `fill`/`stroke` colors, add vars for git graph color series ([#​37543](https://github.com/go-gitea/gitea/issues/37543))
- Update go js py dependencies ([#​37525](https://github.com/go-gitea/gitea/issues/37525))
- Ci: lint PR titles with commitlint ([#​37498](https://github.com/go-gitea/gitea/issues/37498))
- Chore: upgrade Go version in devcontainer image to 1.26 ([#​37374](https://github.com/go-gitea/gitea/issues/37374))
- Update GitHub Actions to latest major versions ([#​37313](https://github.com/go-gitea/gitea/issues/37313))
- Update go js dependencies ([#​37312](https://github.com/go-gitea/gitea/issues/37312))
- Fail vite build on rolldown warnings via NODE_ENV=test ([#​37270](https://github.com/go-gitea/gitea/issues/37270))
- Remove htmx ([#​37224](https://github.com/go-gitea/gitea/issues/37224))
- Replace custom Go formatter with `golangci-lint fmt` ([#​37194](https://github.com/go-gitea/gitea/issues/37194))
- Refactor htmx and fetch-action related code ([#​37186](https://github.com/go-gitea/gitea/issues/37186))
- Integrate renovate bot for all dependency updates ([#​37050](https://github.com/go-gitea/gitea/issues/37050))
- Build(sign): move to sigstore ([#​38250](https://github.com/go-gitea/gitea/issues/38250))
- DOCS
- Docs: update changelog for 1.26.3 & 1.26.4 ([#​38178](https://github.com/go-gitea/gitea/issues/38178))
- Docs: fix duplicated word in foreachref doc comment ([#​38161](https://github.com/go-gitea/gitea/issues/38161))
- Docs: Clarify criteria for becoming a merger ([#​38113](https://github.com/go-gitea/gitea/issues/38113))
- Docs: Publish TOC Election Result 2026 ([#​38111](https://github.com/go-gitea/gitea/issues/38111))
- Docs: mark openapi3 as autogenerated in attributes ([#​37963](https://github.com/go-gitea/gitea/issues/37963))
- Docs: add development setup guide ([#​37960](https://github.com/go-gitea/gitea/issues/37960))
- MISC
- Revert(sign): restore gpg ([#​38251](https://github.com/go-gitea/gitea/issues/38251))
- Refactor: replace legacy `delete-button` with `link-action` ([#​38143](https://github.com/go-gitea/gitea/issues/38143))
- Refactor(actions): read runner capabilities from proto field ([#​38068](https://github.com/go-gitea/gitea/issues/38068))
- Refactor(api): clarify APIError message usage and fix legacy lint error ([#​38012](https://github.com/go-gitea/gitea/issues/38012))
- Refactor: Use db.Get\[] instead of db.GetEngine(ctx).Get(bean) to avoid zero value fetching wrong database record ([#​37977](https://github.com/go-gitea/gitea/issues/37977))
- Fix(deps): update go dependencies ([#​37851](https://github.com/go-gitea/gitea/issues/37851))
- Ci: Fix sync PR labels from the conventional-commit title ([#​37784](https://github.com/go-gitea/gitea/issues/37784)) ([#​37825](https://github.com/go-gitea/gitea/issues/37825))
- Ci: tweak `files-changed`, add `free-disk-space` ([#​37819](https://github.com/go-gitea/gitea/issues/37819))
- Fix(deps): update module golang.org/x/crypto to v0.52.0 \[security] ([#​37806](https://github.com/go-gitea/gitea/issues/37806))
- Test(e2e): add comment, release, star, PR and fork tests ([#​37800](https://github.com/go-gitea/gitea/issues/37800))
- Chore: simplify issue and pull request templates ([#​37799](https://github.com/go-gitea/gitea/issues/37799))
- Chore: Update giteabot to fix failure when backport ([#​37789](https://github.com/go-gitea/gitea/issues/37789))
- Fix(api): handle partial failures in push mirror synchronization gracefully ([#​37782](https://github.com/go-gitea/gitea/issues/37782))
- Fix(deps): update module gitlab.com/gitlab-org/api/client-go/v2 to v2.26.0 ([#​37771](https://github.com/go-gitea/gitea/issues/37771))
- Ci: split giteabot workflow ([#​37770](https://github.com/go-gitea/gitea/issues/37770))
- Fix(deps): update npm dependencies ([#​37768](https://github.com/go-gitea/gitea/issues/37768))
- Refactor(waitgroup): replace Add/Done goroutines with WaitGroup.Go ([#​37764](https://github.com/go-gitea/gitea/issues/37764))
- Fix(deps): update module google.golang.org/grpc to v1.81.1 ([#​37762](https://github.com/go-gitea/gitea/issues/37762))
- Ci: fix cache-related issues ([#​37761](https://github.com/go-gitea/gitea/issues/37761))
- Chore: fix tests ([#​37760](https://github.com/go-gitea/gitea/issues/37760))
- Fix(deps): update module github.com/google/go-github/v85 to v86 ([#​37754](https://github.com/go-gitea/gitea/issues/37754))
- Fix(deps): update npm dependencies ([#​37753](https://github.com/go-gitea/gitea/issues/37753))
- Fix(deps): update go dependencies ([#​37752](https://github.com/go-gitea/gitea/issues/37752))
- Chore(deps): update action dependencies ([#​37751](https://github.com/go-gitea/gitea/issues/37751))
- Fix(markup): wrap indented code blocks for the code-copy button ([#​37748](https://github.com/go-gitea/gitea/issues/37748))
- Chore(db): introduce db.Session and db.EngineMigration interfaces ([#​37746](https://github.com/go-gitea/gitea/issues/37746))
- Feat(web): also display PR counts in repo list ([#​37739](https://github.com/go-gitea/gitea/issues/37739))
- Refactor(glob): use strings.Builder for regexp compilation ([#​37730](https://github.com/go-gitea/gitea/issues/37730))
- Chore(doctor): remove four obsolete doctor check implementations ([#​37728](https://github.com/go-gitea/gitea/issues/37728))
- Refactor(org): simplify owner-team org repo creation logic ([#​37727](https://github.com/go-gitea/gitea/issues/37727))
- Refactor: move `workflowpattern` into `modules/actions` ([#​37717](https://github.com/go-gitea/gitea/issues/37717))
- Chore: clean up tests ([#​37715](https://github.com/go-gitea/gitea/issues/37715))
- Style: misc UI fixes ([#​37691](https://github.com/go-gitea/gitea/issues/37691))
- Ci: add shellcheck linter ([#​37682](https://github.com/go-gitea/gitea/issues/37682))
- Fix: catch and fix more lint problems ([#​37674](https://github.com/go-gitea/gitea/issues/37674))
- Fix(deps): update dependency mermaid to v11.15.0 \[security], add e2e test ([#​37662](https://github.com/go-gitea/gitea/issues/37662))
- Fix(deps): update npm dependencies ([#​37647](https://github.com/go-gitea/gitea/issues/37647))
- Ci(renovate): update Go import paths on major bumps ([#​37641](https://github.com/go-gitea/gitea/issues/37641))
- Fix(deps): update go dependencies (major) ([#​37639](https://github.com/go-gitea/gitea/issues/37639))
- Chore(deps): update action dependencies (major) ([#​37638](https://github.com/go-gitea/gitea/issues/37638))
- Fix(deps): update module code.gitea.io/sdk/gitea to v0.25.0 ([#​37637](https://github.com/go-gitea/gitea/issues/37637))
- Fix(deps): update npm dependencies ([#​37636](https://github.com/go-gitea/gitea/issues/37636))
- Refactor(log): replace log.Critical with log.Error ([#​37624](https://github.com/go-gitea/gitea/issues/37624))
- Build(deps): bump fast-uri from 3.1.0 to 3.1.2 ([#​37616](https://github.com/go-gitea/gitea/issues/37616))
- Feat(oauth): Support AWS Cognito OAuth2 provider ([#​37607](https://github.com/go-gitea/gitea/issues/37607))
- Chore(deps): update action dependencies ([#​37603](https://github.com/go-gitea/gitea/issues/37603))
- Ci: allow `chore` type in PR title lint ([#​37575](https://github.com/go-gitea/gitea/issues/37575))
- Refactor: only reset a database table when the table's data was changed ([#​37573](https://github.com/go-gitea/gitea/issues/37573))
- Ci: increase renovate frequency and fix RENOVATE_ALLOWED_POST_UPGRADE_COMMANDS ([#​37565](https://github.com/go-gitea/gitea/issues/37565))
- Refactor: use modernc sqlite driver as default ([#​37562](https://github.com/go-gitea/gitea/issues/37562))
- Docs: fix 4 typos in CHANGELOG.md ([#​37549](https://github.com/go-gitea/gitea/issues/37549))
- Fix(deps): update go dependencies ([#​37541](https://github.com/go-gitea/gitea/issues/37541))
- Chore(deps): update action dependencies ([#​37540](https://github.com/go-gitea/gitea/issues/37540))
- Refactor pull request view (6) ([#​37522](https://github.com/go-gitea/gitea/issues/37522))
- Fix: redirect early CLI console logger to stderr ([#​37507](https://github.com/go-gitea/gitea/issues/37507))
- Refactor "flex-list" to "flex-divided-list" ([#​37505](https://github.com/go-gitea/gitea/issues/37505))
- Refactor compare diff/pull page (1) ([#​37481](https://github.com/go-gitea/gitea/issues/37481))
- Refactor pull request view (4) ([#​37451](https://github.com/go-gitea/gitea/issues/37451))
- Update 1.26.1 changelog in main ([#​37442](https://github.com/go-gitea/gitea/issues/37442))
- Refactor: use named `Permission` field in `Repository` struct instead of anonymous embedding ([#​37441](https://github.com/go-gitea/gitea/issues/37441))
- Refactor: serve site manifest via `/assets/site-manifest.json` endpoint ([#​37405](https://github.com/go-gitea/gitea/issues/37405))
- Remove IsValidExternalURL/IsAPIURL and use IsValidURL at call sites ([#​37364](https://github.com/go-gitea/gitea/issues/37364))
- Update `Block a user` form ([#​37359](https://github.com/go-gitea/gitea/issues/37359))
- Move review request functions to a standalone file ([#​37358](https://github.com/go-gitea/gitea/issues/37358))
- Feat(security): set X-Content-Type-Options: nosniff by default ([#​37354](https://github.com/go-gitea/gitea/issues/37354))
- Enable strict TypeScript, add `errorMessage` helper ([#​37292](https://github.com/go-gitea/gitea/issues/37292))
- Refactor frontend `tw-justify-between` layouts to `flex-left-right` ([#​37291](https://github.com/go-gitea/gitea/issues/37291))
- Update Nix flake ([#​37284](https://github.com/go-gitea/gitea/issues/37284))
- Fix Repository transferring page ([#​37277](https://github.com/go-gitea/gitea/issues/37277))
- Remove `SubmitEvent` polyfill ([#​37276](https://github.com/go-gitea/gitea/issues/37276))
- Remove dead code identified by `deadcode` tool ([#​37271](https://github.com/go-gitea/gitea/issues/37271))
- Upgrade go-git to v5.18.0 ([#​37268](https://github.com/go-gitea/gitea/issues/37268))
- Don't add useless labels which will bother changelog generation ([#​37267](https://github.com/go-gitea/gitea/issues/37267))
- Move heatmap to first-party code ([#​37262](https://github.com/go-gitea/gitea/issues/37262))
- Tests/integration: simplify code ([#​37249](https://github.com/go-gitea/gitea/issues/37249))
- Add pagination and search box to org teams list ([#​37245](https://github.com/go-gitea/gitea/issues/37245))
- Remove error returns from crypto random helpers and callers ([#​37240](https://github.com/go-gitea/gitea/issues/37240))
- Add `ExternalIDClaim` option for OAuth2 OIDC auth source ([#​37229](https://github.com/go-gitea/gitea/issues/37229))
- Refactor: simplify ParseCatFileTreeLine and catBatchParseTreeEntries ([#​37210](https://github.com/go-gitea/gitea/issues/37210))
- Refactor "htmx" to "fetch action" ([#​37208](https://github.com/go-gitea/gitea/issues/37208))
- Update go js py dependencies ([#​37204](https://github.com/go-gitea/gitea/issues/37204))
- Add comment for the design of "user activity time" ([#​37195](https://github.com/go-gitea/gitea/issues/37195))
- Remove outdated RunUser logic ([#​37180](https://github.com/go-gitea/gitea/issues/37180))
- Models/fixtures: add "DO NOT add more test data" comment to all yml fixture files ([#​37150](https://github.com/go-gitea/gitea/issues/37150))
- Update javascript dependencies ([#​37142](https://github.com/go-gitea/gitea/issues/37142))
- Update go dependencies ([#​37141](https://github.com/go-gitea/gitea/issues/37141))
- Frontport changelog of v1.26.0-rc0 ([#​37138](https://github.com/go-gitea/gitea/issues/37138))
- Introduce `ActionRunAttempt` to represent each execution of a run ([#​37119](https://github.com/go-gitea/gitea/issues/37119))
- Workflow Artifact Info Hover ([#​37100](https://github.com/go-gitea/gitea/issues/37100))
- Extend issue context popup beyond markdown content ([#​36908](https://github.com/go-gitea/gitea/issues/36908))
- Add bulk repository deletion for organizations ([#​36763](https://github.com/go-gitea/gitea/issues/36763))
- Feat: Add bypass allowlist for branch protection ([#​36514](https://github.com/go-gitea/gitea/issues/36514))
Instances on **[Gitea Cloud](https://cloud.gitea.com)** will be automatically upgraded to this version during the specified maintenance window.
### [`v1.26.4`](https://github.com/go-gitea/gitea/releases/tag/v1.26.4)
[Compare Source](https://github.com/go-gitea/gitea/compare/v1.26.3...v1.26.4)
- SECURITY
- fix(auth): do not auto-reactivate disabled users on OAuth2 callback ([#​38009](https://github.com/go-gitea/gitea/issues/38009)) ([#​38183](https://github.com/go-gitea/gitea/issues/38183))
- BUGFIXES
- fix: walk git log context error handling ([#​38182](https://github.com/go-gitea/gitea/issues/38182)) ([#​38185](https://github.com/go-gitea/gitea/issues/38185))
Instances on **[Gitea Cloud](https://cloud.gitea.com)** will be automatically upgraded to this version during the specified maintenance window.
### [`v1.26.3`](https://github.com/go-gitea/gitea/releases/tag/v1.26.3)
[Compare Source](https://github.com/go-gitea/gitea/compare/v1.26.2...v1.26.3)
> \[!WARNING]
> **Please upgrade to 1.26.4 directly.** A regression in this release can cause **"context deadline exceeded"** errors when opening any repository's code pages ([#​38177](https://github.com/go-gitea/gitea/issues/38177)). Please hold off on upgrading until a fix is released.
- BREAKING
- fix(actions)!: require merged PR to bypass fork PR approval gate ([#​38010](https://github.com/go-gitea/gitea/issues/38010)) ([#​38041](https://github.com/go-gitea/gitea/issues/38041))
- SECURITY
- fix(hostmatcher): patch incorrect private list ([#​38170](https://github.com/go-gitea/gitea/issues/38170)) ([#​38173](https://github.com/go-gitea/gitea/issues/38173))
- fix: Various security fixes ([#​38103](https://github.com/go-gitea/gitea/issues/38103)) ([#​38151](https://github.com/go-gitea/gitea/issues/38151))
- fix: Various sec fixes ([#​38108](https://github.com/go-gitea/gitea/issues/38108)) ([#​38147](https://github.com/go-gitea/gitea/issues/38147))
- fix: allow git clone of private repos with anonymous code access ([#​38074](https://github.com/go-gitea/gitea/issues/38074)) ([#​38146](https://github.com/go-gitea/gitea/issues/38146))
- fix(auth): ignore stale OIDC external login links to organizations ([#​37875](https://github.com/go-gitea/gitea/issues/37875)) ([#​38141](https://github.com/go-gitea/gitea/issues/38141))
- fix(hostmatcher): block reserved IP ranges from external/private filters ([#​38039](https://github.com/go-gitea/gitea/issues/38039)) ([#​38059](https://github.com/go-gitea/gitea/issues/38059))
- fix(lfs): require Code-unit access for cross-repo LFS object reuse ([#​38006](https://github.com/go-gitea/gitea/issues/38006)) ([#​38050](https://github.com/go-gitea/gitea/issues/38050))
- fix(lfs): reject unknown SSH LFS sub-verbs to prevent auth bypass ([#​38008](https://github.com/go-gitea/gitea/issues/38008)) ([#​38015](https://github.com/go-gitea/gitea/issues/38015))
- fix: bound CODEOWNERS regex match time ([#​38011](https://github.com/go-gitea/gitea/issues/38011)) ([#​38025](https://github.com/go-gitea/gitea/issues/38025))
- fix: bound debian ParseControlFile to a single control stanza ([#​38044](https://github.com/go-gitea/gitea/issues/38044)) ([#​38055](https://github.com/go-gitea/gitea/issues/38055))
- fix(deps): update module golang.org/x/net to v0.55.0 \[security] ([#​37813](https://github.com/go-gitea/gitea/issues/37813)) ([#​37829](https://github.com/go-gitea/gitea/issues/37829))
- API
- feat(api): add Link header in ListForks ([#​38052](https://github.com/go-gitea/gitea/issues/38052)) ([#​38063](https://github.com/go-gitea/gitea/issues/38063))
- BUGFIXES
- fix: Fix the panic when ssh remote lfs endpoint parsing failure ([#​38026](https://github.com/go-gitea/gitea/issues/38026)) ([#​38158](https://github.com/go-gitea/gitea/issues/38158))
- fix(api): nil pointer panic when filtering tracked times by a non-existent user ([#​38112](https://github.com/go-gitea/gitea/issues/38112)) ([#​38115](https://github.com/go-gitea/gitea/issues/38115))
- fix: keep literal "false" value displayed in workflow_dispatch choice dropdowns ([#​38080](https://github.com/go-gitea/gitea/issues/38080)) ([#​38096](https://github.com/go-gitea/gitea/issues/38096))
- fix: parse HEAD ref ([#​38119](https://github.com/go-gitea/gitea/issues/38119))
- fix: git cmd ([#​38084](https://github.com/go-gitea/gitea/issues/38084)) ([#​38087](https://github.com/go-gitea/gitea/issues/38087))
- fix(releases): generate notes for initial tag ([#​37697](https://github.com/go-gitea/gitea/issues/37697)) ([#​37986](https://github.com/go-gitea/gitea/issues/37986))
- fix(actions): return 404 when job log blob is missing ([#​38003](https://github.com/go-gitea/gitea/issues/38003)) ([#​38004](https://github.com/go-gitea/gitea/issues/38004))
- fix(actions): exclude `workflow_call` from workflow trigger detection ([#​37894](https://github.com/go-gitea/gitea/issues/37894)) ([#​37899](https://github.com/go-gitea/gitea/issues/37899))
- fix(actions): keep action run title clickable when commit subject is a URL ([#​37867](https://github.com/go-gitea/gitea/issues/37867)) ([#​37898](https://github.com/go-gitea/gitea/issues/37898))
- fix(actions): reject workflow_dispatch for workflows without that trigger ([#​37660](https://github.com/go-gitea/gitea/issues/37660)) ([#​37895](https://github.com/go-gitea/gitea/issues/37895))
- fix(actions): ack re-sent `UpdateLog` finalize idempotently ([#​37885](https://github.com/go-gitea/gitea/issues/37885)) ([#​37892](https://github.com/go-gitea/gitea/issues/37892))
- fix: http content file render ([#​37850](https://github.com/go-gitea/gitea/issues/37850)) ([#​37856](https://github.com/go-gitea/gitea/issues/37856))
- fix(issues): clear stale ReviewTypeRequest when submitting pending review ([#​37809](https://github.com/go-gitea/gitea/issues/37809)) ([#​37815](https://github.com/go-gitea/gitea/issues/37815))
- fix: Fix issue target branch selection for non-collaborators ([#​36916](https://github.com/go-gitea/gitea/issues/36916)) ([#​38164](https://github.com/go-gitea/gitea/issues/38164))
- BUILD
- fix(deps): update `@playwright/test` to 1.60.0 ([#​38144](https://github.com/go-gitea/gitea/issues/38144))
- ci: add `tools/ci-tools.ts` for the PR labeler workflow ([#​37831](https://github.com/go-gitea/gitea/issues/37831))
- fix(build): swagger css import ([#​37801](https://github.com/go-gitea/gitea/issues/37801)) ([#​37803](https://github.com/go-gitea/gitea/issues/37803))
Instances on **[Gitea Cloud](https://cloud.gitea.com)** will be automatically upgraded to this version during the specified maintenance window.
### [`v1.26.2`](https://github.com/go-gitea/gitea/releases/tag/v1.26.2)
[Compare Source](https://github.com/go-gitea/gitea/compare/v1.26.1...v1.26.2)
- SECURITY
- fix(permissions): Fix reading permission ([#​37769](https://github.com/go-gitea/gitea/issues/37769))
- fix(actions): make artifact signature payloads unambiguous ([#​37707](https://github.com/go-gitea/gitea/issues/37707))
- fix: Unify public-only token filtering in API queries and repo access checks ([#​37118](https://github.com/go-gitea/gitea/issues/37118))
- fix: Add missed token scope checking ([#​37735](https://github.com/go-gitea/gitea/issues/37735))
- fix(oauth): bind token exchanges to the original client request ([#​37704](https://github.com/go-gitea/gitea/issues/37704))
- fix(oauth): strengthen PKCE validation and refresh token replay protection ([#​37706](https://github.com/go-gitea/gitea/issues/37706))
- fix(web): enforce token scopes on raw, media, and attachment downloads ([#​37698](https://github.com/go-gitea/gitea/issues/37698))
- fix(security): enforce wiki git writes and LFS token access at request time ([#​37695](https://github.com/go-gitea/gitea/issues/37695))
- feat(api): encrypt AWS creds ([#​37679](https://github.com/go-gitea/gitea/issues/37679))
- fix(deps): update dependency mermaid to v11.15.0 \[security], add e2e test
- fix(packages): Add label for private and internal package and fix composor package source permission check ([#​37610](https://github.com/go-gitea/gitea/issues/37610))
- fix(git): Fix smart http request scope bug ([#​37583](https://github.com/go-gitea/gitea/issues/37583))
- Fix basic auth bug ([#​37503](https://github.com/go-gitea/gitea/issues/37503))
- Fix allow maintainer edit permission check ([#​37479](https://github.com/go-gitea/gitea/issues/37479)) ([#​37484](https://github.com/go-gitea/gitea/issues/37484))
- Fix URL sanitization to handle schemeless credentials ([#​37440](https://github.com/go-gitea/gitea/issues/37440)) ([#​37471](https://github.com/go-gitea/gitea/issues/37471))
- Fix attachment Content-Security-Policy ([#​37455](https://github.com/go-gitea/gitea/issues/37455)) ([#​37464](https://github.com/go-gitea/gitea/issues/37464))
- chore(deps): bump go-git/go-git/v5 to 5.19.0 ([#​37608](https://github.com/go-gitea/gitea/issues/37608))
- BUGFIXES
- fix(pull): handle empty pull request files view to allow reviews ([#​37783](https://github.com/go-gitea/gitea/issues/37783))
- fix(markup): make RenderString never fail ([#​37779](https://github.com/go-gitea/gitea/issues/37779))
- fix: add natural sort to sortTreeViewNodes ([#​37772](https://github.com/go-gitea/gitea/issues/37772))
- fix: package creation unique conflict ([#​37774](https://github.com/go-gitea/gitea/issues/37774))
- fix!: add DEFAULT_TITLE_SOURCE setting for pull request title default behavior ([#​37465](https://github.com/go-gitea/gitea/issues/37465))
- fix: Allow direct commits for unprotected files with push restrictions ([#​37657](https://github.com/go-gitea/gitea/issues/37657))
- fix(actions): wrong assumption that run id always >= job id ([#​37737](https://github.com/go-gitea/gitea/issues/37737))
- fix(auth): set User-Agent on avatar fetch and sync avatar on link-account register ([#​37564](https://github.com/go-gitea/gitea/issues/37564)) ([#​37588](https://github.com/go-gitea/gitea/issues/37588))
- fix(actions): deadlock between PrepareRunAndInsert and UpdateTaskByState ([#​37692](https://github.com/go-gitea/gitea/issues/37692))
- fix(repo): /generate must sync the branch table for the new repo ([#​37693](https://github.com/go-gitea/gitea/issues/37693))
- build: Fix snap build (1.26)
- fix(actions): run TransferLogs on UpdateLog{Rows:\[], NoMore:true} ([#​37631](https://github.com/go-gitea/gitea/issues/37631))
- fix show correct mergebase
- fix: make clone URL respect public URL detection setting ([#​37615](https://github.com/go-gitea/gitea/issues/37615))
- fix: "run as root" check ([#​37622](https://github.com/go-gitea/gitea/issues/37622))
- chore(deps): update dependency go to v1.26.3 ([#​37601](https://github.com/go-gitea/gitea/issues/37601))
- Compare dropdown fails when selecting branch with no common merge-base ([#​37470](https://github.com/go-gitea/gitea/issues/37470))
- fix: treat email addresses case-insensitively ([#​37600](https://github.com/go-gitea/gitea/issues/37600))
- fix(actions): fix blank lines after ::endgroup:: ([#​37597](https://github.com/go-gitea/gitea/issues/37597))
- fix(actions): report individual step status in workflow job API response ([#​37592](https://github.com/go-gitea/gitea/issues/37592))
- fix: Invalid UTF-8 commit messages in JSON API responses ([#​37542](https://github.com/go-gitea/gitea/issues/37542))
- fix: use consistent GetUser family functions ([#​37553](https://github.com/go-gitea/gitea/issues/37553))
- fix(api): return 409 message instead of empty JSON for wrong commit id ([#​37572](https://github.com/go-gitea/gitea/issues/37572))
- fix(actions): prevent panic when workflow contains null jobs ([#​37570](https://github.com/go-gitea/gitea/issues/37570))
- Make ServeSetHeaders default to download attachment if filename exists ([#​37552](https://github.com/go-gitea/gitea/issues/37552)) ([#​37555](https://github.com/go-gitea/gitea/issues/37555))
- Fix(actions): validate workflow param to prevent 500 error ([#​37546](https://github.com/go-gitea/gitea/issues/37546)) ([#​37554](https://github.com/go-gitea/gitea/issues/37554))
- Don't unblock run-level-concurrency-blocked runs in the resolver ([#​37461](https://github.com/go-gitea/gitea/issues/37461)) ([#​37538](https://github.com/go-gitea/gitea/issues/37538))
- Fix(packages): use file names for generic web downloads ([#​37514](https://github.com/go-gitea/gitea/issues/37514)) ([#​37520](https://github.com/go-gitea/gitea/issues/37520))
- Fix merge autodetect can't close other PRs but only the last one when multiple PRs are pushed at once ([#​37512](https://github.com/go-gitea/gitea/issues/37512)) ([#​37516](https://github.com/go-gitea/gitea/issues/37516))
- Fix update branch protection order ([#​37508](https://github.com/go-gitea/gitea/issues/37508)) ([#​37513](https://github.com/go-gitea/gitea/issues/37513))
- Fix mCaptcha broken after Vite migration ([#​37492](https://github.com/go-gitea/gitea/issues/37492)) ([#​37509](https://github.com/go-gitea/gitea/issues/37509))
- Fix review submission from single-commit PR view ([#​37475](https://github.com/go-gitea/gitea/issues/37475)) ([#​37485](https://github.com/go-gitea/gitea/issues/37485))
- Fix scheduled action panic with null event payload ([#​37459](https://github.com/go-gitea/gitea/issues/37459)) ([#​37466](https://github.com/go-gitea/gitea/issues/37466))
- Make GetPossibleUserByID can handle deleted user ([#​37430](https://github.com/go-gitea/gitea/issues/37430)) ([#​37431](https://github.com/go-gitea/gitea/issues/37431))
- Remove excessive quote from terraform instructions ([#​37424](https://github.com/go-gitea/gitea/issues/37424)) ([#​37426](https://github.com/go-gitea/gitea/issues/37426))
- Fix color regressions, add `priority` color ([#​37417](https://github.com/go-gitea/gitea/issues/37417)) ([#​37421](https://github.com/go-gitea/gitea/issues/37421))
- MISC
- Add CurrentURL template variable back ([#​37444](https://github.com/go-gitea/gitea/issues/37444)) ([#​37449](https://github.com/go-gitea/gitea/issues/37449))
Instances on **[Gitea Cloud](https://cloud.gitea.com)** will be automatically upgraded to this version during the specified maintenance window.
### [`v1.26.1`](https://github.com/go-gitea/gitea/releases/tag/v1.26.1)
[Compare Source](https://github.com/go-gitea/gitea/compare/v1.26.0...v1.26.1)
- BUGFIXES
- Add event.schedule context for schedule actions task ([#​37320](https://github.com/go-gitea/gitea/issues/37320)) ([#​37348](https://github.com/go-gitea/gitea/issues/37348))
- Fix an issue where changing an organization's visibility caused problems when users had forked its repositories. ([#​37324](https://github.com/go-gitea/gitea/issues/37324)) ([#​37344](https://github.com/go-gitea/gitea/issues/37344))
- Use modern "git update-index --cacheinfo" syntax to support more file names ([#​37338](https://github.com/go-gitea/gitea/issues/37338)) ([#​37343](https://github.com/go-gitea/gitea/issues/37343))
- Fix URL related escaping for oauth2 ([#​37334](https://github.com/go-gitea/gitea/issues/37334)) ([#​37340](https://github.com/go-gitea/gitea/issues/37340))
- When the requested arch rpm is missing fall back to noarch ([#​37236](https://github.com/go-gitea/gitea/issues/37236)) ([#​37339](https://github.com/go-gitea/gitea/issues/37339))
- Fix actions concurrency groups cross-branch leak ([#​37311](https://github.com/go-gitea/gitea/issues/37311)) ([#​37331](https://github.com/go-gitea/gitea/issues/37331))
- Fix bug when accessing user badges ([#​37321](https://github.com/go-gitea/gitea/issues/37321)) ([#​37329](https://github.com/go-gitea/gitea/issues/37329))
- Fix AppFullLink ([#​37325](https://github.com/go-gitea/gitea/issues/37325)) ([#​37328](https://github.com/go-gitea/gitea/issues/37328))
- Fix container auth for public instance ([#​37290](https://github.com/go-gitea/gitea/issues/37290)) ([#​37294](https://github.com/go-gitea/gitea/issues/37294))
- Enhance GetActionWorkflow to support fallback references ([#​37189](https://github.com/go-gitea/gitea/issues/37189)) ([#​37283](https://github.com/go-gitea/gitea/issues/37283))
- Fix vite manifest update masking build errors ([#​37279](https://github.com/go-gitea/gitea/issues/37279)) ([#​37310](https://github.com/go-gitea/gitea/issues/37310))
- Fix Mermaid diagrams failing when node labels contain line breaks ([#​37296](https://github.com/go-gitea/gitea/issues/37296)) ([#​37299](https://github.com/go-gitea/gitea/issues/37299))
- Use TriggerEvent instead of Event in workflow runs API response for scheduled runs ([#​37288](https://github.com/go-gitea/gitea/issues/37288)) [#​37360](https://github.com/go-gitea/gitea/issues/37360)
- Add URL to Learn more about blocking a user. ([#​37355](https://github.com/go-gitea/gitea/issues/37355)) [#​37367](https://github.com/go-gitea/gitea/issues/37367)
- Fix button layout shift when collapsing file tree in editor ([#​37363](https://github.com/go-gitea/gitea/issues/37363)) [#​37375](https://github.com/go-gitea/gitea/issues/37375)
- Fix org team assignee/reviewer lookups for team member permissions ([#​37365](https://github.com/go-gitea/gitea/issues/37365)) [#​37391](https://github.com/go-gitea/gitea/issues/37391)
- Fix repo init README EOL ([#​37388](https://github.com/go-gitea/gitea/issues/37388)) [#​37399](https://github.com/go-gitea/gitea/issues/37399)
- Fix: dump with default zip type produces uncompressed zip ([#​37401](https://github.com/go-gitea/gitea/issues/37401))[#​37402](https://github.com/go-gitea/gitea/issues/37402)
Instances on **[Gitea Cloud](https://cloud.gitea.com)** will be automatically upgraded to this version during the specified maintenance window.
### [`v1.26.0`](https://github.com/go-gitea/gitea/releases/tag/v1.26.0)
[Compare Source](https://github.com/go-gitea/gitea/compare/v1.25.5...v1.26.0)
- BREAKING
- Correct swagger annotations for enums, status codes, and notification state ([#​37030](https://github.com/go-gitea/gitea/issues/37030))
- Remove GET API registration-token ([#​36801](https://github.com/go-gitea/gitea/issues/36801))
- Support Actions `concurrency` syntax ([#​32751](https://github.com/go-gitea/gitea/issues/32751))
- Make PUBLIC_URL_DETECTION default to "auto" ([#​36955](https://github.com/go-gitea/gitea/issues/36955))
- SECURITY
- Bound PageSize in `ListUnadoptedRepositories` ([#​36884](https://github.com/go-gitea/gitea/issues/36884))
- FEATURES
- Support Actions `concurrency` syntax ([#​32751](https://github.com/go-gitea/gitea/issues/32751))
- Add terraform state registry ([#​36710](https://github.com/go-gitea/gitea/issues/36710))
- Instance-wide (global) info banner and maintenance mode ([#​36571](https://github.com/go-gitea/gitea/issues/36571))
- Support rendering OpenAPI spec ([#​36449](https://github.com/go-gitea/gitea/issues/36449))
- Add keyboard shortcuts for repository file and code search ([#​36416](https://github.com/go-gitea/gitea/issues/36416))
- Add support for archive-upload rpc ([#​36391](https://github.com/go-gitea/gitea/issues/36391))
- Add ability to download subpath archive ([#​36371](https://github.com/go-gitea/gitea/issues/36371))
- Add workflow dependencies visualization ([#​26062](https://github.com/go-gitea/gitea/issues/26062)) ([#​36248](https://github.com/go-gitea/gitea/issues/36248)) & Restyle Workflow Graph ([#​36912](https://github.com/go-gitea/gitea/issues/36912))
- Automatic generation of release notes ([#​35977](https://github.com/go-gitea/gitea/issues/35977))
- Add "Go to file", "Delete Directory" to repo file list page ([#​35911](https://github.com/go-gitea/gitea/issues/35911))
- Introduce "config edit-ini" sub command to help maintaining INI config file ([#​35735](https://github.com/go-gitea/gitea/issues/35735))
- Add button to re-run failed jobs in Actions ([#​36924](https://github.com/go-gitea/gitea/issues/36924))
- Support actions and reusable workflows from private repos ([#​32562](https://github.com/go-gitea/gitea/issues/32562))
- Add summary to action runs view ([#​36883](https://github.com/go-gitea/gitea/issues/36883))
- Add user badges ([#​36752](https://github.com/go-gitea/gitea/issues/36752))
- Add configurable permissions for Actions automatic tokens ([#​36173](https://github.com/go-gitea/gitea/issues/36173))
- Add per-runner "Disable/Pause" ([#​36776](https://github.com/go-gitea/gitea/issues/36776))
- Feature non-zipped actions artifacts (action v7 / nodejs / npm v6.2.0) ([#​36786](https://github.com/go-gitea/gitea/issues/36786))
- PERFORMANCE
- WorkflowDispatch API optionally return runid ([#​36706](https://github.com/go-gitea/gitea/issues/36706))
- Add render cache for SVG icons ([#​36863](https://github.com/go-gitea/gitea/issues/36863))
- Load `mentionValues` asynchronously ([#​36739](https://github.com/go-gitea/gitea/issues/36739))
- Lazy-load some Vue components, fix heatmap chunk loading on every page ([#​36719](https://github.com/go-gitea/gitea/issues/36719))
- Load heatmap data asynchronously ([#​36622](https://github.com/go-gitea/gitea/issues/36622))
- Use prev/next pagination for user profile activities page to speed up ([#​36642](https://github.com/go-gitea/gitea/issues/36642))
- Refactor cat-file batch operations and support `--batch-command` approach ([#​35775](https://github.com/go-gitea/gitea/issues/35775))
- Use merge tree to detect conflicts when possible ([#​36400](https://github.com/go-gitea/gitea/issues/36400))
- ENHANCEMENTS
- Implement logout redirection for reverse proxy auth setups ([#​36085](https://github.com/go-gitea/gitea/issues/36085)) ([#​37171](https://github.com/go-gitea/gitea/issues/37171))
- Adds option to force update new branch in contents routes ([#​35592](https://github.com/go-gitea/gitea/issues/35592))
- Add viewer controller for mermaid (zoom, drag) ([#​36557](https://github.com/go-gitea/gitea/issues/36557))
- Add code editor setting dropdowns ([#​36534](https://github.com/go-gitea/gitea/issues/36534))
- Add `elk` layout support to mermaid ([#​36486](https://github.com/go-gitea/gitea/issues/36486))
- Add resolve/unresolve review comment API endpoints ([#​36441](https://github.com/go-gitea/gitea/issues/36441))
- Allow configuring default PR base branch (fixes [#​36412](https://github.com/go-gitea/gitea/issues/36412)) ([#​36425](https://github.com/go-gitea/gitea/issues/36425))
- Add support for RPM Errata (updateinfo.xml) ([#​37125](https://github.com/go-gitea/gitea/issues/37125))
- Require additional user confirmation for making repo private ([#​36959](https://github.com/go-gitea/gitea/issues/36959))
- Add `actions.WORKFLOW_DIRS` setting ([#​36619](https://github.com/go-gitea/gitea/issues/36619))
- Avoid opening new tab when downloading actions logs ([#​36740](https://github.com/go-gitea/gitea/issues/36740))
- Implements OIDC RP-Initiated Logout ([#​36724](https://github.com/go-gitea/gitea/issues/36724))
- Show workflow link ([#​37070](https://github.com/go-gitea/gitea/issues/37070))
- Desaturate dark theme background colors ([#​37056](https://github.com/go-gitea/gitea/issues/37056))
- Refactor "org teams" page and help new users to "add member" to an org ([#​37051](https://github.com/go-gitea/gitea/issues/37051))
- Add webhook name field to improve webhook identification ([#​37025](https://github.com/go-gitea/gitea/issues/37025)) ([#​37040](https://github.com/go-gitea/gitea/issues/37040))
- Make task list checkboxes clickable in the preview tab ([#​37010](https://github.com/go-gitea/gitea/issues/37010))
- Improve severity labels in Actions logs and tweak colors ([#​36993](https://github.com/go-gitea/gitea/issues/36993))
- Linkify URLs in Actions workflow logs ([#​36986](https://github.com/go-gitea/gitea/issues/36986))
- Allow text selection on checkbox labels ([#​36970](https://github.com/go-gitea/gitea/issues/36970))
- Support dark/light theme images in markdown ([#​36922](https://github.com/go-gitea/gitea/issues/36922))
- Enable native dark mode for swagger-ui ([#​36899](https://github.com/go-gitea/gitea/issues/36899))
- Rework checkbox styling, remove `input` border hover effect ([#​36870](https://github.com/go-gitea/gitea/issues/36870))
- Refactor storage content-type handling of ServeDirectURL ([#​36804](https://github.com/go-gitea/gitea/issues/36804))
- Use "Enable Gravatar" but not "Disable" ([#​36771](https://github.com/go-gitea/gitea/issues/36771))
- Use case-insensitive matching for Git error "Not a valid object name" ([#​36728](https://github.com/go-gitea/gitea/issues/36728))
- Add "Copy Source" to markup comment menu ([#​36726](https://github.com/go-gitea/gitea/issues/36726))
- Change image transparency grid to CSS ([#​36711](https://github.com/go-gitea/gitea/issues/36711))
- Add "Run" prefix for unnamed action steps ([#​36624](https://github.com/go-gitea/gitea/issues/36624))
- Persist actions log time display settings in `localStorage` ([#​36623](https://github.com/go-gitea/gitea/issues/36623))
- Use first commit title for multi-commit PRs and fix auto-focus title field ([#​36606](https://github.com/go-gitea/gitea/issues/36606))
- Improve BuildCaseInsensitiveLike with lowercase ([#​36598](https://github.com/go-gitea/gitea/issues/36598))
- Improve diff highlighting ([#​36583](https://github.com/go-gitea/gitea/issues/36583))
- Exclude cancelled runs from failure-only email notifications ([#​36569](https://github.com/go-gitea/gitea/issues/36569))
- Use full-file highlighting for diff sections ([#​36561](https://github.com/go-gitea/gitea/issues/36561))
- Color command/error logs in Actions log ([#​36538](https://github.com/go-gitea/gitea/issues/36538))
- Add paging headers ([#​36521](https://github.com/go-gitea/gitea/issues/36521))
- Improve timeline entries for WIP prefix changes in pull requests ([#​36518](https://github.com/go-gitea/gitea/issues/36518))
- Add FOLDER_ICON_THEME configuration option ([#​36496](https://github.com/go-gitea/gitea/issues/36496))
- Normalize guessed languages for code highlighting ([#​36450](https://github.com/go-gitea/gitea/issues/36450))
- Add chunked transfer encoding support for LFS uploads ([#​36380](https://github.com/go-gitea/gitea/issues/36380))
- Indicate when only optional checks failed ([#​36367](https://github.com/go-gitea/gitea/issues/36367))
- Add 'allow_maintainer_edit' API option for creating a pull request ([#​36283](https://github.com/go-gitea/gitea/issues/36283))
- Support closing keywords with URL references ([#​36221](https://github.com/go-gitea/gitea/issues/36221))
- Improve diff file headers ([#​36215](https://github.com/go-gitea/gitea/issues/36215))
- Fix and enhance comment editor monospace toggle ([#​36181](https://github.com/go-gitea/gitea/issues/36181))
- Add git.DIFF_RENAME_SIMILARITY_THRESHOLD option ([#​36164](https://github.com/go-gitea/gitea/issues/36164))
- Add matching pair insertion to markdown textarea ([#​36121](https://github.com/go-gitea/gitea/issues/36121))
- Add sorting/filtering to admin user search API endpoint ([#​36112](https://github.com/go-gitea/gitea/issues/36112))
- Allow action user have read permission in public repo like other user ([#​36095](https://github.com/go-gitea/gitea/issues/36095))
- Disable matchBrackets in monaco ([#​36089](https://github.com/go-gitea/gitea/issues/36089))
- Use GitHub-style commit message for squash merge ([#​35987](https://github.com/go-gitea/gitea/issues/35987))
- Make composer registry support tar.gz and tar.bz2 and fix bugs ([#​35958](https://github.com/go-gitea/gitea/issues/35958))
- Add GITEA_PR_INDEX env variable to githooks ([#​35938](https://github.com/go-gitea/gitea/issues/35938))
- Add proper error message if session provider can not be created ([#​35520](https://github.com/go-gitea/gitea/issues/35520))
- Add button to copy file name in PR files ([#​35509](https://github.com/go-gitea/gitea/issues/35509))
- Move `X_FRAME_OPTIONS` setting from `cors` to `security` section ([#​30256](https://github.com/go-gitea/gitea/issues/30256))
- Add placeholder content for empty content page ([#​37114](https://github.com/go-gitea/gitea/issues/37114))
- Add `DEFAULT_DELETE_BRANCH_AFTER_MERGE` setting ([#​36917](https://github.com/go-gitea/gitea/issues/36917))
- Redirect to the only OAuth2 provider when no other login methods and fix various problems ([#​36901](https://github.com/go-gitea/gitea/issues/36901))
- Add admin badge to navbar avatar ([#​36790](https://github.com/go-gitea/gitea/issues/36790))
- Add `never` option to `PUBLIC_URL_DETECTION` configuration ([#​36785](https://github.com/go-gitea/gitea/issues/36785))
- Add background and run count to actions list page ([#​36707](https://github.com/go-gitea/gitea/issues/36707))
- Add icon to buttons "Close with Comment", "Close Pull Request", "Close Issue" ([#​36654](https://github.com/go-gitea/gitea/issues/36654))
- Add support for in_progress event in workflow_run webhook ([#​36979](https://github.com/go-gitea/gitea/issues/36979))
- Report commit status for pull_request_review events ([#​36589](https://github.com/go-gitea/gitea/issues/36589))
- Render merged pull request title as such in dashboard feed ([#​36479](https://github.com/go-gitea/gitea/issues/36479))
- Feature to be able to filter project boards by milestones ([#​36321](https://github.com/go-gitea/gitea/issues/36321))
- Use user id in noreply emails ([#​36550](https://github.com/go-gitea/gitea/issues/36550))
- Enable pagination on GiteaDownloader.getIssueReactions() ([#​36549](https://github.com/go-gitea/gitea/issues/36549))
- Remove striped tables in UI ([#​36509](https://github.com/go-gitea/gitea/issues/36509))
- Improve control char rendering and escape button styling ([#​37094](https://github.com/go-gitea/gitea/issues/37094))
- Support legacy run/job index-based URLs and refactor migration 326 ([#​37008](https://github.com/go-gitea/gitea/issues/37008))
- Add date to "No Contributions" tooltip ([#​36190](https://github.com/go-gitea/gitea/issues/36190))
- Show edit page confirmation dialog on tree view file change ([#​36130](https://github.com/go-gitea/gitea/issues/36130))
- Mention proc-receive in text for dashboard.resync_all_hooks func ([#​35991](https://github.com/go-gitea/gitea/issues/35991))
- Reuse selectable style for wiki ([#​35990](https://github.com/go-gitea/gitea/issues/35990))
- Support blue yellow colorblind theme ([#​35910](https://github.com/go-gitea/gitea/issues/35910))
- Support selecting theme on the footer ([#​35741](https://github.com/go-gitea/gitea/issues/35741))
- Improve online runner check ([#​35722](https://github.com/go-gitea/gitea/issues/35722))
- Add quick approve button on PR page ([#​35678](https://github.com/go-gitea/gitea/issues/35678))
- Enable commenting on expanded lines in PR diffs ([#​35662](https://github.com/go-gitea/gitea/issues/35662))
- Print PR-Title into tooltip for actions ([#​35579](https://github.com/go-gitea/gitea/issues/35579))
- Use explicit, stronger defaults for newly generated repo signing keys for Debian ([#​36236](https://github.com/go-gitea/gitea/issues/36236))
- Improve the compare page ([#​36261](https://github.com/go-gitea/gitea/issues/36261))
- Unify repo names in system notices ([#​36491](https://github.com/go-gitea/gitea/issues/36491))
- Move package settings to package instead of being tied to version ([#​37026](https://github.com/go-gitea/gitea/issues/37026))
- Add Actions API rerun endpoints for runs and jobs ([#​36768](https://github.com/go-gitea/gitea/issues/36768))
- Add branch_count to repository API ([#​35351](https://github.com/go-gitea/gitea/issues/35351)) ([#​36743](https://github.com/go-gitea/gitea/issues/36743))
- Add created_by filter to SearchIssues ([#​36670](https://github.com/go-gitea/gitea/issues/36670))
- Allow admins to rename non-local users ([#​35970](https://github.com/go-gitea/gitea/issues/35970))
- Support updating branch via API ([#​35951](https://github.com/go-gitea/gitea/issues/35951))
- Add an option to automatically verify SSH keys from LDAP ([#​35927](https://github.com/go-gitea/gitea/issues/35927))
- Make "update file" API can create a new file when SHA is not set ([#​35738](https://github.com/go-gitea/gitea/issues/35738))
- Update issue.go with labels documentation (labels content, not ids) ([#​35522](https://github.com/go-gitea/gitea/issues/35522))
- Expose content_version for optimistic locking on issue and PR edits ([#​37035](https://github.com/go-gitea/gitea/issues/37035))
- Pass ServeHeaderOptions by value instead of pointer, fine tune httplib tests ([#​36982](https://github.com/go-gitea/gitea/issues/36982))
- BUGFIXES
- Frontend iframe renderer framework: 3D models, OpenAPI ([#​37233](https://github.com/go-gitea/gitea/issues/37233)) ([#​37273](https://github.com/go-gitea/gitea/issues/37273))
- Fix CODEOWNERS absolute path matching. ([#​37244](https://github.com/go-gitea/gitea/issues/37244)) ([#​37264](https://github.com/go-gitea/gitea/issues/37264))
- Swift registry metadata: preserve more JSON fields and accept empty metadata ([#​37254](https://github.com/go-gitea/gitea/issues/37254)) ([#​37261](https://github.com/go-gitea/gitea/issues/37261))
- Fix user ssh key exporting and tests ([#​37256](https://github.com/go-gitea/gitea/issues/37256)) ([#​37258](https://github.com/go-gitea/gitea/issues/37258))
- Fix team member avatar size and add tooltip ([#​37253](https://github.com/go-gitea/gitea/issues/37253))
- Fix commit title rendering in action run and blame ([#​37243](https://github.com/go-gitea/gitea/issues/37243)) ([#​37251](https://github.com/go-gitea/gitea/issues/37251))
- Fix corrupted JSON caused by goccy library ([#​37214](https://github.com/go-gitea/gitea/issues/37214)) ([#​37220](https://github.com/go-gitea/gitea/issues/37220))
- Add test for "fetch redirect", add CSS value validation for external render ([#​37207](https://github.com/go-gitea/gitea/issues/37207)) ([#​37216](https://github.com/go-gitea/gitea/issues/37216))
- Fix incorrect concurrency check ([#​37205](https://github.com/go-gitea/gitea/issues/37205)) ([#​37215](https://github.com/go-gitea/gitea/issues/37215))
- Fix handle missing base branch in PR commits API ([#​37193](https://github.com/go-gitea/gitea/issues/37193)) ([#​37203](https://github.com/go-gitea/gitea/issues/37203))
- Fix encoding for Matrix Webhooks ([#​37190](https://github.com/go-gitea/gitea/issues/37190)) ([#​37201](https://github.com/go-gitea/gitea/issues/37201))
- Fix handle fork-only commits in compare API ([#​37185](https://github.com/go-gitea/gitea/issues/37185)) ([#​37199](https://github.com/go-gitea/gitea/issues/37199))
- Indicate form field readonly via background, fix RunUser config ([#​37175](https://github.com/go-gitea/gitea/issues/37175), [#​37180](https://github.com/go-gitea/gitea/issues/37180)) ([#​37178](https://github.com/go-gitea/gitea/issues/37178))
- Report structurally invalid workflows to users ([#​37116](https://github.com/go-gitea/gitea/issues/37116)) ([#​37164](https://github.com/go-gitea/gitea/issues/37164))
- Fix API not persisting pull request unit config when has_pull_requests is not set ([#​36718](https://github.com/go-gitea/gitea/issues/36718))
- Rename CSS variables and improve colorblind themes ([#​36353](https://github.com/go-gitea/gitea/issues/36353))
- Hide `add-matcher` and `remove-matcher` from actions job logs ([#​36520](https://github.com/go-gitea/gitea/issues/36520))
- Prevent navigation keys from triggering actions during IME composition ([#​36540](https://github.com/go-gitea/gitea/issues/36540))
- Fix vertical alignment of `.commit-sign-badge` children ([#​36570](https://github.com/go-gitea/gitea/issues/36570))
- Fix duplicate startup warnings in admin panel ([#​36641](https://github.com/go-gitea/gitea/issues/36641))
- Fix CODEOWNERS review request attribution using comment metadata ([#​36348](https://github.com/go-gitea/gitea/issues/36348))
- Fix HTML tags appearing in wiki table of contents ([#​36284](https://github.com/go-gitea/gitea/issues/36284))
- Fix various bugs ([#​37096](https://github.com/go-gitea/gitea/issues/37096))
- Fix various legacy problems ([#​37092](https://github.com/go-gitea/gitea/issues/37092))
- Fix RPM Registry 404 when package name contains 'package' ([#​37087](https://github.com/go-gitea/gitea/issues/37087))
- Merge some standalone Vite entries into index.js ([#​37085](https://github.com/go-gitea/gitea/issues/37085))
- Fix various problems ([#​37077](https://github.com/go-gitea/gitea/issues/37077))
- Fix issue label deletion with Actions tokens ([#​37013](https://github.com/go-gitea/gitea/issues/37013))
- Hide delete branch or tag buttons in mirror or archived repositories. ([#​37006](https://github.com/go-gitea/gitea/issues/37006))
- Fix org contact email not clearable once set ([#​36975](https://github.com/go-gitea/gitea/issues/36975))
- Fix a bug when forking a repository in an organization ([#​36950](https://github.com/go-gitea/gitea/issues/36950))
- Preserve sort order of exclusive labels from template repo ([#​36931](https://github.com/go-gitea/gitea/issues/36931))
- Make container registry support Apple Container (basic auth) ([#​36920](https://github.com/go-gitea/gitea/issues/36920))
- Fix the wrong push commits in the pull request when force push ([#​36914](https://github.com/go-gitea/gitea/issues/36914))
- Add class "list-header-filters" to the div for projects ([#​36889](https://github.com/go-gitea/gitea/issues/36889))
- Fix dbfs error handling ([#​36844](https://github.com/go-gitea/gitea/issues/36844))
- Fix incorrect viewed files counter if reverted change was viewed ([#​36819](https://github.com/go-gitea/gitea/issues/36819))
- Refactor avatar package, support default avatar fallback ([#​36788](https://github.com/go-gitea/gitea/issues/36788))
- Fix README symlink resolution in subdirectories like .github ([#​36775](https://github.com/go-gitea/gitea/issues/36775))
- Fix CSS stacking context issue in actions log ([#​36749](https://github.com/go-gitea/gitea/issues/36749))
- Add gpg signing for merge rebase and update by rebase ([#​36701](https://github.com/go-gitea/gitea/issues/36701))
- Delete non-exist branch should return 404 ([#​36694](https://github.com/go-gitea/gitea/issues/36694))
- Fix `TestActionsCollaborativeOwner` ([#​36657](https://github.com/go-gitea/gitea/issues/36657))
- Fix multi-arch Docker build SIGILL by splitting frontend stage ([#​36646](https://github.com/go-gitea/gitea/issues/36646))
- Fix linguist-detectable attribute being ignored for configuration files ([#​36640](https://github.com/go-gitea/gitea/issues/36640))
- Fix state desync in ComboMarkdownEditor ([#​36625](https://github.com/go-gitea/gitea/issues/36625))
- Unify DEFAULT_SHOW_FULL_NAME output in templates and dropdown ([#​36597](https://github.com/go-gitea/gitea/issues/36597))
- Pull Request Pusher should be the author of the merge ([#​36581](https://github.com/go-gitea/gitea/issues/36581))
- Fix various version parsing problems ([#​36553](https://github.com/go-gitea/gitea/issues/36553))
- Fix highlight diff result ([#​36539](https://github.com/go-gitea/gitea/issues/36539))
- Fix mirror sync parser and fix mirror messages ([#​36504](https://github.com/go-gitea/gitea/issues/36504))
- Fix bug when list pull request commits ([#​36485](https://github.com/go-gitea/gitea/issues/36485))
- Fix various bugs ([#​36446](https://github.com/go-gitea/gitea/issues/36446))
- Fix issue filter menu layout ([#​36426](https://github.com/go-gitea/gitea/issues/36426))
- Restrict branch naming when new change matches with protection rules ([#​36405](https://github.com/go-gitea/gitea/issues/36405))
- Fix link/origin referrer and login redirect ([#​36279](https://github.com/go-gitea/gitea/issues/36279))
- Generate IDs for HTML headings without id attribute ([#​36233](https://github.com/go-gitea/gitea/issues/36233))
- Use a migration test instead of a wrong test which populated the meta test repositories and fix a migration bug ([#​36160](https://github.com/go-gitea/gitea/issues/36160))
- Fix issue close timeline icon ([#​36138](https://github.com/go-gitea/gitea/issues/36138))
- Fix diff blob excerpt expansion ([#​35922](https://github.com/go-gitea/gitea/issues/35922))
- Fix external render ([#​35727](https://github.com/go-gitea/gitea/issues/35727))
- Fix review request webhook bug ([#​35339](https://github.com/go-gitea/gitea/issues/35339)) ([#​35723](https://github.com/go-gitea/gitea/issues/35723))
- Fix shutdown waitgroup panic ([#​35676](https://github.com/go-gitea/gitea/issues/35676))
- Cleanup ActionRun creation ([#​35624](https://github.com/go-gitea/gitea/issues/35624))
- Fix possible bug when migrating issues/pull requests ([#​33487](https://github.com/go-gitea/gitea/issues/33487))
- Various fixes ([#​36697](https://github.com/go-gitea/gitea/issues/36697))
- Apply notify/register mail flags during install load ([#​37120](https://github.com/go-gitea/gitea/issues/37120))
- Repair duration display for bad stopped timestamps ([#​37121](https://github.com/go-gitea/gitea/issues/37121))
- Fix(upgrade.sh): use HTTPS for GPG key import and restore SELinux context after upgrade ([#​36930](https://github.com/go-gitea/gitea/issues/36930))
- Fix various trivial problems ([#​36921](https://github.com/go-gitea/gitea/issues/36921))
- Fix various trivial problems ([#​36953](https://github.com/go-gitea/gitea/issues/36953))
- Fix NuGet package upload error handling ([#​37074](https://github.com/go-gitea/gitea/issues/37074))
- Fix CodeQL code scanning alerts ([#​36858](https://github.com/go-gitea/gitea/issues/36858))
- Refactor issue sidebar and fix various problems ([#​37045](https://github.com/go-gitea/gitea/issues/37045))
- Fix various problems ([#​37029](https://github.com/go-gitea/gitea/issues/37029))
- Fix relative-time RangeError ([#​37021](https://github.com/go-gitea/gitea/issues/37021))
- Fix chroma lexer mapping ([#​36629](https://github.com/go-gitea/gitea/issues/36629))
- Fix typos and grammar in English locale ([#​36751](https://github.com/go-gitea/gitea/issues/36751))
- Fix milestone/project text overflow in issue sidebar ([#​36741](https://github.com/go-gitea/gitea/issues/36741))
- Fix `no-content` message not rendering after comment edit ([#​36733](https://github.com/go-gitea/gitea/issues/36733))
- Fix theme loading in development ([#​36605](https://github.com/go-gitea/gitea/issues/36605))
- Fix workflow run jobs API returning null steps ([#​36603](https://github.com/go-gitea/gitea/issues/36603))
- Fix timeline event layout overflow with long content ([#​36595](https://github.com/go-gitea/gitea/issues/36595))
- Fix minor UI issues in runner edit page ([#​36590](https://github.com/go-gitea/gitea/issues/36590))
- Fix incorrect vendored detections ([#​36508](https://github.com/go-gitea/gitea/issues/36508))
- Fix editorconfig not respected in PR Conversation view ([#​36492](https://github.com/go-gitea/gitea/issues/36492))
- Don't create self-references in merged PRs ([#​36490](https://github.com/go-gitea/gitea/issues/36490))
- Fix potential incorrect runID in run status update ([#​36437](https://github.com/go-gitea/gitea/issues/36437))
- Fix file-tree ui error when adding files to repo without commits ([#​36312](https://github.com/go-gitea/gitea/issues/36312))
- Improve image captcha contrast for dark mode ([#​36265](https://github.com/go-gitea/gitea/issues/36265))
- Fix panic in blame view when a file has only a single commit ([#​36230](https://github.com/go-gitea/gitea/issues/36230))
- Fix spelling error in migrate-storage cmd utility ([#​36226](https://github.com/go-gitea/gitea/issues/36226))
- Fix code highlighting on blame page ([#​36157](https://github.com/go-gitea/gitea/issues/36157))
- Fix nilnil in onedev downloader ([#​36154](https://github.com/go-gitea/gitea/issues/36154))
- Fix actions lint ([#​36029](https://github.com/go-gitea/gitea/issues/36029))
- Fix oauth2 session gob register ([#​36017](https://github.com/go-gitea/gitea/issues/36017))
- Fix Arch repo pacman.conf snippet ([#​35825](https://github.com/go-gitea/gitea/issues/35825))
- Fix a number of `strictNullChecks`-related issues ([#​35795](https://github.com/go-gitea/gitea/issues/35795))
- Fix URLJoin, markup render link reoslving, sign-in/up/linkaccount page common data ([#​36861](https://github.com/go-gitea/gitea/issues/36861))
- Hide delete directory button for mirror or archive repository and disable the menu item if user have no permission ([#​36384](https://github.com/go-gitea/gitea/issues/36384))
- Update message severity colors, fix navbar double border ([#​37019](https://github.com/go-gitea/gitea/issues/37019))
- Inline and lazy-load EasyMDE CSS, fix border colors ([#​36714](https://github.com/go-gitea/gitea/issues/36714))
- Closed milestones with no issues now show as 100% completed ([#​36220](https://github.com/go-gitea/gitea/issues/36220))
- Add test for ExtendCommentTreePathLength migration and fix bugs ([#​35791](https://github.com/go-gitea/gitea/issues/35791))
- Only turn links to current instance into hash links ([#​36237](https://github.com/go-gitea/gitea/issues/36237))
- Fix typos in code comments: doesnt, dont, wont ([#​36890](https://github.com/go-gitea/gitea/issues/36890))
- REFACTOR
- Clean up and improve non-gitea js error filter ([#​37148](https://github.com/go-gitea/gitea/issues/37148)) ([#​37155](https://github.com/go-gitea/gitea/issues/37155))
- Always show owner/repo name in compare page dropdowns ([#​37172](https://github.com/go-gitea/gitea/issues/37172)) ([#​37200](https://github.com/go-gitea/gitea/issues/37200))
- Remove dead CSS rules ([#​37173](https://github.com/go-gitea/gitea/issues/37173)) ([#​37177](https://github.com/go-gitea/gitea/issues/37177))
- Replace Monaco with CodeMirror ([#​36764](https://github.com/go-gitea/gitea/issues/36764))
- Replace CSRF cookie with `CrossOriginProtection` ([#​36183](https://github.com/go-gitea/gitea/issues/36183))
- Replace index with id in actions routes ([#​36842](https://github.com/go-gitea/gitea/issues/36842))
- Remove unnecessary function parameter ([#​35765](https://github.com/go-gitea/gitea/issues/35765))
- Move jobparser from act repository to Gitea ([#​36699](https://github.com/go-gitea/gitea/issues/36699))
- Refactor compare router param parse ([#​36105](https://github.com/go-gitea/gitea/issues/36105))
- Optimize 'refreshAccesses' to perform update without removing then adding ([#​35702](https://github.com/go-gitea/gitea/issues/35702))
- Clean up checkbox cursor styles ([#​37016](https://github.com/go-gitea/gitea/issues/37016))
- Remove undocumented support of signing key in the repository git configuration file ([#​36143](https://github.com/go-gitea/gitea/issues/36143))
- Switch `cmd/` to use constructor functions. ([#​36962](https://github.com/go-gitea/gitea/issues/36962))
- Use `relative-time` to render absolute dates ([#​36238](https://github.com/go-gitea/gitea/issues/36238))
- Some refactors about GetMergeBase ([#​36186](https://github.com/go-gitea/gitea/issues/36186))
- Some small refactors ([#​36163](https://github.com/go-gitea/gitea/issues/36163))
- Use gitRepo as parameter instead of repopath when invoking sign functions ([#​36162](https://github.com/go-gitea/gitea/issues/36162))
- Move blame to gitrepo ([#​36161](https://github.com/go-gitea/gitea/issues/36161))
- Move some functions to gitrepo package to reduce RepoPath reference directly ([#​36126](https://github.com/go-gitea/gitea/issues/36126))
- Use gitrepo's clone and push when possible ([#​36093](https://github.com/go-gitea/gitea/issues/36093))
- Remove mermaid margin workaround ([#​35732](https://github.com/go-gitea/gitea/issues/35732))
- Move some functions to gitrepo package ([#​35543](https://github.com/go-gitea/gitea/issues/35543))
- Move GetDiverging functions to gitrepo ([#​35524](https://github.com/go-gitea/gitea/issues/35524))
- Use global lock instead of status pool for cron lock ([#​35507](https://github.com/go-gitea/gitea/issues/35507))
- Use explicit mux instead of DefaultServeMux ([#​36276](https://github.com/go-gitea/gitea/issues/36276))
- Use gitrepo's push function ([#​36245](https://github.com/go-gitea/gitea/issues/36245))
- Pass request context to generateAdditionalHeadersForIssue ([#​36274](https://github.com/go-gitea/gitea/issues/36274))
- Move assign project when creating pull request to the same database transaction ([#​36244](https://github.com/go-gitea/gitea/issues/36244))
- Move catfile batch to a sub package of git module ([#​36232](https://github.com/go-gitea/gitea/issues/36232))
- Use gitrepo.Repository instead of wikipath ([#​35398](https://github.com/go-gitea/gitea/issues/35398))
- Use experimental go json v2 library ([#​35392](https://github.com/go-gitea/gitea/issues/35392))
- Refactor template render ([#​36438](https://github.com/go-gitea/gitea/issues/36438))
- Refactor GetRepoRawDiffForFile to avoid unnecessary pipe or goroutine ([#​36434](https://github.com/go-gitea/gitea/issues/36434))
- Refactor text utility classes to Tailwind CSS ([#​36703](https://github.com/go-gitea/gitea/issues/36703))
- Refactor git command stdio pipe ([#​36422](https://github.com/go-gitea/gitea/issues/36422))
- Refactor git command context & pipeline ([#​36406](https://github.com/go-gitea/gitea/issues/36406))
- Refactor git command stdio pipe ([#​36393](https://github.com/go-gitea/gitea/issues/36393))
- Remove unused functions ([#​36672](https://github.com/go-gitea/gitea/issues/36672))
- Refactor Actions Token Access ([#​35688](https://github.com/go-gitea/gitea/issues/35688))
- Move commit related functions to gitrepo package ([#​35600](https://github.com/go-gitea/gitea/issues/35600))
- Move archive function to repo_model and gitrepo ([#​35514](https://github.com/go-gitea/gitea/issues/35514))
- Move some functions to gitrepo package ([#​35503](https://github.com/go-gitea/gitea/issues/35503))
- Use git model to detect whether branch exist instead of gitrepo method ([#​35459](https://github.com/go-gitea/gitea/issues/35459))
- Some refactor for repo path ([#​36251](https://github.com/go-gitea/gitea/issues/36251))
- Extract helper functions from SearchIssues ([#​36158](https://github.com/go-gitea/gitea/issues/36158))
- Refactor merge conan and container auth preserve actions taskID ([#​36560](https://github.com/go-gitea/gitea/issues/36560))
- Refactor Nuget Auth to reuse Basic Auth Token Validation ([#​36558](https://github.com/go-gitea/gitea/issues/36558))
- Refactor ActionsTaskID ([#​36503](https://github.com/go-gitea/gitea/issues/36503))
- Refactor auth middleware ([#​36848](https://github.com/go-gitea/gitea/issues/36848))
- Refactor code render and render control chars ([#​37078](https://github.com/go-gitea/gitea/issues/37078))
- Clean up AppURL, remove legacy origin-url webcomponent ([#​37090](https://github.com/go-gitea/gitea/issues/37090))
- Remove `util.URLJoin` and replace all callers with direct path concatenation ([#​36867](https://github.com/go-gitea/gitea/issues/36867))
- Replace legacy tw-flex utility classes with flex-text-block/inline ([#​36778](https://github.com/go-gitea/gitea/issues/36778))
- Mark unused\&immature activitypub as "not implemented" ([#​36789](https://github.com/go-gitea/gitea/issues/36789))
- TESTING
- Add e2e tests for server push events ([#​36879](https://github.com/go-gitea/gitea/issues/36879))
- Rework e2e tests ([#​36634](https://github.com/go-gitea/gitea/issues/36634))
- Add e2e reaction test, improve accessibility, enable parallel testing ([#​37081](https://github.com/go-gitea/gitea/issues/37081))
- Increase e2e test timeouts on CI to fix flaky tests ([#​37053](https://github.com/go-gitea/gitea/issues/37053))
- BUILD
- Upgrade go-git to v5.18.0 ([#​37269](https://github.com/go-gitea/gitea/issues/37269))
- Replace rollup-plugin-license with rolldown-license-plugin ([#​37130](https://github.com/go-gitea/gitea/issues/37130)) ([#​37158](https://github.com/go-gitea/gitea/issues/37158))
- Bump min go version to 1.26.2 ([#​37139](https://github.com/go-gitea/gitea/issues/37139)) ([#​37143](https://github.com/go-gitea/gitea/issues/37143))
- Convert locale files from ini to json format ([#​35489](https://github.com/go-gitea/gitea/issues/35489))
- Bump golangci-lint to 2.7.2, enable modernize stringsbuilder ([#​36180](https://github.com/go-gitea/gitea/issues/36180))
- Port away from `flake-utils` ([#​35675](https://github.com/go-gitea/gitea/issues/35675))
- Remove nolint ([#​36252](https://github.com/go-gitea/gitea/issues/36252))
- Update the Unlicense copy to latest version ([#​36636](https://github.com/go-gitea/gitea/issues/36636))
- Update to go 1.26.0 and golangci-lint 2.9.0 ([#​36588](https://github.com/go-gitea/gitea/issues/36588))
- Replace `google/go-licenses` with custom generation ([#​36575](https://github.com/go-gitea/gitea/issues/36575))
- Update go dependencies ([#​36548](https://github.com/go-gitea/gitea/issues/36548))
- Bump appleboy/git-push-action from 1.0.0 to 1.2.0 ([#​36306](https://github.com/go-gitea/gitea/issues/36306))
- Remove fomantic form module ([#​36222](https://github.com/go-gitea/gitea/issues/36222))
- Bump setup-node to v6, re-enable cache ([#​36207](https://github.com/go-gitea/gitea/issues/36207))
- Bump crowdin/github-action from 1 to 2 ([#​36204](https://github.com/go-gitea/gitea/issues/36204))
- Revert "Bump alpine to 3.23 ([#​36185](https://github.com/go-gitea/gitea/issues/36185))" ([#​36202](https://github.com/go-gitea/gitea/issues/36202))
- Update chroma to v2.21.1 ([#​36201](https://github.com/go-gitea/gitea/issues/36201))
- Bump astral-sh/setup-uv from 6 to 7 ([#​36198](https://github.com/go-gitea/gitea/issues/36198))
- Bump docker/build-push-action from 5 to 6 ([#​36197](https://github.com/go-gitea/gitea/issues/36197))
- Bump aws-actions/configure-aws-credentials from 4 to 5 ([#​36196](https://github.com/go-gitea/gitea/issues/36196))
- Bump dev-hanz-ops/install-gh-cli-action from 0.1.0 to 0.2.1 ([#​36195](https://github.com/go-gitea/gitea/issues/36195))
- Add JSON linting ([#​36192](https://github.com/go-gitea/gitea/issues/36192))
- Enable dependabot for actions ([#​36191](https://github.com/go-gitea/gitea/issues/36191))
- Bump alpine to 3.23 ([#​36185](https://github.com/go-gitea/gitea/issues/36185))
- Update chroma to v2.21.0 ([#​36171](https://github.com/go-gitea/gitea/issues/36171))
- Update JS deps and eslint enhancements ([#​36147](https://github.com/go-gitea/gitea/issues/36147))
- Update JS deps ([#​36091](https://github.com/go-gitea/gitea/issues/36091))
- update golangci-lint to v2.7.0 ([#​36079](https://github.com/go-gitea/gitea/issues/36079))
- Update JS deps, fix deprecations ([#​36040](https://github.com/go-gitea/gitea/issues/36040))
- Update JS deps ([#​35978](https://github.com/go-gitea/gitea/issues/35978))
- Add toolchain directive to go.mod ([#​35901](https://github.com/go-gitea/gitea/issues/35901))
- Move `gitea-vet` to use `go tool` ([#​35878](https://github.com/go-gitea/gitea/issues/35878))
- Update to go 1.25.4 ([#​35877](https://github.com/go-gitea/gitea/issues/35877))
- Enable TypeScript `strictNullChecks` ([#​35843](https://github.com/go-gitea/gitea/issues/35843))
- Enable `vue/require-typed-ref` eslint rule ([#​35764](https://github.com/go-gitea/gitea/issues/35764))
- Update JS dependencies ([#​35759](https://github.com/go-gitea/gitea/issues/35759))
- Move `codeformat` folder to tools ([#​35758](https://github.com/go-gitea/gitea/issues/35758))
- Update dependencies ([#​35733](https://github.com/go-gitea/gitea/issues/35733))
- Bump happy-dom from 20.0.0 to 20.0.2 ([#​35677](https://github.com/go-gitea/gitea/issues/35677))
- Bump setup-go to v6 ([#​35660](https://github.com/go-gitea/gitea/issues/35660))
- Update JS deps, misc tweaks ([#​35643](https://github.com/go-gitea/gitea/issues/35643))
- Bump happy-dom from 19.0.2 to 20.0.0 ([#​35625](https://github.com/go-gitea/gitea/issues/35625))
- Use bundled version of spectral ([#​35573](https://github.com/go-gitea/gitea/issues/35573))
- Update JS and PY deps ([#​35565](https://github.com/go-gitea/gitea/issues/35565))
- Bump github.com/wneessen/go-mail from 0.6.2 to 0.7.1 ([#​35557](https://github.com/go-gitea/gitea/issues/35557))
- Migrate from webpack to vite ([#​37002](https://github.com/go-gitea/gitea/issues/37002))
- Update JS dependencies and misc tweaks ([#​37064](https://github.com/go-gitea/gitea/issues/37064))
- Update to eslint 10 ([#​36925](https://github.com/go-gitea/gitea/issues/36925))
- Optimize Docker build with dependency layer caching ([#​36864](https://github.com/go-gitea/gitea/issues/36864))
- Update JS deps ([#​36850](https://github.com/go-gitea/gitea/issues/36850))
- Update tool dependencies and fix new lint issues ([#​36702](https://github.com/go-gitea/gitea/issues/36702))
- Remove redundant linter rules ([#​36658](https://github.com/go-gitea/gitea/issues/36658))
- Move Fomantic dropdown CSS to custom module ([#​36530](https://github.com/go-gitea/gitea/issues/36530))
- Remove and forbid `@ts-expect-error` ([#​36513](https://github.com/go-gitea/gitea/issues/36513))
- Refactor git command stderr handling ([#​36402](https://github.com/go-gitea/gitea/issues/36402))
- Enable gocheckcompilerdirectives linter ([#​36156](https://github.com/go-gitea/gitea/issues/36156))
- Replace `lint-go-gopls` with additional `govet` linters ([#​36028](https://github.com/go-gitea/gitea/issues/36028))
- Update golangci-lint to v2.6.0 ([#​35801](https://github.com/go-gitea/gitea/issues/35801))
- Misc tool tweaks ([#​35734](https://github.com/go-gitea/gitea/issues/35734))
- Add cache to container build ([#​35697](https://github.com/go-gitea/gitea/issues/35697))
- Upgrade vite ([#​37126](https://github.com/go-gitea/gitea/issues/37126))
- Update `setup-uv` to v8.0.0 ([#​37101](https://github.com/go-gitea/gitea/issues/37101))
- Upgrade `go-git` to v5.17.2 and related dependencies ([#​37060](https://github.com/go-gitea/gitea/issues/37060))
- Raise minimum Node.js version to 22.18.0 ([#​37058](https://github.com/go-gitea/gitea/issues/37058))
- Upgrade `golang.org/x/image` to v0.38.0 ([#​37054](https://github.com/go-gitea/gitea/issues/37054))
- Update minimum go version to 1.26.1, golangci-lint to 2.11.2, fix test style ([#​36876](https://github.com/go-gitea/gitea/issues/36876))
- Enable eslint concurrency ([#​36878](https://github.com/go-gitea/gitea/issues/36878))
- Vendor relative-time-element as local web component ([#​36853](https://github.com/go-gitea/gitea/issues/36853))
- Update material-icon-theme v5.32.0 ([#​36832](https://github.com/go-gitea/gitea/issues/36832))
- Update Go dependencies ([#​36781](https://github.com/go-gitea/gitea/issues/36781))
- Upgrade minimatch ([#​36760](https://github.com/go-gitea/gitea/issues/36760))
- Remove i18n backport tool at the moment because of translation format changed ([#​36643](https://github.com/go-gitea/gitea/issues/36643))
- Update emoji data for Unicode 16 ([#​36596](https://github.com/go-gitea/gitea/issues/36596))
- Update JS dependencies, adjust webpack config, misc fixes ([#​36431](https://github.com/go-gitea/gitea/issues/36431))
- Update material-icon-theme to v5.31.0 ([#​36427](https://github.com/go-gitea/gitea/issues/36427))
- Update JS and PY deps ([#​36383](https://github.com/go-gitea/gitea/issues/36383))
- Bump alpine to 3.23, add platforms to `docker-dryrun` ([#​36379](https://github.com/go-gitea/gitea/issues/36379))
- Update JS deps ([#​36354](https://github.com/go-gitea/gitea/issues/36354))
- Update goldmark to v1.7.16 ([#​36343](https://github.com/go-gitea/gitea/issues/36343))
- Update chroma to v2.22.0 ([#​36342](https://github.com/go-gitea/gitea/issues/36342))
- DOCS
- Update AI Contribution Policy ([#​37022](https://github.com/go-gitea/gitea/issues/37022))
- Update AGENTS.md with additional guidelines ([#​37018](https://github.com/go-gitea/gitea/issues/37018))
- Add missing cron tasks to example ini ([#​37012](https://github.com/go-gitea/gitea/issues/37012))
- Add AI Contribution Policy to CONTRIBUTING.md ([#​36651](https://github.com/go-gitea/gitea/issues/36651))
- Minor punctuation improvement in CONTRIBUTING.md ([#​36291](https://github.com/go-gitea/gitea/issues/36291))
- Add documentation for markdown anchor post-processing ([#​36443](https://github.com/go-gitea/gitea/issues/36443))
- MISC
- Correct spelling ([#​36783](https://github.com/go-gitea/gitea/issues/36783))
- Update Nix flake ([#​37110](https://github.com/go-gitea/gitea/issues/37110))
- Update Nix flake ([#​37024](https://github.com/go-gitea/gitea/issues/37024))
- Add valid github scopes ([#​36977](https://github.com/go-gitea/gitea/issues/36977))
- Update Nix flake ([#​36943](https://github.com/go-gitea/gitea/issues/36943))
- Update Nix flake ([#​36902](https://github.com/go-gitea/gitea/issues/36902))
- Update Nix flake ([#​36857](https://github.com/go-gitea/gitea/issues/36857))
- Update Nix flake ([#​36787](https://github.com/go-gitea/gitea/issues/36787))
Instances on **[Gitea Cloud](https://cloud.gitea.com)** will be automatically upgraded to this version during the specified maintenance window.
### [`v1.25.5`](https://github.com/go-gitea/gitea/releases/tag/v1.25.5)
[Compare Source](https://github.com/go-gitea/gitea/compare/v1.25.4...v1.25.5)
- SECURITY
- Toolchain Update to Go 1.25.6 ([#​36480](https://github.com/go-gitea/gitea/issues/36480)) ([#​36487](https://github.com/go-gitea/gitea/issues/36487))
- Adjust the toolchain version ([#​36537](https://github.com/go-gitea/gitea/issues/36537)) ([#​36542](https://github.com/go-gitea/gitea/issues/36542))
- Update toolchain to 1.25.8 for v1.25 ([#​36888](https://github.com/go-gitea/gitea/issues/36888))
- Prevent redirect bypasses via backslash-encoded paths ([#​36660](https://github.com/go-gitea/gitea/issues/36660)) ([#​36716](https://github.com/go-gitea/gitea/issues/36716))
- Fix get release draft permission check ([#​36659](https://github.com/go-gitea/gitea/issues/36659)) ([#​36715](https://github.com/go-gitea/gitea/issues/36715))
- Fix a bug user could change another user's primary email ([#​36586](https://github.com/go-gitea/gitea/issues/36586)) ([#​36607](https://github.com/go-gitea/gitea/issues/36607))
- Fix OAuth2 authorization code expiry and reuse handling ([#​36797](https://github.com/go-gitea/gitea/issues/36797)) ([#​36851](https://github.com/go-gitea/gitea/issues/36851))
- Add validation constraints for repository creation fields ([#​36671](https://github.com/go-gitea/gitea/issues/36671)) ([#​36757](https://github.com/go-gitea/gitea/issues/36757))
- Fix bug to check whether user can update pull request branch or rebase branch ([#​36465](https://github.com/go-gitea/gitea/issues/36465)) ([#​36838](https://github.com/go-gitea/gitea/issues/36838))
- Add migration http transport for push/sync mirror lfs ([#​36665](https://github.com/go-gitea/gitea/issues/36665)) ([#​36691](https://github.com/go-gitea/gitea/issues/36691))
- Fix track time list permission check ([#​36662](https://github.com/go-gitea/gitea/issues/36662)) ([#​36744](https://github.com/go-gitea/gitea/issues/36744))
- Fix track time issue id ([#​36664](https://github.com/go-gitea/gitea/issues/36664)) ([#​36689](https://github.com/go-gitea/gitea/issues/36689))
- Fix path resolving ([#​36734](https://github.com/go-gitea/gitea/issues/36734)) ([#​36746](https://github.com/go-gitea/gitea/issues/36746))
- Fix dump release asset bug ([#​36799](https://github.com/go-gitea/gitea/issues/36799)) ([#​36839](https://github.com/go-gitea/gitea/issues/36839))
- Fix org permission API visibility checks for hidden members and private orgs ([#​36798](https://github.com/go-gitea/gitea/issues/36798)) ([#​36841](https://github.com/go-gitea/gitea/issues/36841))
- Fix forwarded proto handling for public URL detection ([#​36810](https://github.com/go-gitea/gitea/issues/36810)) ([#​36836](https://github.com/go-gitea/gitea/issues/36836))
- Add a git grep search timeout ([#​36809](https://github.com/go-gitea/gitea/issues/36809)) ([#​36835](https://github.com/go-gitea/gitea/issues/36835))
- Fix oauth2 s256 ([#​36462](https://github.com/go-gitea/gitea/issues/36462)) ([#​36477](https://github.com/go-gitea/gitea/issues/36477))
- ENHANCEMENTS
- Make `security-check` informational only ([#​36681](https://github.com/go-gitea/gitea/issues/36681)) ([#​36852](https://github.com/go-gitea/gitea/issues/36852))
- Upgrade to github.com/cloudflare/circl 1.6.3, svgo 4.0.1, markdownlint-cli 0.48.0 ([#​36840](https://github.com/go-gitea/gitea/issues/36840))
- Add some validation on values provided to USER_DISABLED_FEATURES and EXTERNAL_USER_DISABLED_FEATURES ([#​36688](https://github.com/go-gitea/gitea/issues/36688)) ([#​36692](https://github.com/go-gitea/gitea/issues/36692))
- Upgrade gogit to 5.16.5 ([#​36687](https://github.com/go-gitea/gitea/issues/36687))
- Add wrap to runner label list ([#​36565](https://github.com/go-gitea/gitea/issues/36565)) ([#​36574](https://github.com/go-gitea/gitea/issues/36574))
- Add dnf5 command for Fedora in RPM package instructions ([#​36527](https://github.com/go-gitea/gitea/issues/36527)) ([#​36572](https://github.com/go-gitea/gitea/issues/36572))
- Allow scroll propagation outside code editor ([#​36502](https://github.com/go-gitea/gitea/issues/36502)) ([#​36510](https://github.com/go-gitea/gitea/issues/36510))
- BUGFIXES
- Fix non-admins unable to automerge PRs from forks ([#​36833](https://github.com/go-gitea/gitea/issues/36833)) ([#​36843](https://github.com/go-gitea/gitea/issues/36843))
- Fix bug when pushing mirror with wiki ([#​36795](https://github.com/go-gitea/gitea/issues/36795)) ([#​36807](https://github.com/go-gitea/gitea/issues/36807))
- Fix artifacts v4 backend upload problems ([#​36805](https://github.com/go-gitea/gitea/issues/36805)) ([#​36834](https://github.com/go-gitea/gitea/issues/36834))
- Fix CRAN package version validation to allow more than 4 version components ([#​36813](https://github.com/go-gitea/gitea/issues/36813)) ([#​36821](https://github.com/go-gitea/gitea/issues/36821))
- Fix force push time-line commit comments of pull request ([#​36653](https://github.com/go-gitea/gitea/issues/36653)) ([#​36717](https://github.com/go-gitea/gitea/issues/36717))
- Fix SVG height calculation in diff viewer ([#​36748](https://github.com/go-gitea/gitea/issues/36748)) ([#​36750](https://github.com/go-gitea/gitea/issues/36750))
- Fix push time bug ([#​36693](https://github.com/go-gitea/gitea/issues/36693)) ([#​36713](https://github.com/go-gitea/gitea/issues/36713))
- Fix bug the protected branch rule name is conflicted with renamed branch name ([#​36650](https://github.com/go-gitea/gitea/issues/36650)) ([#​36661](https://github.com/go-gitea/gitea/issues/36661))
- Fix bug when do LFS GC ([#​36500](https://github.com/go-gitea/gitea/issues/36500)) ([#​36608](https://github.com/go-gitea/gitea/issues/36608))
- Fix focus lost bugs in the Monaco editor ([#​36609](https://github.com/go-gitea/gitea/issues/36609))
- Reprocess htmx content after loading more files ([#​36568](https://github.com/go-gitea/gitea/issues/36568)) ([#​36577](https://github.com/go-gitea/gitea/issues/36577))
- Fix assignee sidebar links and empty placeholder ([#​36559](https://github.com/go-gitea/gitea/issues/36559)) ([#​36563](https://github.com/go-gitea/gitea/issues/36563))
- Fix issues filter dropdown showing empty label scope section ([#​36535](https://github.com/go-gitea/gitea/issues/36535)) ([#​36544](https://github.com/go-gitea/gitea/issues/36544))
- Fix various mermaid bugs ([#​36547](https://github.com/go-gitea/gitea/issues/36547)) ([#​36552](https://github.com/go-gitea/gitea/issues/36552))
- Fix data race when uploading container blobs concurrently ([#​36524](https://github.com/go-gitea/gitea/issues/36524)) ([#​36526](https://github.com/go-gitea/gitea/issues/36526))
- Correct spacing between username and bot label ([#​36473](https://github.com/go-gitea/gitea/issues/36473)) ([#​36484](https://github.com/go-gitea/gitea/issues/36484))
Instances on **[Gitea Cloud](https://cloud.gitea.com)** will be automatically upgraded to this version during the specified maintenance window.
### [`v1.25.4`](https://github.com/go-gitea/gitea/releases/tag/v1.25.4)
[Compare Source](https://github.com/go-gitea/gitea/compare/v1.25.3...v1.25.4)
- SECURITY
- Release attachments must belong to the intended repo ([#​36347](https://github.com/go-gitea/gitea/issues/36347)) ([#​36375](https://github.com/go-gitea/gitea/issues/36375))
- Fix permission check on org project operations ([#​36318](https://github.com/go-gitea/gitea/issues/36318)) ([#​36373](https://github.com/go-gitea/gitea/issues/36373))
- Clean watches when make a repository private and check permission when send release emails ([#​36319](https://github.com/go-gitea/gitea/issues/36319)) ([#​36370](https://github.com/go-gitea/gitea/issues/36370))
- Add more check for stopwatch read or list ([#​36340](https://github.com/go-gitea/gitea/issues/36340)) ([#​36368](https://github.com/go-gitea/gitea/issues/36368))
- Fix openid setting check ([#​36346](https://github.com/go-gitea/gitea/issues/36346)) ([#​36361](https://github.com/go-gitea/gitea/issues/36361))
- Fix cancel auto merge bug ([#​36341](https://github.com/go-gitea/gitea/issues/36341)) ([#​36356](https://github.com/go-gitea/gitea/issues/36356))
- Fix delete attachment check ([#​36320](https://github.com/go-gitea/gitea/issues/36320)) ([#​36355](https://github.com/go-gitea/gitea/issues/36355))
- LFS locks must belong to the intended repo ([#​36344](https://github.com/go-gitea/gitea/issues/36344)) ([#​36349](https://github.com/go-gitea/gitea/issues/36349))
- Fix bug on notification read ([#​36339](https://github.com/go-gitea/gitea/issues/36339)) [#​36387](https://github.com/go-gitea/gitea/issues/36387)
- ENHANCEMENTS
- Add more routes to the "expensive" list ([#​36290](https://github.com/go-gitea/gitea/issues/36290))
- Make "commit statuses" API accept slashes in "ref" ([#​36264](https://github.com/go-gitea/gitea/issues/36264)) ([#​36275](https://github.com/go-gitea/gitea/issues/36275))
- BUGFIXES
- Fix markdown newline handling during IME composition ([#​36421](https://github.com/go-gitea/gitea/issues/36421)) [#​36424](https://github.com/go-gitea/gitea/issues/36424)
- Fix missing repository id when migrating release attachments ([#​36389](https://github.com/go-gitea/gitea/issues/36389))
- Fix bug when compare in the pull request ([#​36363](https://github.com/go-gitea/gitea/issues/36363)) ([#​36372](https://github.com/go-gitea/gitea/issues/36372))
- Fix incorrect text content detection ([#​36364](https://github.com/go-gitea/gitea/issues/36364)) ([#​36369](https://github.com/go-gitea/gitea/issues/36369))
- Fill missing `has_code` in repository api ([#​36338](https://github.com/go-gitea/gitea/issues/36338)) ([#​36359](https://github.com/go-gitea/gitea/issues/36359))
- Fix notifications pagination query parameters ([#​36351](https://github.com/go-gitea/gitea/issues/36351)) ([#​36358](https://github.com/go-gitea/gitea/issues/36358))
- Fix some trivial problems ([#​36336](https://github.com/go-gitea/gitea/issues/36336)) ([#​36337](https://github.com/go-gitea/gitea/issues/36337))
- Prevent panic when GitLab release has more links than sources ([#​36295](https://github.com/go-gitea/gitea/issues/36295)) ([#​36305](https://github.com/go-gitea/gitea/issues/36305))
- Fix stats bug when syncing release ([#​36285](https://github.com/go-gitea/gitea/issues/36285)) ([#​36294](https://github.com/go-gitea/gitea/issues/36294))
- Always honor user's choice for "delete branch after merge" ([#​36281](https://github.com/go-gitea/gitea/issues/36281)) ([#​36286](https://github.com/go-gitea/gitea/issues/36286))
- Use the requested host for LFS links ([#​36242](https://github.com/go-gitea/gitea/issues/36242)) ([#​36258](https://github.com/go-gitea/gitea/issues/36258))
- Fix panic when get editor config file ([#​36241](https://github.com/go-gitea/gitea/issues/36241)) ([#​36247](https://github.com/go-gitea/gitea/issues/36247))
- Fix regression in writing authorized principals ([#​36213](https://github.com/go-gitea/gitea/issues/36213)) ([#​36218](https://github.com/go-gitea/gitea/issues/36218))
- Fix WebAuthn error checking ([#​36219](https://github.com/go-gitea/gitea/issues/36219)) ([#​36235](https://github.com/go-gitea/gitea/issues/36235))
Instances on **[Gitea Cloud](https://cloud.gitea.com)** will be automatically upgraded to this version during the specified maintenance window.
### [`v1.25.3`](https://github.com/go-gitea/gitea/releases/tag/v1.25.3)
[Compare Source](https://github.com/go-gitea/gitea/compare/v1.25.2...v1.25.3)
- SECURITY
- Bump toolchain to go1.25.5, misc fixes ([#​36082](https://github.com/go-gitea/gitea/issues/36082))
- ENHANCEMENTS
- Add strikethrough button to markdown editor ([#​36087](https://github.com/go-gitea/gitea/issues/36087)) ([#​36104](https://github.com/go-gitea/gitea/issues/36104))
- Add "site admin" back to profile menu ([#​36010](https://github.com/go-gitea/gitea/issues/36010)) ([#​36013](https://github.com/go-gitea/gitea/issues/36013))
- Improve math rendering ([#​36124](https://github.com/go-gitea/gitea/issues/36124)) ([#​36125](https://github.com/go-gitea/gitea/issues/36125))
- BUGFIXES
- Check user visibility when redirecting to a renamed user ([#​36148](https://github.com/go-gitea/gitea/issues/36148)) ([#​36159](https://github.com/go-gitea/gitea/issues/36159))
- Fix various bugs ([#​36139](https://github.com/go-gitea/gitea/issues/36139)) ([#​36151](https://github.com/go-gitea/gitea/issues/36151))
- Fix bug when viewing the commit diff page with non-ANSI files ([#​36149](https://github.com/go-gitea/gitea/issues/36149)) ([#​36150](https://github.com/go-gitea/gitea/issues/36150))
- Hide RSS icon when viewing a file not under a branch ([#​36135](https://github.com/go-gitea/gitea/issues/36135)) ([#​36141](https://github.com/go-gitea/gitea/issues/36141))
- Fix SVG size calulation, only use `style` attribute ([#​36133](https://github.com/go-gitea/gitea/issues/36133)) ([#​36134](https://github.com/go-gitea/gitea/issues/36134))
- Make Golang correctly delete temp files during uploading ([#​36128](https://github.com/go-gitea/gitea/issues/36128)) ([#​36129](https://github.com/go-gitea/gitea/issues/36129))
- Fix the bug when ssh clone with redirect user or repository ([#​36039](https://github.com/go-gitea/gitea/issues/36039)) ([#​36090](https://github.com/go-gitea/gitea/issues/36090))
- Use Golang net/smtp instead of gomail's smtp to send email ([#​36055](https://github.com/go-gitea/gitea/issues/36055)) ([#​36083](https://github.com/go-gitea/gitea/issues/36083))
- Fix edit user email bug in API ([#​36068](https://github.com/go-gitea/gitea/issues/36068)) ([#​36081](https://github.com/go-gitea/gitea/issues/36081))
- Fix bug when updating user email ([#​36058](https://github.com/go-gitea/gitea/issues/36058)) ([#​36066](https://github.com/go-gitea/gitea/issues/36066))
- Fix incorrect viewed files counter if file has changed ([#​36009](https://github.com/go-gitea/gitea/issues/36009)) ([#​36047](https://github.com/go-gitea/gitea/issues/36047))
- Fix container registry error handling ([#​36021](https://github.com/go-gitea/gitea/issues/36021)) ([#​36037](https://github.com/go-gitea/gitea/issues/36037))
- Fix webAuthn insecure error view ([#​36165](https://github.com/go-gitea/gitea/issues/36165)) ([#​36179](https://github.com/go-gitea/gitea/issues/36179))
- Fix some file icon ui ([#​36078](https://github.com/go-gitea/gitea/issues/36078)) ([#​36088](https://github.com/go-gitea/gitea/issues/36088))
- Fix Actions `pull_request.paths` being triggered incorrectly by rebase ([#​36045](https://github.com/go-gitea/gitea/issues/36045)) ([#​36054](https://github.com/go-gitea/gitea/issues/36054))
- Fix error handling in mailer and wiki services ([#​36041](https://github.com/go-gitea/gitea/issues/36041)) ([#​36053](https://github.com/go-gitea/gitea/issues/36053))
- Fix bugs when comparing and creating pull request ([#​36166](https://github.com/go-gitea/gitea/issues/36166)) ([#​36144](https://github.com/go-gitea/gitea/issues/36144))
Instances on **[Gitea Cloud](https://cloud.gitea.com)** will be automatically upgraded to this version during the specified maintenance window.
### [`v1.25.2`](https://github.com/go-gitea/gitea/releases/tag/v1.25.2)
[Compare Source](https://github.com/go-gitea/gitea/compare/v1.25.1...v1.25.2)
- SECURITY
- Upgrade golang.org/x/crypto to 0.45.0 ([#​35985](https://github.com/go-gitea/gitea/issues/35985)) ([#​35988](https://github.com/go-gitea/gitea/issues/35988))
- Fix various permission & login related bugs ([#​36002](https://github.com/go-gitea/gitea/issues/36002)) ([#​36004](https://github.com/go-gitea/gitea/issues/36004))
- ENHANCEMENTS
- Display source code downloads last for release attachments ([#​35897](https://github.com/go-gitea/gitea/issues/35897)) ([#​35903](https://github.com/go-gitea/gitea/issues/35903))
- Change project default column icon to 'star' ([#​35967](https://github.com/go-gitea/gitea/issues/35967)) ([#​35979](https://github.com/go-gitea/gitea/issues/35979))
- BUGFIXES
- Allow empty commit when merging pull request with squash style ([#​35989](https://github.com/go-gitea/gitea/issues/35989)) ([#​36003](https://github.com/go-gitea/gitea/issues/36003))
- Fix container push tag overwriting ([#​35936](https://github.com/go-gitea/gitea/issues/35936)) ([#​35954](https://github.com/go-gitea/gitea/issues/35954))
- Fix corrupted external render content ([#​35946](https://github.com/go-gitea/gitea/issues/35946)) and upgrade golang.org/x packages ([#​35950](https://github.com/go-gitea/gitea/issues/35950))
- Limit reading bytes instead of ReadAll ([#​35928](https://github.com/go-gitea/gitea/issues/35928)) ([#​35934](https://github.com/go-gitea/gitea/issues/35934))
- Use correct form field for allowed force push users in branch protection API ([#​35894](https://github.com/go-gitea/gitea/issues/35894)) ([#​35908](https://github.com/go-gitea/gitea/issues/35908))
- Fix team member access check ([#​35899](https://github.com/go-gitea/gitea/issues/35899)) ([#​35905](https://github.com/go-gitea/gitea/issues/35905))
- Fix conda null depend issue ([#​35900](https://github.com/go-gitea/gitea/issues/35900)) ([#​35902](https://github.com/go-gitea/gitea/issues/35902))
- Set the dates to now when not specified by the caller ([#​35861](https://github.com/go-gitea/gitea/issues/35861)) ([#​35874](https://github.com/go-gitea/gitea/issues/35874))
- Fix gogit ListEntriesRecursiveWithSize ([#​35862](https://github.com/go-gitea/gitea/issues/35862))
- Misc CSS fixes ([#​35888](https://github.com/go-gitea/gitea/issues/35888)) ([#​35981](https://github.com/go-gitea/gitea/issues/35981))
- Don't show unnecessary error message to end users for DeleteBranchAfterMerge ([#​35937](https://github.com/go-gitea/gitea/issues/35937)) ([#​35941](https://github.com/go-gitea/gitea/issues/35941))
- Load jQuery as early as possible to support custom scripts ([#​35926](https://github.com/go-gitea/gitea/issues/35926)) ([#​35929](https://github.com/go-gitea/gitea/issues/35929))
- Allow to display embed images/pdfs when SERVE_DIRECT was enabled on MinIO storage ([#​35882](https://github.com/go-gitea/gitea/issues/35882)) ([#​35917](https://github.com/go-gitea/gitea/issues/35917))
- Make OAuth2 issuer configurable ([#​35915](https://github.com/go-gitea/gitea/issues/35915)) ([#​35916](https://github.com/go-gitea/gitea/issues/35916))
- Fix [#​35763](https://github.com/go-gitea/gitea/issues/35763): Add proper page title for project pages ([#​35773](https://github.com/go-gitea/gitea/issues/35773)) ([#​35909](https://github.com/go-gitea/gitea/issues/35909))
- Fix avatar upload error handling ([#​35887](https://github.com/go-gitea/gitea/issues/35887)) ([#​35890](https://github.com/go-gitea/gitea/issues/35890))
- Contribution heatmap improvements ([#​35876](https://github.com/go-gitea/gitea/issues/35876)) ([#​35880](https://github.com/go-gitea/gitea/issues/35880))
- Remove padding override on `.ui .sha.label` ([#​35864](https://github.com/go-gitea/gitea/issues/35864)) ([#​35873](https://github.com/go-gitea/gitea/issues/35873))
- Fix pull description code label background ([#​35865](https://github.com/go-gitea/gitea/issues/35865)) ([#​35870](https://github.com/go-gitea/gitea/issues/35870))
Instances on **[Gitea Cloud](https://cloud.gitea.com)** will be automatically upgraded to this version during the specified maintenance window.
### [`v1.25.1`](https://github.com/go-gitea/gitea/releases/tag/v1.25.1)
[Compare Source](https://github.com/go-gitea/gitea/compare/v1.25.0...v1.25.1)
- BUGFIXES
- Make ACME email optional ([#​35849](https://github.com/go-gitea/gitea/issues/35849)) [#​35857](https://github.com/go-gitea/gitea/issues/35857)
- Add a doctor command to fix inconsistent run status ([#​35840](https://github.com/go-gitea/gitea/issues/35840)) ([#​35845](https://github.com/go-gitea/gitea/issues/35845))
- Remove wrong code ([#​35846](https://github.com/go-gitea/gitea/issues/35846))
- Fix viewed files number is not right if not all files loaded ([#​35821](https://github.com/go-gitea/gitea/issues/35821)) ([#​35844](https://github.com/go-gitea/gitea/issues/35844))
- Fix incorrect pull request counter ([#​35819](https://github.com/go-gitea/gitea/issues/35819)) ([#​35841](https://github.com/go-gitea/gitea/issues/35841))
- Upgrade go mail to 0.7.2 and fix the bug ([#​35833](https://github.com/go-gitea/gitea/issues/35833)) ([#​35837](https://github.com/go-gitea/gitea/issues/35837))
- Revert gomail to v0.7.0 to fix sending mail failed ([#​35816](https://github.com/go-gitea/gitea/issues/35816)) ([#​35824](https://github.com/go-gitea/gitea/issues/35824))
- Fix clone mixed bug ([#​35810](https://github.com/go-gitea/gitea/issues/35810)) ([#​35822](https://github.com/go-gitea/gitea/issues/35822))
- Fix cli "Before" handling ([#​35797](https://github.com/go-gitea/gitea/issues/35797)) ([#​35808](https://github.com/go-gitea/gitea/issues/35808))
- Improve and fix markup code preview rendering ([#​35777](https://github.com/go-gitea/gitea/issues/35777)) ([#​35787](https://github.com/go-gitea/gitea/issues/35787))
- Fix actions rerun bug ([#​35783](https://github.com/go-gitea/gitea/issues/35783)) ([#​35784](https://github.com/go-gitea/gitea/issues/35784))
- Fix actions schedule update issue ([#​35767](https://github.com/go-gitea/gitea/issues/35767)) ([#​35774](https://github.com/go-gitea/gitea/issues/35774))
- Fix circular spin animation direction ([#​35785](https://github.com/go-gitea/gitea/issues/35785)) ([#​35823](https://github.com/go-gitea/gitea/issues/35823))
- Fix file extension on gogs.png ([#​35793](https://github.com/go-gitea/gitea/issues/35793)) ([#​35799](https://github.com/go-gitea/gitea/issues/35799))
- Add pnpm to Snapcraft ([#​35778](https://github.com/go-gitea/gitea/issues/35778))
Instances on **[Gitea Cloud](https://cloud.gitea.com)** will be automatically upgraded to this version during the specified maintenance window.
### [`v1.25.0`](https://github.com/go-gitea/gitea/releases/tag/v1.25.0)
[Compare Source](https://github.com/go-gitea/gitea/compare/v1.24.7...v1.25.0)
- BREAKING
- Return 201 Created for CreateVariable API responses ([#​34517](https://github.com/go-gitea/gitea/issues/34517))
- Add label 'state' to metric 'gitea_users' ([#​34326](https://github.com/go-gitea/gitea/issues/34326))
- SECURITY
- Upgrade security public key ([#​34956](https://github.com/go-gitea/gitea/issues/34956))
- Also include all security fixes in 1.24.x after 1.25.0-rc0
- FEATURES
- Stream repo zip/tar.gz/bundle achives by default ([#​35487](https://github.com/go-gitea/gitea/issues/35487))
- Use configurable remote name for git commands ([#​35172](https://github.com/go-gitea/gitea/issues/35172))
- Send email on Workflow Run Success/Failure ([#​34982](https://github.com/go-gitea/gitea/issues/34982))
- Refactor OpenIDConnect to support SSH/FullName sync ([#​34978](https://github.com/go-gitea/gitea/issues/34978))
- Refactor repo contents API and add "contents-ext" API ([#​34822](https://github.com/go-gitea/gitea/issues/34822))
- Add support for 3D/CAD file formats preview ([#​34794](https://github.com/go-gitea/gitea/issues/34794))
- Improve instance wide ssh commit signing ([#​34341](https://github.com/go-gitea/gitea/issues/34341))
- Edit file workflow for creating a fork and proposing changes ([#​34240](https://github.com/go-gitea/gitea/issues/34240))
- Follow file symlinks in the UI to their target ([#​28835](https://github.com/go-gitea/gitea/issues/28835))
- Allow renaming/moving binary/LFS files in the UI ([#​34350](https://github.com/go-gitea/gitea/issues/34350))
- PERFORMANCE
- Improve the performance when detecting the file editable ([#​34653](https://github.com/go-gitea/gitea/issues/34653))
- ENHANCEMENTS
- Enable more markdown paste features in textarea editor ([#​35494](https://github.com/go-gitea/gitea/issues/35494))
- Don't store repo archives on `gitea dump` ([#​35467](https://github.com/go-gitea/gitea/issues/35467))
- Always return the relevant status information, even if no status exists. ([#​35335](https://github.com/go-gitea/gitea/issues/35335))
- Add start time on perf trace because it seems some steps haven't been recorded. ([#​35282](https://github.com/go-gitea/gitea/issues/35282))
- Remove deprecated auth sources ([#​35272](https://github.com/go-gitea/gitea/issues/35272))
- When sorting issues by nearest due date, issues without due date should be sorted ascending ([#​35267](https://github.com/go-gitea/gitea/issues/35267))
- Disable field count validation of CSV viewer ([#​35228](https://github.com/go-gitea/gitea/issues/35228))
- Add `has_code` to repository REST API ([#​35214](https://github.com/go-gitea/gitea/issues/35214))
- Display pull request in merged commit view ([#​35202](https://github.com/go-gitea/gitea/issues/35202))
- Support Basic Authentication for archive downloads ([#​35087](https://github.com/go-gitea/gitea/issues/35087))
- Add hover background to table rows in user and repo admin page ([#​35072](https://github.com/go-gitea/gitea/issues/35072))
- Partially refresh notifications list ([#​35010](https://github.com/go-gitea/gitea/issues/35010))
- Also display "recently pushed branch" alert on PR view ([#​35001](https://github.com/go-gitea/gitea/issues/35001))
- Refactor time tracker UI ([#​34983](https://github.com/go-gitea/gitea/issues/34983))
- Improve CLI commands ([#​34973](https://github.com/go-gitea/gitea/issues/34973))
- Improve project & label color picker and image scroll ([#​34971](https://github.com/go-gitea/gitea/issues/34971))
- Improve NuGet API Parity ([#​21291](https://github.com/go-gitea/gitea/issues/21291)) ([#​34940](https://github.com/go-gitea/gitea/issues/34940))
- Support getting last commit message using contents-ext API ([#​34904](https://github.com/go-gitea/gitea/issues/34904))
- Adds title on branch commit counts ([#​34869](https://github.com/go-gitea/gitea/issues/34869))
- Add "Cancel workflow run" button to Actions list page ([#​34817](https://github.com/go-gitea/gitea/issues/34817))
- Improve img lazy loading ([#​34804](https://github.com/go-gitea/gitea/issues/34804))
- Forks repository list page follow other repositories page ([#​34784](https://github.com/go-gitea/gitea/issues/34784))
- Add ff_only parameter to POST /repos/{owner}/{repo}/merge-upstream ([#​34770](https://github.com/go-gitea/gitea/issues/34770))
- Rework delete org and rename org UI ([#​34762](https://github.com/go-gitea/gitea/issues/34762))
- Improve nuget/rubygems package registries ([#​34741](https://github.com/go-gitea/gitea/issues/34741))
- Add repo file tree item link behavior ([#​34730](https://github.com/go-gitea/gitea/issues/34730))
- Add issue delete notifier ([#​34592](https://github.com/go-gitea/gitea/issues/34592))
- Improve Actions list ([#​34530](https://github.com/go-gitea/gitea/issues/34530))
- Add a default tab on repo header when migrating ([#​34503](https://github.com/go-gitea/gitea/issues/34503))
- Add post-installation redirect based on admin account status ([#​34493](https://github.com/go-gitea/gitea/issues/34493))
- Trigger 'unlabeled' event when label is Deleted from PR ([#​34316](https://github.com/go-gitea/gitea/issues/34316))
- Support annotated tags when using create release API ([#​31840](https://github.com/go-gitea/gitea/issues/31840))
- Use lfs label for lfs file rather than a long description ([#​34363](https://github.com/go-gitea/gitea/issues/34363))
- Add "View workflow file" to Actions list page ([#​34538](https://github.com/go-gitea/gitea/issues/34538))
- Move organization's visibility change to danger zone. ([#​34814](https://github.com/go-gitea/gitea/issues/34814))
- Don't block site admin's operation if SECRET_KEY is lost ([#​35721](https://github.com/go-gitea/gitea/issues/35721))
- Make restricted users can access public repositories ([#​35693](https://github.com/go-gitea/gitea/issues/35693))
- The status icon of the Action step is consistent with GitHub ([#​35618](https://github.com/go-gitea/gitea/issues/35618)) [#​35621](https://github.com/go-gitea/gitea/issues/35621)
- BUGFIXES
- Update tab title when navigating file tree ([#​35757](https://github.com/go-gitea/gitea/issues/35757)) [#​35772](https://github.com/go-gitea/gitea/issues/35772)
- Fix "ref-issue" handling in markup ([#​35739](https://github.com/go-gitea/gitea/issues/35739)) [#​35771](https://github.com/go-gitea/gitea/issues/35771)
- Fix webhook to prevent tag events from bypassing branch filters targets ([#​35567](https://github.com/go-gitea/gitea/issues/35567)) [#​35577](https://github.com/go-gitea/gitea/issues/35577)
- Fix markup init after issue comment editing ([#​35536](https://github.com/go-gitea/gitea/issues/35536)) [#​35537](https://github.com/go-gitea/gitea/issues/35537)
- Fix creating pull request failure when the target branch name is the same as some tag ([#​35552](https://github.com/go-gitea/gitea/issues/35552)) [#​35582](https://github.com/go-gitea/gitea/issues/35582)
- Fix auto-expand and auto-scroll for actions logs ([#​35570](https://github.com/go-gitea/gitea/issues/35570)) ([#​35583](https://github.com/go-gitea/gitea/issues/35583)) [#​35586](https://github.com/go-gitea/gitea/issues/35586)
- Use inputs context when parsing workflows ([#​35590](https://github.com/go-gitea/gitea/issues/35590)) [#​35595](https://github.com/go-gitea/gitea/issues/35595)
- Fix diffpatch API endpoint ([#​35610](https://github.com/go-gitea/gitea/issues/35610)) [#​35613](https://github.com/go-gitea/gitea/issues/35613)
- Creating push comments before invoke pull request checking ([#​35647](https://github.com/go-gitea/gitea/issues/35647)) [#​35668](https://github.com/go-gitea/gitea/issues/35668)
- Fix missing Close when error occurs and abused connection pool ([#​35658](https://github.com/go-gitea/gitea/issues/35658)) [#​35670](https://github.com/go-gitea/gitea/issues/35670)
- Fix build ([#​35674](https://github.com/go-gitea/gitea/issues/35674))
- Use LFS object size instead of blob size when viewing a LFS file ([#​35679](https://github.com/go-gitea/gitea/issues/35679))
- Fix workflow run event status while rerunning a failed job ([#​35689](https://github.com/go-gitea/gitea/issues/35689))
- Avoid emoji mismatch and allow to only enable chosen emojis ([#​35692](https://github.com/go-gitea/gitea/issues/35692))
- Refactor legacy code, fix LFS auth bypass, fix symlink bypass ([#​35708](https://github.com/go-gitea/gitea/issues/35708))
- Fix various trivial problems ([#​35714](https://github.com/go-gitea/gitea/issues/35714))
- Fix attachment file size limit in server backend ([#​35519](https://github.com/go-gitea/gitea/issues/35519))
- Honor delete branch on merge repo setting when using merge API ([#​35488](https://github.com/go-gitea/gitea/issues/35488))
- Fix external render, make iframe render work ([#​35727](https://github.com/go-gitea/gitea/issues/35727), [#​35730](https://github.com/go-gitea/gitea/issues/35730))
- Upgrade go mail to 0.7.2 ([#​35748](https://github.com/go-gitea/gitea/issues/35748))
- Revert [#​18491](https://github.com/go-gitea/gitea/issues/18491), fix oauth2 client link account ([#​35745](https://github.com/go-gitea/gitea/issues/35745))
- Fix different behavior in status check pattern matching with double stars ([#​35474](https://github.com/go-gitea/gitea/issues/35474))
- Fix overflow in notifications list ([#​35446](https://github.com/go-gitea/gitea/issues/35446))
- Fix package link setting can only list limited repositories ([#​35394](https://github.com/go-gitea/gitea/issues/35394))
- Extend comment treepath length ([#​35389](https://github.com/go-gitea/gitea/issues/35389))
- Fix font-size in inline code comment preview ([#​35209](https://github.com/go-gitea/gitea/issues/35209))
- Move git config/remote to gitrepo package and add global lock to resolve possible conflict when updating repository git config file ([#​35151](https://github.com/go-gitea/gitea/issues/35151))
- Change some columns from text to longtext and fix column wrong type caused by xorm ([#​35141](https://github.com/go-gitea/gitea/issues/35141))
- Redirect to a presigned URL of HEAD for HEAD requests ([#​35088](https://github.com/go-gitea/gitea/issues/35088))
- Fix git commit committer parsing and add some tests ([#​35007](https://github.com/go-gitea/gitea/issues/35007))
- Fix OCI manifest parser ([#​34797](https://github.com/go-gitea/gitea/issues/34797))
- Refactor FindOrgOptions to use enum instead of bool, fix membership visibility ([#​34629](https://github.com/go-gitea/gitea/issues/34629))
- Fix notification count positioning for variable-width elements ([#​34597](https://github.com/go-gitea/gitea/issues/34597))
- Keeping consistent between UI and API about combined commit status state and fix some bugs ([#​34562](https://github.com/go-gitea/gitea/issues/34562))
- Fix possible panic ([#​34508](https://github.com/go-gitea/gitea/issues/34508))
- Fix autofocus behavior ([#​34397](https://github.com/go-gitea/gitea/issues/34397))
- Fix Actions API ([#​35204](https://github.com/go-gitea/gitea/issues/35204))
- Fix ListWorkflowRuns OpenAPI response model. ([#​35026](https://github.com/go-gitea/gitea/issues/35026))
- Small fix in Pull Requests page ([#​34612](https://github.com/go-gitea/gitea/issues/34612))
- Fix http auth header parsing ([#​34936](https://github.com/go-gitea/gitea/issues/34936))
- Fix modal + form abuse ([#​34921](https://github.com/go-gitea/gitea/issues/34921))
- Fix PR toggle WIP ([#​34920](https://github.com/go-gitea/gitea/issues/34920))
- Fix log fmt ([#​34810](https://github.com/go-gitea/gitea/issues/34810))
- Replace stopwatch toggle with explicit start/stop actions ([#​34818](https://github.com/go-gitea/gitea/issues/34818))
- Fix some package registry problems ([#​34759](https://github.com/go-gitea/gitea/issues/34759))
- Fix RPM package download routing & missing package version count ([#​34909](https://github.com/go-gitea/gitea/issues/34909))
- Fix repo search input height ([#​34330](https://github.com/go-gitea/gitea/issues/34330))
- Fix "The sidebar of the repository file list does not have a fixed height [#​34298](https://github.com/go-gitea/gitea/issues/34298)" ([#​34321](https://github.com/go-gitea/gitea/issues/34321))
- Fix minor typos in two files #HSFDPMUW ([#​34944](https://github.com/go-gitea/gitea/issues/34944))
- Fix actions skipped commit status indicator ([#​34507](https://github.com/go-gitea/gitea/issues/34507))
- Fix job status aggregation logic ([#​35000](https://github.com/go-gitea/gitea/issues/35000))
- Fix broken OneDev migration caused by various REST API changes in OneDev 7.8.0 and later ([#​35216](https://github.com/go-gitea/gitea/issues/35216))
- Fix typo in oauth2_full_name_claim_name string ([#​35199](https://github.com/go-gitea/gitea/issues/35199))
- Fix typo in locale_en-US.ini ([#​35196](https://github.com/go-gitea/gitea/issues/35196))
- API
- Exposing TimeEstimate field in the API ([#​35475](https://github.com/go-gitea/gitea/issues/35475))
- UpdateBranch API supports renaming a branch ([#​35374](https://github.com/go-gitea/gitea/issues/35374))
- Add `owner` and `parent` fields clarification to docs ([#​35023](https://github.com/go-gitea/gitea/issues/35023))
- Improve OAuth2 provider (correct Issuer, respect ENABLED) ([#​34966](https://github.com/go-gitea/gitea/issues/34966))
- Add a `login`/`login-name`/`username` disambiguation to affected endpoint parameters and response/request models ([#​34901](https://github.com/go-gitea/gitea/issues/34901))
- Do not mutate incoming options to SearchRepositoryByName ([#​34553](https://github.com/go-gitea/gitea/issues/34553))
- Do not mutate incoming options to RenderUserSearch and SearchUsers ([#​34544](https://github.com/go-gitea/gitea/issues/34544))
- Export repo's manual merge settings ([#​34502](https://github.com/go-gitea/gitea/issues/34502))
- Add date range filtering to commit retrieval endpoints ([#​34497](https://github.com/go-gitea/gitea/issues/34497))
- Add endpoint deleting workflow run ([#​34337](https://github.com/go-gitea/gitea/issues/34337))
- Add workflow_run api + webhook ([#​33964](https://github.com/go-gitea/gitea/issues/33964))
- REFACTOR
- Move updateref and removeref to gitrepo and remove unnecessary open repository ([#​35511](https://github.com/go-gitea/gitea/issues/35511))
- Remove unused param `doer` ([#​34545](https://github.com/go-gitea/gitea/issues/34545))
- Split GetLatestCommitStatus as two functions ([#​34535](https://github.com/go-gitea/gitea/issues/34535))
- Use gitrepo.SetDefaultBranch when set default branch of wiki repository ([#​33911](https://github.com/go-gitea/gitea/issues/33911))
- Refactor editor ([#​34780](https://github.com/go-gitea/gitea/issues/34780))
- Refactor packages ([#​34777](https://github.com/go-gitea/gitea/issues/34777))
- Refactor container package ([#​34877](https://github.com/go-gitea/gitea/issues/34877))
- Refactor "change file" API ([#​34855](https://github.com/go-gitea/gitea/issues/34855))
- Rename pull request GetGitRefName to GetGitHeadRefName to prepare introducing GetGitMergeRefName ([#​35093](https://github.com/go-gitea/gitea/issues/35093))
- Move git command to git/gitcmd ([#​35483](https://github.com/go-gitea/gitea/issues/35483))
- Use db.WithTx/WithTx2 instead of TxContext when possible ([#​35428](https://github.com/go-gitea/gitea/issues/35428))
- Support Node.js 22.6 with type stripping ([#​35427](https://github.com/go-gitea/gitea/issues/35427))
- Migrate tools and configs to typescript, require node.js >= 22.18.0 ([#​35421](https://github.com/go-gitea/gitea/issues/35421))
- Check user and repo for redirects when using git via SSH transport ([#​35416](https://github.com/go-gitea/gitea/issues/35416))
- Remove the duplicated function GetTags ([#​35375](https://github.com/go-gitea/gitea/issues/35375))
- Refactor to use reflect.TypeFor ([#​35370](https://github.com/go-gitea/gitea/issues/35370))
- Deleting branch could delete broken branch which has database record but git branch is missing ([#​35360](https://github.com/go-gitea/gitea/issues/35360))
- Exit with success when already up to date ([#​35312](https://github.com/go-gitea/gitea/issues/35312))
- Split admin config settings templates to make it maintain easier ([#​35294](https://github.com/go-gitea/gitea/issues/35294))
- A small refactor to use context in the service layer ([#​35179](https://github.com/go-gitea/gitea/issues/35179))
- Refactor and update mail templates ([#​35150](https://github.com/go-gitea/gitea/issues/35150))
- Use db.WithTx/WithTx2 instead of TxContext when possible ([#​35130](https://github.com/go-gitea/gitea/issues/35130))
- Align `issue-title-buttons` with `list-header` ([#​35018](https://github.com/go-gitea/gitea/issues/35018))
- Add Notifications section in User Settings ([#​35008](https://github.com/go-gitea/gitea/issues/35008))
- Tweak placement of diff file menu ([#​34999](https://github.com/go-gitea/gitea/issues/34999))
- Refactor mail template and support preview ([#​34990](https://github.com/go-gitea/gitea/issues/34990))
- Rerun job only when run is done ([#​34970](https://github.com/go-gitea/gitea/issues/34970))
- Merge index.js ([#​34963](https://github.com/go-gitea/gitea/issues/34963))
- Refactor "delete-button" to "link-action" ([#​34962](https://github.com/go-gitea/gitea/issues/34962))
- Refactor webhook and fix feishu/lark secret ([#​34961](https://github.com/go-gitea/gitea/issues/34961))
- Exclude devtest.ts from tailwindcss ([#​34935](https://github.com/go-gitea/gitea/issues/34935))
- Refactor head navbar icons ([#​34922](https://github.com/go-gitea/gitea/issues/34922))
- Improve html escape ([#​34911](https://github.com/go-gitea/gitea/issues/34911))
- Improve tags list page ([#​34898](https://github.com/go-gitea/gitea/issues/34898))
- Improve `labels-list` rendering ([#​34846](https://github.com/go-gitea/gitea/issues/34846))
- Remove unused variable HUGO_VERSION ([#​34840](https://github.com/go-gitea/gitea/issues/34840))
- Correct migration tab name ([#​34826](https://github.com/go-gitea/gitea/issues/34826))
- Refactor template helper ([#​34819](https://github.com/go-gitea/gitea/issues/34819))
- Use `shallowRef` instead of `ref` in `.vue` files where possible ([#​34813](https://github.com/go-gitea/gitea/issues/34813))
- Use standalone function to update repository cols ([#​34811](https://github.com/go-gitea/gitea/issues/34811))
- Refactor wiki ([#​34805](https://github.com/go-gitea/gitea/issues/34805))
- Remove unnecessary duplicate code ([#​34733](https://github.com/go-gitea/gitea/issues/34733))
- Refactor embedded assets and drop unnecessary dependencies ([#​34692](https://github.com/go-gitea/gitea/issues/34692))
- Update x/crypto package and make builtin SSH use default parameters ([#​34667](https://github.com/go-gitea/gitea/issues/34667))
- Add `--color-logo`, matching the logo's primary color ([#​34639](https://github.com/go-gitea/gitea/issues/34639))
- Add openssh-keygen to rootless image ([#​34625](https://github.com/go-gitea/gitea/issues/34625))
- Replace update repository function in some places ([#​34566](https://github.com/go-gitea/gitea/issues/34566))
- Change "rejected" to "changes requested" in 3rd party PR review notification ([#​34481](https://github.com/go-gitea/gitea/issues/34481))
- Remove legacy template helper functions ([#​34426](https://github.com/go-gitea/gitea/issues/34426))
- Use run-name and evaluate workflow variables ([#​34301](https://github.com/go-gitea/gitea/issues/34301))
- Move HasWiki to repository service package ([#​33912](https://github.com/go-gitea/gitea/issues/33912))
- Move some functions from package git to gitrepo ([#​33910](https://github.com/go-gitea/gitea/issues/33910))
- TESTING
- Add webhook test for push event ([#​34442](https://github.com/go-gitea/gitea/issues/34442))
- Add a webhook push test for dev branch ([#​34421](https://github.com/go-gitea/gitea/issues/34421))
- Add migrations tests ([#​34456](https://github.com/go-gitea/gitea/issues/34456)) ([#​34498](https://github.com/go-gitea/gitea/issues/34498))
- STYLE
- Enforce explanation for necessary nolints and fix bugs ([#​34883](https://github.com/go-gitea/gitea/issues/34883))
- Fix remaining issues after `gopls modernize` formatting ([#​34771](https://github.com/go-gitea/gitea/issues/34771))
- Update gofumpt, add go.mod ignore directive ([#​35434](https://github.com/go-gitea/gitea/issues/35434))
- Enforce nolint scope ([#​34851](https://github.com/go-gitea/gitea/issues/34851))
- Enable gocritic `equalFold` and fix issues ([#​34952](https://github.com/go-gitea/gitea/issues/34952))
- Run `gopls modernize` on codebase ([#​34751](https://github.com/go-gitea/gitea/issues/34751))
- Upgrade `gopls` to v0.19.0, add `make fix` ([#​34772](https://github.com/go-gitea/gitea/issues/34772))
- BUILD
- bump archives\&rar dep ([#​35637](https://github.com/go-gitea/gitea/issues/35637)) [#​35638](https://github.com/go-gitea/gitea/issues/35638)
- Use github.com/mholt/archives replace github.com/mholt/archiver ([#​35390](https://github.com/go-gitea/gitea/issues/35390))
- Update JS and PY dependencies ([#​35444](https://github.com/go-gitea/gitea/issues/35444))
- Upgrade devcontainer go version to 1.24.6 ([#​35298](https://github.com/go-gitea/gitea/issues/35298))
- Upgrade golang to 1.25.1 and add descriptions for the swagger structs' fields ([#​35418](https://github.com/go-gitea/gitea/issues/35418))
- Update JS and PY deps ([#​35191](https://github.com/go-gitea/gitea/issues/35191))
- Update JS and PY dependencies ([#​34391](https://github.com/go-gitea/gitea/issues/34391))
- Update go tool dependencies ([#​34845](https://github.com/go-gitea/gitea/issues/34845))
- Update `uint8-to-base64`, remove type stub ([#​34844](https://github.com/go-gitea/gitea/issues/34844))
- Switch to `@resvg/resvg-wasm` for `generate-images` ([#​35415](https://github.com/go-gitea/gitea/issues/35415))
- Switch to pnpm ([#​35274](https://github.com/go-gitea/gitea/issues/35274))
- Update chroma to v2.20.0 ([#​35220](https://github.com/go-gitea/gitea/issues/35220))
- Migrate to urfave v3 ([#​34510](https://github.com/go-gitea/gitea/issues/34510))
- Update JS deps, regenerate SVGs ([#​34640](https://github.com/go-gitea/gitea/issues/34640))
- Upgrade dependencies ([#​35384](https://github.com/go-gitea/gitea/issues/35384))
- Bump `@github/relative-time-element` to v4.4.8 ([#​34413](https://github.com/go-gitea/gitea/issues/34413))
- Update JS dependencies ([#​34951](https://github.com/go-gitea/gitea/issues/34951))
- Upgrade orgmode to v1.8.0 ([#​34721](https://github.com/go-gitea/gitea/issues/34721))
- Raise minimum Node.js version to 20, test on 24 ([#​34713](https://github.com/go-gitea/gitea/issues/34713))
- Update JS deps ([#​34701](https://github.com/go-gitea/gitea/issues/34701))
- Upgrade htmx to 2.0.6 ([#​34887](https://github.com/go-gitea/gitea/issues/34887))
- Update eslint to v9 ([#​35485](https://github.com/go-gitea/gitea/issues/35485))
- Update js dependencies ([#​35429](https://github.com/go-gitea/gitea/issues/35429))
- Clean up npm dependencies ([#​35508](https://github.com/go-gitea/gitea/issues/35508))
- Clean up npm dependencies ([#​35484](https://github.com/go-gitea/gitea/issues/35484))
- Bump setup-node to v5 ([#​35448](https://github.com/go-gitea/gitea/issues/35448))
- MISC
- Add gitignore rules to exclude LLM instruction files ([#​35076](https://github.com/go-gitea/gitea/issues/35076))
- Gitignore: Visual Studio settings folder ([#​34375](https://github.com/go-gitea/gitea/issues/34375))
- Improve language in en-US locale strings ([#​35124](https://github.com/go-gitea/gitea/issues/35124))
- Fixed all grammatical errors in locale_en-US.ini ([#​35053](https://github.com/go-gitea/gitea/issues/35053))
- Docs/fix typo and grammar in CONTRIBUTING.md ([#​35024](https://github.com/go-gitea/gitea/issues/35024))
- Improve english grammar and readability in locale_en-US.ini ([#​35017](https://github.com/go-gitea/gitea/issues/35017))
Instances on **[Gitea Cloud](https://cloud.gitea.com)** will be automatically upgraded to this version during the specified maintenance window.
### [`v1.24.7`](https://github.com/go-gitea/gitea/releases/tag/v1.24.7)
[Compare Source](https://github.com/go-gitea/gitea/compare/v1.24.6...v1.24.7)
- SECURITY
- Refactor legacy code, fix LFS auth bypass, fix symlink bypass ([#​35708](https://github.com/go-gitea/gitea/issues/35708)) ([#​35713](https://github.com/go-gitea/gitea/issues/35713))
- Fix password leak in log messages ([#​35584](https://github.com/go-gitea/gitea/issues/35584)) ([#​35665](https://github.com/go-gitea/gitea/issues/35665))
- Fix a missed return in OAuth2 ([#​35655](https://github.com/go-gitea/gitea/issues/35655)) ([#​35671](https://github.com/go-gitea/gitea/issues/35671))
- BUGFIXES
- Fix inputing review comment will remove reviewer ([#​35591](https://github.com/go-gitea/gitea/issues/35591)) ([#​35664](https://github.com/go-gitea/gitea/issues/35664))
- TESTING
- Mock external service in hcaptcha TestCaptcha ([#​35604](https://github.com/go-gitea/gitea/issues/35604)) ([#​35663](https://github.com/go-gitea/gitea/issues/35663))
- Fix build ([#​35669](https://github.com/go-gitea/gitea/issues/35669))
Instances on **[Gitea Cloud](https://cloud.gitea.com)** will be automatically upgraded to this version during the specified maintenance window.
### [`v1.24.6`](https://github.com/go-gitea/gitea/releases/tag/v1.24.6)
[Compare Source](https://github.com/go-gitea/gitea/compare/v1.24.5...v1.24.6)
- SECURITY
- Upgrade xz to v0.5.15 ([#​35385](https://github.com/go-gitea/gitea/issues/35385))
- BUGFIXES
- Fix a compare page 404 bug when the pull request disabled ([#​35441](https://github.com/go-gitea/gitea/issues/35441)) ([#​35453](https://github.com/go-gitea/gitea/issues/35453))
- Fix bug when issue disabled, pull request number in the commit message cannot be redirected ([#​35420](https://github.com/go-gitea/gitea/issues/35420)) ([#​35442](https://github.com/go-gitea/gitea/issues/35442))
- Add author.name field to Swift Package Registry API response ([#​35410](https://github.com/go-gitea/gitea/issues/35410)) ([#​35431](https://github.com/go-gitea/gitea/issues/35431))
- Remove usernames when empty in discord webhook ([#​35412](https://github.com/go-gitea/gitea/issues/35412)) ([#​35417](https://github.com/go-gitea/gitea/issues/35417))
- Allow foreachref parser to grow its buffer ([#​35365](https://github.com/go-gitea/gitea/issues/35365)) ([#​35376](https://github.com/go-gitea/gitea/issues/35376))
- Allow deleting comment with content via API like web did ([#​35346](https://github.com/go-gitea/gitea/issues/35346)) ([#​35354](https://github.com/go-gitea/gitea/issues/35354))
- Fix atom/rss mixed error ([#​35345](https://github.com/go-gitea/gitea/issues/35345)) ([#​35347](https://github.com/go-gitea/gitea/issues/35347))
- Fix review request webhook bug ([#​35339](https://github.com/go-gitea/gitea/issues/35339))
- Remove duplicate html IDs ([#​35210](https://github.com/go-gitea/gitea/issues/35210)) ([#​35325](https://github.com/go-gitea/gitea/issues/35325))
- Fix LFS range size header response ([#​35277](https://github.com/go-gitea/gitea/issues/35277)) ([#​35293](https://github.com/go-gitea/gitea/issues/35293))
- Fix GitHub release assets URL validation ([#​35287](https://github.com/go-gitea/gitea/issues/35287)) ([#​35290](https://github.com/go-gitea/gitea/issues/35290))
- Fix token lifetime, closes [#​35230](https://github.com/go-gitea/gitea/issues/35230) ([#​35271](https://github.com/go-gitea/gitea/issues/35271)) ([#​35281](https://github.com/go-gitea/gitea/issues/35281))
- Fix push commits comments when changing the pull request target branch ([#​35386](https://github.com/go-gitea/gitea/issues/35386)) ([#​35443](https://github.com/go-gitea/gitea/issues/35443))
Instances on **[Gitea Cloud](https://cloud.gitea.com)** will be automatically upgraded to this version during the specified maintenance window.
### [`v1.24.5`](https://github.com/go-gitea/gitea/releases/tag/v1.24.5)
[Compare Source](https://github.com/go-gitea/gitea/compare/v1.24.4...v1.24.5)
- BUGFIXES
- Fix a bug where lfs gc never worked. ([#​35198](https://github.com/go-gitea/gitea/issues/35198)) ([#​35255](https://github.com/go-gitea/gitea/issues/35255))
- Reload issue when sending webhook to make num comments is right. ([#​35243](https://github.com/go-gitea/gitea/issues/35243)) ([#​35248](https://github.com/go-gitea/gitea/issues/35248))
- Fix bug when review pull request commits ([#​35192](https://github.com/go-gitea/gitea/issues/35192)) ([#​35246](https://github.com/go-gitea/gitea/issues/35246))
- MISC
- Vertically center "Show Resolved" ([#​35211](https://github.com/go-gitea/gitea/issues/35211)) ([#​35218](https://github.com/go-gitea/gitea/issues/35218))
Instances on **[Gitea Cloud](https://cloud.gitea.com)** will be automatically upgraded to this version during the specified maintenance window.
### [`v1.24.4`](https://github.com/go-gitea/gitea/releases/tag/v1.24.4)
[Compare Source](https://github.com/go-gitea/gitea/compare/v1.24.3...v1.24.4)
- BUGFIXES
- Fix various bugs (1.24) ([#​35186](https://github.com/go-gitea/gitea/issues/35186))
- Fix migrate input box bug ([#​35166](https://github.com/go-gitea/gitea/issues/35166)) ([#​35171](https://github.com/go-gitea/gitea/issues/35171))
- Only hide dropzone when no files have been uploaded ([#​35156](https://github.com/go-gitea/gitea/issues/35156)) ([#​35167](https://github.com/go-gitea/gitea/issues/35167))
- Fix review comment/dimiss comment x reference can be refereced back ([#​35094](https://github.com/go-gitea/gitea/issues/35094)) ([#​35099](https://github.com/go-gitea/gitea/issues/35099))
- Fix submodule nil check ([#​35096](https://github.com/go-gitea/gitea/issues/35096)) ([#​35098](https://github.com/go-gitea/gitea/issues/35098))
- MISC
- Don't use full-file highlight when there is a git diff textconv ([#​35114](https://github.com/go-gitea/gitea/issues/35114)) ([#​35119](https://github.com/go-gitea/gitea/issues/35119))
- Increase gap on latest commit ([#​35104](https://github.com/go-gitea/gitea/issues/35104)) ([#​35113](https://github.com/go-gitea/gitea/issues/35113))
Instances on **[Gitea Cloud](https://cloud.gitea.com)** will be automatically upgraded to this version during the specified maintenance window.
</details>
---
### Configuration
📅 **Schedule**: (in timezone America/New_York)
- Branch creation
- "after 3am and before 6am"
- Automerge
- At any time (no schedule defined)
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about these updates again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Mend Renovate CLI](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4xNjcuMCIsInVwZGF0ZWRJblZlciI6IjQ0LjE2Ny4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJhdXRvbWF0ZWQtdXBkYXRlIiwiYmxhc3QtcmFkaXVzIiwiZGVwZW5kZW5jaWVzIiwibmVlZHMtcmV2aWV3Il19-->
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
This PR contains the following updates:
1.24.3→1.27.3Release Notes
go-gitea/gitea (gitea/gitea)
v1.27.3Compare Source
Instances on Gitea Cloud will be automatically upgraded to this version during the specified maintenance window.
v1.27.2Compare Source
SECURITY
ENHANCEMENTS
BUGFIXES
${{ }}part on its own (#38754) (#38797)Instances on Gitea Cloud will be automatically upgraded to this version during the specified maintenance window.
v1.27.1Compare Source
API
ENHANCEMENTS
BUGFIXES
ApproveRuns(#38653) (#38654)matrixwhen evaluating workflowifexpression (#38474) (#38557)cancelled()work in jobifevaluation (#38495) (#38497)github.eventfor scheduled runs (#38446) (#38452)MISC
Instances on Gitea Cloud will be automatically upgraded to this version during the specified maintenance window.
v1.27.0Compare Source
BREAKING
SECURITY
FEATURES
jobs.<job_id>.continue-on-error(#38100)ENHANCEMENTS
olivere/elasticwith REST API client, add OpenSearch support (#37411)PERFORMANCE
c_uindex to includecreated_unixfor faster dashboard feeds (#38076)BUGFIXES
FetchTask(#38343) (#38347)form-fetch-actionto some forms, fix "fetch action" resp bug (#37305)relative-timeerror and improve global error handler (#37241)TESTING
FileInfoinTestInitKeys(#38330) (#38331)issue-commentclose test (#37880)TestResourceIndexand reduce its runtime (#37847)TestAPIRepoMigrateoffline via a local clone source (#37817)BUILD
zizmortolint-actions(#37720)nektos/actfork togitea/runner(#37557)fill/strokecolors, add vars for git graph color series (#37543)golangci-lint fmt(#37194)DOCS
MISC
delete-buttonwithlink-action(#38143)files-changed, addfree-disk-space(#37819)workflowpatternintomodules/actions(#37717)choretype in PR title lint (#37575)Permissionfield inRepositorystruct instead of anonymous embedding (#37441)/assets/site-manifest.jsonendpoint (#37405)Block a userform (#37359)errorMessagehelper (#37292)tw-justify-betweenlayouts toflex-left-right(#37291)SubmitEventpolyfill (#37276)deadcodetool (#37271)ExternalIDClaimoption for OAuth2 OIDC auth source (#37229)ActionRunAttemptto represent each execution of a run (#37119)Instances on Gitea Cloud will be automatically upgraded to this version during the specified maintenance window.
v1.26.4Compare Source
SECURITY
BUGFIXES
Instances on Gitea Cloud will be automatically upgraded to this version during the specified maintenance window.
v1.26.3Compare Source
BREAKING
SECURITY
API
BUGFIXES
workflow_callfrom workflow trigger detection (#37894) (#37899)UpdateLogfinalize idempotently (#37885) (#37892)BUILD
@playwright/testto 1.60.0 (#38144)tools/ci-tools.tsfor the PR labeler workflow (#37831)Instances on Gitea Cloud will be automatically upgraded to this version during the specified maintenance window.
v1.26.2Compare Source
SECURITY
BUGFIXES
prioritycolor (#37417) (#37421)MISC
Instances on Gitea Cloud will be automatically upgraded to this version during the specified maintenance window.
v1.26.1Compare Source
Instances on Gitea Cloud will be automatically upgraded to this version during the specified maintenance window.
v1.26.0Compare Source
concurrencysyntax (#32751)ListUnadoptedRepositories(#36884)concurrencysyntax (#32751)mentionValuesasynchronously (#36739)--batch-commandapproach (#35775)elklayout support to mermaid (#36486)actions.WORKFLOW_DIRSsetting (#36619)inputborder hover effect (#36870)localStorage(#36623)X_FRAME_OPTIONSsetting fromcorstosecuritysection (#30256)DEFAULT_DELETE_BRANCH_AFTER_MERGEsetting (#36917)neveroption toPUBLIC_URL_DETECTIONconfiguration (#36785)add-matcherandremove-matcherfrom actions job logs (#36520).commit-sign-badgechildren (#36570)TestActionsCollaborativeOwner(#36657)no-contentmessage not rendering after comment edit (#36733)strictNullChecks-related issues (#35795)CrossOriginProtection(#36183)cmd/to use constructor functions. (#36962)relative-timeto render absolute dates (#36238)util.URLJoinand replace all callers with direct path concatenation (#36867)flake-utils(#35675)google/go-licenseswith custom generation (#36575)gitea-vetto usego tool(#35878)strictNullChecks(#35843)vue/require-typed-refeslint rule (#35764)codeformatfolder to tools (#35758)@ts-expect-error(#36513)lint-go-goplswith additionalgovetlinters (#36028)setup-uvto v8.0.0 (#37101)go-gitto v5.17.2 and related dependencies (#37060)golang.org/x/imageto v0.38.0 (#37054)docker-dryrun(#36379)Instances on Gitea Cloud will be automatically upgraded to this version during the specified maintenance window.
v1.25.5Compare Source
SECURITY
ENHANCEMENTS
security-checkinformational only (#36681) (#36852)BUGFIXES
Instances on Gitea Cloud will be automatically upgraded to this version during the specified maintenance window.
v1.25.4Compare Source
SECURITY
ENHANCEMENTS
BUGFIXES
has_codein repository api (#36338) (#36359)Instances on Gitea Cloud will be automatically upgraded to this version during the specified maintenance window.
v1.25.3Compare Source
styleattribute (#36133) (#36134)pull_request.pathsbeing triggered incorrectly by rebase (#36045) (#36054)Instances on Gitea Cloud will be automatically upgraded to this version during the specified maintenance window.
v1.25.2Compare Source
.ui .sha.label(#35864) (#35873)Instances on Gitea Cloud will be automatically upgraded to this version during the specified maintenance window.
v1.25.1Compare Source
Instances on Gitea Cloud will be automatically upgraded to this version during the specified maintenance window.
v1.25.0Compare Source
gitea dump(#35467)has_codeto repository REST API (#35214)ownerandparentfields clarification to docs (#35023)login/login-name/usernamedisambiguation to affected endpoint parameters and response/request models (#34901)doer(#34545)issue-title-buttonswithlist-header(#35018)labels-listrendering (#34846)shallowRefinstead ofrefin.vuefiles where possible (#34813)--color-logo, matching the logo's primary color (#34639)gopls modernizeformatting (#34771)equalFoldand fix issues (#34952)gopls modernizeon codebase (#34751)goplsto v0.19.0, addmake fix(#34772)uint8-to-base64, remove type stub (#34844)@resvg/resvg-wasmforgenerate-images(#35415)@github/relative-time-elementto v4.4.8 (#34413)Instances on Gitea Cloud will be automatically upgraded to this version during the specified maintenance window.
v1.24.7Compare Source
Instances on Gitea Cloud will be automatically upgraded to this version during the specified maintenance window.
v1.24.6Compare Source
Instances on Gitea Cloud will be automatically upgraded to this version during the specified maintenance window.
v1.24.5Compare Source
Instances on Gitea Cloud will be automatically upgraded to this version during the specified maintenance window.
v1.24.4Compare Source
Instances on Gitea Cloud will be automatically upgraded to this version during the specified maintenance window.
Configuration
📅 Schedule: (in timezone America/New_York)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about these updates again.
This PR has been generated by Mend Renovate CLI.