Gitea 1.26.0 发布
我们很高兴地宣布 Gitea v1.26.0 最新版本发布。
Gitea 1.26.0 带来了激动人心的新功能、性能改进和质量提升。以下是 Gitea 1.26 中的一些显著变化和特性;完整列表请参阅 完整的发布说明。
我们非常感谢众多为项目做出贡献的人,他们提交代码补丁、报告工单、翻译以及以其他多种方式支持我们。
安全性
此版本解决了多个重要的安全漏洞:
-
CVE-2026-28737:Gitea 3D 文件查看器中通过 glTF extensionsRequired 字段导致的存储型 XSS。由 #37233 修复。感谢 @yonatan-pl 报告此问题,以及 @silverwind 和 @wxiaoguang 提供补丁。
-
CVE-2026-22555:API 复刻流程中缺少 CanCreateOrgRepo 检查,导致允许泄露组织 secrets。由 #36950 修复。感谢 @andrejtomci 报告此问题,以及 @lunny 提供补丁。
-
CVE-2026-27780:在预接收钩子处理过程中,bufio.Scanner 的静默截断导致分支保护被绕过。由 #36963 修复。感谢 @yonatan-pl 报告此问题,以及 @lunny 提供补丁。
-
对
ListUnadoptedRepositories中的PageSize进行限制,以防止无限制的 API 响应 (#36884)。
如何更新
您可以从我们的下载页面获取。更多安装细节,请参阅安装指南。升级时,请照常备份数据,然后替换二进制文件或 Docker 容器并重启。
特别感谢
我们要感谢 Open Collective 上的所有支持者,他们在财务上帮助项目持续运营。
与往常一样,变更按我们认为对用户和管理员最重要的顺序降序排列,因此最重要的变更排在前面。
您是否在寻找一个无缝、无烦恼的解决方案来管理您的 Git 仓库?不用再找了!Gitea Cloud 将彻底改变您的开发体验。
重大破坏性变更
⚠️ 引入 “config edit-ini” 子命令以帮助维护 INI 配置文件 (#35735)
独立的 environment-to-ini 工具已被移除,并新增了一个 gitea 子命令。如果你需要仅使用部分键重新创建配置文件,可以提供 INI 模板文件并使用 “--config-keep-keys” 标志。
⚠️ 修正 Swagger 注解中对枚举、状态码及通知状态的描述 (#37030)
生成的 OpenAPI 描述现在与实际 API 保持一致:枚举值、HTTP 状态码以及通知状态都记录得更加准确。如果你依赖已发布的 Swagger 规范进行代码生成或契约测试,请重新生成客户端,并重新验证对可选字段或响应结构的任何假设。
感谢 @myers 贡献此项变更。
⚠️ 移除 GET API 注册令牌端点 (#36801)
用于获取注册令牌的 GET 端点已被移除。仍调用该端点的自动化流程需要更新为符合你部署环境的注册流程。
感谢 @lunny 贡献此项变更。
⚠️ 支持 Actions concurrency 语法 (#32751)
工作流现在可以使用与 GitHub 风格类似的 concurrency 组,让新的运行相对于正在进行的作业进行取消或排队。这与早期版本的行为有所不同,因此升级后请检查现有工作流——尤其是长时间运行或有重叠的流水线。
感谢 @Zettat123 贡献此功能。
⚠️ 将 PUBLIC_URL_DETECTION 默认值设置为 auto (#36955)
新安装默认启用公共 URL 自动检测。如果你在反向代理或备用主机名之后依赖于特定的显式 URL 配置,升级后请确认 [server] 设置,以确保链接、webhook 和重定向仍与你的环境匹配。
感谢 @wxiaoguang 贡献此项变更。
主要亮点(代码)
🚀 新增仓库文件与代码搜索的键盘快捷键(#36416)
在代码浏览器与搜索中通过键盘更快地操作,类似其他 Git 托管平台常见的快捷键。
感谢 @micahkepe 贡献此功能。
🚀 新增对 archive-upload RPC 的支持(#36391)
Gitea 现支持对仓库 URL 使用 git archive --remote,这样客户端就能通过 Git 的远程存档协议获取存档(而不仅限于 HTTP 下载端点)。
感谢 @TheFox0x7 贡献此功能。
🚀 新增下载子路径存档的能力(#36371)
可以下载仓库子目录的 zip 或 tar 包,而非整个目录树,十分适合单体仓库和部分检出场景。

感谢 @TheFox0x7 贡献此功能。
🚀 自动生成发布说明(#35977)
发布编辑器可在服务端根据已合并的合并请求与贡献者生成 Markdown 说明,与 GitHub 类似,这样发布新版本就减少了手动编辑工作。

感谢 @dawidgora 贡献此功能。
🚀 在仓库文件列表新增“跳转到文件”和“删除目录”(#35911)
可直接按文件名跳转到文件,并在有权限时从浏览器中删除整个目录,从而简化日常的仓库维护工作。
感谢 @brymut 贡献此功能。
主要亮点(Actions)
🚀 支持 Actions concurrency 语法(#32751)
工作流可以声明并发组,使新的运行取消或排队于正在执行的作业之后,与 GitHub Actions 紧密匹配。由于这改变了重叠运行的行为,请结合上方 主要破坏性变更 中的迁移说明参考。
感谢 @Zettat123 贡献此功能。
🚀 工作流依赖关系可视化和图形更新(#26062)(#36248)(#36912)
复杂工作流更易于理解:运行视图可以显示作业之间的依赖关系,并且工作流图的样式已更新以提高清晰度。

感谢 @xDarkmanx 和 @bircni 贡献这些改进。
🚀 新增重新运行失败作业的按钮(#36924)
当某些任务不稳定或已修复后,只需重试失败的作业,而不必重新启动整个工作流。

感谢 @bircni 贡献此功能。
🚀 支持从私有仓库引用 Actions 和可重用工作流(#32562)
流水线可以引用存储在你可访问的私有仓库中的 actions 和可重用工作流,匹配其他平台上常见的 CI 模式。
感谢 @Zettat123 贡献此功能。
🚀 可配置的 Actions 自动令牌权限(#36173)
调整自动生成的 GITHUB_TOKEN 风格的凭据的权限,以便你可以按实例或组织遵循最小权限默认值。
感谢 @Excellencedev 贡献此功能。
🚀 按 runner 进行禁用和暂停(#36776)
管理员可以暂停或禁用单个 runner 而无需移除它,这在维护或隔离不良主机时很有帮助。
感谢 @bircni 贡献此功能。
🚀 非压缩的 Actions 工件(#36786)
适用时,工件上传/下载可以避免 zip 打包(需更新 actions runner 组件),简化下游作业或外部工具的使用。
感谢 @ChristopherHX 贡献此功能。
🚀 Actions 运行视图中的摘要(#36883)
运行摘要可以一目了然地显示关键结果信息,与日志和作业状态并列。

感谢 @bircni 贡献此功能。
主要亮点(性能)
🚀 重构 cat-file 批量操作 (#35775)
在可能的情况下,Git 对象读取使用更新的 --batch-command 风格,从而减少涉及大量对象的操作的开销。
感谢 @wxiaoguang 为此改进做出贡献。
🚀 尽可能利用 merge-tree 检测合并冲突 (#36400)
当 Git 支持时,冲突检测可以利用 merge-tree 采用更快的路径,这能加快繁忙实例上的合并请求和合并预览速度。
感谢 @lunny 为此改进做出贡献。
主要亮点(管理)
🚀 实例级别的信息横幅和维护模式(#36571)
向所有用户显示全局通知,并可选择性地在进行维护时引导流量,无需临时性的代理技巧。

感谢 @bircni 贡献此功能。
🚀 用户徽章(#36752)
个人资料可以显示徽章,让团队能够一目了然地识别角色、成就或内部标识。

感谢 @bircni 贡献此功能。
主要亮点(构建)
🚀 从 webpack 迁移到 Vite (#37002)
前端工具链现在使用 Vite 进行构建,以获得更快的开发反馈和更精简的生产包。
感谢 @silverwind 贡献了这次迁移。
🚀 用 CodeMirror 替换 Monaco (#36764)
浏览器内的编辑现在使用 CodeMirror 而非 Monaco,提升了与界面其他部分的一致性以及打包布局。

感谢 @silverwind 贡献了这项变更。
🚀 用 CrossOriginProtection 替换 CSRF cookie (#36183)
跨站请求保护得到了现代化:旧的 CSRF cookie 机制让位于 CrossOriginProtection,这可能会影响自定义反向代理或嵌入设置——如果你手动调整了 CORS 或 cookie,请查看升级说明。
感谢 @silverwind 贡献了这项变更。
其他主要亮点
🚀 Terraform 状态注册表(#36710)
将 Terraform 状态托管在 Gitea 的软件包注册表中,团队即可使用与代码相同的访问控制来协同管理基础设施。
感谢 @TheFox0x7 贡献此功能。
🚀 在浏览器中渲染 OpenAPI 规范(#36449)
附加到仓库的 OpenAPI 文档现在可以直接渲染,无需离开 Gitea 就能阅读和探索。
感谢 @wxiaoguang 贡献此功能。
以下 Changelog 保留英文原文,未作翻译,请与上游逐字核对。
Changelog
- BREAKING
- SECURITY
- Bound PageSize in
ListUnadoptedRepositories(#36884)
- Bound PageSize in
- FEATURES
- Support Actions
concurrencysyntax (#32751) - Add Terraform state registry (#36710)
- Instance-wide (global) info banner and maintenance mode (#36571)
- Support rendering OpenAPI spec (#36449)
- Add keyboard shortcuts for repository file and code search (#36416)
- Add support for archive-upload rpc (#36391)
- Add ability to download subpath archive (#36371)
- Add workflow dependencies visualization (#26062) (#36248) & Restyle Workflow Graph (#36912)
- Automatic generation of release notes (#35977)
- Add "Go to file", "Delete directory" to repo file list page (#35911)
- Introduce "config edit-ini" sub command to help maintaining INI config file (#35735)
- Add button to re-run failed jobs in Actions (#36924)
- Support actions and reusable workflows from private repos (#32562)
- Add summary to action runs view (#36883)
- Add user badges (#36752)
- Add configurable permissions for Actions automatic tokens (#36173)
- Add per-runner "Disable/Pause" (#36776)
- Feature non-zipped actions artifacts (action v7 / nodejs / npm v6.2.0) (#36786)
- Support Actions
- PERFORMANCE
- WorkflowDispatch API optionally return runid (#36706)
- Add render cache for SVG icons (#36863)
- Load
mentionValuesasynchronously (#36739) - Lazy-load some Vue components, fix heatmap chunk loading on every page (#36719)
- Load heatmap data asynchronously (#36622)
- Use prev/next pagination for user profile activities page to speed up (#36642)
- Refactor cat-file batch operations and support
--batch-commandapproach (#35775) - Use merge tree to detect conflicts when possible (#36400)
- ENHANCEMENTS
- Implement logout redirection for reverse proxy auth setups (#36085) (#37171)
- Adds option to force update new branch in contents routes (#35592)
- Add viewer controller for mermaid (zoom, drag) (#36557)
- Add code editor setting dropdowns (#36534)
- Add
elklayout support to mermaid (#36486) - Add resolve/unresolve review comment API endpoints (#36441)
- Allow configuring default PR base branch (fixes #36412) (#36425)
- Add support for RPM Errata (updateinfo.xml) (#37125)
- Require additional user confirmation for making repo private (#36959)
- Add
actions.WORKFLOW_DIRSsetting (#36619) - Avoid opening new tab when downloading actions logs (#36740)
- Implements OIDC RP-Initiated Logout (#36724)
- Show workflow link (#37070)
- Desaturate dark theme background colors (#37056)
- Refactor "org teams" page and help new users to "add member" to an org (#37051)
- Add webhook name field to improve webhook identification (#37025) (#37040)
- Make task list checkboxes clickable in the preview tab (#37010)
- Improve severity labels in Actions logs and tweak colors (#36993)
- Linkify URLs in Actions workflow logs (#36986)
- Allow text selection on checkbox labels (#36970)
- Support dark/light theme images in markdown (#36922)
- Enable native dark mode for swagger-ui (#36899)
- Rework checkbox styling, remove
inputborder hover effect (#36870) - Refactor storage content-type handling of ServeDirectURL (#36804)
- Use "Enable Gravatar" but not "Disable" (#36771)
- Use case-insensitive matching for Git error "Not a valid object name" (#36728)
- Add "Copy Source" to markup comment menu (#36726)
- Change image transparency grid to CSS (#36711)
- Add "Run" prefix for unnamed action steps (#36624)
- Persist actions log time display settings in
localStorage(#36623) - Use first commit title for multi-commit PRs and fix auto-focus title field (#36606)
- Improve BuildCaseInsensitiveLike with lowercase (#36598)
- Improve diff highlighting (#36583)
- Exclude cancelled runs from failure-only email notifications (#36569)
- Use full-file highlighting for diff sections (#36561)
- Color command/error logs in Actions log (#36538)
- Add paging headers (#36521)
- Improve timeline entries for WIP prefix changes in pull requests (#36518)
- Add FOLDER_ICON_THEME configuration option (#36496)
- Normalize guessed languages for code highlighting (#36450)
- Add chunked transfer encoding support for LFS uploads (#36380)
- Indicate when only optional checks failed (#36367)
- Add 'allow_maintainer_edit' API option for creating a pull request (#36283)
- Support closing keywords with URL references (#36221)
- Improve diff file headers (#36215)
- Fix and enhance comment editor monospace toggle (#36181)
- Add git.DIFF_RENAME_SIMILARITY_THRESHOLD option (#36164)
- Add matching pair insertion to markdown textarea (#36121)
- Add sorting/filtering to admin user search API endpoint (#36112)
- Allow action user have read permission in public repo like other user (#36095)
- Disable matchBrackets in monaco (#36089)
- Use GitHub-style commit message for squash merge (#35987)
- Make composer registry support tar.gz and tar.bz2 and fix bugs (#35958)
- Add GITEA_PR_INDEX env variable to githooks (#35938)
- Add proper error message if session provider can not be created (#35520)
- Add button to copy file name in PR files (#35509)
- Move
X_FRAME_OPTIONSsetting fromcorstosecuritysection (#30256) - Add placeholder content for empty content page (#37114)
- Add
DEFAULT_DELETE_BRANCH_AFTER_MERGEsetting (#36917) - Redirect to the only OAuth2 provider when no other login methods and fix various problems (#36901)
- Add admin badge to navbar avatar (#36790)
- Add
neveroption toPUBLIC_URL_DETECTIONconfiguration (#36785) - Add background and run count to actions list page (#36707)
- Add icon to buttons "Close with Comment", "Close Pull Request", "Close Issue" (#36654)
- Add support for in_progress event in workflow_run webhook (#36979)
- Report commit status for pull_request_review events (#36589)
- Render merged pull request title as such in dashboard feed (#36479)
- Feature to be able to filter project boards by milestones (#36321)
- Use user id in noreply emails (#36550)
- Enable pagination on GiteaDownloader.getIssueReactions() (#36549)
- Remove striped tables in UI (#36509)
- Improve control char rendering and escape button styling (#37094)
- Support legacy run/job index-based URLs and refactor migration 326 (#37008)
- Add date to "No Contributions" tooltip (#36190)
- Show edit page confirmation dialog on tree view file change (#36130)
- Mention proc-receive in text for dashboard.resync_all_hooks func (#35991)
- Reuse selectable style for wiki (#35990)
- Support blue yellow colorblind theme (#35910)
- Support selecting theme on the footer (#35741)
- Improve online runner check (#35722)
- Add quick approve button on PR page (#35678)
- Enable commenting on expanded lines in PR diffs (#35662)
- Print PR-Title into tooltip for actions (#35579)
- Use explicit, stronger defaults for newly generated repo signing keys for Debian (#36236)
- Improve the compare page (#36261)
- Unify repo names in system notices (#36491)
- Move package settings to package instead of being tied to version (#37026)
- Add Actions API rerun endpoints for runs and jobs (#36768)
- Add branch_count to repository API (#35351) (#36743)
- Add created_by filter to SearchIssues (#36670)
- Allow admins to rename non-local users (#35970)
- Support updating branch via API (#35951)
- Add an option to automatically verify SSH keys from LDAP (#35927)
- Make "update file" API can create a new file when SHA is not set (#35738)
- Update issue.go with labels documentation (labels content, not ids) (#35522)
- Expose content_version for optimistic locking on issue and PR edits (#37035)
- Pass ServeHeaderOptions by value instead of pointer, fine tune httplib tests (#36982)
- BUGFIXES
- Frontend iframe renderer framework: 3D models, OpenAPI (#37233) (#37273)
- Fix CODEOWNERS absolute path matching. (#37244) (#37264)
- Swift registry metadata: preserve more JSON fields and accept empty metadata (#37254) (#37261)
- Fix user ssh key exporting and tests (#37256) (#37258)
- Fix team member avatar size and add tooltip (#37253)
- Fix commit title rendering in action run and blame (#37243) (#37251)
- Fix corrupted JSON caused by goccy library (#37214) (#37220)
- Add test for "fetch redirect", add CSS value validation for external render (#37207) (#37216)
- Fix incorrect concurrency check (#37205) (#37215)
- Fix handle missing base branch in PR commits API (#37193) (#37203)
- Fix encoding for Matrix Webhooks (#37190) (#37201)
- Fix handle fork-only commits in compare API (#37185) (#37199)
- Indicate form field readonly via background, fix RunUser config (#37175, #37180) (#37178)
- Report structurally invalid workflows to users (#37116) (#37164)
- Fix API not persisting pull request unit config when has_pull_requests is not set (#36718)
- Rename CSS variables and improve colorblind themes (#36353)
- Hide
add-matcherandremove-matcherfrom actions job logs (#36520) - Prevent navigation keys from triggering actions during IME composition (#36540)
- Fix vertical alignment of
.commit-sign-badgechildren (#36570) - Fix duplicate startup warnings in admin panel (#36641)
- Fix CODEOWNERS review request attribution using comment metadata (#36348)
- Fix HTML tags appearing in wiki table of contents (#36284)
- Fix various bugs (#37096)
- Fix various legacy problems (#37092)
- Fix RPM Registry 404 when package name contains 'package' (#37087)
- Merge some standalone Vite entries into index.js (#37085)
- Fix various problems (#37077)
- Fix issue label deletion with Actions tokens (#37013)
- Hide delete branch or tag buttons in mirror or archived repositories. (#37006)
- Fix org contact email not clearable once set (#36975)
- Fix a bug when forking a repository in an organization (#36950)
- Preserve sort order of exclusive labels from template repo (#36931)
- Make container registry support Apple Container (basic auth) (#36920)
- Fix the wrong push commits in the pull request when force push (#36914)
- Add class "list-header-filters" to the div for projects (#36889)
- Fix dbfs error handling (#36844)
- Fix incorrect viewed files counter if reverted change was viewed (#36819)
- Refactor avatar package, support default avatar fallback (#36788)
- Fix README symlink resolution in subdirectories like .github (#36775)
- Fix CSS stacking context issue in actions log (#36749)
- Add gpg signing for merge rebase and update by rebase (#36701)
- Delete non-exist branch should return 404 (#36694)
- Fix
TestActionsCollaborativeOwner(#36657) - Fix multi-arch Docker build SIGILL by splitting frontend stage (#36646)
- Fix linguist-detectable attribute being ignored for configuration files (#36640)
- Fix state desync in ComboMarkdownEditor (#36625)
- Unify DEFAULT_SHOW_FULL_NAME output in templates and dropdown (#36597)
- Pull Request Pusher should be the author of the merge (#36581)
- Fix various version parsing problems (#36553)
- Fix highlight diff result (#36539)
- Fix mirror sync parser and fix mirror messages (#36504)
- Fix bug when list pull request commits (#36485)
- Fix various bugs (#36446)
- Fix issue filter menu layout (#36426)
- Restrict branch naming when new change matches with protection rules (#36405)
- Fix link/origin referrer and login redirect (#36279)
- Generate IDs for HTML headings without id attribute (#36233)
- Use a migration test instead of a wrong test which populated the meta test repositories and fix a migration bug (#36160)
- Fix issue close timeline icon (#36138)
- Fix diff blob excerpt expansion (#35922)
- Fix external render (#35727)
- Fix review request webhook bug (#35339) (#35723)
- Fix shutdown waitgroup panic (#35676)
- Cleanup ActionRun creation (#35624)
- Fix possible bug when migrating issues/pull requests (#33487)
- Various fixes (#36697)
- Apply notify/register mail flags during install load (#37120)
- Repair duration display for bad stopped timestamps (#37121)
- Fix(upgrade.sh): use HTTPS for GPG key import and restore SELinux context after upgrade (#36930)
- Fix various trivial problems (#36921)
- Fix various trivial problems (#36953)
- Fix NuGet package upload error handling (#37074)
- Fix CodeQL code scanning alerts (#36858)
- Refactor issue sidebar and fix various problems (#37045)
- Fix various problems (#37029)
- Fix relative-time RangeError (#37021)
- Fix chroma lexer mapping (#36629)
- Fix typos and grammar in English locale (#36751)
- Fix milestone/project text overflow in issue sidebar (#36741)
- Fix
no-contentmessage not rendering after comment edit (#36733) - Fix theme loading in development (#36605)
- Fix workflow run jobs API returning null steps (#36603)
- Fix timeline event layout overflow with long content (#36595)
- Fix minor UI issues in runner edit page (#36590)
- Fix incorrect vendored detections (#36508)
- Fix editorconfig not respected in PR Conversation view (#36492)
- Don't create self-references in merged PRs (#36490)
- Fix potential incorrect runID in run status update (#36437)
- Fix file-tree ui error when adding files to repo without commits (#36312)
- Improve image captcha contrast for dark mode (#36265)
- Fix panic in blame view when a file has only a single commit (#36230)
- Fix spelling error in migrate-storage cmd utility (#36226)
- Fix code highlighting on blame page (#36157)
- Fix nilnil in onedev downloader (#36154)
- Fix actions lint (#36029)
- Fix oauth2 session gob register (#36017)
- Fix Arch repo pacman.conf snippet (#35825)
- Fix a number of
strictNullChecks-related issues (#35795) - Fix URLJoin, markup render link resolving, sign-in/up/linkaccount page common data (#36861)
- Hide delete directory button for mirror or archive repository and disable the menu item if user have no permission (#36384)
- Update message severity colors, fix navbar double border (#37019)
- Inline and lazy-load EasyMDE CSS, fix border colors (#36714)
- Closed milestones with no issues now show as 100% completed (#36220)
- Add test for ExtendCommentTreePathLength migration and fix bugs (#35791)
- Only turn links to current instance into hash links (#36237)
- Fix typos in code comments: doesnt, dont, wont (#36890)
- REFACTOR
- Clean up and improve non-gitea js error filter (#37148) (#37155)
- Always show owner/repo name in compare page dropdowns (#37172) (#37200)
- Remove dead CSS rules (#37173) (#37177)
- Replace Monaco with CodeMirror (#36764)
- Replace CSRF cookie with
CrossOriginProtection(#36183) - Replace index with id in actions routes (#36842)
- Remove unnecessary function parameter (#35765)
- Move jobparser from act repository to Gitea (#36699)
- Refactor compare router param parse (#36105)
- Optimize 'refreshAccesses' to perform update without removing then adding (#35702)
- Clean up checkbox cursor styles (#37016)
- Remove undocumented support of signing key in the repository git configuration file (#36143)
- Switch
cmd/to use constructor functions. (#36962) - Use
relative-timeto render absolute dates (#36238) - Some refactors about GetMergeBase (#36186)
- Some small refactors (#36163)
- Use gitRepo as parameter instead of repopath when invoking sign functions (#36162)
- Move blame to gitrepo (#36161)
- Move some functions to gitrepo package to reduce RepoPath reference directly (#36126)
- Use gitrepo's clone and push when possible (#36093)
- Remove mermaid margin workaround (#35732)
- Move some functions to gitrepo package (#35543)
- Move GetDiverging functions to gitrepo (#35524)
- Use global lock instead of status pool for cron lock (#35507)
- Use explicit mux instead of DefaultServeMux (#36276)
- Use gitrepo's push function (#36245)
- Pass request context to generateAdditionalHeadersForIssue (#36274)
- Move assign project when creating pull request to the same database transaction (#36244)
- Move catfile batch to a sub package of git module (#36232)
- Use gitrepo.Repository instead of wikipath (#35398)
- Use experimental go json v2 library (#35392)
- Refactor template render (#36438)
- Refactor GetRepoRawDiffForFile to avoid unnecessary pipe or goroutine (#36434)
- Refactor text utility classes to Tailwind CSS (#36703)
- Refactor git command stdio pipe (#36422)
- Refactor git command context & pipeline (#36406)
- Refactor git command stdio pipe (#36393)
- Remove unused functions (#36672)
- Refactor Actions Token Access (#35688)
- Move commit related functions to gitrepo package (#35600)
- Move archive function to repo_model and gitrepo (#35514)
- Move some functions to gitrepo package (#35503)
- Use git model to detect whether branch exist instead of gitrepo method (#35459)
- Some refactor for repo path (#36251)
- Extract helper functions from SearchIssues (#36158)
- Refactor merge conan and container auth preserve actions taskID (#36560)
- Refactor Nuget Auth to reuse Basic Auth Token Validation (#36558)
- Refactor ActionsTaskID (#36503)
- Refactor auth middleware (#36848)
- Refactor code render and render control chars (#37078)
- Clean up AppURL, remove legacy origin-url webcomponent (#37090)
- Remove
util.URLJoinand replace all callers with direct path concatenation (#36867) - Replace legacy tw-flex utility classes with flex-text-block/inline (#36778)
- Mark unused&immature activitypub as "not implemented" (#36789)
- TESTING
- BUILD
- Upgrade go-git to v5.18.0 (#37269)
- Replace rollup-plugin-license with rolldown-license-plugin (#37130) (#37158)
- Bump min go version to 1.26.2 (#37139) (#37143)
- Convert locale files from ini to json format (#35489)
- Bump golangci-lint to 2.7.2, enable modernize stringsbuilder (#36180)
- Port away from
flake-utils(#35675) - Remove nolint (#36252)
- Update the Unlicense copy to latest version (#36636)
- Update to go 1.26.0 and golangci-lint 2.9.0 (#36588)
- Replace
google/go-licenseswith custom generation (#36575) - Update go dependencies (#36548)
- Bump appleboy/git-push-action from 1.0.0 to 1.2.0 (#36306)
- Remove fomantic form module (#36222)
- Bump setup-node to v6, re-enable cache (#36207)
- Bump crowdin/github-action from 1 to 2 (#36204)
- Revert "Bump alpine to 3.23 (#36185)" (#36202)
- Update chroma to v2.21.1 (#36201)
- Bump astral-sh/setup-uv from 6 to 7 (#36198)
- Bump docker/build-push-action from 5 to 6 (#36197)
- Bump aws-actions/configure-aws-credentials from 4 to 5 (#36196)
- Bump dev-hanz-ops/install-gh-cli-action from 0.1.0 to 0.2.1 (#36195)
- Add JSON linting (#36192)
- Enable dependabot for actions (#36191)
- Bump alpine to 3.23 (#36185)
- Update chroma to v2.21.0 (#36171)
- Update JS deps and eslint enhancements (#36147)
- Update JS deps (#36091)
- update golangci-lint to v2.7.0 (#36079)
- Update JS deps, fix deprecations (#36040)
- Update JS deps (#35978)
- Add toolchain directive to go.mod (#35901)
- Move
gitea-vetto usego tool(#35878) - Update to go 1.25.4 (#35877)
- Enable TypeScript
strictNullChecks(#35843) - Enable
vue/require-typed-refeslint rule (#35764) - Update JS dependencies (#35759)
- Move
codeformatfolder to tools (#35758) - Update dependencies (#35733)
- Bump happy-dom from 20.0.0 to 20.0.2 (#35677)
- Bump setup-go to v6 (#35660)
- Update JS deps, misc tweaks (#35643)
- Bump happy-dom from 19.0.2 to 20.0.0 (#35625)
- Use bundled version of spectral (#35573)
- Update JS and PY deps (#35565)
- Bump github.com/wneessen/go-mail from 0.6.2 to 0.7.1 (#35557)
- Migrate from webpack to vite (#37002)
- Update JS dependencies and misc tweaks (#37064)
- Update to eslint 10 (#36925)
- Optimize Docker build with dependency layer caching (#36864)
- Update JS deps (#36850)
- Update tool dependencies and fix new lint issues (#36702)
- Remove redundant linter rules (#36658)
- Move Fomantic dropdown CSS to custom module (#36530)
- Remove and forbid
@ts-expect-error(#36513) - Refactor git command stderr handling (#36402)
- Enable gocheckcompilerdirectives linter (#36156)
- Replace
lint-go-goplswith additionalgovetlinters (#36028) - Update golangci-lint to v2.6.0 (#35801)
- Misc tool tweaks (#35734)
- Add cache to container build (#35697)
- Upgrade vite (#37126)
- Update
setup-uvto v8.0.0 (#37101) - Upgrade
go-gitto v5.17.2 and related dependencies (#37060) - Raise minimum Node.js version to 22.18.0 (#37058)
- Upgrade
golang.org/x/imageto v0.38.0 (#37054) - Update minimum go version to 1.26.1, golangci-lint to 2.11.2, fix test style (#36876)
- Enable eslint concurrency (#36878)
- Vendor relative-time-element as local web component (#36853)
- Update material-icon-theme v5.32.0 (#36832)
- Update Go dependencies (#36781)
- Upgrade minimatch (#36760)
- Remove i18n backport tool at the moment because of translation format changed (#36643)
- Update emoji data for Unicode 16 (#36596)
- Update JS dependencies, adjust webpack config, misc fixes (#36431)
- Update material-icon-theme to v5.31.0 (#36427)
- Update JS and PY deps (#36383)
- Bump alpine to 3.23, add platforms to
docker-dryrun(#36379) - Update JS deps (#36354)
- Update goldmark to v1.7.16 (#36343)
- Update chroma to v2.22.0 (#36342)
- DOCS
- Update AI Contribution Policy (#37022)
- Update AGENTS.md with additional guidelines (#37018)
- Add missing cron tasks to example ini (#37012)
- Add AI Contribution Policy to CONTRIBUTING.md (#36651)
- Minor punctuation improvement in CONTRIBUTING.md (#36291)
- Add documentation for markdown anchor post-processing (#36443)
- MISC
本版本的贡献者
感谢所有为本版本做出贡献的人!
- @0xMax42
- @6543
- @a1012112796
- @AdamMajer
- @alphazeba
- @argoyle
- @bartvdbraak
- @bimakw
- @bircni
- @BLumia
- @brymut
- @bytedream
- @ChristopherHX
- @CorySanin
- @crawfordxx
- @cyx25
- @da-Kai
- @DaanSelen
- @danigm
- @dawidgora
- @Dh4nu5hwebdev
- @divyun
- @dmach
- @DrMaxNix
- @e6aluga
- @Enzime
- @Excellencedev
- @Exgene
- @hamkido
- @heathdutton
- @ita004
- @ivan-tkatchev
- @jimparis
- @josetduarte
- @junoberryferry
- @kemzeb
- @krjakbrjak
- @lifegpc
- @lunny
- @Luohaothu
- @luojiyin1987
- @lutinglt
- @majiayu000
- @mdferdousalam
- @meln5674
- @Mic92
- @micahkepe
- @mithileshgupta12
- @mrtz-j
- @myers
- @mykh-hailo
- @NAM-MAN
- @navneet102
- @Naxdy
- @nllptrx
- @noeljackson
- @OptionalValue
- @peterverraedt
- @POPSuL
- @robgonnella
- @robinson-j16
- @Rohansguliani
- @rossigee
- @saneks222
- @schinkelg
- @ScionOfDesign
- @sebastianertz
- @shafi-VM
- @shashank-netapp
- @silverwind
- @smileBeda
- @sollyu
- @strk
- @surya-purohit
- @techknowlogick
- @telometto
- @thbeu
- @TheFox0x7
- @theoludwig
- @Theproudcold
- @tototomate123
- @tycho
- @tyroneyeh
- @Utopiah
- @WinterCabbage
- @wxiaoguang
- @xDarkmanx
- @xiaox315
- @xijiang
- @yshyuk
- @Zettat123
- @zorrobiwan
- @ZPascal
以及更多参与测试、报告问题和翻译工作的贡献者!
我们将在下一个版本中感谢所有向后移植合并请求的原作者。

