跳到主要内容

Gitea 1.25.0 正式发布

· 阅读需 17 分钟
lunny
Technical Oversight Committee
本文由 AI 翻译,如有歧义请以 英文原文 为准。
1.25.0Release

我们激动地宣布 Gitea v1.25.0 的最新版本发布。

Gitea 1.25.0 带来了令人振奋的新功能、性能改进和质量提升。以下是 Gitea 1.25 中一些值得注意的变化和特性;完整列表请参阅完整的发布说明。

我们非常感谢众多为项目做出贡献的人们,无论是提交代码补丁、报告工单、进行翻译,还是以许多其他方式支持我们。

如何更新

您可以从我们的 下载页面 下载。请阅读我们的 安装指南以获取更多安装信息。升级时,请一如既往,先备份数据,然后替换二进制文件或 Docker 容器并重启。

特别鸣谢

我们要感谢所有在 Open Collective 上支持我们的朋友们,是你们的资助让项目得以持续发展。

一如既往,所有变更按照我们对用户和管理员的重要程度降序排列,最重要的更新排在最前面。

您是否正在寻找一种无缝、省心的 Git 仓库管理解决方案?无需再找!Gitea Cloud 将彻底革新您的开发体验。

破坏性变更

⚠️ 移除已弃用的认证源 (#35272)

此版本移除了已弃用的认证源。请确保在升级前您的认证配置已是最新。

⚠️ 重构并更新邮件模板 (#35150)

邮件模板经过重构以提高可维护性。如果您自定义了邮件模板,请注意这是一项破坏性变更。

感谢 @techknowlogick 贡献此功能。

主要亮点(代码)

🚀 默认使用流式传输仓库归档文件(#35487

仓库归档文件(zip/tar.gz/bundle)现在默认以流式方式传输,在下载大型仓库时能显著提升性能并降低内存占用。这一增强为大型项目带来了更好的用户体验。

感谢 @ChristopherHX 贡献此功能。

🚀 新增 3D/CAD 文件格式预览支持(#34794

Gitea 现已支持在 Web 界面中直接预览 3D 和 CAD 文件格式!这包括 STL、OBJ 及其他常见 3D 文件格式,使工程与设计团队无需离开 Gitea 即可更轻松地就 3D 模型和 CAD 设计展开协作。

3D/CAD 文件预览

感谢 @kerwin612 贡献此功能。

🚀 新增用于创建复刻和提出变更的编辑文件工作流(#34240

引入了一种简化的编辑文件工作流,让用户能够更轻松地创建复刻并提出变更。当你在没有写入权限的仓库中编辑文件时,Gitea 现在会自动提示创建复刻并针对你的更改开启一个合并请求。

复刻工作流

感谢 @brechtvl 贡献此功能。

🚀 用户界面中支持跟踪文件符号链接至其目标(#28835

用户界面现在会跟踪文件符号链接,跳转至其指向的目标文件,从而更轻松地浏览包含符号链接的仓库。在文件浏览器中查看符号链接时,你现在可以点击以查看实际文件内容。

符号链接跟踪

感谢 @delvh 贡献此功能。

🚀 为归档下载提供基础认证支持(#35087

仓库归档下载现在支持基础认证,便于与需要以编程方式下载仓库归档的自动化工具和脚本集成。

感谢 @pvgoran 贡献此功能。

🚀 在 git 命令中使用可配置的远程名称(#35172

Git 命令现在支持可配置的远程名称,而非硬编码为“origin”。这为拥有自定义 git 工作流的用户提供了更大的灵活性。

感谢 @ilya-nurullin 贡献此功能。

🚀 在合并提交视图中显示合并请求(#35202

查看合并提交时,Gitea 现在会显示关联的合并请求信息,从而更轻松地将变更追溯到其原始合并请求。

合并提交视图中的合并请求

感谢 @na-Itms 贡献此功能。

🚀 改进子模块相对路径处理(#35056

改进了子模块处理方式,更好地支持相对路径,使你能更轻松地使用采用相对子模块 URL 的仓库。

感谢 @wxiaoguang 贡献此功能。

主要亮点 (Actions)

🚀 工作流运行成功/失败时发送邮件 (#34982)

Gitea Actions 现在支持在工作流成功或失败时发送邮件通知!这个呼声很高的功能让团队无需频繁查看网页界面就能随时了解 CI/CD 流水线的状态。

邮件通知配置 邮件通知示例

感谢 @NorthRealm 贡献此功能。

主要亮点(认证与安全)

🚀 改进实例级 SSH 提交签名 (#34341)

实例级 SSH 提交签名得到了改进,提供了更好的配置选项和验证能力,为需要签名的组织增强了安全性。

[repository.signing]
SIGNING_KEY = /data/id_ed25519.pub
SIGNING_NAME = Gitea
SIGNING_EMAIL = git@domain.com
SIGNING_FORMAT = ssh
INITIAL_COMMIT = always
CRUD_ACTIONS = always
WIKI = always
MERGES = always

感谢 @ChristopherHX 贡献此功能。

🚀 重构 OpenID Connect 以支持 SSH/全名同步 (#34978)

OpenID Connect 集成已经增强,支持从身份提供商同步 SSH 密钥和全名,为使用 OIDC 的组织简化了用户管理。

感谢 @wxiaoguang 贡献此功能。

🚀 支持 base64 编码的 AGit 推送选项 (#35037)

AGit 推送选项现在支持 base64 编码,为推送选项中的特殊字符和二进制数据提供了更好的兼容性。

感谢 @wxiaoguang 贡献此功能。

主要亮点 (API)

🚀 重构仓库内容 API 并添加 “contents-ext” API (#34822)

仓库内容 API 已重构,新增了“contents-ext” API 端点,在检索文件内容和仓库数据时提供了更大的灵活性和更佳的性能。

感谢 @wxiaoguang 贡献此功能。

🚀has_code 添加到仓库 REST API (#35214)

仓库 REST API 现在包含一个 has_code 字段,从而更容易区分包含代码的仓库、空仓库或仅有 wiki 的仓库。

感谢 @6543 贡献此功能。

主要亮点(用户体验)

🚀 在文本区域编辑器启用更多 markdown 粘贴功能 (#35494)

markdown 文本区域编辑器现在支持更多粘贴功能,包括对粘贴内容进行自动 markdown 格式化,让创建格式规范的评论和文档更加容易。

感谢 @silverwind 贡献此功能。

🚀 重构时间追踪器用户界面 (#34983)

时间追踪器用户界面经过重构,设计更简洁、更直观,方便追踪工单和合并请求上的耗时。

感谢 @wxiaoguang 贡献此功能。

🚀 部分刷新通知列表 (#35010)

通知列表现在支持部分刷新,减少了页面加载时间,在检查新通知时提高了响应速度。

感谢 @anbraten 贡献此功能。

🚀 在合并请求视图上也显示“最近推送的分支”提示 (#35001)

现在在合并请求视图页面上也会显示“最近推送的分支”提示,方便从最近推送的分支创建合并请求。

最近推送的分支提示

感谢 @Naxdy 贡献此功能。

🚀 在合并请求命令行指令中使用等宽字体 (#35074)

合并请求中的命令行指令现在使用等宽字体,以提高可读性并便于复制。

合并请求指令中的等宽字体

感谢 @silverwind 贡献此功能。

主要亮点(管理)

🚀 不要将仓库归档文件存储在 gitea dump 上(#35467

gitea dump 命令默认不再存储仓库归档文件,从而显著减少备份大小和时间。仓库数据仍然可以备份,但预先生成的归档文件被排除在外。

感谢 @h7x4 贡献此功能。

🚀 避免表情符号不匹配并允许仅启用所选表情符号(#35705

表情符号配置得到了改进,允许管理员仅启用特定表情符号,并避免自定义和默认表情符号集之间的不匹配。

表情符号配置

感谢 @wxiaoguang 贡献此功能。

以下 Changelog 保留英文原文,未作翻译,请与上游逐字核对。

Changelog

  • BREAKING

    • Remove deprecated auth sources (#35272)
  • FEATURES

    • Stream repo zip/tar.gz/bundle archives by default (#35487)
    • Add support for 3D/CAD file formats preview (#34794)
    • Send email on Workflow Run Success/Failure (#34982)
    • Edit file workflow for creating a fork and proposing changes (#34240)
    • Improve instance wide ssh commit signing (#34341)
    • Refactor repo contents API and add "contents-ext" API (#34822)
    • Follow file symlinks in the UI to their target (#28835)
    • Use configurable remote name for git commands (#35172)
    • Refactor OpenIDConnect to support SSH/FullName sync (#34978)
  • ENHANCEMENTS

    • Code

      • Display pull request in merged commit view (#35202)
      • Support Basic Authentication for archive downloads (#35087)
      • Improve submodule relative path handling (#35056)
      • Support base64-encoded agit push options (#35037)
      • Add has_code to repository REST API (#35214)
    • Actions

      • Prevent duplicate actions email (#35215)
      • Use inputs context when parsing workflows (#35595)
      • The status icon of the Action step is consistent with GitHub (#35618) #35621
    • User Experience

      • Enable more markdown paste features in textarea editor (#35494)
      • Refactor time tracker UI (#34983)
      • Partially refresh notifications list (#35010)
      • Also display "recently pushed branch" alert on PR view (#35001)
      • Use monospace font in PR command line instructions (#35074)
      • UI: add hover background to table rows in user and repo admin page (#35072)
      • Make restricted users can access public repositories (#35693)
    • Administration

      • Don't store repo archives on gitea dump (#35467)
      • Avoid emoji mismatch and allow to only enable chosen emojis (#35705)
      • Always return the relevant status information, even if no status exists (#35335)
      • Disable Field count validation of CSV viewer (#35228)
      • Don't block site admin's operation if SECRET_KEY is lost (#35721)
    • Issues & Pull Requests

      • When sorting issues by nearest due date, issues without due date should be sorted ascending (#35267)
  • BUGFIXES

    • Update tab title when navigating file tree (#35757) #35772
    • Fix "ref-issue" handling in markup (#35739) #35771
    • Fix webhook to prevent tag events from bypassing branch filters targets (#35567) #35577
    • Fix markup init after issue comment editing (#35536) #35537
    • Fix creating pull request failure when the target branch name is the same as some tag (#35552) #35582
    • Fix auto-expand and auto-scroll for actions logs (#35570) (#35583) #35586
    • Use inputs context when parsing workflows (#35590) #35595
    • Fix diffpatch API endpoint (#35610) #35613
    • Creating push comments before invoke pull request checking (#35647) #35668
    • Fix missing Close when error occurs and abused connection pool (#35658) #35670
    • Fix build (#35674)
    • Fix workflow run event status while rerunning a failed job (#35689)
    • Avoid emoji mismatch and allow to only enable chosen emojis (#35692)
    • Refactor legacy code, fix LFS auth bypass, fix symlink bypass (#35708)
    • Fix various trivial problems (#35714)
    • Fix attachment file size limit in server backend (#35519)
    • Honor delete branch on merge repo setting when using merge API (#35488)
    • Fix external render, make iframe render work (#35727, #35730)
    • Upgrade go mail to 0.7.2 (#35748)
    • Revert #18491, fix oauth2 client link account (#35745)
    • Fix workflow run event status while rerunning a failed job (#35703)
    • Fix various bugs (#35696)
    • Use LFS object size instead of blob size when viewing a LFS file (#35680)
    • Fix code tag style problem and LFS view bug (#35636)
    • Fix inputing review comment will remove reviewer (#35615)
    • Fix diffpatch API endpoint (#35613)
    • Fix: auto-expand and auto-scroll for actions logs (#35586)
    • Fix creating pull request failure when the target branch name is the same as some tag (#35582)
    • Fix rebase push display wrong comments bug (#35580)
    • Fix webhook: prevent tag events from bypassing branch filters targets (#35577)
    • Fix markup init after issue comment editing (#35537)
    • Fix different behavior in status check pattern matching with double stars (#35474)
    • Fix overflow in notifications list (#35446)
  • REFACTORS

    • Move updateref and removeref to gitrepo and remove unnecessary open repository (#35511)
    • Move git command to git/gitcmd (#35483)
    • Replace gobwas/glob package (#35478)
    • Correctly override user unitmodes (#35501)
    • Fix various typos in codebase (#35480)
  • MISC

    • Clean up npm dependencies (#35508, #35484)
    • Update eslint to v9 (#35485)
    • Replace webpack with rspack (#35460)
    • Bump setup-node to v5 (#35448)
    • Bump archives&rar dep (#35638)
    • Fix build (#35674)
    • Fix missing Close when error occurs and abused connection pool (#35670)
    • Creating push comments before invoke pull request checking (#35668)
    • Fix a bug missed return (#35667)
    • Always create Actions logs stepsContainer (#35672)
    • Mock external service in hcaptcha TestCaptcha (#35614)
    • Fixing issue: Password Leak in Log Messages (#35609)
    • Exposing TimeEstimate field in the API (#35475)
    • Vertically center date in file view latest commit (#35456)
    • The status icon of the Action step is consistent with GitHub (#35621)
    • Add perf trace start time (#35282)

本次发布的贡献者

我们感谢所有为本次发布做出贡献的贡献者!

以及更多协助测试、报告工单和翻译的贡献者!

我们将在下一次发布中感谢所有原始回溯合并请求的贡献者。