Gitea 1.24.0 发布
我们非常激动地宣布 Gitea 最新版本 v1.24.0 正式发布。
Gitea 1.24 包含了大量新功能、改进以及显著的性能提升。以下是 Gitea 1.24 中一些值得注意的变更与特性;完整列表请查阅完整的发布说明。
我们由衷感谢众多通过提交代码补丁、报告工单、翻译以及其他多种方式为项目做出贡献的朋友们。
如何更新
你可以从 下载页面 获取安装包,更多安装细节请参阅 安装指南。升级时,请务必先备份数据,再替换二进制文件或 Docker 容器并重启。
特别鸣谢
我们要感谢所有在 Open Collective 上通过资金支持帮助我们维持项目的朋友们。
一如既往,变更按对用户和管理员的重要程度降序排列,最重要的变更放在最前面。
在寻找无缝、省心的 Git 仓库管理方案?不用再找了!Gitea Cloud 来了,让你的开发体验焕然一新。
重大破坏性变更
⚠️ 让 Gitea 始终使用其内部配置,忽略 /etc/gitconfig(#33076)
过去,Gitea 能够使用 /etc/gitconfig 下的系统配置来支持一些边缘场景自定义。然而,这有时会导致冲突,最近已多次出现。因此,我们决定不再沿用此做法,为所有 git 命令添加 GIT_CONFIG_NOSYSTEM=1。
如果你曾修改 /etc/gitconfig 来影响 Gitea 行为,需要将这些配置项移至 Gitea 的内部 git 配置文件,通常位于 Gitea 的 {AppDataPath}/home/.gitconfig。
⚠️ 改进日志格式(#33814)
路由日志格式已从
2025/03/06 22:21:12 ...eb/routing/logger.go:102:func1() [I] router: completed GET / for [::1]:52693, 200 OK in 15.9ms @ web/home.go:32(web.Home)
改为
2025/03/06 22:20:35 HTTPRequest [I] router: completed GET / for [::1]:52631, 200 OK in 7.5ms @ web/home.go:32(web.Home)
⚠️ 修复 Markdown 渲染行为(#34122)
新增配置选项 MATH_CODE_BLOCK_DETECTION,默认禁用有问题的语法。
部分 Markdown 渲染行为得到改进,以匹配 GitHub,详情请参阅最新文档中的“Markdown”页面。
⚠️ 添加软件包版本 API 端点(#34173)
新增两个 API 端点,用于列出软件包的版本和获取软件包的最新版本。
为保持一致性,此端点的大小字段大小写从 Size 更改为 size。
重大更新(安全)
🚀 强制双重身份验证(2FA: TOTP 或 WebAuthn)(#34187)
新增了一个全局设置 security.TWO_FACTOR_AUTH,要求所有用户启用双重身份验证。未使用双重身份验证登录的用户虽然可以登录并浏览公开内容,但无法通过 API 或网页对任何仓库进行读或写操作。

主要亮点(代码)
🚀 为私有/未公开仓库添加匿名访问支持(#33127、#34051)
私有仓库的管理员现在可以允许有限范围内的公开访问代码、工单和 Wiki。

🚀 在文件查看页面添加文件树(#32721)
浏览仓库文件时,页面左侧现在会显示一个文件树。

🚀 为文件列表添加 Material 图标(#33837)
我们引入了图标主题,并将 Material 图标主题设为默认。要切换为 Basic 图标主题,请在 app.ini 配置中进行如下设置:
[ui]
; The icons for file list (basic/material)
FILE_ICON_THEME = basic

感谢 @wxiaoguang 贡献此功能,以及 yardenshoham 在初始合并请求中所做的工作。
🚀 支持通过 Web UI 创建提交时选择邮箱(#33432)
如果用户拥有多个邮箱,现在通过 Web UI 更新文件时可以选择使用哪个邮箱地址进行提交。

🚀 为 RSS/Atom 订阅源添加基本认证支持(#33371)

🚀 组织私有 README.md(#32872)
我们现在支持两种类型的组织 README 仓库:.profile 和 .profile-private。
.profile-private 为私有版本,仅组织成员可访问。

🚀 邮件选项:将图片以 base64 嵌入而非链接(#32061)
新增配置选项 mailer.EMBED_ATTACHMENT_IMAGES,允许将图片嵌入邮件。

主要亮点(工单)
🚀 支持按独占标签排序(工单优先级)(#33206)
在创建或更新独占标签时,你可以指定一个 Sort Order,从而根据工单所分配的独占标签按优先级排序。

🚀 支持子工单列表 (#32940)
在工单、合并请求或评论内容中使用 markdown 语法列出工单时,这些工单将被展开并显示标题。

主要亮点(合并请求)
🚀 延迟旧合并请求冲突检查至页面查看时的选项(#27779)
[repository.pull-request] DELAY_CHECK_FOR_INACTIVE_DAYS 是一项新设置,用于针对指定天数内处于非活跃状态的合并请求,延迟其合并检查。
这避免了拥有许多合并请求的大型仓库可能产生的长时间延迟,并在仓库或合并请求数量较多时降低整体系统负载。
查看该合并请求时,检查会立即开始,完成后合并请求的合并框将自动刷新。通过 API 访问该合并请求同样会立即触发检查。

重要亮点(Actions)
🚀 工件操作 v4 的工件下载 API #33510
新增了以下用于获取和管理 actions 工件的 API 端点:
- GET
/runs/{run}/artifacts - GET
/artifacts - GET + DELETE
/artifacts/{artifact_id} - GET
/artifacts/{artifact_id}/zip
🚀 Actions Runner REST API #33873
新增了用于生成注册令牌和管理 action runner 的 API 端点。
🚀 支持通过 API 触发工作流事件 #33545
现在可以通过 API 触发 workflow_dispatch 事件。
主要亮点(项目)
🚀 新增全屏模式,使项目看板视图操作更高效 (#34081](https://github.com/go-gitea/gitea/pull/34081)
为项目看板视图引入了全屏模式。

🚀 组织级别的工作时间追踪 (#19808](https://github.com/go-gitea/gitea/pull/19808)
在组织级别新增了工作时间摘要标签页,使组织管理员能够更好地评估所花费的时间。还可以按时间、仓库、里程碑和成员进行筛选。

主要亮点(其他)
🚀 新增 CLI 标志支持 LDAP 组配置 (#33933)
为 ldap 子命令新增 7 个标志,对应 UI 界面中的选项。
🚀 新增请求优先级中间件 (#33951)
新增过载保护中间件,旨在帮助抵御恶意爬虫。
性能提升
随着越来越多的大型实例报告性能问题,此版本实现了一些性能提升。
🚀 改进提交列表性能以减少不必要的数据库查询 (#33528)
列出提交时,Gitea 尝试根据提交邮件获取实际用户。逐条从数据库查询用户效率低下。此 PR 通过按邮件批量查询用户来优化该过程,减少了数据库查询次数。
🚀 列出提交时缓存 GPG 密钥、邮件和用户 (#34086)
在列出提交时,许多情况下提交的作者是相同的,但当前逻辑总是从数据库获取 GPG 密钥。此 PR 启用了上下文中 GPG 密钥、邮件和用户的缓存,从而减少了数据库查询。
🚀 优化用户仪表板中加载动态时的动态总数统计 (#33841)
当 action 表有超过 500 万条记录时,以下两个 SQL 查询非常慢。
database duration=1.8881s db.sql="SELECT created_unix DIV 900 * 900 AS timestamp, count(user_id) as contributions FROM `action` WHERE user_id=? AND act_user_id=? AND (created_unix > ?) GROUP BY timestamp ORDER BY timestamp"
database duration=1.5408s db.sql="SELECT count(*) FROM `action` WHERE (user_id = ?) AND (is_deleted = ?)"
现在,该计数在首次加载或活动发生变化时会被缓存。
🚀 优化热力图查询 (#33853)
当 action 表中有超过 500 万条记录时,仪表板上的热力图因以下 SQL 而非常缓慢。
database duration=1.8881s db.sql="SELECT created_unix DIV 900 * 900 AS timestamp, count(user_id) as contributions FROM `action` WHERE user_id=? AND act_user_id=? AND (created_unix > ?) GROUP BY timestamp ORDER BY timestamp"
此 PR 为 action 表添加了包含列 user_id、act_user_id 和 created_unix 的新索引,使得此查询比之前快了约 6 倍。
🚀 用户仪表板的分页仅使用上一页/下一页按钮 (#33981)
从用户体验角度看,用户仪表板的分页并不必要,因此改为上一页/下一页按钮。对于活动表中约有 10 million 条记录的实例,此选项会影响首次访问时用户仪表板的加载方式。
感谢 @lunny 和 @wxiaoguang 贡献此功能。
🚀 为通用软件包查询添加缓存 (#22491)
在 GetPackageDescriptor 中添加了通用软件包查询的缓存。需要处理软件包列表的代码会从此更改中受益。例如,在软件包集成测试中可减少 350 次查询。
感谢 @KN4CK3R 和 @wxiaoguang 贡献此功能。
🚀 将工单置顶移至独立表以提升查询性能 (#33452)
数据库中 is_pull 和 pin_order 列均未建立索引,导致以下 SQL 查询产生额外负载。
SELECT `id`, `repo_id`, `index`, `poster_id`, `original_author`, `original_author_id`, `name`, `content`, `content_version`, `milestone_id`, `priority`, `is_closed`, `is_pull`, `num_comments`, `ref`, `pin_order`, `deadline_unix`, `created_unix`, `updated_unix`, `closed_unix`, `is_locked`, `time_estimate` FROM `issue` WHERE (repo_id =?) AND (is_pull = 0) AND (pin_order > 0) ORDER BY pin_order
基于此,此 PR 将所有工单和合并请求的置顶数据从 issue 表迁移到了 issue_pin 表。这一更改通过提升可扩展性和性能,使大型 Gitea 实例受益。
🚀 改进合并请求列表 API 的性能 (#34052)
合并请求列表 API 较慢,需要为每个合并请求打开一个 Git 仓库。假设有 30 条记录,由于每个仓库都会打开一个 git cat-file --batch 子进程,因此会有 30 个子进程。此 PR 使用基础 Git 仓库来获取头提交 ID,而不是从头部仓库读取,从而避免打开任何头部 Git 仓库。
🚀 重构 Git 属性并进行性能优化 (#34154)
此 PR 通过使用 git check-attr --source 引入了性能改进,该命令可在裸 Git 仓库中运行,因此无需创建 Git 索引文件。新参数要求 Git 版本 >= 2.40。如果 Git 版本低于 2.40,将回退到之前的实现。
之前:
git-run duration=1.2684s func.caller=git.(*Repository).readTreeToIndex git.command="/opt/homebrew/bin/git ...global... read-tree 70187f7727d4ddd8282b576ece93ca233e88b19e"
git-run duration=0.1633s func.caller=git.(*CheckAttributeReader).Run git.command="/opt/homebrew/bin/git ...global... check-attr --stdin -z --cached linguist-vendored linguist-generated linguist-documentation linguist-detectable linguist-language gitlab-language"
之后:
git-run duration=0.1271s func.caller=attribute.(*BatchChecker).run git.command="/opt/homebrew/bin/git ...global... check-attr -z --source 70187f7727d4ddd8282b576ece93ca233e88b19e linguist-vendored linguist-generated linguist-language gitlab-language --stdin"
以下 Changelog 保留英文原文,未作翻译,请与上游逐字核对。
Changelog
-
BREAKING
-
FEATURES
- Enforce two-factor auth (2FA: TOTP or WebAuthn) (#34187)
- Add fullscreen mode as a more efficient operation way to view projects (#34081)
- Add anonymous access support for private/unlisted repositories (#34051)
- Support public code/issue access for private repositories (#33127)
- Add middleware for request prioritization (#33951)
- Add cli flags LDAP group configuration (#33933)
- Add file tree to file view page (#32721)
- Add material icons for file list (#33837)
- Artifacts download api for artifact actions v4 (#33510)
- Support choose email when creating a commit via web UI (#33432)
- Add basic auth support to rss/atom feeds (#33371)
- Add sorting by exclusive labels (issue priority) (#33206)
- Add sub issue list support (#32940)
- Private README.md for organization (#32872)
- Email option to embed images as base64 instead of link (#32061)
- Option to delay conflict checking of old pull requests until page view (#27779)
- Worktime tracking for the organization level (#19808)
-
PERFORMANCE
- Add cache for common package queries (#22491)
- Move issue pin to an standalone table for querying performance (#33452)
- Improve commits list performance to reduce unnecessary database queries (#33528)
- Optimize total count of feed when loading activities in user dashboard. (#33841)
- Optimize heatmap query (#33853)
- Only use prev and next buttons for pagination on user dashboard (#33981)
- Improve pull request list API performance (#34052)
- Cache GPG keys, emails and users when list commits (#34086)
- Refactor Git Attribute & performance optimization (#34154)
- Performance optimization for tags synchronization (#34355) #34522
-
ENHANCEMENTS
-
Code
- Display when a release attachment was uploaded (#34261)
- Support creating relative link to raw path in markdown (#34105)
- Improve code block readability and isolate copy button (#34009)
- Improve repository commit view (#33877)
- Full-file syntax highlighting for diff pages (#33766)
- Clone repository with Tea CLI (#33725)
- Improve sync fork behavior (#33319)
- Make git clone URL could use current signed-in user (#33091)
- Add submodule diff links (#33097)
- Link to tree views of submodules if possible (#33424)
- Only keep popular licenses (#33832)
- De-emphasize signed commits (#31160)
-
Actions
- Add flat-square action badge style (#34062)
- Update action status badge layout (#34018)
- Download actions job logs from API (#33858)
- Always show the "rerun" button for action jobs (#33692)
- Add auto-expanding running actions step (#30058)
- Update status check for all supported on.pull_request.types in Gitea (#33117)
- Workflow_dispatch use workflow from trigger branch (#33098)
- Add action auto-scroll (#30057)
- Add workflow_job webhook (#33694)
- Add a button editing action secret (#34462)
-
Pull Request
-
Issues
- Allow filtering issues by any assignee (#33343)
- Show warning on navigation if currently editing comment or title (#32920)
- Make tracked time representation display as hours (#33315)
- Add No Results Prompt Message on Issue List Page (#33699)
- Add sort option recentclose for issues and pulls (#34525) #34539
-
Packages
-
Administration
- Improve navbar: add "admin" tip, add "active" style (#32927)
- Add a option "--user-type bot" to admin user create, improve role display (#27885)
- Improve admin user view page (#33735)
- Support performance trace (#32973)
- Change pprof labels to be prometheus compatible (#32865)
- Allow admins and org owners to change org member public status (#28294)
- Optimize the installation page (#32994)
- Make public URL generation configurable (#34250)
- Add a --fullname arg to gitea admin user create. (#34241)
-
Others
- Improve oauth2 error handling (#33969)
- Fail mirroring more gracefully (#34002)
- Align User Details Page Header Layout with Design Specifications (#34192)
- Webhook add X-Gitea-Hook-Installation-Target-Type Header (#33752)
- Optimize the dashboard (#32990)
- Improve button layout on small screens (#33633)
- Add cropping support when modifying the user/org/repo avatar (#33498)
- Make ROOT_URL support using request Host header (#32564)
- Add
show moreorganizations icon in user's profile (#32986) - Introduce
--page-space-bottomat 64px (#30692) - Improve theme display (#30671)
- Add alphabetical project sorting (#33504)
- Add global lock for migrations to make upgrade more safe with multiple replications (#33706)
- Add descriptions for private repo public access settings and improve the UI (#34057)
-
-
API
- Actions Runner rest api (#33873)
- Inclusion of rename organization api (#33303)
- Add API to support link package to repository and unlink it (#33481)
- Add API endpoint to request contents of multiple files simultaniously (#34139)
- Actions artifacts API list/download check status upload confirmed (#34273)
- Add API routes to lock and unlock issues (#34165)
- Fix some user name usages (#33689)
- Allow filtering /repos/{owner}/{repo}/pulls by target base branch queryparam (#33684)
- Improve swagger generation (#33664)
- Support Ephemeral action runners (#33570)
- Support workflow event dispatch via API (#33545)
- Support workflow event dispatch via API (#32059)
- Added Description Field for Secrets and Variables (#33526)
- Reject star-related requests if stars are disabled (#33208)
- Let API create and edit system webhooks, attempt 2 (#33180)
- Use
Project-URLmetadata field to get a PyPI package's homepage URL (#33089) - Add
last_committer_dateandlast_author_datefor file contents API (#32921)
-
REFACTORS
- Remove context from git struct (#33793)
- Refactor admin/common.ts (#33788)
- Refactor repo-settings.ts (#33785)
- Refactor repo-issue.ts (#33784)
- Small refactor to reduce unnecessary database queries and remove duplicated functions (#33779)
- Refactor initRepoBranchTagSelector to use new init framework (#33776)
- Refactor buttons to use new init framework (#33774)
- Refactor markup and pdf-viewer to use new init framework (#33772)
- Refactor error system (#33771)
- Refactor mail code (#33768)
- Update TypeScript types (#33799)
- Refactor older tests to use testify (#33140)
- Move notifywatch to service layer (#33825)
- Decouple context from repository related structs (#33823)
- Remove context from mail struct (#33811)
- Refactor dropdown ellipsis (#34123)
- Refactor functions to reduce repopath expose (#33892)
- Refactor repo-diff.ts (#33746)
- Refactor web route handler (#33488)
- Refactor user & avatar (#33433)
- Refactor user package (#33423)
- Refactor decouple context from migration structs (#33399)
- Refactor context flash msg and global variables (#33375)
- Refactor response writer & access logger (#33323)
- Refactor ref type (#33242)
- Refactor context repository (#33202)
- Refactor legacy JS (#33115)
- Refactor legacy line-number and scroll code (#33094)
- Refactor env var related code (#33075)
- Move SetMerged to service layer (#33045)
- Merge updatecommentattachment functions (#33044)
- Refactor pull-request compare&create page (#33071)
- Refactor repo-new.ts (#33070)
- Refactor pagination (#33037)
- Refactor tests (#33021)
- Refactor markup render to fix various path problems (#34114)
- Refactor Branch struct in package modules/git (#33980)
- Don't create duplicated functions for code repositories and wiki repositories (#33924)
- Move git references checking to gitrepo packages to reduce expose of repository path (#33891)
- Refactor cache-control (#33861)
- Decouple diff stats query from actual diffing (#33810)
- Move part of updating protected branch logic to service layer (#33742)
- Decouple Batch from git.Repository to simplify usage without requiring the creation of a Repository struct. (#34001)
- Refactor tmpl and blob_excerpt (#32967)
- Refactor template & test related code (#32938)
- Refactor db package and remove unnecessary
DumpTables(#32930) - Refactor pprof labels and process desc (#32909)
- Refactor repo-projects.ts (#32892)
- Refactor getpatch/getdiff functions and remove unnecessary fallback (#32817)
- Uniform all temporary directories and allow customizing temp path (#32352)
- Remove context from retry downloader (#33871)
- Refactor global init code and add more comments (#33755)
- Remove some unnecessary template helpers (#33069)
- Move and rename UpdateRepository (#34136)
- Move hooks function to gitrepo and reduce expose repopath (#33890)
- Add abstraction layer to delete repository from disk (#33879)
- Add abstraction layer to check if the repository exists on disk (#33874)
- Move ParseCommitWithSSHSignature to service layer (#34087)
- Move duplicated functions (#33977)
- Extract code to their own functions for push update (#33944)
- Move gitgraph from modules to services layer (#33527)
- Move commits signature and verify functions to service layers (#33605)
- Use
CloseIssueandReopenIssueinstead ofChangeStatus(#32467) - Refactor arch route handlers (#32993)
- Refactor "string truncate" (#32984)
- Refactor arch route handlers (#32972)
- Clarify path param naming (#32969)
- Refactor request context (#32956)
- Move some errors to their own sub packages (#32880)
- Move RepoTransfer from models to models/repo sub package (#32506)
- Move delete deploy keys into service layer (#32201)
- Refactor webhook events (#33337)
- Move some Actions related functions from
routerstoservices(#33280) - Refactor RefName (#33234)
- Refactor context RefName and RepoAssignment (#33226)
- Refactor repository transfer (#33211)
- Refactor error system (#33626)
- Refactor error system (#33610)
- Refactor package (routes and error handling, npm peer dependency) (#33111)
- Use test context in tests and new loop system in benchmarks (#33648)
- Some small refactors (#33144)
- Simplify context ref name (#33267)
-
BUGFIXES
- Fix some dropdown problems on the issue sidebar (#34308) #34327
- Do not return archive download URLs in API if downloads are disabled (#34324) #34338
- Fix LFS files being editable in web UI (#34356) #34362
- Fix only text/* being viewable in web UI (#34374) #34378
- Fix LFS file not stored in LFS when uploaded/edited via API or web UI (#34367)
- Grey out expired artifact on Artifacts list (#34314) #34404
- Fix incorrect divergence cache after switching default branch (#34370) #34406
- Refactor commit message rendering and fix bugs (#34412) #34414
- Merge and tweak markup editor expander CSS (#34409) #34415
- Fix GetUsersByEmails (#34423) #34425
- Only git operations should update last changed of a repository (#34388) #34427
- Fix comment textarea scroll issue in Firefox (#34438) #34446
- Fix repo broken check (#34444) #34452
- Fix remove org user failure on mssql (#34449) #34453
- Fix Workflow run Not Found page (#34459) #34466
- When updating comment, if the content is the same, just return and not update the database (#34422) #34464
- Fix project board view (#34470) #34475
- Fix get / delete runner to use consistent http 404 and 500 status (#34480) #34488
- Fix url validation in webhook add/edit API (#34492) #34496
- Fix edithook api can not update package, status and workflow_job events (#34495) #34499
- Fix ephemeral runner deletion (#34447) #34513
- Don't display error log when .git-blame-ignore-revs doesn't exist (#34457)
- Only allow admins to rename default/protected branches (#33276)
- Improve "lock conversation" UI (#34207)
- Fix incorrect file links (#34189)
- Optimize Overflow Menu (#34183)
- Check user/org repo limit instead of doer (#34147)
- Make markdown render match GitHub's behavior (#34129)
- Fix team permission (#34128)
- Correctly handle submodule view and avoid throwing 500 error (#34121)
- Fix users being able bypass limits with repo transfers (#34031)
- Avoid creating unnecessary temporary cat file sub process (#33942)
- Refactor organization menu (#33928)
- Fix various Fomantic UI and htmx problems (#33851)
- Fix 500 error when error occurred in migration page (#33256)
- Validate that the tag doesn't exist when creating a tag via the web (#33241)
- Add missed transaction on setmerged (#33079)
- Rework create/fork/adopt/generate repository to make sure resources will be cleanup once failed (#31035)
- Valid email address should only start with alphanumeric (#28174)
- Fix webhook url (#34186)
- Fix "toAbsoluteLocaleDate" test when system locale is not en-US (#33939)
- Fix file name could not be searched if the file was not a text file when using the Bleve indexer (#33959)
- Fix cannot delete runners via the modal dialog (#33895)
- Fix unpin hint on the pinned pull requests (#33207)
- Fix parentCommit invalid memory address or nil pointer dereference. (#33204)
- Fix comment header padding (#33377)
- Fix some migration and repo name problems (#33986)
- Fix various trivial frontend problems (#34263)
- Fix Set Email Preference dropdown and button placement (#34255)
- Fix quoted replies incorrectly render user input as part of the quote (#34216)
- Fix button alignments and remove unnecessary styles (#34206)
- Restore form inputs on organization create error (#34201)
- Try to fix ACME (3rd) (#33807)
- Fix incorrect ref "blob" (#33240)
- Fix dynamic content loading init problem (#33748)
- Fix git empty check and HEAD request (#33690)
- Fix Untranslated Text on Actions Page (#33635)
- Fix issue label delete incorrect labels webhook payload (#34575)
- Fix incorrect page navigation with up and down arrow on last item of dashboard repos (#34570)
- Fix/improve avatar sync from LDAP (#34573)
- Fix some trivial problems (#34579)
- Retain issue sort type when a keyword search is introduced (#34559)
- Always use an empty line to separate the commit message and trailer (#34512)
- Fix line-button issue after file selection in file tree (#34574)
- Fix doctor deleting orphaned issues attachments (#34142)
- Add webhook assigning test and fix possible bug (#34420)
- Fix possible nil description of pull request when migrating from CodeCommit (#34541)
- Refactor commit reader (#34542)
- Fix possible pull request broken when leave the page immediately after clicking the update button #34509
-
MISC
- Make pull request and issue history more compact (#34588)
- Run integration tests against postgres 14 (#34514) #34536
- Enable addtional linters (#34085)
- Enable testifylint rules (#34075)
- Enable staticcheck QFxxxx rules (#34064)
- Improve Actions test (#32883)
- Drop fomantic build (#33845)
- Go1.24 (#33562)
- Run yamllint with strict mode, fix issue (#33551)
- Disable cron task to update license (#33486)
- Optimize makefile help information generation (#33390)
- Convert github.com/xanzy/go-gitlab into gitlab.com/gitlab-org/api/client-go (#33126)
- Add missed changelogs (#33649)
- Update .changelog file to add performance label group (#33472)
- Add missing POPULATE_SQUASH_COMMENT_WITH_COMMIT_MESSAGES in app.example.ini (#33363)
- Update README screenshots (#33347)
- Update unrs-resolver (#34279)
- Update go&js dependencies (#34262)
- Optimize the calling code of queryElems (#34235)
- Update protected_branch.tmpl (#34193)
- Feat/optimize span svg layout (#34185)
- Set MERMAID_MAX_SOURCE_CHARACTERS to 50000 (#34152)
- Update JS and PY deps (#34143)
- Add Chinese translations for README files (#34132)
- Use
overflow-wrap: anywhereto replaceword-break: break-all(#34126) - Clarify ownership in password change error messages (#34092)
- Add toggleClass function in dom.ts (#34063)
- Update to golangci-lint v2 (#34054)
- Update Makefile test comments (#34013)
- Update go mod dependencies (#33988)
- Use filepath.Join instead of path.Join for file system file operations (#33978)
- Prepare common tmpl functions in a middleware (#33957)
- Remove unused or abused styles (#33918)
- Update JS and PY deps, misc tweaks (#33903)
- Try to figure out attribute checker problem (#33901)
- Add lock for a repository pull mirror (#33876)
- Fine tune push mirror UI (#33866)
- Improve issue & code search (#33860)
- Use pullrequestlist instead of []*pullrequest (#33765)
- Upgrade act to 0.261.4 and actions-proto-go to v0.4.1 (#33760)
- Align sidebar gears to the right (#33721)
- Update Go dependencies (skip blevesearch, meilisearch) (#33655)
- Add migrations and doctor fixes (#33556)
- Remove "class-name" from svg icon (#33540)
- Update MAINTAINERS (#33529)
- Add "No data available" display when list is empty (#33517)
- Use
git diff-treeforDiffFileTreeon diff pages (#33514) - Give organisation members access to organisation feeds (#33508)
- Update feishu icon (#33470)
- Hide/disable unusable UI elements when a repository is archived (#33459)
- Update
@github/text-expander-elementto 2.9.0 (#33435) - Do not access GitRepo when a repo is being created (#33380)
- Fix incorrect ref usages (#33301)
- Prepare for support performance trace (#33286)
- Enable Typescript
noImplicitThis(#33250) - Remove unused CSS styles and move some styles to proper files (#33217)
- Add .run to gitignore (#33175)
- Fix typo in gitea downloader test and add missing codebase in
ToGitServiceType(#33146) - Remove extended glob pattern from branch protection UI (#33125)
- Clean up legacy form CSS styles (#33081)
- Unset XDG_HOME_CONFIG as gitea manages configuration locations (#33067)
- Add IntelliJ Gateway's .uuid to gitignore (#33052)
- User facing messages for AGit errors (#33012)
- Always show assignees on right (#33006)
- Fix eslint (#33002)
- Update JS dependencies (#32914)
- Bump x/net (#32896) (#32900)
本次发布贡献者
- @6543
- @BlenderDefender
- @ChristopherHX
- @DrMaxNix
- @ExplodingDragon
- @HeCorr
- @GWDx
- @KN4CK3R
- @LaoQi
- @ManInDark
- @MarkusAmshove
- @McRaeAlex
- @Mik4sa
- @Mopcho
- @NorthRealm
- @SimonPistache
- @TheFox0x7
- @TimsDevCorner
- @Tomeamis
- @Vinoth-kumar-Ganesan
- @YaFou
- @Zettat123
- @a1012112796
- @a1994sc
- @aindriu80
- @appleboy
- @arifer612
- @asvanberg
- @badhezi
- @bencurio
- @bigdeejay
- @bohde
- @brechtvl
- @bsofiato
- @bytedream
- @cassiozareck
- @changchaishi
- @charles7668
- @darren
- @dek5troza
- @denyskon
- @dfirebaugh
- @dianaStr7
- @eeyrjmr
- @ericLemanissier
- @ghost
- @gsvd
- @hakonharnes
- @harryvince
- @hawicz
- @henrygoodman
- @hiifong
- @jannispl
- @jason19970210
- @job79
- @jubalh
- @katsusan
- @kemzeb
- @kerwin612
- @khs-alt
- @kkovacs
- @lonix1
- @lunny
- @mbollmann-v
- @mengzhuo
- @metiftikci
- @misthios
- @mscherer
- @quentinguidee
- @rafaelDev0ps
- @raucao
- @rremer
- @silverwind
- @sommerf-lf
- @sschroe
- @strk
- @stuzer05
- @sveinnthorarins
- @tclin914
- @techknowlogick
- @telackey
- @tobiasbp
- @typed-sigterm
- @vsysoev
- @wgr1984
- @wkelly17
- @wxiaoguang
- @yp05327
我们将在下次发布时感谢所有原始向后移植合并请求的贡献者。


