- Gitea 1.26.0 mang nâng cấp lớn cho Actions (concurrency, private reusable workflows, re-run failed jobs, run summaries), chuyển frontend sang Vite + CodeMirror và vá 4 CVE.
- Đây là bản tiệm cận GitHub Actions rõ rệt nhất của Gitea.
TL;DR
Gitea 1.26.0 phát hành ngày 18/04/2026, chốt khoảng cách tính năng với GitHub Actions qua cú pháp concurrency, actions và reusable workflows từ private repo, nút re-run failed jobs, và run summaries dạng Markdown. Frontend chuyển từ Webpack sang Vite và thay Monaco bằng CodeMirror. Bản này cũng vá 4 CVE — nên upgrade sớm. Gitea Cloud tự nâng cấp trong cửa sổ bảo trì; self-hosted cần đọc kỹ 4 breaking changes.

Có gì mới
Bản 1.26 tập trung vào ba mảng: Actions CI, frontend/editor, và quản trị. Actions nhận loạt cập nhật đã chờ nhiều năm — issue gốc về concurrency (#24769) mở từ 2023. Frontend chuyển bundler và editor sau thời gian dài Monaco chiếm phần lớn bundle size. Quản trị có thêm instance-wide banner, maintenance mode, user badges, Terraform state registry và OpenAPI spec rendering.
Actions nâng cấp
- Concurrency syntax (PR #32751): khai báo
concurrencygroup để new run huỷ hoặc xếp hàng sau job đang chạy — giống GitHub Actions. Dùng được cho deploy-one-at-a-time hoặc auto-cancel PR cũ. - Private actions & reusable workflows: gọi action/workflow từ private repo trong cùng instance. Platform team giờ có thể tập trung security-scan steps mà không phải public.
- Re-run failed jobs: chỉ chạy lại job fail thay vì cả workflow, tiết kiệm runner minutes đáng kể cho pipeline dài.
- Run summaries: Markdown summary hiển thị cạnh logs, giống GitHub Actions job summary.
- Per-runner disable/pause: admin tạm pause runner để bảo trì mà không cần xoá đăng ký.
- Non-zipped artifacts: upload/download artifact mà không bị zip bọc bắt buộc.


Frontend: Vite + CodeMirror
Gitea 1.26 thay Webpack bằng Vite — HMR nhanh hơn, bundle nhỏ hơn, build time giảm. Song song, Monaco editor bị thay bằng CodeMirror cho in-browser editing: nhẹ hơn, hoạt động tốt hơn trên mobile. Locale files cũng đổi từ INI sang JSON. Với người dùng cuối, thay đổi lớn nhất cảm nhận được là page load nhanh hơn và editor khác hẳn về shortcut/theme.

Hiệu năng
Git operations được viết lại theo git cat-file --batch-command, giúp các thao tác đọc object nhiều lần trên một repo rẻ hơn. Merge-tree conflict detection tăng tốc PR preview. Heatmap, mention values, Vue components đều chuyển sang async loading. Pagination cho activity page được tối ưu. Với instance lớn (hàng ngàn repo), những thay đổi này cộng lại tạo khác biệt rõ.
So sánh nhanh
| Tính năng | Gitea 1.25 | Gitea 1.26 | GitHub Actions |
|---|---|---|---|
| concurrency syntax | Không | Có | Có |
| Private reusable workflows | Hạn chế | Có | Có |
| Re-run failed jobs | Không | Có | Có |
| Run summaries | Không | Có (Markdown) | Có |
| Self-host miễn phí | Có | Có | Không |
Use cases
- Team tự host CI: cuối cùng có thể diễn đạt "chỉ một deploy job chạy tại một thời điểm cho mỗi environment" bằng concurrency group, không cần workaround.
- Monorepo: tính năng download archive cho subpath giúp CI/bot lấy đúng thư mục cần, không phải clone toàn bộ.
- DevOps admin: instance-wide banner để thông báo maintenance window cho toàn user; Terraform state registry tích hợp, bớt phụ thuộc backend ngoài.
- Tổ chức nhạy cảm bảo mật: private reusable workflows cho phép platform team đóng gói security scan steps mà không public source.
- Người viết release notes: generate tự động từ merged PR, cắt giờ chuẩn bị.
Limitations & pricing
Gitea open source (MIT), self-host miễn phí; Gitea Cloud là SaaS trả phí. Bản này có 4 breaking changes cần chú ý:
- Swagger annotations sửa cho enums, status codes, notification state (#37030) — API client có thể cần regenerate.
- Bỏ endpoint
GET /api/v1/admin/runners/registration-token(#36801) — dùng POST tương đương. concurrencytrở thành reserved keyword trong Actions workflow — workflow nào dùng field custom tên này sẽ vỡ.PUBLIC_URL_DETECTIONmặc định thànhauto(#36955).
Ngoài ra, chuyển Monaco → CodeMirror đổi muscle memory shortcut của power user. Build pipeline custom tham chiếu Webpack internal sẽ hỏng khi qua Vite.
Bảo mật
Bản 1.26 vá 4 CVE: CVE-2026-28737 (XSS trong 3D file viewer), CVE-2026-22555 (thiếu permission check trong API fork flow), CVE-2026-27780 (bypass branch protection), và một lỗi unbounded response trong repo listing. Admin self-host nên nâng cấp sớm, đặc biệt instance có user ngoài.
What's next
Gitea tiếp tục thu hẹp khoảng cách với GitHub Actions — roadmap 1.27 nhắm tới cải thiện matrix strategy và artifact lớn hơn, đồng thời tối ưu tiếp git operations. Nếu đang tự host Gitea trên 1.25.x, lên 1.26 đáng làm sớm vì cả lợi ích Actions lẫn vá lỗ hổng.
Với team đang migrate từ GitHub.com sang self-hosted, 1.26 là thời điểm dễ thở nhất từ trước tới nay: workflow YAML copy sang gần như chạy được ngay, concurrency + reusable workflows khớp cú pháp, và runner agent tương thích. Repo Gitea hiện có 55k star và 6.6k fork — cộng đồng đủ lớn để yên tâm production.
Nguồn: blog.gitea.com, GitHub release, PR #32751.



