forgejo/release-notes-published/12.0.0.md
0ko 88c3b6dead chore(release notes): squash repeating localization updates (#8547)
Followup to https://codeberg.org/forgejo/forgejo/pulls/8540

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/8547
Reviewed-by: Beowulf <beowulf@beocode.eu>
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
2025-07-18 14:11:14 +02:00

464 lines
115 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!--start release-notes-assistant-->
## Release notes
<!--URL:https://codeberg.org/forgejo/forgejo-->
- Breaking security features
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7924): <!--number 7924 --><!--line 0 --><!--description cmVtb3ZlIEFQSSBhdXRoZW50aWNhdGlvbiBtZXRob2RzIHRoYXQgdXNlcyB0aGUgVVJMIHF1ZXJ5-->remove API authentication methods that uses the URL query. They are disabled by default and this only has an impact if `[security].DISABLE_QUERY_AUTH_TOKEN=false` is explicitly set. [Read more in the v12.0 companion blog post](https://forgejo.org/2025-07-release-v12-0/#removing-deprecated-api-authentication-methods).<!--description-->
- Security features
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7829): <!--number 7829 --><!--line 0 --><!--description cmVsYXggZW1haWwgcmVxdWlyZW1lbnRz-->relax email requirements. [Read more in the v12.0 companion blog post](https://forgejo.org/2025-07-release-v12-0/#relaxing-the-requirements-on-email-addresses).<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7693): <!--number 7693 --><!--line 0 --><!--description Y29uc2lkZXIgV2ViQXV0aG4gJiBTU0ggZm9yIGluc3RhbmNlIHNpZ25pbmc=-->consider WebAuthn & SSH for instance signing.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/6897): <!--number 6897 --><!--line 0 --><!--description ZmVhdChzZWMpOiBBZGQgU1NIIHNpZ25pbmcgc3VwcG9ydCBmb3IgaW5zdGFuY2Vz-->add SSH signing support for instances. [Read more in the v12.0 companion blog post](https://forgejo.org/2025-07-release-v12-0/#instance-signing-with-ssh).<!--description-->
- Breaking features
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8035): <!--number 8035 --><!--line 0 --><!--description VGhlIGBmb3JnZWpvIGRvY3NgIGNvbW1hbmQgaXMgZGVwcmVjYXRlZCBhbmQgQ0xJIGVycm9ycyBhcmUgbm93IGRpc3BsYXllZCBvbiBzdGRlcnIgaW5zdGVhZCBvZiBzdGRvdXQuIFRoZXNlIGJyZWFraW5nIGNoYW5nZXMgaGFwcGVuZWQgYmVjYXVzZSB0aGUgcGFja2FnZSB1c2VkIHRvIHBhcnNlIHRoZSBjb21tYW5kIGxpbmUgYXJndW1lbnRzIHdhcyBbdXBncmFkZWQgZnJvbSB2MiB0byB2M10oaHR0cHM6Ly9jbGkudXJmYXZlLm9yZy9taWdyYXRlLXYyLXRvLXYzLykuIEEgW3NlcGFyYXRlIHByb2plY3Qgd2FzIGluaXRpYXRlZF0oaHR0cHM6Ly9naXRodWIuY29tL3VyZmF2ZS9jbGktZG9jcykgdG8gcmUtaW1wbGVtZW50IHRoZSBgZG9jc2AgY29tbWFuZCwgYnV0IGl0IGlzIG5vdCB5ZXQgcHJvZHVjdGlvbiByZWFkeS4=-->The `forgejo docs` command is deprecated and CLI errors are now displayed on stderr instead of stdout. These breaking changes happened because the package used to parse the command line arguments was [upgraded from v2 to v3](https://cli.urfave.org/migrate-v2-to-v3/). A [separate project was initiated](https://github.com/urfave/cli-docs) to re-implement the `docs` command, but it is not yet production ready.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7745): <!--number 7745 --><!--line 0 --><!--description cmVtb3ZlIHRoZSBsZWdhY3kgYFRFU1RfQ09ORkxJQ1RJTkdfUEFUQ0hFU19XSVRIX0dJVF9BUFBMWWAgc2V0dGluZw==-->remove the legacy `TEST_CONFLICTING_PATCHES_WITH_GIT_APPLY` setting<!--description-->
- Breaking bug fixes
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8139): <!--number 8139 --><!--line 0 --><!--description QVBJOiBlbmZvcmNlIHNoYSByZXF1aXJlbWVudCBvbiBgUE9TVCAvcmVwb3Mve293bmVyfS97cmVwb30vY29udGVudHNg-->fail if `sha` is not provided to the `POST /repos/{owner}/{repo}/contents` API endpoint. Although it was documented to be required, it was not enforced and clients that do not set the `sha` will no longer succeed.<!--description-->
- User Interface features
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8185): <!--number 8185 --><!--line 0 --><!--description ZmVhdCh1aSk6IGZlZGl2ZXJzZSBoYW5kbGUgbWFya3VwIHZpYSByZWRpcmVjdCBzZXJ2ZXI=-->transform fediverse handles (ex. @forgejo@floss.social and !forgejo@programming.dev) into links to https://fedirect.toolforge.org. [Read more in the v12.0 companion blog post](https://forgejo.org/2025-07-release-v12-0/#redirecting-fediverse-handles).<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8121): <!--number 8121 --><!--line 0 --><!--description YWRkIHVzZXIgdmlzaWJpbGl0eSBkZXNjcmlwdGlvbiBpbiBzZXR0aW5ncyBwYWdl-->add user visibility description in the settings page.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8111): <!--number 8111 --><!--line 0 --><!--description YWRkIG1vZGVsIHZpZXdlciBmb3IgYC5nbGJgIChHTFRGKSBtb2RlbCBpbiBmaWxlIHZpZXc=-->add model viewer for `.glb` (GLTF) model in file view. [Read more in the v12.0 companion blog post](https://forgejo.org/2025-07-release-v12-0/#gltf-viewer).<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7998): <!--number 7998 --><!--line 0 --><!--description ZmVhdCh1aSk6IHNob3cgc2l6ZSBjb25zdHJhaW50cyBvZiBjdXN0b20gYXZhdGFy-->show size constraints of custom avatar.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7992): <!--number 7992 --><!--line 0 --><!--description ZmVhdCh1aSk6IGFkZCBsaW5rcyB0byBtaWxlc3RvbmVzIGFuZCBwcm9qZWN0cyBpbiBpc3N1ZSBjb21tZW50cw==-->add links to milestones and projects in issue comments.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7958): <!--number 7958 --><!--line 0 --><!--description ZmVhdCh1aSk6IGdsb2JhbCBzdHlsaW5nIGZvciBrYmQgdGFn-->global styling for the kbd tag.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7947): <!--number 7947 --><!--line 0 --><!--description ZmVhdCh1aSk6IGhpbnRzIGluIGVtcHR5IHVzZXJjYXJkcyBsaXN0cw==-->hints in empty usercards lists.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7906): <!--number 7906 --><!--line 0 --><!--description ZmVhdCh1aSk6IHJlZGVzaWduIHVzZXIgcHJvZmlsZSBhY3Rpb25zIGxheW91dA==-->the user profile has been redesigned. The most notable change is that actions have been moved to a dropdown and several new actions were added.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7531): <!--number 7531 --><!--line 0 --><!--description ZmVhdCh1aSk6IGltcHJvdmUgZGVzYyBpbiBQYWNrYWdlcyBzZXR0aW5ncw==-->improve the description in the packages settings.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7516): <!--number 7516 --><!--line 0 --><!--description aW5saW5lIHB1YmxpYyBzc2gga2V5IGluIHZlcmlmaWNhdGlvbiBjb21tYW5k-->inline public ssh key in verification command.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7481): <!--number 7481 --><!--line 0 --><!--description ZmVhdCh1aSk6IHVzZSBzd2l0Y2ggZWxlbWVudCBmb3IgbWFya2Rvd24gZWRpdG9yIG1vZGVz-->use switch element for markdown editor modes.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7388): <!--number 7388 --><!--line 0 --><!--description ZmVhdCh1aSk6IG1ha2UgSlMgYXNzZXQgbG9hZCBlcnJvciBtZXNzYWdlIHRyYW5zbGF0YWJsZQ==-->make JS asset load error message translatable.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7385): <!--number 7385 --><!--line 0 --><!--description VXNlIGBnaXQgc3dpdGNoIC1jYCBpbnN0ZWFkIG9mIGBnaXQgY2hlY2tvdXQgLWJg-->improve performances by using `git switch -c` instead of `git checkout -b`.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7377): <!--number 7377 --><!--line 0 --><!--description ZmVhdCh1aS9taWdyYXRpb25zKTogY2xhcmlmeSBkZXNpcmVkIGF1dG9jb21wbGV0aW9uIHR5cGUgZm9yIGNsb25lX2FkZHI=-->clarify the desired autocompletion type for the clone address in migrations.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7373): <!--number 7373 --><!--line 0 --><!--description TWlncmF0aW9ucyBVSTogSW1wcm92ZSBDbGFyaXR5IGZvciBNaWdyYXRpb24gRGVzY3JpcHRpb24gVGV4dGFyZWE=-->improve the clarity of the migration description textarea.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7361): <!--number 7361 --><!--line 0 --><!--description ZmVhdCh1aSk6IEF1dG9tYXRpY2FsbHkgcmVmcmVzaCB3b3JrZmxvd3MgaW4gdGhlICJBY3Rpb25zIiBsaXN0-->automatically refresh workflows in the "Actions" list. [Read more in the v12.0 companion blog post](https://forgejo.org/2025-07-release-v12-0/#automatically-refreshing-workflows).<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7274): <!--number 7274 --><!--line 0 --><!--description dWk6IGltcHJvdmUgZXJyb3IgcGFnZXM=-->improve error pages.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7155): <!--number 7155 --><!--line 0 --><!--description ZmVhdCh1aSk6IGltcHJvdmUgdGhlIHVzZXIgZXhwZXJpZW5jZSB0byByZXZpZXcgaW5kaXZpZHVhbCBjb21taXRzIGluIGEgcHVsbCByZXF1ZXN0-->improve the user experience to review individual commits in a pull request. [Read more in the v12.0 companion blog post](https://forgejo.org/2025-07-release-v12-0/#improved-ux-for-per-commit-reviews).<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7128): <!--number 7128 --><!--line 0 --><!--description VXNlIGF2YWlsYWJsZSBzY3JlZW4gd2lkdGggZm9yIEFjdGlvbnMgbG9ncw==-->use the available screen width when displaying Forgejo Actions logs.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/6933): <!--number 6933 --><!--line 0 --><!--description U2hvdyBpZiBjb21taXQgaXMgdmVyaWZpZWQgaW4gYWN0aXZpdHkgZmVlZCBvZiBhbiB1c2VyIG9yIGFuIG9yZ2FuaXphdGlvbiBmb3IgbmV3IGFjdGl2aXR5-->show if a commit is verified in the activity feed of a user or an organization.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/6813): <!--number 6813 --><!--line 0 --><!--description UmVpbXBsZW1lbnRlZCBlZGl0b3IgVGFiIGtleSBoYW5kbGluZyB3aXRoIGFjY2Vzc2liaWxpdHkgc2FmZWd1YXJkcy4gQmFsYW5jZSBoYXZpbmcgdGhlIGVkaXRvciB3b3JrIGFzIGV4cGVjdGVkIGJ5IGRldmVsb3BlcnMgKHdpdGggVGFiIGtleSBhZmZlY3RpbmcgaW5kZW50YXRpb24pIHdoaWxlIGFsc28gbm90IGltcGVkaW5nIGtleWJvYXJkIG5hdmlnYXRpb24u-->reimplemented editor Tab key handling with accessibility safeguards. Balance having the editor work as expected by developers (with Tab key affecting indentation) while also not impeding keyboard navigation. [Read more in the v12.0 companion blog post](https://forgejo.org/2025-07-release-v12-0/#tabs-indentations-in-the-comment-editor)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/6795): <!--number 6795 --><!--line 0 --><!--description ZmVhdCh1aSk6IHJlZGVzaWduIG1pZ3JhdGlvbiBzZWxlY3Rpb24gc2NyZWVu-->redesign the migration selection page.<!--description-->
- User Interface bug fixes
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8417) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8514)): <!--number 8514 --><!--line 0 --><!--description Zml4KHVpKTogbXVsdGlwbGUgQ29tYm9NYXJrZG93bkVkaXRvcnMgb24gb25lIHBhZ2UgaW50ZXJmZXJl-->multiple ComboMarkdownEditors on one page interfere with each other.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7749) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8362)): <!--number 8362 --><!--line 0 --><!--description Zml4KHVpKTogQWRkIHBhc3RlZCBpbWFnZXMgdG8gZHJvcHpvbmU=-->pasting images into the comment editor will now show that image in the dropzone.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8296) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8317)): <!--number 8317 --><!--line 0 --><!--description Zml4OiBhZGQgbWlzc2luZyB0cnVzdCBzdGF0dXMgdG8gcHVsbCByZXZpZXcgY29tbWl0cw==-->add missing trust status to pull review commits.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8246) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8282)): <!--number 8282 --><!--line 0 --><!--description Zml4KHVpKTogYWRkIG1pc3NpbmcgbGF6eSBsb2FkIGF0dHJpYnV0ZSB0byBpbWFnZXM=-->add missing lazy load attribute to images.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8067): <!--number 8067 --><!--line 0 --><!--description cG9ydChnaXRlYSk6IFJldGFpbiBpc3N1ZS9wdWxsIHNvcnQgdHlwZQ==-->retain sort type when viewing issue or pull requests.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7893): <!--number 7893 --><!--line 0 --><!--description Zml4KHVpKTogaW5jbHVkZSBlbm91Z2ggYWN0aXZpdHkgZm9yIHRoZSBlbnRpcmUgaGVhdG1hcA==-->include enough activity for the entire heatmap.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7726): <!--number 7726 --><!--line 0 --><!--description U2hvdyB3YXJuaW5nIGluIGxvY2tlZCBpc3N1ZSBkaXNjdXNzaW9u-->show warning in locked issue discussion.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7492): <!--number 7492 --><!--line 0 --><!--description Zml4KHVpKTogZW5zdXJlIGNvbnNpc3RlbnQgc3dpdGNoIHBvc2l0aW9uIGluIG1hcmtkb3duIGVkaXRvcg==-->ensure consistent switch position in the markdown editor.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7420): <!--number 7420 --><!--line 0 --><!--description Zml4KHVpKTogZGlzcGxheSB1c2VyLWZyaWVuZGx5IG1lc3NhZ2UgZm9yIHJhbmdlIGVycm9y-->display user-friendly message for range error.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7402): <!--number 7402 --><!--line 0 --><!--description Zml4KHVpKTogbWFrZSBsaW1pdHMgY2xlYXJlciBpbiBjcmVhdGUgcmVwbyBmb3Jt-->make limits clearer in the create repository form.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7307): <!--number 7307 --><!--line 0 --><!--description RG9uJ3QgcHV0IHRyYWlsaW5nIHNsYXNoIGluIGF1dG9nZW5lcmF0ZWQgbmFtZSBkdXJpbmcgaW1wb3J0-->don't put trailing slash in autogenerated name in the migration form.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7245): <!--number 7245 --><!--line 0 --><!--description YWxsb3cgdXNlciB3aXRoIGFjdGlvbnMgd3JpdGUgcGVybWlzc2lvbiB0byBydW4gYSB3b3JrZmxvdyBmcm9tIHRoZSB3ZWIgVUk=-->allow user with actions write permission to run a workflow from the web UI.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/6799): <!--number 6799 --><!--line 0 --><!--description Zml4KHVpKTogZW5zdXJlIHNhbWUgd2lkdGggb2YgdXNlcmNhcmRzIGluIGdyaWQ=-->ensure usercards in grid have the same width.<!--description-->
- Localization
- Updates from Codeberg Translate: [#7275](https://codeberg.org/forgejo/forgejo/pulls/7275), [#7363](https://codeberg.org/forgejo/forgejo/pulls/7363), [#7438](https://codeberg.org/forgejo/forgejo/pulls/7438), [#7507](https://codeberg.org/forgejo/forgejo/pulls/7507), [#7572](https://codeberg.org/forgejo/forgejo/pulls/7572), [#7637](https://codeberg.org/forgejo/forgejo/pulls/7637), [#7742](https://codeberg.org/forgejo/forgejo/pulls/7742), [#7819](https://codeberg.org/forgejo/forgejo/pulls/7819), [#7895](https://codeberg.org/forgejo/forgejo/pulls/7895), [#7969](https://codeberg.org/forgejo/forgejo/pulls/7969), [#8077](https://codeberg.org/forgejo/forgejo/pulls/8077), [#8178](https://codeberg.org/forgejo/forgejo/pulls/8178), [#8294](https://codeberg.org/forgejo/forgejo/pulls/8294) (backport of [#8238](https://codeberg.org/forgejo/forgejo/pulls/8238)), [#8534](https://codeberg.org/forgejo/forgejo/pulls/8534) (backport of [#8295](https://codeberg.org/forgejo/forgejo/issues/8295), [#8410](https://codeberg.org/forgejo/forgejo/issues/8410), [#8490](https://codeberg.org/forgejo/forgejo/issues/8490))
- Features
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8179): <!--number 8179 --><!--line 0 --><!--description QVBJOiBuZXcgYEdFVCAvcmVwb3Mve293bmVyfS97cmVwb30vZ2l0L2Jsb2JzYCBlbmRwb2ludCB0byByZXRyaWV2ZSBtdWx0aXBsZSBibG9icyBhdCBvbmNl-->new `GET /repos/{owner}/{repo}/git/blobs` API endpoint to retrieve multiple blobs at once.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8177): <!--number 8177 --><!--line 0 --><!--description YWx3YXlzIHB1Ymxpc2ggdGhlIGxpbmsgdG8gdGhlIGNvbW1pdCBzdGF0dXM=-->always publish the link to the commit status.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8143): <!--number 8143 --><!--line 0 --><!--description aW1wcm92ZSBnZW5lcmF0aW9uIG9mIGJ1bmRsZWQgYXNzZXRz-->improve the performances of the generation of bundled assets.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8115): <!--number 8115 --><!--line 0 --><!--description ZW5hYmxlIGBtbGtlbTc2OHgyNTUxOS1zaGEyNTZgIGJ5IGRlZmF1bHQgZm9yIGJ1aWx0aW4gc3No-->enable `mlkem768x25519-sha256` by default for builtin ssh.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8070): <!--number 8070 --><!--line 0 --><!--description c3VwcG9ydCBhcnRpZmFjdCB1cGxvYWRzIGZvciBPQ0kgY29udGFpbmVyIHBhY2thZ2Vz-->support artifact uploads for OCI container packages.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8047): <!--number 8047 --><!--line 0 --><!--description YWRkIGBhZG1pbiB1c2VyIHJlc2V0LW1mYWAgQ0xJIGNvbW1hbmQ=-->add `admin user reset-mfa` CLI command.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7988): <!--number 7988 --><!--line 0 --><!--description dXBkYXRlIGFtYmlnaW91cyBjaGFyYWN0ZXJz-->update the list of ambigious characters.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7986): <!--number 7986 --><!--line 0 --><!--description bWFrZSBGb3JnZWpvIEFjdGlvbnMgc2VydmVyIGxvZ3MgbGVzcyBub2lzeQ==-->make Forgejo Actions server logs less noisy.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7968): <!--number 7968 --><!--line 0 --><!--description QWxsb3cgc2VhcmNoaW5nIGlzc3VlcyBieSBudW1iZXIsIHByaW9yaXRpemUgdGl0bGUgbWF0Y2hlcyB3aGVuIHNvcnRlZCBieSByZWxldmFuY2U=-->allow searching issues by number, prioritize title matches when sorted by relevance.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7953): <!--number 7953 --><!--line 0 --><!--description cmVwbGFjZSBnby1ycG11dGlscyBsaWJyYXJ5IHdpdGggb3VyIG93bg==-->replace go-rpmutils library with our own. [Read more in the v12.0 companion blog post](https://forgejo.org/2025-07-release-v12-0/#forgejo-build-time-optimization).<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7902): <!--number 7902 --><!--line 0 --><!--description Y29uZmlndXJhYmxlIGRlZmF1bHQgdW5pdHMgZm9yIG1pcnJvcnM=-->configurable default units for mirrors.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7896): <!--number 7896 --><!--line 0 --><!--description ZW5oOiBhbGxvdyBwZXIgcmVwbyBpc3N1ZSByZWluZGV4aW5nIGZvciBhZG1pbnM=-->a repository administrator has control over reindexing the issues.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7803): <!--number 7803 --><!--line 0 --><!--description YXV0byBjbGVhbnVwIG9mIG9mZmxpbmUgcnVubmVycw==-->auto cleanup of offline runners.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7727): <!--number 7727 --><!--line 0 --><!--description aW1wcm92ZWQgcGVyZm9ybWFuY2VzIHdoZW4gY2hlY2tpbmcgZm9yIGNvbmZsaWN0cyBvbiBwdWxsIHJlcXVlc3Rz-->improved performances when checking for conflicts on pull requests. [Read more in the v12.0 companion blog post](https://forgejo.org/2025-07-release-v12-0/#faster-conflict-checking).<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7716): <!--number 7716 --><!--line 0 --><!--description YWxsb3cgYWNjZXNzIHRvIGAvYXBpL3YxL3BhY2thZ2VzL3t1c2VybmFtZX1gIHdpdGhvdXQgdG9rZW4=-->allow access to publicly available `/api/v1/packages/{username}` without a token.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7699): <!--number 7699 --><!--line 0 --><!--description aW1wbGVtZW50IGBHRVQgL3JlcG9zL3tvd25lcn0ve3JlcG99L2FjdGlvbnMvcnVuc2AgYW5kIGBHRVQgL3JlcG9zL3tvd25lcn0ve3JlcG99L2FjdGlvbnMvcnVucy97cnVuX2lkfWA=-->implement the `GET /repos/{owner}/{repo}/actions/runs` and `GET /repos/{owner}/{repo}/actions/runs/{run_id}` API endpoints.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7527): <!--number 7527 --><!--line 0 --><!--description dXNlIGdpdC1yZXBsYXkgZm9yIHJlYmFzaW5n-->use git-replay for rebasing for better performances.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7509): <!--number 7509 --><!--line 0 --><!--description c2VuZCBtYWlsIG9uIGZhaWxlZCBvciByZWNvdmVyZWQgRm9yZ2VqbyBBY3Rpb25zIHJ1bg==-->send mail on failed or recovered Forgejo Actions run. [Read more in the v12.0 companion blog post](https://forgejo.org/2025-07-release-v12-0/#forgejo-actions-email-notifications-on-failure).<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7508): <!--number 7508 --><!--line 0 --><!--description QWN0aW9ucyBGYWlsdXJlLCBTdWNjZXNzLCBSZWNvdmVyIFdlYmhvb2tz-->Forgejo Actions failure, success, recover webhooks.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7418): <!--number 7418 --><!--line 0 --><!--description YWRkIGBsYXN0X2NvbW1pdF93aGVuYCB0byBjb250ZW50cyByZXNwb25zZQ==-->add `last_commit_when` to API contents responses.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7387): <!--number 7387 --><!--line 0 --><!--description aW5jbHVkZSBhIGRlZmF1bHQgcm9ib3RzLnR4dCB0byByZWR1Y2UgdGhlIGltcGFjdCBvZiBjcmF3bGVycw==-->include a default robots.txt to reduce the impact of crawlers. [Read more in the v12.0 companion blog post](https://forgejo.org/2025-07-release-v12-0/#default-robotstxt).<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7212): <!--number 7212 --><!--line 0 --><!--description dXNlIFhPUk0gRW5naW5lR3JvdXAgaW5zdGVhZCBvZiBzaW5nbGUgRW5naW5lIGNvbm5lY3Rpb24=-->use XORM EngineGroup instead of single Engine connection. [Read more in the v12.0 companion blog post](https://forgejo.org/2025-07-release-v12-0/#xorm-enginegroup-connections-for-optimized-database-query-routing-and-load-balancing).<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/2364): <!--number 2364 --><!--line 0 --><!--description c3luYyBmb3Jrcw==-->sync forks. [Read more in the v12.0 companion blog post](https://forgejo.org/2025-07-release-v12-0/#keeping-forks-in-sync).<!--description-->
- Bug fixes
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8511) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8516)): <!--number 8516 --><!--line 0 --><!--description Zml4OiBQUiBub3QgYmxvY2tlZCBieSByZXZpZXcgcmVxdWVzdCBmb3IgYSB3aGl0ZWxpc3RlZCB0ZWFt-->pull requests were not blocked by review request for a whitelisted team.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8475) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8480)): <!--number 8480 --><!--line 0 --><!--description c2V2ZXJhbCBmaXhlcyBvZiBBTFQgUGFja2FnZSByZWdpc3RyeQ==-->several fixes of the ALT RPM package registry.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8391) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8459)): <!--number 8459 --><!--line 0 --><!--description QXV0aCBIZWFkZXI6IEFsbG93IGxvd2VyY2FzZSBhcyB3ZWxsIGFzIHVwcGVyY2FzZSB0b2tlbg==-->allow lowercase as well as uppercase token keyword in the auth header.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8450) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8454)): <!--number 8454 --><!--line 0 --><!--description Zml4OiBjb3JyZWN0bHkgbWFyayByZXZpZXdzIGFzIHN0YWxlIGZvciBBR2l0IFBScw==-->correctly mark reviews as stale for AGit pull requests.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8367) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8386)): <!--number 8386 --><!--line 0 --><!--description Zml4OiB1c2VyIGFjdGl2YXRpb24gd2l0aCB1cHBlcmNhc2UgZW1haWwgYWRkcmVzcw==-->user activation failed when an email address contained uppercase letters.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8330) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8349)): <!--number 8349 --><!--line 0 --><!--description Zml4OiBsb2FkIE9sZE1pbGVzdG9uZSBiYXNlZCBvbiBPbGRNaWxlc3RvbmVJRCwgbm90IE1pbGVzdG9uZUlE-->fix: load OldMilestone based on OldMilestoneID, not MilestoneID<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8037): <!--number 8037 --><!--line 0 --><!--description b21pdCBDb250ZW50LUxlbmd0aCBvbiAzMDcgcmVkaXJlY3RzIHdoZW4gc2VydmluZyBkaXJlY3QgbWFuaWZlc3QgZm9yIGNvbnRhaW5lcnM=-->omit Content-Length on 307 redirects when serving direct manifest for containers.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8034): <!--number 8034 --><!--line 0 --><!--description Y2FtZWwgYW5kIHBhc2NhbCBjYXNlIHRyYW5zZm9ybWVy-->fix a bug causing the PASCAL-modifier to return camel-case.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8028): <!--number 8028 --><!--line 0 --><!--description QWRkcyBjb2RlIHRvIHJlbW92ZSB0aGUgdHJhaWxpbmcgc2xhc2ggZnJvbSB0aGUgaXNzdWVyIGluIG9hdXRoIGNsYWltcw==-->remove the trailing slash from the issuer in OAuth claims.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8025): <!--number 8025 --><!--line 0 --><!--description cmV0dXJuIHRoZSBjb3JyZWN0IGFnaXQgdHlwZSBpbiBzc2hfaW5mbw==-->return the correct AGit type in ssh_info.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7932): <!--number 7932 --><!--line 0 --><!--description W2dpdGVhXSBGaXggdXJsIHZhbGlkYXRpb24gaW4gd2ViaG9vayBhZGQvZWRpdCBBUEk=-->fix url validation in the webhook add/edit API.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7930): <!--number 7930 --><!--line 0 --><!--description QWRkIGVycm9yIHJlcG9ydGluZyB0byBQUnMgd2l0aCBpbnZhbGlkIHdvcmtmbG93cw==-->add error reporting to pull requests with invalid Forgejo Actions workflow files.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7644): <!--number 7644 --><!--line 0 --><!--description YWxsb3cgaW5zdGFuY2UgQVBJIFVSTHMgaW4gcmVsZWFzZSBhc3NldHM=-->allow instance API URLs in release assets.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7604): <!--number 7604 --><!--line 0 --><!--description aW1wcm92ZSBkYXNoYm9hcmQgbG9hZGluZyBwZXJmb3JtYW5jZXM=-->improve the dashboard loading performances.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7454): <!--number 7454 --><!--line 0 --><!--description Q2FuY2VsIGEgcmV2aWV3-->fix a border case where it was not possible to cancel a pull request review.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7409): <!--number 7409 --><!--line 0 --><!--description Zml4IGFjbWUgcmVuZXdhbA==-->fix acme renewal.<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/6352): <!--number 6352 --><!--line 0 --><!--description bWlncmF0ZSBNYXZlbiBwYWNrYWdlcyB0byAiZ3JvdXBJZDphcnRpZmFjdElkIiBuYW1lIGNvbmNhdGVuYXRpb24sIHJlZ2VuZXJhdGUgbWV0YWRhdGEgYW5kIGZpeCBtaXNzaW5nIGdyb3VwSWQ=-->migrate Maven packages to "groupId:artifactId" name concatenation, regenerate metadata and fix missing groupId.<!--description-->
- Included for completeness but not worth a release note
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8534): <!--number 8534 --><!--line 0 --><!--description aTE4bjogdXBkYXRlIG9mIHRyYW5zbGF0aW9ucyBmcm9tIENvZGViZXJnIFRyYW5zbGF0ZQ==-->i18n: update of translations from Codeberg Translate<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8530) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8532)): <!--number 8532 --><!--line 0 --><!--description Zml4KHBhY2thZ2VzKTogc2tpcCBhbm90aGVyIHN0YWNrIGZyYW1lIGZyb20gbG9nZ2luZw==-->fix(packages): skip another stack frame from logging<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8527) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8528)): <!--number 8528 --><!--line 0 --><!--description Zml4OiBpZ25vcmUgIkNsb3NlIiBlcnJvciB3aGVuIHVwbG9hZGluZyBjb250YWluZXIgYmxvYg==-->fix: ignore "Close" error when uploading container blob<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8524) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8526)): <!--number 8526 --><!--line 0 --><!--description Y2hvcmU6IGZhaWxlZCBhdXRoZW50aWNhdGlvbiBhdHRlbXB0cyBhcmUgbm90IGVycm9ycyBhbmQgYXJlIGRpc3BsYXllZCBhdCB0aGUgbG9nIGluZm8gbGV2ZWw=-->chore: failed authentication attempts are not errors and are displayed at the log info level<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8519) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8523)): <!--number 8523 --><!--line 0 --><!--description Zml4OiBleHBhbmRpbmcgZXhhY3RseSAyMCBsaW5lcyBiZXR3ZWVuIGRpZmYgc2VjdGlvbnMgbGVhdmVzIHZpc3VhbCBhcnRpZmFjdA==-->fix: expanding exactly 20 lines between diff sections leaves visual artifact<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8301) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8518)): <!--number 8518 --><!--line 0 --><!--description Y2hvcmU6IHVzZSBldmVudHVhbGx5IGZvciBteXNxbCBjb2xsYXRpb24gdGVzdA==-->chore: use eventually for mysql collation test<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8492) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8498)): <!--number 8498 --><!--line 0 --><!--description Zml4KGNvZGUtc2VhcmNoKTogSGlnaGxpZ2h0U2VhcmNoUmVzdWx0Q29kZSBzaG91bGQgY291bnQgdGhlIG51bWJlciBvZiBieXRlcyBhbmQgbm90IHRoZSBudW1iZXIgb2YgcnVuZXM=-->fix(code-search): HighlightSearchResultCode should count the number of bytes and not the number of runes<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8464) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8474)): <!--number 8474 --><!--line 0 --><!--description Zml4OiB1c2UgcGFyZW50IGNvbnRleHQgZm9yIG5ldyB0cmFuc2FjdGlvbnM=-->fix: use parent context for new transactions<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8460) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8466)): <!--number 8466 --><!--line 0 --><!--description Y2hvcmU6IGRpc2FibGUgbWlzbWF0Y2hlZCByb290IFVSTCBlMmUgdGVzdCBmb3Igc2FmYXJp-->chore: disable mismatched root URL e2e test for safari<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8461) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8463)): <!--number 8463 --><!--line 0 --><!--description Y2hvcmU6IGRvIG5vdCBuYXZpZ2F0ZSB0byBzYW1lIFVSTCBpbiBFMkUgdGVzdA==-->chore: do not navigate to same URL in E2E test<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8448) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8455)): <!--number 8455 --><!--line 0 --><!--description Zml4KGVtYWlsKTogYWN0aW9ucyBub3RpZmljYXRpb24gdGVtcGxhdGUgY29uZnVzZXMgYnJhbmNoIHdpdGggUFI=-->fix(email): actions notification template confuses branch with PR<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8258) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8439)): <!--number 8439 --><!--line 0 --><!--description Zml4OiBjb3JydXB0ZWQgd2lraSB1bml0IGRlZmF1bHQgcGVybWlzc2lvbiAoIzgyMzQgZm9sbG93LXVwKQ==-->fix: corrupted wiki unit default permission (#8234 follow-up)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8366) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8404)): <!--number 8404 --><!--line 0 --><!--description Zml4OiBjYW5jZWxsZWQgb3Igc2tpcHBlZCBydW5zIGFyZSBub3QgZmFpbHVyZXMgZm9yIG5vdGlmaWNhdGlvbnM=-->fix: cancelled or skipped runs are not failures for notifications<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8400) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8402)): <!--number 8402 --><!--line 0 --><!--description Y2hvcmU6IGltcHJvdmUgcmVsaWFiaWxpdHkgb2Ygd2ViYXV0aG4gZTJlIHRlc3Q=-->chore: improve reliability of webauthn e2e test<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8261) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8398)): <!--number 8398 --><!--line 0 --><!--description Zml4OiBza2lwIGVtcHR5IHRva2VucyBpbiBTZWFyY2hPcHRpb25zLlRva2Vucygp-->fix: skip empty tokens in SearchOptions.Tokens()<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8374) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8390)): <!--number 8390 --><!--line 0 --><!--description Zml4OiBkaXNhYmxlIEZvcmdlam8gQWN0aW9ucyBlbWFpbCBub3RpZmljYXRpb25zIG9uIHJlY292ZXJ5-->fix: disable Forgejo Actions email notifications on recovery<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8326) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8331)): <!--number 8331 --><!--line 0 --><!--description Zml4OiBtYWtlIEFQSSAvcmVwb3Mve293bmVyfS97cmVwb30vY29tcGFyZS97YmFzZWhlYWR9IHdvcmsgd2l0aCBmb3Jrcw==-->fix: make API /repos/{owner}/{repo}/compare/{basehead} work with forks<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8320) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8321)): <!--number 8321 --><!--line 0 --><!--description Y2hvcmU6IHNvcnQgYmxvY2tlZCB1c2VycyBsaXN0IGZvciBkZXRlcm1pc3RpYyByZXN1bHRz-->chore: sort blocked users list for determistic results<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8267) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8319)): <!--number 8319 --><!--line 0 --><!--description Zml4OiBhYnVzZSByZXBvcnRzIHN0cmluZyBkYXRhIHR5cGVz-->fix: abuse reports string data types<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8304) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8318)): <!--number 8318 --><!--line 0 --><!--description Zml4OiBwYXNzIGRvZXIncyBJRCBmb3IgQ1JVRCBpbnN0YW5jZSBzaWduaW5n-->fix: pass doer's ID for CRUD instance signing<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8002) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8290)): <!--number 8290 --><!--line 0 --><!--description Zml4KHVpKTogcmVsZWFzZTogbmFtZSBpcyBvdmVycmlkZGVuIHdpdGggdGFnIG5hbWUgb24gZWRpdA==-->fix(ui): release: name is overridden with tag name on edit<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8286) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8288)): <!--number 8288 --><!--line 0 --><!--description UmV2ZXJ0ICJmaXgoYXBpKTogZG9jdW1lbnQgYGlzX3N5c3RlbV93ZWJob29rYCBmaWVsZCAoIzc3ODQpIg==-->Revert "fix(api): document `is_system_webhook` field (#7784)"<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8271) ([backported](https://codeberg.org/forgejo/forgejo/pulls/8277)): <!--number 8277 --><!--line 0 --><!--description Q0kgZGVidWc6IHRlc3RTbGVlcDogc2hvdyBhY3R1YWwgdGltZXMgb24gZmFpbHVyZXM=-->CI debug: testSleep: show actual times on failures<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8268): <!--number 8268 --><!--line 0 --><!--description Y2hvcmU6IHVwZGF0ZSBzZWN1cml0eSBvcHRpb24gaW4gaXNzdWUgdGVtcGxhdGVz-->chore: update security option in issue templates<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8260): <!--number 8260 --><!--line 0 --><!--description VG9rZW4uUGFyc2VJc3N1ZVJlZmVyZW5jZSBjcmFzaGluZyBvbiBlbXB0eSBzdHJpbmc=-->Token.ParseIssueReference crashing on empty string<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8256): <!--number 8256 --><!--line 0 --><!--description VXBkYXRlIHJlbm92YXRlIHRvIHY0MS4xLjQgKGZvcmdlam8p-->Update renovate to v41.1.4 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8253): <!--number 8253 --><!--line 0 --><!--description VXBkYXRlIHJlbm92YXRlIHRvIHY0MSAoZm9yZ2VqbykgKG1ham9yKQ==-->Update renovate to v41 (forgejo) (major)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8252): <!--number 8252 --><!--line 0 --><!--description YWRkIGFuIGluZGV4IHRvIHRoZSBBY3Rpb25SdW4uc3RvcHBlZCBjb2x1bW4=-->add an index to the ActionRun.stopped column<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8250): <!--number 8250 --><!--line 0 --><!--description YnVnOiB1bmlmeSBSZXBvQWN0aW9uUnVuIGFuZCBBY3Rpb25SdW4gc3RydWN0cw==-->bug: unify RepoActionRun and ActionRun structs<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8248): <!--number 8248 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL2dvLWNoaS9jaGkvdjUgdG8gdjUuMi4yIChmb3JnZWpvKQ==-->Update module github.com/go-chi/chi/v5 to v5.2.2 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8245): <!--number 8245 --><!--line 0 --><!--description RG93bmdyYWRlIHBsYXl3cmlnaHQgdGVtcG9yYXJpbHkgYW5kIGFsbG93IHJ1bm5pbmcgYWxsIGUyZSB0ZXN0cw==-->Downgrade playwright temporarily and allow running all e2e tests<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8243): <!--number 8243 --><!--line 0 --><!--description Z2l0L2Jsb2IgdXNlIE5ld1RydW5jYXRlZFJlYWRlciBmb3IgcHJvZmlsZSBhbmQgY29kZW93bmVycw==-->git/blob use NewTruncatedReader for profile and codeowners<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8242): <!--number 8242 --><!--line 0 --><!--description YnVnOiBGb3JnZWpvIEFjdGlvbnMgZW1haWwgbm90aWZpY2F0aW9ucyBhcmUgb3B0LWlu-->bug: Forgejo Actions email notifications are opt-in<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8236): <!--number 8236 --><!--line 0 --><!--description cHJldmVudCA1MDAgbWVzc2FnZSBvbiBpbnZhbGlkIHVzZXJuYW1l-->prevent 500 message on invalid username<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8227): <!--number 8227 --><!--line 0 --><!--description b25seSBzZW5kIEZvcmdlam8gQWN0aW9ucyBub3RpZmljYXRpb25zIHRvIG9uZSB1c2Vy-->only send Forgejo Actions notifications to one user<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8226): <!--number 8226 --><!--line 0 --><!--description Y2hvcmU6IHNvcnQgbWFpbGVyIG1lc3NhZ2VzIGluIHRlc3QgYXNzZXJ0aW9u-->chore: sort mailer messages in test assertion<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8224): <!--number 8224 --><!--line 0 --><!--description Y2hvcmUocmVsZWFzZS1ub3Rlcyk6IEZvcmdlam8gdjExLjAuMg==-->chore(release-notes): Forgejo v11.0.2<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8223): <!--number 8223 --><!--line 0 --><!--description YmxvYjogR2V0QmxvYkNvbnRlbnQ6IHJlZHVjZSBhbGxvY2F0aW9ucw==-->blob: GetBlobContent: reduce allocations<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8220): <!--number 8220 --><!--line 0 --><!--description Zml4KHRlc3RzKTogVGVzdEluaXRJbnN0cnVjdGlvbnMgbXVzdCB1c2UgZm9yRWFjaE9iamVjdEZvcm1hdA==-->fix(tests): TestInitInstructions must use forEachObjectFormat<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8219): <!--number 8219 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBjb2RlLmZvcmdlam8ub3JnL2Zvcmdlam8vYWN0IHRvIHYxLjI4LjAgKGZvcmdlam8p-->Update module code.forgejo.org/forgejo/act to v1.28.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8218): <!--number 8218 --><!--line 0 --><!--description VXBkYXRlIGRhdGEuZm9yZ2Vqby5vcmcvb2NpL2FscGluZSBEb2NrZXIgdGFnIHRvIHYzLjIyIChmb3JnZWpvKQ==-->Update data.forgejo.org/oci/alpine Docker tag to v3.22 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8217): <!--number 8217 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL21pbmlvL21pbmlvLWdvL3Y3IHRvIHY3LjAuOTQgKGZvcmdlam8p-->Update module github.com/minio/minio-go/v7 to v7.0.94 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8216): <!--number 8216 --><!--line 0 --><!--description Y2hvcmU6IG1pZ3JhdGUgdG8gYEBzdHlsaXN0aWMvZXNsaW50LXBsdWdpbmA=-->chore: migrate to `@stylistic/eslint-plugin`<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8215): <!--number 8215 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgZXNsaW50LXBsdWdpbi13YyB0byB2MyAoZm9yZ2Vqbyk=-->Update dependency eslint-plugin-wc to v3 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8214): <!--number 8214 --><!--line 0 --><!--description Zml4KHVpKTogaXNzdWUgY29tbWVudCBhbmNob3Igb24gdGltZSBzdGFtcA==-->fix(ui): issue comment anchor on time stamp<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8209): <!--number 8209 --><!--line 0 --><!--description Z2l0X21vZGVsLkNvbW1pdFN0YXR1c2VzSGlkZUFjdGlvbnNVUkwgaXMgb2Jzb2xldGU=-->git_model.CommitStatusesHideActionsURL is obsolete<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8207): <!--number 8207 --><!--line 0 --><!--description UmVtb3ZlIDFtcyBkZWxheSBiZWZvcmUgaW5zZXJ0aW5nIGxpc3QgcHJlZml4LCBmaXggcmFjZSBjb25kaXRpb24gaW4gdGVzdHM=-->Remove 1ms delay before inserting list prefix, fix race condition in tests<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8205): <!--number 8205 --><!--line 0 --><!--description Y2hvcmU6IHJlbW92ZSBnb3BscyBpbiBNYWtlZmlsZQ==-->chore: remove gopls in Makefile<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8202): <!--number 8202 --><!--line 0 --><!--description ZG8gbm90IGNoZWNrIGZvciBgb2JqZWN0X2Zvcm1hdF9uYW1lYCBmaWVsZA==-->do not check for `object_format_name` field<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8199): <!--number 8199 --><!--line 0 --><!--description ZmVhdCh1aSk6IHVzZSBrYmQgaW4gbGFiZWwgc2VsZWN0b3IgaGludCwgcmVtb3ZlIGVudGVy-->feat(ui): use kbd in label selector hint, remove enter<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8198): <!--number 8198 --><!--line 0 --><!--description W2dpdGVhXSB3ZWVrIDIwMjUtMjIgY2hlcnJ5IHBpY2sgKGdpdGVhL21haW4gLT4gZm9yZ2Vqbyk=-->[gitea] week 2025-22 cherry pick (gitea/main -> forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8197): <!--number 8197 --><!--line 0 --><!--description Rml4IHNlbnRlbmNlIHN0cnVjdHVyZSBtZW50aW9uaW5nIGNvb2xkb3duIHBlcmlvZA==-->Fix sentence structure mentioning cooldown period<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8195): <!--number 8195 --><!--line 0 --><!--description TG9jayBmaWxlIG1haW50ZW5hbmNlIChmb3JnZWpvKQ==-->Lock file maintenance (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8194): <!--number 8194 --><!--line 0 --><!--description VXBkYXRlIHJlbm92YXRlIHRvIHY0MC41Ny4xIChmb3JnZWpvKQ==-->Update renovate to v40.57.1 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8190): <!--number 8190 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgY2hhcnQuanMgdG8gdjQuNS4wIChmb3JnZWpvKQ==-->Update dependency chart.js to v4.5.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8188): <!--number 8188 --><!--line 0 --><!--description bWFrZSB0ZXN0IHN1aXRlIHJ1biBvbiBvbGRlciBnaXQgdmVyc2lvbg==-->make test suite run on older git version<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8186): <!--number 8186 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL2dvLXNxbC1kcml2ZXIvbXlzcWwgdG8gdjEuOS4zIChmb3JnZWpvKQ==-->Update module github.com/go-sql-driver/mysql to v1.9.3 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8183): <!--number 8183 --><!--line 0 --><!--description VXBkYXRlIGVudmlyb25tZW50LXRvLWluaSBSRUFETUU=-->Update environment-to-ini README<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8181): <!--number 8181 --><!--line 0 --><!--description VXBkYXRlIGh0dHBzOi8vZGF0YS5mb3JnZWpvLm9yZy9mb3JnZWpvL2Zvcmdlam8tYnVpbGQtcHVibGlzaCBhY3Rpb24gdG8gdjUuMy41IChmb3JnZWpvKQ==-->Update https://data.forgejo.org/forgejo/forgejo-build-publish action to v5.3.5 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8176): <!--number 8176 --><!--line 0 --><!--description RG9ja2VyZmlsZSBzaG91bGQgcmUtdXNlIGJpbmRhdGEgZmlsZXMgd2hlbiBwb3NzaWJsZQ==-->Dockerfile should re-use bindata files when possible<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8174): <!--number 8174 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgbWluaW1hdGNoIHRvIHYxMC4wLjMgKGZvcmdlam8p-->Update dependency minimatch to v10.0.3 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8172): <!--number 8172 --><!--line 0 --><!--description dXNlIHpzdGQuV2l0aExvd2VyRW5jb2Rlck1lbSBmb3IgZ2VuZXJhdGUtYmluZGF0YQ==-->use zstd.WithLowerEncoderMem for generate-bindata<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8168): <!--number 8168 --><!--line 0 --><!--description ZG8gbm90IG1peCB1cmZhdmUgdjIgd2l0aCB1cmZhdmUgdjM=-->do not mix urfave v2 with urfave v3<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8166): <!--number 8166 --><!--line 0 --><!--description Y2hvcmUoY2kpOiBza2lwIHRlc3RzIGlmIFRFU1Rfe01JTklPX0VORFBPSU5ULEVMQVNUSUNTRUFSQ0hfVVJMfSBpcyBub3Qgc2V0-->chore(ci): skip tests if TEST_{MINIO_ENDPOINT,ELASTICSEARCH_URL} is not set<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8163): <!--number 8163 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRsYWIuY29tL2dpdGxhYi1vcmcvYXBpL2NsaWVudC1nbyB0byB2MC4xMzAuMSAoZm9yZ2Vqbyk=-->Update module gitlab.com/gitlab-org/api/client-go to v0.130.1 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8162): <!--number 8162 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL21pbmlvL21pbmlvLWdvL3Y3IHRvIHY3LjAuOTMgKGZvcmdlam8p-->Update module github.com/minio/minio-go/v7 to v7.0.93 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8160): <!--number 8160 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgcG9zdGNzcyB0byB2OC41LjUgKGZvcmdlam8p-->Update dependency postcss to v8.5.5 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8159): <!--number 8159 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgbWluaW1hdGNoIHRvIHYxMC4wLjIgKGZvcmdlam8p-->Update dependency minimatch to v10.0.2 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8157): <!--number 8157 --><!--line 0 --><!--description Y2hvcmUoY2kpOiB1c2UgY29kZS5mb3JnZWpvLm9yZy9mb3JnZWpvL21pZ3JhdGlvbi10ZXN0IGZvciBtaWdyYXRpb24gdGVzdHM=-->chore(ci): use code.forgejo.org/forgejo/migration-test for migration tests<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8150): <!--number 8150 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgaGFwcHktZG9tIHRvIHYxOCAoZm9yZ2Vqbyk=-->Update dependency happy-dom to v18 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8149): <!--number 8149 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgdHlwZXNjcmlwdC1lc2xpbnQgdG8gdjguMzQuMCAoZm9yZ2Vqbyk=-->Update dependency typescript-eslint to v8.34.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8148): <!--number 8148 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgQHBsYXl3cmlnaHQvdGVzdCB0byB2MS41My4wIChmb3JnZWpvKQ==-->Update dependency @playwright/test to v1.53.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8147): <!--number 8147 --><!--line 0 --><!--description VXBkYXRlIGdoY3IuaW8vZGV2Y29udGFpbmVycy9mZWF0dXJlcy9naXQtbGZzIERvY2tlciB0YWcgdG8gdjEuMi40IChmb3JnZWpvKQ==-->Update ghcr.io/devcontainers/features/git-lfs Docker tag to v1.2.4 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8146): <!--number 8146 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgcG9zdGNzcy1uZXN0aW5nIHRvIHYxMy4wLjIgKGZvcmdlam8p-->Update dependency postcss-nesting to v13.0.2 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8145): <!--number 8145 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgQHZpdGVzdC9lc2xpbnQtcGx1Z2luIHRvIHYxLjIuMiAoZm9yZ2Vqbyk=-->Update dependency @vitest/eslint-plugin to v1.2.2 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8144): <!--number 8144 --><!--line 0 --><!--description Y2hvcmU6IGZpeCB0ZXN0cyBmb3Igb2xkIGdpdCB2ZXJzaW9ucw==-->chore: fix tests for old git versions<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8140): <!--number 8140 --><!--line 0 --><!--description Y2hvcmUoY2kpOiBydW4gYWRkaXRpb25hbCB0ZXN0cyBpbiBpbnRlZ3JhdGlvbg==-->chore(ci): run additional tests in integration<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8137): <!--number 8137 --><!--line 0 --><!--description UmVtb3ZlIHNoZWJhbmcgZnJvbSBiYXNoIGF1dG9jb21wbGV0aW9u-->Remove shebang from bash autocompletion<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8134): <!--number 8134 --><!--line 0 --><!--description TWFrZSByZWxhdGl2ZS10aW1lIGEgc2VsZi1tYWludGFpbmluZyBjdXN0b20gZWxlbWVudA==-->Make relative-time a self-maintaining custom element<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8129): <!--number 8129 --><!--line 0 --><!--description Y3JlYXRlIHNoZWxsLm5peDsgdXBkYXRlIGZsYWtlLio=-->create shell.nix; update flake.*<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8128): <!--number 8128 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBjb25uZWN0cnBjLmNvbS9jb25uZWN0IHRvIHYxLjE4LjEgKGZvcmdlam8p-->Update module connectrpc.com/connect to v1.18.1 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8127): <!--number 8127 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgbWFya2Rvd25saW50LWNsaSB0byB2MC40NS4wIChmb3JnZWpvKQ==-->Update dependency markdownlint-cli to v0.45.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8126): <!--number 8126 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgZXNsaW50LXBsdWdpbi1yZWdleHAgdG8gdjIuOS4wIChmb3JnZWpvKQ==-->Update dependency eslint-plugin-regexp to v2.9.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8125): <!--number 8125 --><!--line 0 --><!--description VXBkYXRlIHZpdGVzdCBtb25vcmVwbyB0byB2My4yLjMgKGZvcmdlam8p-->Update vitest monorepo to v3.2.3 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8118): <!--number 8118 --><!--line 0 --><!--description TG9jayBmaWxlIG1haW50ZW5hbmNlIChmb3JnZWpvKQ==-->Lock file maintenance (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8117): <!--number 8117 --><!--line 0 --><!--description VXBkYXRlIHJlbm92YXRlIHRvIHY0MC40OC40IChmb3JnZWpvKQ==-->Update renovate to v40.48.4 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8112): <!--number 8112 --><!--line 0 --><!--description cmVtb3ZlIGRvd25sb2FkIGF0dHJpYnV0ZSBmcm9tIGV4dGVybmFsIGFzc2V0cw==-->remove download attribute from external assets<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8108): <!--number 8108 --><!--line 0 --><!--description YWx3YXlzIHJlbmRlciBkZXRhaWxlZCB0ZWFtIHBlcm1pc3Npb25zIHRhYmxlIGluIHNpZGViYXI=-->always render detailed team permissions table in sidebar<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8103): <!--number 8103 --><!--line 0 --><!--description VXBkYXRlIHgvdG9vbHMgdG8gdjAuMzQuMCAoZm9yZ2Vqbyk=-->Update x/tools to v0.34.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8102): <!--number 8102 --><!--line 0 --><!--description VXBkYXRlIHZpdGVzdCBtb25vcmVwbyB0byB2My4yLjIgKGZvcmdlam8p-->Update vitest monorepo to v3.2.2 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8101): <!--number 8101 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL2VkaXRvcmNvbmZpZy1jaGVja2VyL2VkaXRvcmNvbmZpZy1jaGVja2VyL3YzL2NtZC9lZGl0b3Jjb25maWctY2hlY2tlciB0byB2My4zLjAgKGZvcmdlam8p-->Update module github.com/editorconfig-checker/editorconfig-checker/v3/cmd/editorconfig-checker to v3.3.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8099): <!--number 8099 --><!--line 0 --><!--description VXBkYXRlIGxpbnRlcnMgKGZvcmdlam8p-->Update linters (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8098): <!--number 8098 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgaGFwcHktZG9tIHRvIHYxNy42LjMgKGZvcmdlam8p-->Update dependency happy-dom to v17.6.3 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8097): <!--number 8097 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgQHZpdGVqcy9wbHVnaW4tdnVlIHRvIHY1LjIuNCAoZm9yZ2Vqbyk=-->Update dependency @vitejs/plugin-vue to v5.2.4 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8096): <!--number 8096 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgQGF4ZS1jb3JlL3BsYXl3cmlnaHQgdG8gdjQuMTAuMiAoZm9yZ2Vqbyk=-->Update dependency @axe-core/playwright to v4.10.2 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8094): <!--number 8094 --><!--line 0 --><!--description c2hvdyBtZW1iZXJzaGlwIG9mIGxpbWl0ZWQgb3Jncw==-->show membership of limited orgs<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8091): <!--number 8091 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnb2xhbmcub3JnL3gvY3J5cHRvIHRvIHYwLjM5LjAgKGZvcmdlam8p-->Update module golang.org/x/crypto to v0.39.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8090): <!--number 8090 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL3NlcmdpL2dvLWRpZmYgdG8gdjEuNC4wIChmb3JnZWpvKQ==-->Update module github.com/sergi/go-diff to v1.4.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8086): <!--number 8086 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgZ28gdG8gdjEuMjQuNCAoZm9yZ2Vqbyk=-->Update dependency go to v1.24.4 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8078): <!--number 8078 --><!--line 0 --><!--description RmVkZXJhdGVkIHVzZXIgYWN0aXZpdHkgZm9sbG93aW5nOiBJc29sYXRlZCBtb2RlbCBjaGFuZ2Vz-->Federated user activity following: Isolated model changes<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8066): <!--number 8066 --><!--line 0 --><!--description cmVuYW1lIGFwaS57TGlzdCx9QWN0aW9uUnVuIHRvIGFwaS57TGlzdCx9UmVwb0FjdGlvblJ1bg==-->rename api.{List,}ActionRun to api.{List,}RepoActionRun<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8065): <!--number 8065 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnby51YmVyLm9yZy9tb2NrL21vY2tnZW4gdG8gdjAuNS4yIChmb3JnZWpvKQ==-->Update module go.uber.org/mock/mockgen to v0.5.2 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8064): <!--number 8064 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL2JsZXZlc2VhcmNoL2JsZXZlL3YyIHRvIHYyLjUuMiAoZm9yZ2Vqbyk=-->Update module github.com/blevesearch/bleve/v2 to v2.5.2 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8063): <!--number 8063 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgdnVlIHRvIHYzLjUuMTYgKGZvcmdlam8p-->Update dependency vue to v3.5.16 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8062): <!--number 8062 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgcG9zdGNzcyB0byB2OC41LjQgKGZvcmdlam8p-->Update dependency postcss to v8.5.4 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8061): <!--number 8061 --><!--line 0 --><!--description Y2hvcmU6IGV4dHJhY3QgY29tbWl0IGhlYWRlciB0ZW1wbGF0ZQ==-->chore: extract commit header template<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8058): <!--number 8058 --><!--line 0 --><!--description Y2hvcmU6IGRyb3AgdW51c2VkIGBtaXNzcGVsbGA=-->chore: drop unused `misspell`<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8056): <!--number 8056 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBjb2RlLmZvcmdlam8ub3JnL2YzL2dvZjMvdjMgdG8gdjMuMTEuMCAoZm9yZ2Vqbyk=-->Update module code.forgejo.org/f3/gof3/v3 to v3.11.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8055): <!--number 8055 --><!--line 0 --><!--description Y2hvcmUocmVub3ZhdGUpOiBkaXNhYmxlIGluZGlyZWN0IGRpZ2VzdCB1cGRhdGVzIGZvciBzdGFibGU=-->chore(renovate): disable indirect digest updates for stable<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8054): <!--number 8054 --><!--line 0 --><!--description Y2hvcmU6IGRyb3AgdW51c2VkIGBAdHlwZXNjcmlwdC1lc2xpbnQvcGFyc2VyYCBwYWNrYWdl-->chore: drop unused `@typescript-eslint/parser` package<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8052): <!--number 8052 --><!--line 0 --><!--description VXBkYXRlIGxpbnRlcnMgKGZvcmdlam8p-->Update linters (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8051): <!--number 8051 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgaGFwcHktZG9tIHRvIHYxNy42LjEgKGZvcmdlam8p-->Update dependency happy-dom to v17.6.1 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8050): <!--number 8050 --><!--line 0 --><!--description Y2hvcmUocmVub3ZhdGUpOiBidW1wIHRvIHY0MC40MC4wIGFuZCBkaXNhYmxlIHY3-->chore(renovate): bump to v40.40.0 and disable v7<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8049): <!--number 8049 --><!--line 0 --><!--description Q0xJIGlzIGZvcmdlam8gbm90IEZvcmdlam8=-->CLI is forgejo not Forgejo<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8044): <!--number 8044 --><!--line 0 --><!--description YWRkIG1pc3NpbmcgYm90dG9tIG1hcmdpbiBmb3IgdmVyaWZpY2F0aW9uLWJ1dHRvbiBpbiByZWxlYXNlIHZpZXc=-->add missing bottom margin for verification-button in release view<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8041): <!--number 8041 --><!--line 0 --><!--description W2dpdGVhXSBBbHdheXMgdXNlIGFuIGVtcHR5IGxpbmUgdG8gc2VwYXJhdGUgdGhlIGNvbW1pdCBtZXNzYWdlIGFuZCB0cmFpbGVy-->[gitea] Always use an empty line to separate the commit message and trailer<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8040): <!--number 8040 --><!--line 0 --><!--description W2dpdGVhXSB3ZWVrIDIwMjUtMjEgY2hlcnJ5IHBpY2sgKGdpdGVhL21haW4gLT4gZm9yZ2Vqbyk=-->[gitea] week 2025-21 cherry pick (gitea/main -> forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8038): <!--number 8038 --><!--line 0 --><!--description QWRkIGEgR05VIEd1aXggbWFuaWZlc3Q=-->Add a GNU Guix manifest<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8021): <!--number 8021 --><!--line 0 --><!--description Y2hvcmUoY2xlYW51cCk6IHN1cHByZXNzIG5vbiBhY3Rpb25hYmxlIFhPUk0gd2FybmluZ3M=-->chore(cleanup): suppress non actionable XORM warnings<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8019): <!--number 8019 --><!--line 0 --><!--description bWlncmF0ZSByZXBvc2l0b3J5LnRvcGljcyBjb2x1bW4gZm9yIFNRTGl0ZQ==-->migrate repository.topics column for SQLite<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7994): <!--number 7994 --><!--line 0 --><!--description Y2hvcmUoY2xlYW51cCk6IHJlcGxhY2VzIHVubmVjZXNzYXJ5IGNhbGxzIHRvIGZvcm1hdHRpbmcgZnVuY3Rpb25zIGJ5IG5vbi1mb3JtYXR0aW5nIGVxdWl2YWxlbnRz-->chore(cleanup): replaces unnecessary calls to formatting functions by non-formatting equivalents<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7987): <!--number 7987 --><!--line 0 --><!--description YWdncmVnYXRlIGRlbGV0ZWQgdGVhbSBhcyBnaG9zdCB0ZWFt-->aggregate deleted team as ghost team<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7981): <!--number 7981 --><!--line 0 --><!--description YWRkIHZhbGlkYXRpbmcgdXNlciBwYXNzd29yZCBhcyB0cmFjZSByZWdpb24=-->add validating user password as trace region<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7978): <!--number 7978 --><!--line 0 --><!--description Y2hvcmUoY2xlYW51cCk6IGZpeCBhbmQgc2ltcGxpZnkgQVBJIGNvbXBhcmlzb24gaGVscGVy-->chore(cleanup): fix and simplify API comparison helper<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7975): <!--number 7975 --><!--line 0 --><!--description Zml4KGkxOG4pOiB1c2UgY29ycmVjdCBiYXNlIGNhcGl0YWxpemF0aW9uIHN0eWxl-->fix(i18n): use correct base capitalization style<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7961): <!--number 7961 --><!--line 0 --><!--description TG9jayBmaWxlIG1haW50ZW5hbmNlIChmb3JnZWpvKQ==-->Lock file maintenance (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7959): <!--number 7959 --><!--line 0 --><!--description VXBkYXRlIHJlbm92YXRlIHRvIHY0MC4zMS4wIChmb3JnZWpvKQ==-->Update renovate to v40.31.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7954): <!--number 7954 --><!--line 0 --><!--description VXBkYXRlIGZvcmdlam8gZ28tY2hpIHBhY2thZ2VzIChmb3JnZWpvKQ==-->Update forgejo go-chi packages (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7952): <!--number 7952 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL1Byb3Rvbk1haWwvZ28tY3J5cHRvIHRvIHYxLjMuMCAoZm9yZ2Vqbyk=-->Update module github.com/ProtonMail/go-crypto to v1.3.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7950): <!--number 7950 --><!--line 0 --><!--description Zml4KHVpKTogcmVsYXRpdmUgdGltZSBlbGVtZW50cyB3ZXJlIHJlc2V0IG9uIGh0bXggc3dhcA==-->fix(ui): relative time elements were reset on htmx swap<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7945): <!--number 7945 --><!--line 0 --><!--description YG92ZXJmbG93LXdyYXBgIHN0cmF0ZWd5IGluIGAubWFya3VwYCBDU1MgY2xhc3M=-->`overflow-wrap` strategy in `.markup` CSS class<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7944): <!--number 7944 --><!--line 0 --><!--description Zml4KHVpKTogY2hhbmdlIGVzY2FwaW5nIGJ1dHRvbiBiZyBvbiBzZWxlY3RlZCBsaW5lcw==-->fix(ui): change escaping button bg on selected lines<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7933): <!--number 7933 --><!--line 0 --><!--description ZG8gbm90IHVuY29uZGl0aW9uYWxseSBhcHBlbmQgJChHSVRFQV9DT01QQVRJQklMSVRZKSBpbiB2ZXJzaW9u-->do not unconditionally append $(GITEA_COMPATIBILITY) in version<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7925): <!--number 7925 --><!--line 0 --><!--description Zml4KHVpKTogY2VudGVyIGZvb3RlciBsaW5rcw==-->fix(ui): center footer links<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7922): <!--number 7922 --><!--line 0 --><!--description VXBkYXRlIGdvLW9wZW5hcGkgcGFja2FnZXMgKGZvcmdlam8p-->Update go-openapi packages (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7920): <!--number 7920 --><!--line 0 --><!--description dW5pZnkgcmVwb3NpdG9yeSB0b3BpY3MgZmllbGQgYnkgcmVwbGFjaW5nIEpTT04gbnVsbCB3aXRoIGVtcHR5IGFycmF5-->unify repository topics field by replacing JSON null with empty array<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7919): <!--number 7919 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgd2VicGFjayB0byB2NS45OS45IChmb3JnZWpvKQ==-->Update dependency webpack to v5.99.9 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7918): <!--number 7918 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgc2hhcnAgdG8gdjAuMzQuMiAoZm9yZ2Vqbyk=-->Update dependency sharp to v0.34.2 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7917): <!--number 7917 --><!--line 0 --><!--description Y2hvcmU6IFFvTCBpbXByb3ZlbWVudHMgdG8gdGVzdHM=-->chore: QoL improvements to tests<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7914): <!--number 7914 --><!--line 0 --><!--description Y2hvcmUocmVub3ZhdGUpOiBkaXNhYmxlIGluZGlyZWN0IG1ham9yIHVwZGF0ZXMgZm9yIHN0YWJsZSBicmFuY2hlcw==-->chore(renovate): disable indirect major updates for stable branches<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7910): <!--number 7910 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgY2xpcHBpZSB0byB2NC4xLjcgKGZvcmdlam8p-->Update dependency clippie to v4.1.7 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7908): <!--number 7908 --><!--line 0 --><!--description TG9jayBmaWxlIG1haW50ZW5hbmNlIChmb3JnZWpvKQ==-->Lock file maintenance (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7907): <!--number 7907 --><!--line 0 --><!--description VXBkYXRlIHJlbm92YXRlIHRvIHY0MC4yNi4wIChmb3JnZWpvKQ==-->Update renovate to v40.26.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7901): <!--number 7901 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL3l1aW4vZ29sZG1hcmsgdG8gdjEuNy4xMiAoZm9yZ2Vqbyk=-->Update module github.com/yuin/goldmark to v1.7.12 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7898): <!--number 7898 --><!--line 0 --><!--description Y2hvcmUodWkpOiBjbGVhbnVwIHVudXNlZCBjb2xvciBDU1M=-->chore(ui): cleanup unused color CSS<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7894): <!--number 7894 --><!--line 0 --><!--description Zml4KHVpKTogZml4IGZvcmNlLXB1c2ggY29tcGFyZSBsaW5lIGxheW91dA==-->fix(ui): fix force-push compare line layout<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7890): <!--number 7890 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL2FsZWN0aG9tYXMvY2hyb21hL3YyIHRvIHYyLjE4LjAgKGZvcmdlam8p-->Update module github.com/alecthomas/chroma/v2 to v2.18.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7884): <!--number 7884 --><!--line 0 --><!--description cGFyc2UgYGNoYW5nZS1pZGAgaW4gdGhlIGdpdCBjb21taXQgaGVhZGVy-->parse `change-id` in the git commit header<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7881): <!--number 7881 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL2JsZXZlc2VhcmNoL2JsZXZlL3YyIHRvIHYyLjUuMSAoZm9yZ2Vqbyk=-->Update module github.com/blevesearch/bleve/v2 to v2.5.1 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7879): <!--number 7879 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgdnVlIHRvIHYzLjUuMTQgKGZvcmdlam8p-->Update dependency vue to v3.5.14 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7877): <!--number 7877 --><!--line 0 --><!--description TWlncmF0ZSByZW5vdmF0ZSBjb25maWc=-->Migrate renovate config<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7872): <!--number 7872 --><!--line 0 --><!--description Zml4KHVpKTogZGlzYWJsZSBhdXRvY2FwaXRhbGl6YXRpb24vYXV0b2NvcnJlY3QgZm9yIHVzZXJuYW1lIGlucHV0cw==-->fix(ui): disable autocapitalization/autocorrect for username inputs<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7868): <!--number 7868 --><!--line 0 --><!--description Zml4KHVpKTogZGlzYWJsZSBzcGVsbGNoZWNrIG9uIFRPVFAgZm9ybSBmaWVsZHM=-->fix(ui): disable spellcheck on TOTP form fields<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7866): <!--number 7866 --><!--line 0 --><!--description Y2hvcmU6IHJlbW92ZSB1bnVzZWQgdXBkYXRlLWxvY2FsZXMuc2g=-->chore: remove unused update-locales.sh<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7857): <!--number 7857 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL21zdGVpbmVydC9wYW0vdjIgdG8gdjIuMS4wIChmb3JnZWpvKQ==-->Update module github.com/msteinert/pam/v2 to v2.1.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7856): <!--number 7856 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBjb2RlLmZvcmdlam8ub3JnL2Zvcmdlam8vYWN0IHRvIHYxLjI2LjAgKGZvcmdlam8p-->Update module code.forgejo.org/forgejo/act to v1.26.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7852): <!--number 7852 --><!--line 0 --><!--description Rml4IFRlc3RTU0hQdXNoTWlycm9yL05vcm1hbC9DaGVja19taXJyb3JlZF9jb250ZW50IHRlc3Q=-->Fix TestSSHPushMirror/Normal/Check_mirrored_content test<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7849): <!--number 7849 --><!--line 0 --><!--description VXBkYXRlIGdpdGh1Yi5jb20vZ29sYW5nLWp3dC9qd3QvdjQgKGluZGlyZWN0KSB0byB2NC41LjIgW1NFQ1VSSVRZXSAoZm9yZ2Vqbyk=-->Update github.com/golang-jwt/jwt/v4 (indirect) to v4.5.2 [SECURITY] (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7848): <!--number 7848 --><!--line 0 --><!--description Y2kocmVub3ZhdGUpOiBvbmx5IGZhaWwgb24gZXJyb3I=-->ci(renovate): only fail on error<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7847): <!--number 7847 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL25pa2xhc2Zhc2NoaW5nL2dvLW9yZyB0byB2MS44LjAgKGZvcmdlam8p-->Update module github.com/niklasfasching/go-org to v1.8.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7840): <!--number 7840 --><!--line 0 --><!--description TG9jayBmaWxlIG1haW50ZW5hbmNlIChmb3JnZWpvKQ==-->Lock file maintenance (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7835): <!--number 7835 --><!--line 0 --><!--description cmVtb3ZlIHJlZHVuZGFudCBwZXJtaXNzaW9uIGNoZWNrIGluIFJlbW92ZUxhYmVs-->remove redundant permission check in RemoveLabel<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7833): <!--number 7833 --><!--line 0 --><!--description dGVzdCh1aS1lMmUpOiBmaXggZmxha3kgcmVwbyB3aWtpIHRlc3Q=-->test(ui-e2e): fix flaky repo wiki test<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7830): <!--number 7830 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL2dvLXdlYmF1dGhuL3dlYmF1dGhuIHRvIHYwLjEzLjAgKGZvcmdlam8p-->Update module github.com/go-webauthn/webauthn to v0.13.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7822): <!--number 7822 --><!--line 0 --><!--description Y2hvcmUodWkpOiBjbGVhbiB1cCBoYXNoYm94IENTUywgc21hbGwgZGVzaWduIGNoYW5nZXM=-->chore(ui): clean up hashbox CSS, small design changes<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7817): <!--number 7817 --><!--line 0 --><!--description cmVwbGFjZSDDnyB3aXRoIHNzIGluIG5vcm1hbGl6ZVVzZXJOYW1l-->replace ß with ss in normalizeUserName<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7814): <!--number 7814 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgZ2xvYmFscyB0byB2MTYuMS4wIChmb3JnZWpvKQ==-->Update dependency globals to v16.1.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7809): <!--number 7809 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnb2xhbmcub3JnL3gvb2F1dGgyIHRvIHYwLjMwLjAgKGZvcmdlam8p-->Update module golang.org/x/oauth2 to v0.30.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7807): <!--number 7807 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgZ28gdG8gdjEuMjQuMyAoZm9yZ2Vqbyk=-->Update dependency go to v1.24.3 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7799): <!--number 7799 --><!--line 0 --><!--description YWRkIG1pc3NpbmcgbG9hZGJhbGFuY2luZyBwb2xpY2llcyBmb3IgRW5naW5lR3JvdXAgY29ubmVjdGlvbnM=-->add missing loadbalancing policies for EngineGroup connections<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7798): <!--number 7798 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnb2xhbmcub3JnL3gvbmV0IHRvIHYwLjQwLjAgKGZvcmdlam8p-->Update module golang.org/x/net to v0.40.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7797): <!--number 7797 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnb2xhbmcub3JnL3gvaW1hZ2UgdG8gdjAuMjcuMCAoZm9yZ2Vqbyk=-->Update module golang.org/x/image to v0.27.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7792): <!--number 7792 --><!--line 0 --><!--description W3NraXAgY2ldIGNob3JlOiByZW1vdmUgYmFja3BvcnQgc2NyaXB0-->[skip ci] chore: remove backport script<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7789): <!--number 7789 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL2dvbGFuZ2NpL2dvbGFuZ2NpLWxpbnQvdjIvY21kL2dvbGFuZ2NpLWxpbnQgdG8gdjIuMS42IChmb3JnZWpvKQ==-->Update module github.com/golangci/golangci-lint/v2/cmd/golangci-lint to v2.1.6 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7785): <!--number 7785 --><!--line 0 --><!--description W1NLSVAgQ0ldIGNob3JlOiB1cGRhdGUgQ09ERU9XTkVSUw==-->[SKIP CI] chore: update CODEOWNERS<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7784): <!--number 7784 --><!--line 0 --><!--description Zml4KGFwaSk6IGRvY3VtZW50IGBpc19zeXN0ZW1fd2ViaG9va2AgZmllbGQ=-->fix(api): document `is_system_webhook` field<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7778): <!--number 7778 --><!--line 0 --><!--description TG9jayBmaWxlIG1haW50ZW5hbmNlIChmb3JnZWpvKQ==-->Lock file maintenance (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7777): <!--number 7777 --><!--line 0 --><!--description VXBkYXRlIHJlbm92YXRlIHRvIHY0MCAoZm9yZ2VqbykgKG1ham9yKQ==-->Update renovate to v40 (forgejo) (major)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7776): <!--number 7776 --><!--line 0 --><!--description VXBkYXRlIHJlbm92YXRlIHRvIHYzOS4yNjQuMCAoZm9yZ2Vqbyk=-->Update renovate to v39.264.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7773): <!--number 7773 --><!--line 0 --><!--description cmVtb3ZlIGFydGlmaWNpYWwgZGVsYXkgZm9yIFBSIHVwZGF0ZQ==-->remove artificial delay for PR update<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7772): <!--number 7772 --><!--line 0 --><!--description Y2hvcmU6IEZpeCBvdXRkYXRlZCB1c2FnZSBvZiB1bml0dGVzdC5PdmVycmlkZUZpeHR1cmVz-->chore: Fix outdated usage of unittest.OverrideFixtures<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7770): <!--number 7770 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tLzQyd2ltL2h0dHBzaWcgdG8gdjEuMi4zIChmb3JnZWpvKQ==-->Update module github.com/42wim/httpsig to v1.2.3 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7769): <!--number 7769 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgQGdpdGh1Yi9yZWxhdGl2ZS10aW1lLWVsZW1lbnQgdG8gdjQuNC42IChmb3JnZWpvKQ==-->Update dependency @github/relative-time-element to v4.4.6 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7768): <!--number 7768 --><!--line 0 --><!--description VXBkYXRlIGdpdGh1Yi5jb20vNDJ3aW0vc3Noc2lnIGRpZ2VzdCB0byA1MTAwNjMyIChmb3JnZWpvKQ==-->Update github.com/42wim/sshsig digest to 5100632 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7765): <!--number 7765 --><!--line 0 --><!--description Y2hvcmUocmVsZWFzZS1ub3Rlcyk6IEZvcmdlam8gdjcuMC4xNQ==-->chore(release-notes): Forgejo v7.0.15<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7764): <!--number 7764 --><!--line 0 --><!--description Y2hvcmUocmVsZWFzZS1ub3Rlcyk6IEZvcmdlam8gdjExLjAuMQ==-->chore(release-notes): Forgejo v11.0.1<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7762): <!--number 7762 --><!--line 0 --><!--description ZG9jdW1lbnQgdGhhdCAvcmVwb3Mve293bmVyfS97cmVwb30vcHVsbHMgbWF5IGNvbnRhaW4gbnVsbHM=-->document that /repos/{owner}/{repo}/pulls may contain nulls<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7760): <!--number 7760 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgZm9yZ2Vqby9yZWxlYXNlLW5vdGVzLWFzc2lzdGFudCB0byB2MS4yLjUgKGZvcmdlam8p-->Update dependency forgejo/release-notes-assistant to v1.2.5 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7759): <!--number 7759 --><!--line 0 --><!--description Y2hvcmUocmVub3ZhdGUpOiB1c2UgYGdpdGVhLXJlbGVhc2VzYCBkYXRhc291cmNlIGZvciBybmE=-->chore(renovate): use `gitea-releases` datasource for rna<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7758): <!--number 7758 --><!--line 0 --><!--description Y2hvcmUocmVub3ZhdGUpOiBhbGxvdyB1cGRhdGluZyByZWxlYXNlIG5vdGVzIGFzc2lzdGFudA==-->chore(renovate): allow updating release notes assistant<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7746): <!--number 7746 --><!--line 0 --><!--description Zml4KHVpKTogaW1wcm92ZSBmb3JjZS1wdXNoIGNvbXBhcmUgbGluZSBsYXlvdXQ=-->fix(ui): improve force-push compare line layout<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7744): <!--number 7744 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgZXNsaW50LXBsdWdpbi11bmljb3JuIHRvIHY1OSAoZm9yZ2Vqbyk=-->Update dependency eslint-plugin-unicorn to v59 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7740): <!--number 7740 --><!--line 0 --><!--description Zml4KHVpKTogbXVsdGlwbGUgZml4ZXMgb2Ygc3luYyBmb3JrIFVJ-->fix(ui): multiple fixes of sync fork UI<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7739): <!--number 7739 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL3JlZGlzL2dvLXJlZGlzL3Y5IHRvIHY5LjguMCAoZm9yZ2Vqbyk=-->Update module github.com/redis/go-redis/v9 to v9.8.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7738): <!--number 7738 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL2FsZWN0aG9tYXMvY2hyb21hL3YyIHRvIHYyLjE3LjIgKGZvcmdlam8p-->Update module github.com/alecthomas/chroma/v2 to v2.17.2 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7736): <!--number 7736 --><!--line 0 --><!--description VXBkYXRlIGxpbnRlcnMgKGZvcmdlam8p-->Update linters (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7735): <!--number 7735 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgaGFwcHktZG9tIHRvIHYxNy40LjYgKGZvcmdlam8p-->Update dependency happy-dom to v17.4.6 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7732): <!--number 7732 --><!--line 0 --><!--description Y2k6IGFkZCBjbGFyaWZpY2F0aW9uIHJlZ2FyZGluZyB0ZXN0IGxhYmVs-->ci: add clarification regarding test label<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7731): <!--number 7731 --><!--line 0 --><!--description Y2hvcmU6IGZpeCB0ZXN0IHRvIGF2b2lkIGRhdGEgcmFjZQ==-->chore: fix test to avoid data race<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7728): <!--number 7728 --><!--line 0 --><!--description cmVmYWN0b3IgJiBlbmhhbmNlIEFQIGVsZW1lbnRzIHVzZWQ=-->refactor & enhance AP elements used<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7720): <!--number 7720 --><!--line 0 --><!--description Y2hvcmUocmVsZWFzZSk6IG5leHQtZGlnZXN0IG1vdmVkIHRvIGludmlzaWJsZS5mb3JnZWpvLm9yZw==-->chore(release): next-digest moved to invisible.forgejo.org<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7715): <!--number 7715 --><!--line 0 --><!--description Y2hvcmU6IHJlcGxhY2UgYGdpdGh1Yi5jb20vZ28tdGVzdGZpeHR1cmVzL3Rlc3RmaXh0dXJlc2A=-->chore: replace `github.com/go-testfixtures/testfixtures`<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7714): <!--number 7714 --><!--line 0 --><!--description ZW5oYW5jZSB2YWxpZGF0ZWFibGUgaW50ZXJmYWNl-->enhance validateable interface<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7713): <!--number 7713 --><!--line 0 --><!--description W2dpdGVhXSB3ZWVrIDIwMjUtMTcgY2hlcnJ5IHBpY2sgKGdpdGVhL21haW4gLT4gZm9yZ2Vqbyk=-->[gitea] week 2025-17 cherry pick (gitea/main -> forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7707): <!--number 7707 --><!--line 0 --><!--description ZG8gbm90IHNldCBHT1BST1hZPWRpcmVjdCBpbiBEb2NrZXJmaWxlKg==-->do not set GOPROXY=direct in Dockerfile*<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7705): <!--number 7705 --><!--line 0 --><!--description Y2hvcmUodWkpOiByZW1vdmUgdW51c2VkIGZvbWFudGljIGZvbnQgc2l6ZSBjbGFzc2Vz-->chore(ui): remove unused fomantic font size classes<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7697): <!--number 7697 --><!--line 0 --><!--description YmV0dGVyIGNvbW1lbnRzIGFuZCB2YXJpYWJsZSBuYW1lcyBmb3IgQWN0aW9uUnVuTm93RG9uZQ==-->better comments and variable names for ActionRunNowDone<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7696): <!--number 7696 --><!--line 0 --><!--description TG9jayBmaWxlIG1haW50ZW5hbmNlIChmb3JnZWpvKQ==-->Lock file maintenance (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7695): <!--number 7695 --><!--line 0 --><!--description VXBkYXRlIHJlbm92YXRlIHRvIHYzOS4yNjEuNCAoZm9yZ2Vqbyk=-->Update renovate to v39.261.4 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7690): <!--number 7690 --><!--line 0 --><!--description Zml4IHZhcmlvdXMgdHlwb3M=-->fix various typos<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7689): <!--number 7689 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL3l1aW4vZ29sZG1hcmsgdG8gdjEuNy4xMSAoZm9yZ2Vqbyk=-->Update module github.com/yuin/goldmark to v1.7.11 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7687): <!--number 7687 --><!--line 0 --><!--description Y2hvcmU6IHR1bmUgZG93biByZW1vdGUgdXNlciBwcm9tb3Rpb24gZGVidWcgbWVzc2FnZSBzaG93biBhcyBlcnJvcg==-->chore: tune down remote user promotion debug message shown as error<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7685): <!--number 7685 --><!--line 0 --><!--description dXNlIGBsaW5ndWlzdC1nZW5lcmF0ZWRgIGZvciBsYW5ndWFnZSBzdGF0cw==-->use `linguist-generated` for language stats<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7683): <!--number 7683 --><!--line 0 --><!--description c2V0IGRlZmF1bHQgcmVzdHJpY3RlZCBmb3IgT0F1dGgyIHVzZXI=-->set default restricted for OAuth2 user<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7682): <!--number 7682 --><!--line 0 --><!--description Y2hvcmU6IHNpbXBsaWZ5IGBHZXREaWZmYA==-->chore: simplify `GetDiff`<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7680): <!--number 7680 --><!--line 0 --><!--description Y2hvcmU6IHJlbW92ZSB1bnVzZWQgbGludGVycw==-->chore: remove unused linters<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7678): <!--number 7678 --><!--line 0 --><!--description YWRkIGxhYmVsIGZvciBhdmF0YXIgc2V0dGluZ3M=-->add label for avatar settings<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7667): <!--number 7667 --><!--line 0 --><!--description aTE4bihlbik6IGZpeCB0eXBvIGluIGFyY2hpdmUgbm90aWNl-->i18n(en): fix typo in archive notice<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7665): <!--number 7665 --><!--line 0 --><!--description VXBkYXRlIGxpbnRlcnMgKGZvcmdlam8p-->Update linters (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7663): <!--number 7663 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgQHBsYXl3cmlnaHQvdGVzdCB0byB2MS41Mi4wIChmb3JnZWpvKQ==-->Update dependency @playwright/test to v1.52.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7662): <!--number 7662 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL1B1ZXJraXRvQmlvL2dvcXVlcnkgdG8gdjEuMTAuMyAoZm9yZ2Vqbyk=-->Update module github.com/PuerkitoBio/goquery to v1.10.3 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7661): <!--number 7661 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL2dvbGFuZ2NpL2dvbGFuZ2NpLWxpbnQvdjIvY21kL2dvbGFuZ2NpLWxpbnQgdG8gdjIuMS41IChmb3JnZWpvKQ==-->Update module github.com/golangci/golangci-lint/v2/cmd/golangci-lint to v2.1.5 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7659): <!--number 7659 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgd2VicGFjayB0byB2NS45OS43IChmb3JnZWpvKQ==-->Update dependency webpack to v5.99.7 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7648): <!--number 7648 --><!--line 0 --><!--description Y2hvcmU6IG1lcmdlIHRlc3RzLkFkZEZpeHR1cmVzIGFuZCB1bml0dGVzdC5PdmVycmlkZUZpeHR1cmVz-->chore: merge tests.AddFixtures and unittest.OverrideFixtures<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7640): <!--number 7640 --><!--line 0 --><!--description UmVtb3ZlICJjcmVhdGUgYnJhbmNoIiBidXR0b24gb24gbWlycm9yZWQgcmVwb3M=-->Remove "create branch" button on mirrored repos<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7616): <!--number 7616 --><!--line 0 --><!--description Zml4KHVpKTogbWFrZSBwYWdpbmF0aW9uIGxhYmVscyBhbHdheXMgdmlzaWJsZSB0byBzY3JlZW5yZWFkZXI=-->fix(ui): make pagination labels always visible to screenreader<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7613): <!--number 7613 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBtdmRhbi5jYy9nb2Z1bXB0IHRvIHYwLjguMCAoZm9yZ2Vqbyk=-->Update module mvdan.cc/gofumpt to v0.8.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7612): <!--number 7612 --><!--line 0 --><!--description VXBkYXRlIGxpbnRlcnMgKGZvcmdlam8p-->Update linters (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7611): <!--number 7611 --><!--line 0 --><!--description VXBkYXRlIHZpdGVzdCBtb25vcmVwbyB0byB2My4xLjIgKGZvcmdlam8p-->Update vitest monorepo to v3.1.2 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7610): <!--number 7610 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgQHZpdGVzdC9lc2xpbnQtcGx1Z2luIHRvIHYxLjEuNDMgKGZvcmdlam8p-->Update dependency @vitest/eslint-plugin to v1.1.43 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7607): <!--number 7607 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL2FsZWN0aG9tYXMvY2hyb21hL3YyIHRvIHYyLjE3LjAgKGZvcmdlam8p-->Update module github.com/alecthomas/chroma/v2 to v2.17.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7606): <!--number 7606 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL21pbmlvL21pbmlvLWdvL3Y3IHRvIHY3LjAuOTEgKGZvcmdlam8p-->Update module github.com/minio/minio-go/v7 to v7.0.91 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7602): <!--number 7602 --><!--line 0 --><!--description W2dpdGVhXSB3ZWVrIDIwMjUtMTYgY2hlcnJ5IHBpY2sgKGdpdGVhL21haW4gLT4gZm9yZ2Vqbyk=-->[gitea] week 2025-16 cherry pick (gitea/main -> forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7597): <!--number 7597 --><!--line 0 --><!--description ZGVsYXktd3JpdGUgdHJhY2UuZGF0IGZvciBmb3JnZWpvIGRpYWdub3Npcw==-->delay-write trace.dat for forgejo diagnosis<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7588): <!--number 7588 --><!--line 0 --><!--description TG9jayBmaWxlIG1haW50ZW5hbmNlIChmb3JnZWpvKQ==-->Lock file maintenance (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7587): <!--number 7587 --><!--line 0 --><!--description VXBkYXRlIHJlbm92YXRlIHRvIHYzOS4yNTIuMCAoZm9yZ2Vqbyk=-->Update renovate to v39.252.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7580): <!--number 7580 --><!--line 0 --><!--description ZmVhdCh1aSk6IGVubGFyZ2UgbWV0YWRhdGEgbGluZSBnYXBzIGluIGlzc3VlIGxpc3QgYW5kIHJlZmFjdG9y-->feat(ui): enlarge metadata line gaps in issue list and refactor<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7579): <!--number 7579 --><!--line 0 --><!--description aTE4bihlbik6IGFkZCBwb3NpdGlvbmFsIGhpbnRzIHRvIHN5bmNfZm9yayBwbGFjZWhvbGRlcnM=-->i18n(en): add positional hints to sync_fork placeholders<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7578): <!--number 7578 --><!--line 0 --><!--description Zml4KHVpKTogb3ZlcmZsb3cgdGFidWxhciBtZW51IENTUyBmaXhlcw==-->fix(ui): overflow tabular menu CSS fixes<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7577): <!--number 7577 --><!--line 0 --><!--description ZmVhdCh1aSk6IG1ha2UgZm9yayByZWxhdGVkIGJhbm5lcnMgbW9yZSBjb25zaXN0ZW50-->feat(ui): make fork related banners more consistent<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7575): <!--number 7575 --><!--line 0 --><!--description Zml4KHVpKTogdXNlIGNvcnJlY3QgYnJhbmNoIG5hbWUgaW4gYnJhbmNoIHRhZyBzZWxlY3Rvcg==-->fix(ui): use correct branch name in branch tag selector<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7573): <!--number 7573 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgd2VicGFjayB0byB2NS45OS42IChmb3JnZWpvKQ==-->Update dependency webpack to v5.99.6 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7571): <!--number 7571 --><!--line 0 --><!--description Zml4KHVpKTogc2hvdyBjb21taXQgaWNvbiBpbiBicmFuY2ggZHJvcGRvd24gYnV0dG9uIHdoZW4gdmlld2luZyBhIGNvbW1pdA==-->fix(ui): show commit icon in branch dropdown button when viewing a commit<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7565): <!--number 7565 --><!--line 0 --><!--description Z3JhbW1hciBpbiBhIHJlbGVhc2UgQVBJIGVycm9yIG1lc3NhZ2U=-->grammar in a release API error message<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7561): <!--number 7561 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL2NhZGR5c2VydmVyL2NlcnRtYWdpYyB0byB2MC4yMy4wIChmb3JnZWpvKQ==-->Update module github.com/caddyserver/certmagic to v0.23.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7560): <!--number 7560 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL21hdHRuL2dvLXNxbGl0ZTMgdG8gdjEuMTQuMjggKGZvcmdlam8p-->Update module github.com/mattn/go-sqlite3 to v1.14.28 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7558): <!--number 7558 --><!--line 0 --><!--description Zml4KHVpKTogbWFrZSB0YWcgZHJvcGRvd24gY2xpY2thYmxlIGFnYWlu-->fix(ui): make tag dropdown clickable again<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7557): <!--number 7557 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgcHl0aG9uIHRvIHYzLjEzLjMgKGZvcmdlam8p-->Update dependency python to v3.13.3 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7555): <!--number 7555 --><!--line 0 --><!--description Y2hvcmUocmVsZWFzZSk6IHYxMC4wIGlzIEVPTCBbc2tpcCBjaV0=-->chore(release): v10.0 is EOL [skip ci]<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7554): <!--number 7554 --><!--line 0 --><!--description Y2hvcmUocmVub3ZhdGUpOiBmaXggcGFja2FnZSBuYW1lIG1hdGNoaW5nIGZvciBnbyBtYWpvcnMgW3NraXAgY2ld-->chore(renovate): fix package name matching for go majors [skip ci]<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7552): <!--number 7552 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL2dvbGFuZ2NpL2dvbGFuZ2NpLWxpbnQvdjIvY21kL2dvbGFuZ2NpLWxpbnQgdG8gdjIuMS4yIChmb3JnZWpvKQ==-->Update module github.com/golangci/golangci-lint/v2/cmd/golangci-lint to v2.1.2 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7551): <!--number 7551 --><!--line 0 --><!--description VXBkYXRlIGh0dHBzOi8vZGF0YS5mb3JnZWpvLm9yZy9hY3Rpb25zL2dpdC1iYWNrcG9ydGluZyBhY3Rpb24gdG8gdjQuOC41IChmb3JnZWpvKQ==-->Update https://data.forgejo.org/actions/git-backporting action to v4.8.5 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7550): <!--number 7550 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgY2hhcnQuanMgdG8gdjQuNC45IChmb3JnZWpvKQ==-->Update dependency chart.js to v4.4.9 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7545): <!--number 7545 --><!--line 0 --><!--description VXBkYXRlIE5vZGUuanMgdG8gdjIyIChmb3JnZWpvKQ==-->Update Node.js to v22 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7543): <!--number 7543 --><!--line 0 --><!--description bWF0Y2ggUGFja2FnZUJsb2IuSGFzaEJsYWtlMmIgZGVmaW5pdGlvbiBhbmQgbWlncmF0aW9u-->match PackageBlob.HashBlake2b definition and migration<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7539): <!--number 7539 --><!--line 0 --><!--description Zml4KFVJKTogaTE4bjogaW1wcm92ZSBuYW1pbmc=-->fix(UI): i18n: improve naming<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7538): <!--number 7538 --><!--line 0 --><!--description W2dpdGVhXSB3ZWVrIDIwMjUtMTUgY2hlcnJ5IHBpY2sgKGdpdGVhL21haW4gLT4gZm9yZ2Vqbyk=-->[gitea] week 2025-15 cherry pick (gitea/main -> forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7534): <!--number 7534 --><!--line 0 --><!--description TG9jayBmaWxlIG1haW50ZW5hbmNlIChmb3JnZWpvKQ==-->Lock file maintenance (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7532): <!--number 7532 --><!--line 0 --><!--description VXBkYXRlIHJlbm92YXRlIHRvIHYzOS4yNDAuMSAoZm9yZ2Vqbyk=-->Update renovate to v39.240.1 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7528): <!--number 7528 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL2dvbGFuZ2NpL2dvbGFuZ2NpLWxpbnQvdjIvY21kL2dvbGFuZ2NpLWxpbnQgdG8gdjIuMS4xIChmb3JnZWpvKQ==-->Update module github.com/golangci/golangci-lint/v2/cmd/golangci-lint to v2.1.1 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7520): <!--number 7520 --><!--line 0 --><!--description cGFja2FnZV9ibG9iLmhhc19ibGFrZTJiIG1heSBiZSBudWxs-->package_blob.has_blake2b may be null<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7512): <!--number 7512 --><!--line 0 --><!--description Y2hvcmU6IHVzZSBgc2hhcnBgIHRvIGdlbmVyYXRlIGltYWdlcw==-->chore: use `sharp` to generate images<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7510): <!--number 7510 --><!--line 0 --><!--description Y2hvcmU6IHJlZmFjdG9yIGZvciBBY3Rpb25zIERvbmUgTm90aWZpY2F0aW9u-->chore: refactor for Actions Done Notification<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7505): <!--number 7505 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnb2xhbmcub3JnL3gvdG9vbHMvY21kL2RlYWRjb2RlIHRvIHYwLjMyLjAgKGZvcmdlam8p-->Update module golang.org/x/tools/cmd/deadcode to v0.32.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7504): <!--number 7504 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnb2xhbmcub3JnL3gvbmV0IHRvIHYwLjM5LjAgKGZvcmdlam8p-->Update module golang.org/x/net to v0.39.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7503): <!--number 7503 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kga2F0ZXggdG8gdjAuMTYuMjIgKGZvcmdlam8p-->Update dependency katex to v0.16.22 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7499): <!--number 7499 --><!--line 0 --><!--description Y2hvcmUoaTE4bik6IHVwZGF0ZSBjb250cmlidXRpbmcgZG9jdW1lbnRhdGlvbiB3aXRoIEpTT04gZm9ybWF0-->chore(i18n): update contributing documentation with JSON format<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7497): <!--number 7497 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnb2xhbmcub3JnL3gvaW1hZ2UgdG8gdjAuMjYuMCAoZm9yZ2Vqbyk=-->Update module golang.org/x/image to v0.26.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7495): <!--number 7495 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL21pbmlvL21pbmlvLWdvL3Y3IHRvIHY3LjAuOTAgKGZvcmdlam8p-->Update module github.com/minio/minio-go/v7 to v7.0.90 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7494): <!--number 7494 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgd2VicGFjayB0byB2NS45OS41IChmb3JnZWpvKQ==-->Update dependency webpack to v5.99.5 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7491): <!--number 7491 --><!--line 0 --><!--description QWN0aW9ucyBEb25lIE5vdGlmaWNhdGlvbg==-->Actions Done Notification<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7490): <!--number 7490 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgd2VicGFjayB0byB2NS45OS4xIChmb3JnZWpvKQ==-->Update dependency webpack to v5.99.1 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7488): <!--number 7488 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnby51YmVyLm9yZy9tb2NrIHRvIHYwLjUuMSAoZm9yZ2Vqbyk=-->Update module go.uber.org/mock to v0.5.1 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7486): <!--number 7486 --><!--line 0 --><!--description W2dpdGVhXSB3ZWVrIDIwMjUtMTQgY2hlcnJ5IHBpY2sgKGdpdGVhL21haW4gLT4gZm9yZ2Vqbyk=-->[gitea] week 2025-14 cherry pick (gitea/main -> forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7485): <!--number 7485 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnb2xhbmcub3JnL3gvY3J5cHRvIHRvIHYwLjM3LjAgKGZvcmdlam8p-->Update module golang.org/x/crypto to v0.37.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7484): <!--number 7484 --><!--line 0 --><!--description VXBkYXRlIHJlbm92YXRlIHRvIHYzOS4yMzMuNSAoZm9yZ2Vqbyk=-->Update renovate to v39.233.5 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7479): <!--number 7479 --><!--line 0 --><!--description TWlub3IgZ3JhbW1hdGljYWwgZml4IHRvIHJ1bm5lciBkZWxldGlvbiBtZXNzYWdl-->Minor grammatical fix to runner deletion message<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7475): <!--number 7475 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnb2xhbmcub3JnL3gvb2F1dGgyIHRvIHYwLjI5LjAgKGZvcmdlam8p-->Update module golang.org/x/oauth2 to v0.29.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7473): <!--number 7473 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL2Zzbm90aWZ5L2Zzbm90aWZ5IHRvIHYxLjkuMCAoZm9yZ2Vqbyk=-->Update module github.com/fsnotify/fsnotify to v1.9.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7472): <!--number 7472 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgY2xpcHBpZSB0byB2NC4xLjYgKGZvcmdlam8p-->Update dependency clippie to v4.1.6 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7471): <!--number 7471 --><!--line 0 --><!--description Zml4KHVpKTogZW5zdXJlIGRpbW1lciBhbHdheXMgY292ZXJzIHdob2xlIHBhZ2U=-->fix(ui): ensure dimmer always covers whole page<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7470): <!--number 7470 --><!--line 0 --><!--description Zml4KHVpKTogb25seSBydW4gYXV0aF9uYW1lIGNvZGUgb24gbmV3IGFuZCBlZGl0IHBhZ2U=-->fix(ui): only run auth_name code on new and edit page<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7469): <!--number 7469 --><!--line 0 --><!--description Y2hvcmUocmVsZWFzZS1ub3Rlcyk6IEZvcmdlam8gdjExLjAuMA==-->chore(release-notes): Forgejo v11.0.0<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7468): <!--number 7468 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL2JsZXZlc2VhcmNoL2JsZXZlL3YyIHRvIHYyLjUuMCAoZm9yZ2Vqbyk=-->Update module github.com/blevesearch/bleve/v2 to v2.5.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7467): <!--number 7467 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgdHlwZXNjcmlwdCB0byB2NS44LjMgKGZvcmdlam8p-->Update dependency typescript to v5.8.3 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7465): <!--number 7465 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgYW5zaV91cCB0byB2Ni4wLjUgKGZvcmdlam8p-->Update dependency ansi_up to v6.0.5 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7463): <!--number 7463 --><!--line 0 --><!--description Y2hvcmU6IGFsd2F5cyBlbmFibGUgd2VicGFjayBwcm9ncmVzcw==-->chore: always enable webpack progress<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7462): <!--number 7462 --><!--line 0 --><!--description Y2hvcmUoaTE4bik6IGFkZCBhIG1ldGEgbGluZSB0byB0aGUgYmFzZSBqc29uIHRyYW5zbGF0aW9u-->chore(i18n): add a meta line to the base json translation<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7459): <!--number 7459 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL2FsZWN0aG9tYXMvY2hyb21hL3YyIHRvIHYyLjE2LjAgKGZvcmdlam8p-->Update module github.com/alecthomas/chroma/v2 to v2.16.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7458): <!--number 7458 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBjb2RlLmdpdGVhLmlvL3Nkay9naXRlYSB0byB2MC4yMS4wIChmb3JnZWpvKQ==-->Update module code.gitea.io/sdk/gitea to v0.21.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7456): <!--number 7456 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgYW5zaV91cCB0byB2Ni4wLjMgKGZvcmdlam8p-->Update dependency ansi_up to v6.0.3 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7455): <!--number 7455 --><!--line 0 --><!--description TWFrZWZpbGUgJiBCU0RtYWtlZmlsZSBjaGFuZ2Vz-->Makefile & BSDmakefile changes<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7453): <!--number 7453 --><!--line 0 --><!--description Y2hvcmUoc2VjKTogdW5pZnkgdXNhZ2Ugb2YgYGNyeXB0by9yYW5kLlJlYWRg-->chore(sec): unify usage of `crypto/rand.Read`<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7452): <!--number 7452 --><!--line 0 --><!--description bWFrZSBpbnN0YWxsaW5nIEZvcmdlam8gd29yayBhZ2Fpbg==-->make installing Forgejo work again<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7451): <!--number 7451 --><!--line 0 --><!--description Y2hvcmUoaTE4bik6IGNsZWFudXAgYHNldHRpbmdzLmFkb3B0YCBzdHJpbmc=-->chore(i18n): cleanup `settings.adopt` string<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7434): <!--number 7434 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL21hdHRuL2dvLXNxbGl0ZTMgdG8gdjEuMTQuMjcgKGZvcmdlam8p-->Update module github.com/mattn/go-sqlite3 to v1.14.27 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7433): <!--number 7433 --><!--line 0 --><!--description ZmVhdChidWlsZCk6IHJ1biBsaW50LWxvY2FsZS11c2FnZSB3L28gLS1hbGxvdy1taXNzaW5nLW1zZ2lkcw==-->feat(build): run lint-locale-usage w/o --allow-missing-msgids<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7431): <!--number 7431 --><!--line 0 --><!--description bWFrZSByZXBvIGNsb25lIGh0dHBzL3NzaCBsaXN0ZW5lciBjb25kaXRpb25hbA==-->make repo clone https/ssh listener conditional<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7429): <!--number 7429 --><!--line 0 --><!--description ZmVhdChidWlsZCk6IHVuaWZvcm0gaW5pIHBhcnNpbmc=-->feat(build): uniform ini parsing<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7425): <!--number 7425 --><!--line 0 --><!--description ZmVhdChsb2NhbGUgSXRlcik6IHByb3Blcmx5IHN1cHBvcnQgdHJQbHVyYWxTdHJpbmc=-->feat(locale Iter): properly support trPluralString<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7424): <!--number 7424 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL21hdHRuL2dvLXNxbGl0ZTMgdG8gdjEuMTQuMjUgKGZvcmdlam8p-->Update module github.com/mattn/go-sqlite3 to v1.14.25 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7423): <!--number 7423 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL2dvLXdlYmF1dGhuL3dlYmF1dGhuIHRvIHYwLjEyLjMgKGZvcmdlam8p-->Update module github.com/go-webauthn/webauthn to v0.12.3 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7422): <!--number 7422 --><!--line 0 --><!--description Zml4KGkxOG4pOiBmaXggc2V2ZXJhbCB1c2FnZXMgb2YgaTE4bg==-->fix(i18n): fix several usages of i18n<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7421): <!--number 7421 --><!--line 0 --><!--description Zml4KG1pZ3JhdGlvbnMpOiB0cmFuc2ZlciBQUiBmbG93IGluZm9ybWF0aW9u-->fix(migrations): transfer PR flow information<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7419): <!--number 7419 --><!--line 0 --><!--description Y2hvcmU6IGFkZCBlbXB0eSBgYWN0aW9uX3ZhcmlhYmxlYCBmaXh0dXJl-->chore: add empty `action_variable` fixture<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7417): <!--number 7417 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgZ28gdG8gdjEuMjQuMiAoZm9yZ2Vqbyk=-->Update dependency go to v1.24.2 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7416): <!--number 7416 --><!--line 0 --><!--description Y2hvcmUodWkpOiByZW1vdmUgZm9tYW50aWMncyBkaW1tZXIgbW9kdWxl-->chore(ui): remove fomantic's dimmer module<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7414): <!--number 7414 --><!--line 0 --><!--description Y2hvcmUodWkpOiByZW1vdmUgaW5lZmZlY3RpdmUgY2xhc3Mgc21hbGwgaW4gaW5saW5lIGNvZGUgcHJldmlldw==-->chore(ui): remove ineffective class small in inline code preview<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7408): <!--number 7408 --><!--line 0 --><!--description Y2hvcmU6IGVuYWJsZSBzZXZlcmFsIG5vLWpxdWVyeSBydWxlcw==-->chore: enable several no-jquery rules<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7407): <!--number 7407 --><!--line 0 --><!--description VXBkYXRlIHZpdGVzdCBtb25vcmVwbyB0byB2My4xLjEgKGZvcmdlam8p-->Update vitest monorepo to v3.1.1 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7406): <!--number 7406 --><!--line 0 --><!--description VXBkYXRlIGxpbnRlcnMgdG8gdjguMjkuMCAoZm9yZ2Vqbyk=-->Update linters to v8.29.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7400): <!--number 7400 --><!--line 0 --><!--description TG9jayBmaWxlIG1haW50ZW5hbmNlIChmb3JnZWpvKQ==-->Lock file maintenance (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7399): <!--number 7399 --><!--line 0 --><!--description VXBkYXRlIHJlbm92YXRlIHRvIHYzOS4yMjIuMSAoZm9yZ2Vqbyk=-->Update renovate to v39.222.1 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7397): <!--number 7397 --><!--line 0 --><!--description W2dpdGVhXSB3ZWVrIDIwMjUtMTMgY2hlcnJ5IHBpY2sgKGdpdGVhL21haW4gLT4gZm9yZ2Vqbyk=-->[gitea] week 2025-13 cherry pick (gitea/main -> forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7396): <!--number 7396 --><!--line 0 --><!--description Y2hvcmU6IHVzZSBkeW5hbWljIGlk-->chore: use dynamic id<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7394): <!--number 7394 --><!--line 0 --><!--description dXNlIGNvcnJlY3QgaW5pdCBpbnN0cnVjdGlvbiBmb3Igc2hhMjU2-->use correct init instruction for sha256<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7392): <!--number 7392 --><!--line 0 --><!--description TG9jayBmaWxlIG1haW50ZW5hbmNlIChmb3JnZWpvKQ==-->Lock file maintenance (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7391): <!--number 7391 --><!--line 0 --><!--description VXBkYXRlIGdpdGh1Yi5jb20vZ29vZ2xlL3Bwcm9mIGRpZ2VzdCB0byBhNGIwM2VjIChmb3JnZWpvKQ==-->Update github.com/google/pprof digest to a4b03ec (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7390): <!--number 7390 --><!--line 0 --><!--description QWNjZXNzaWJpbGl0eTogZml4IHVucmVhZGFibGUgY2FwdGNoYSB3aXRoIGRhcmsgdGhlbWVz-->Accessibility: fix unreadable captcha with dark themes<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7384): <!--number 7384 --><!--line 0 --><!--description VXBkYXRlIGxpbnRlcnMgKGZvcmdlam8p-->Update linters (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7383): <!--number 7383 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgeWFtbGxpbnQgdG8gdjEuMzcuMCAoZm9yZ2Vqbyk=-->Update dependency yamllint to v1.37.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7382): <!--number 7382 --><!--line 0 --><!--description VXBkYXRlIHZpdGVzdCBtb25vcmVwbyB0byB2My4wLjkgKGZvcmdlam8p-->Update vitest monorepo to v3.0.9 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7381): <!--number 7381 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgQHZpdGVzdC9lc2xpbnQtcGx1Z2luIHRvIHYxLjEuMzggKGZvcmdlam8p-->Update dependency @vitest/eslint-plugin to v1.1.38 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7379): <!--number 7379 --><!--line 0 --><!--description cHJlcGVuZCBBcHBTdWJVUkwgdG8gdmlzaWJpbGl0eSBoaW50IFVSTHM=-->prepend AppSubURL to visibility hint URLs<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7378): <!--number 7378 --><!--line 0 --><!--description Y2hvcmU6IGltcHJvdmUgcmVwbyBtaWdyYXRlIGUyZSB0ZXN0-->chore: improve repo migrate e2e test<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7376): <!--number 7376 --><!--line 0 --><!--description Y2hvcmUodGVzdHMpOiBmaXggdGVzdGluZyBmYWlsdXJlIGNhdXNlZCBieSBkZXAgdXBkYXRl-->chore(tests): fix testing failure caused by dep update<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7374): <!--number 7374 --><!--line 0 --><!--description Y2hvcmUodGVzdHMpOiByZWZhY3RvciBtaWdyYXRpb24gZm9ybSB0ZXN0-->chore(tests): refactor migration form test<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7372): <!--number 7372 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgZXNsaW50LXBsdWdpbi11bmljb3JuIHRvIHY1OCAoZm9yZ2Vqbyk=-->Update dependency eslint-plugin-unicorn to v58 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7371): <!--number 7371 --><!--line 0 --><!--description Y2hvcmU6IHVzZSBjb3JyZWN0IGltcG9ydA==-->chore: use correct import<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7367): <!--number 7367 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnaXRodWIuY29tL2dvbGFuZ2NpL2dvbGFuZ2NpLWxpbnQvY21kL2dvbGFuZ2NpLWxpbnQgdG8gdjIgKGZvcmdlam8p-->Update module github.com/golangci/golangci-lint/cmd/golangci-lint to v2 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7366): <!--number 7366 --><!--line 0 --><!--description VXBkYXRlIGh0dHBzOi8vZGF0YS5mb3JnZWpvLm9yZy90ai1hY3Rpb25zL2NoYW5nZWQtZmlsZXMgYWN0aW9uIHRvIHY0NiAoZm9yZ2Vqbyk=-->Update https://data.forgejo.org/tj-actions/changed-files action to v46 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7362): <!--number 7362 --><!--line 0 --><!--description VXBkYXRlIG1vZHVsZSBnb2xhbmcub3JnL3gvbmV0IHRvIHYwLjM4LjAgKGZvcmdlam8p-->Update module golang.org/x/net to v0.38.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7356): <!--number 7356 --><!--line 0 --><!--description Zml4KHVpKTogaW1wcm92ZSB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgaWNvbnMgd2l0aCB0ZXh0IGluIHRoZSBvdmVyZmxvdyBtZW51ICgjNzMxNCk=-->fix(ui): improve vertical alignment of icons with text in the overflow menu (#7314)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7355): <!--number 7355 --><!--line 0 --><!--description NDEwOC1lbXB0eS1zbGljZS1lbmNvZGVkLXRvLW51bGw=-->4108-empty-slice-encoded-to-null<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7350): <!--number 7350 --><!--line 0 --><!--description cmVmYWN0b3IoY2xpKTogaW1wcm92ZSBkdW1wJ3MgdGVtcG9yYXJ5IGZpbGUgaGFuZGxpbmc=-->refactor(cli): improve dump's temporary file handling<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7348): <!--number 7348 --><!--line 0 --><!--description aW50cm9kdWNlIGdpdE5lZWRlZCBib29sIGluIHNldHVw-->introduce gitNeeded bool in setup<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7344): <!--number 7344 --><!--line 0 --><!--description Zml4KHVpKTogRG8gbm90IGNoZWNrIGZvciBgdmVydGljYWwtYWxpZ25g-->fix(ui): Do not check for `vertical-align`<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7339): <!--number 7339 --><!--line 0 --><!--description VXBkYXRlIGRlcGVuZGVuY3kgbWVybWFpZCB0byB2MTEuNi4wIChmb3JnZWpvKQ==-->Update dependency mermaid to v11.6.0 (forgejo)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7337): <!--number 7337 --><!--line 0 --><!--description Y2hvcmU6IGJyYW5kaW5nIGltcG9ydCBwYXRo-->chore: branding import path<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7314): <!--number 7314 --><!--line 0 --><!--description Zml4KHVpKTogaW1wcm92ZSB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgaWNvbnMgd2l0aCB0ZXh0IGluIHRoZSBvdmVyZmxvdyBtZW51-->fix(ui): improve vertical alignment of icons with text in the overflow menu<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7278): <!--number 7278 --><!--line 0 --><!--description ZmVhdChidWlsZCk6IGxpbnQtbG9jYWxlLXVzYWdlIHNob3VsZCBkZXRlY3QgbW9yZSBUciBmdW5jdGlvbnM=-->feat(build): lint-locale-usage should detect more Tr functions<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7271): <!--number 7271 --><!--line 0 --><!--description ZmVhdCh1aSk6IGltcHJvdmUgYnV0dG9uIGdhcCBjb25zaXN0ZW5jeSwgbWFrZSBpdCB2YXJpYWJsZSwgbGFyZ2VyIG9uIHRvdWNoc2NyZWVucw==-->feat(ui): improve button gap consistency, make it variable, larger on touchscreens<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7261): <!--number 7261 --><!--line 0 --><!--description cmVkaXJlY3QgdG8gc3VibW9kdWxlIGluc3RlYWQgb2YgdGhyb3dpbmcgNTAwIGVycm9yIHdoZW4gdmlld2luZyBzdWJtb2R1bGUgZW50cnk=-->redirect to submodule instead of throwing 500 error when viewing submodule entry<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7203): <!--number 7203 --><!--line 0 --><!--description YWRkIHBvcnQgYW5kIHNjaGVtYSB0byBmZWRlcmF0aW9uIGhvc3Q=-->add port and schema to federation host<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7092): <!--number 7092 --><!--line 0 --><!--description ZmVhdChyZXBvLGxvY2FsZSk6IG1lcmdlIFBSL2lzc3VlcyBjYXNlcyBmb3Igc29tZSByZXBvL2lzc3VlIHN0cmluZ3M=-->feat(repo,locale): merge PR/issues cases for some repo/issue strings<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7035): <!--number 7035 --><!--line 0 --><!--description ZW5hYmxlIEhUVFAgc2lnbmF0dXJlcyBvbiBhbGwgQWN0aXZpdHlQdWIgZW5kcG9pbnRz-->enable HTTP signatures on all ActivityPub endpoints<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/6977): <!--number 6977 --><!--line 0 --><!--description ZmVhdCE6IEFidXNpdmUgY29udGVudCByZXBvcnRpbmc=-->feat!: Abusive content reporting<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/6154): <!--number 6154 --><!--line 0 --><!--description UmVwbGFjZSB0aGUgJ3JlbGF0aXZlLXRpbWUnIGVsZW1lbnQgc2NyaXB0aW5nIHdpdGggY3VzdG9tLCB0cmFuc2xhdGFibGUgcmV3cml0ZQ==-->Replace the 'relative-time' element scripting with custom, translatable rewrite<!--description-->
- Already announced in the release notes of an older stable release
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8234): <!--number 8234 --><!--line 0 --><!--description Y29sbGFib3JhdG9yIGNhbiBlZGl0IHdpa2kgd2l0aCB3cml0ZSBhY2Nlc3M=-->collaborator can edit wiki with write access<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8189): <!--number 8189 --><!--line 0 --><!--description ZG8gbm90IGlnbm9yZSBhdXRvbWVyZ2Ugd2hpbGUgYSBQUiBpcyBjaGVja2luZyBmb3IgY29uZmxpY3Rz-->do not ignore automerge while a PR is checking for conflicts<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8170): <!--number 8170 --><!--line 0 --><!--description ZXJyb25lb3VzIGxpc3QgY29udGludWF0aW9uIG9uIENtZCtFbnRlciAoIzgxNTMp-->erroneous list continuation on Cmd+Enter (#8153)<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/8155): <!--number 8155 --><!--line 0 --><!--description ZG8gbm90IGZhaWwgd2hlbiByZWxlYXNlIG9yIHdpa2kgaXMgc2V0IGluIGAvcmVwb3MvbWlncmF0ZWAgQVBJ-->do not fail when release or wiki is set in `/repos/migrate` API<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7979): <!--number 7979 --><!--line 0 --><!--description cHVsbCByZXF1ZXN0IGNyb3NzIHJlZmVyZW5jZXM=-->pull request cross references<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7976): <!--number 7976 --><!--line 0 --><!--description aWdub3JlIGV4cGlyZWQgYXJ0aWZhY3RzIGZvciBxdW90YSBjYWxjdWxhdGlvbg==-->ignore expired artifacts for quota calculation<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7883): <!--number 7883 --><!--line 0 --><!--description cXVvdGUgcmVwbHkgaW4gQ2hyb21pdW0=-->quote reply in Chromium<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7775): <!--number 7775 --><!--line 0 --><!--description bWFrZSBoYXNoIHBhdHRlcm4gbW9yZSBzdHJpY3Q=-->make hash pattern more strict<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7755): <!--number 7755 --><!--line 0 --><!--description Zml4KHNlYyk6IGFkZCB0ZXN0cyBmb3IgT0F1dGgyIHNpZ251cA==-->fix(sec): add tests for OAuth2 signup<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7752): <!--number 7752 --><!--line 0 --><!--description Zml4KHNlYyk6IG9ubHkgZGVncmFkZSBwZXJtaXNzaW9uIGNoZWNrIGZvciBnaXQgcHVzaA==-->fix(sec): only degrade permission check for git push<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7650): <!--number 7650 --><!--line 0 --><!--description ZGlzcGxheSB0aGUgbGlzdCBvZiB0YXNrcyBpbiB0aGUgcnVubmVyIGVkaXQgcGFnZQ==-->display the list of tasks in the runner edit page<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7594): <!--number 7594 --><!--line 0 --><!--description Zml4KGkxOG4pOiBwcmV2ZW50IGluY29ycmVjdCBsb2dnaW5nIG9uIHN0cmluZ3MgbWlzc2luZyBpbiBKU09OIGxvY2FsZXM=-->fix(i18n): prevent incorrect logging on strings missing in JSON locales<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7584): <!--number 7584 --><!--line 0 --><!--description Zml4KHVpL3ByKTogdXNlIGV5ZSBpY29uIGZvciByZXZpZXdz-->fix(ui/pr): use eye icon for reviews<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7581): <!--number 7581 --><!--line 0 --><!--description Zml4KHVpKTogdXNlIGdhcCBpbiBzd2l0Y2ggaXRlbXM=-->fix(ui): use gap in switch items<!--description-->
- [PR](https://codeberg.org/forgejo/forgejo/pulls/7395): <!--number 7395 --><!--line 0 --><!--description dmFsaWRhdGUgaW5wdXQgZm9yIGRlZmF1bHRfe21lcmdlLHVwZGF0ZX1fc3R5bGU=-->validate input for default_{merge,update}_style<!--description-->
<!--end release-notes-assistant-->