Commit Graph

28 Commits

Author SHA1 Message Date
Giteabot
4ee8266519 chore(deps): update action dependencies (#37751)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [pnpm/action-setup](https://redirect.github.com/pnpm/action-setup) |
action | patch | `v6.0.5` → `v6.0.8` |
|
[renovatebot/github-action](https://redirect.github.com/renovatebot/github-action)
| action | patch | `v46.1.13` → `v46.1.14` |

---

### Release Notes

<details>
<summary>pnpm/action-setup (pnpm/action-setup)</summary>

###
[`v6.0.8`](https://redirect.github.com/pnpm/action-setup/releases/tag/v6.0.8)

[Compare
Source](https://redirect.github.com/pnpm/action-setup/compare/v6.0.7...v6.0.8)

##### What's Changed

- docs(README): fix `cache_dependency_path` type by
[@&#8203;haines](https://redirect.github.com/haines) in
[#&#8203;257](https://redirect.github.com/pnpm/action-setup/pull/257)
- fix: drop patchPnpmEnv so standalone+self-update works on Windows by
[@&#8203;zkochan](https://redirect.github.com/zkochan) in
[#&#8203;258](https://redirect.github.com/pnpm/action-setup/pull/258)
- fix: update pnpm to 11.1.1 by
[@&#8203;mungodewar](https://redirect.github.com/mungodewar) in
[#&#8203;248](https://redirect.github.com/pnpm/action-setup/pull/248)

##### New Contributors

- [@&#8203;mungodewar](https://redirect.github.com/mungodewar) made
their first contribution in
[#&#8203;248](https://redirect.github.com/pnpm/action-setup/pull/248)

**Full Changelog**:
<https://github.com/pnpm/action-setup/compare/v6.0.7...v6.0.8>

###
[`v6.0.7`](https://redirect.github.com/pnpm/action-setup/releases/tag/v6.0.7)

[Compare
Source](https://redirect.github.com/pnpm/action-setup/compare/v6.0.6...v6.0.7)

##### What's Changed

- fix: honor devEngines.packageManager.onFail=error
([#&#8203;252](https://redirect.github.com/pnpm/action-setup/issues/252))
by [@&#8203;zkochan](https://redirect.github.com/zkochan) in
[#&#8203;254](https://redirect.github.com/pnpm/action-setup/pull/254)
- fix: restore inputs from state in post by
[@&#8203;haines](https://redirect.github.com/haines) in
[#&#8203;255](https://redirect.github.com/pnpm/action-setup/pull/255)
- fix: self-update bootstrap to packageManager-pinned version
([#&#8203;233](https://redirect.github.com/pnpm/action-setup/issues/233))
by [@&#8203;zkochan](https://redirect.github.com/zkochan) in
[#&#8203;256](https://redirect.github.com/pnpm/action-setup/pull/256)

##### New Contributors

- [@&#8203;haines](https://redirect.github.com/haines) made their first
contribution in
[#&#8203;255](https://redirect.github.com/pnpm/action-setup/pull/255)

**Full Changelog**:
<https://github.com/pnpm/action-setup/compare/v6.0.6...v6.0.7>

###
[`v6.0.6`](https://redirect.github.com/pnpm/action-setup/releases/tag/v6.0.6)

[Compare
Source](https://redirect.github.com/pnpm/action-setup/compare/v6.0.5...v6.0.6)

##### What's Changed

- fix: bin\_dest output points to self-updated pnpm, not bootstrap by
[@&#8203;zkochan](https://redirect.github.com/zkochan) in
[#&#8203;249](https://redirect.github.com/pnpm/action-setup/pull/249)

**Full Changelog**:
<https://github.com/pnpm/action-setup/compare/v6.0.5...v6.0.6>

</details>

<details>
<summary>renovatebot/github-action (renovatebot/github-action)</summary>

###
[`v46.1.14`](https://redirect.github.com/renovatebot/github-action/releases/tag/v46.1.14)

[Compare
Source](https://redirect.github.com/renovatebot/github-action/compare/v46.1.13...v46.1.14)

##### Documentation

- Revise Fine-grained Personal Access Tokens section
([#&#8203;1030](https://redirect.github.com/renovatebot/github-action/issues/1030))
([fef7882](fef7882e2c))
- set `RENOVATE_PLATFORM_COMMIT` to `enabled`
([#&#8203;1029](https://redirect.github.com/renovatebot/github-action/issues/1029))
([9d07dfa](9d07dfa4f7))
- update references to renovatebot/github-action to v46.1.13
([9a41b99](9a41b990c5))

##### Miscellaneous Chores

- cleanup
([8abcd0e](8abcd0e9f0))
- **deps:** update commitlint monorepo to v20.5.3
([a4e124d](a4e124de37))
- **deps:** update dependency globals to v17.6.0
([d5ca6d4](d5ca6d4cf3))
- **deps:** update dependency typescript-eslint to v8.59.1
([1dd2319](1dd2319cb4))
- enable pnpm `minimumReleaseAge`
([00a8327](00a83273b5))

##### Build System

- **deps:** lock file maintenance
([f6821a2](f6821a23ac))

##### Continuous Integration

- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.160.7
([1189f69](1189f69d1f))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.162.0
([43d0a48](43d0a48b25))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.163.0
([61a1654](61a1654b1a))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.163.1
([4226876](4226876858))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.163.2
([b3318e0](b3318e0a24))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.163.4
([09fe3e9](09fe3e9361))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.164.0
([5736585](5736585dd1))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.164.1
([8b164cc](8b164cce79))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.164.2
([44728cc](44728cc649))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.165.0
([bde1da1](bde1da1de3))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.166.0
([#&#8203;1031](https://redirect.github.com/renovatebot/github-action/issues/1031))
([4b957d1](4b957d1cab))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.166.2
([499cfeb](499cfeb9d6))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.166.3
([fe8a943](fe8a9436e2))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.167.0
([f8ca6db](f8ca6db770))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.168.4
([2e15d66](2e15d66203))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.168.5
([a87ee3d](a87ee3d8ae))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.168.6
([683e7dd](683e7dd082))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.169.0
([f6166e7](f6166e7f7b))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.169.4
([f1f81f9](f1f81f959e))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.170.0
([5473f54](5473f54a8f))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.170.12
([b47aa13](b47aa13511))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.170.13
([7e8834d](7e8834d80e))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.170.14
([9b5f9e6](9b5f9e6c8f))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.170.15
([98631e8](98631e88b8))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.170.16
([ab997a9](ab997a9588))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.170.17
([24a51e0](24a51e0fd8))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.170.18
([f82d2cd](f82d2cd716))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.170.19
([3d684f2](3d684f2e07))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.170.20
([d7afc6b](d7afc6be62))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.170.3
([306f0c9](306f0c9105))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.170.8
([f0eea19](f0eea19bf3))
- **deps:** update ghcr.io/renovatebot/renovate docker tag to v43.170.9
([f3af74e](f3af74eb2f))

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - Only on Monday (`* * * * 1`)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config
help](https://redirect.github.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://redirect.github.com/renovatebot/renovate).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xNDEuNSIsInVwZGF0ZWRJblZlciI6IjQzLjE0MS41IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2026-05-18 07:24:27 +00:00
silverwind
b4085c7e3c build: update pnpm to v11 (#37591)
Update to https://github.com/pnpm/pnpm/releases/tag/v11.0.0

- move all pnpm settings to `pnpm-workspace.yaml`, pnpm v11 only reads
that file
- drop redundant or no-op settings
- disable `strictDepBuilds` to avoid having to manually specify deps
with build scripts, this is equivalent to v10 where it will not execute
and warn.
- add workarounds for https://github.com/SukkaW/nolyfill/issues/119
- remove dead eslintrc entry

---
This PR was written with the help of Claude Opus 4.7

---------

Signed-off-by: silverwind <me@silverwind.io>
Co-authored-by: Claude (Opus 4.7) <noreply@anthropic.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
2026-05-08 04:17:20 +00:00
wxiaoguang
a39af1a829 refactor: use modernc sqlite driver as default (#37562)
The mattn driver is still kept, can be enabled by
TAGS="sqlite_mattn sqlite_unlock_notify"

---------

Co-authored-by: TheFox0x7 <thefox0x7@gmail.com>
2026-05-06 18:57:59 +00:00
wxiaoguang
1721c235a7 Refactor CI workflows (#37487)
1. only trigger docker-dryrun arm64&riscv64 when dockerfile changes
2. de-duplicate "contents: read" permission for most workflows
3. merge various "lint-*" jobs into one job
4. add missing lint targets to the "lint" (all) target
2026-05-01 02:15:01 +08:00
silverwind
d57d06335d Refactor integration tests infrastructure (#37462)
Co-authored-by: Claude (Opus 4.7) <noreply@anthropic.com>
Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2026-04-29 16:37:38 +00:00
silverwind
99cd4f6b22 Integrate renovate bot for all dependency updates (#37050)
Replaces Dependabot with Renovate. The new setup:

- One PR per ecosystem (GitHub Actions, Go modules + Makefile go-tool
pins, npm, Python via uv, Nix flake), opened weekly on Mondays with a
5-day release-age cooldown. Vulnerability PRs ship next-day via daily
cron + Renovate's `vulnerabilityAlerts` schedule bypass.
- All `uses:` action refs SHA-pinned with patch-level version comments
(same format as #36971, which this supersedes);
`helpers:pinGitHubActionDigests` keeps future bumps in that format.
- `renovatebot/github-action` runtime image pinned via the
upstream-recommended `RENOVATE_VERSION` env + magic comment +
`customManagers:githubActionsVersions` preset, so Renovate keeps the pin
updated.
- Custom regex manager tracks the `*_PACKAGE ?= <import-path>@<version>`
lines in `Makefile` (golangci-lint, swagger, actionlint, etc.) and
groups them into the same Go PR via `matchDatasources: ["go"]`.
- Post-upgrade tasks regenerate `assets/go-licenses.json` (`make tidy`)
and the SVG sprite (`make svg`), gated by an env-level command
allowlist.
- Replaces the standalone `cron-flake-updater` workflow — Renovate's nix
manager tracks `flake.nix` inputs and produces the same `flake.lock`
bump PRs on the regular weekly schedule.
- npm and gomod-replace pins live in `renovate.json5` only;
`updates@17.16.3` reads them from there too, so the standalone
`updates.config.ts` is gone and one source of truth covers both tools.

Fixes: https://github.com/go-gitea/gitea/issues/33386
Signed-off-by: silverwind <me@silverwind.io>
Signed-off-by: TheFox0x7 <thefox0x7@gmail.com>
Co-authored-by: Claude (Opus 4.6) <noreply@anthropic.com>
Co-authored-by: TheFox0x7 <thefox0x7@gmail.com>
Co-authored-by: Nicolas <bircni@icloud.com>
Co-authored-by: Giteabot <teabot@gitea.io>
2026-04-26 14:25:22 +00:00
silverwind
ebf30ac4db Optimize CI caches (#37387)
Cache includes go, lint and unittests. Integration tests with their
standalone binaries are uncacheable with their current architecture.

Every Go job uses a new composite action (`.github/actions/go-cache`)
that restores and saves the Go module cache, a shared build cache, and
the golangci-lint cache. A `cache-seeder` workflow runs on `push: main`
to pre-populate those slots; PRs read them via GitHub's default-branch
fallback, so the common case is warm from the first commit.

Also dropped `-coverprofile` from `test-unit` (it silently disabled Go's
test result cache), and `-race` from `test-pgsql` and `test-mysql` (kept
on `test-unit` and `test-sqlite`).

Signed-off-by: silverwind <me@silverwind.io>
Co-authored-by: Claude (Opus 4.7) <noreply@anthropic.com>
Co-authored-by: Nicolas <bircni@icloud.com>
2026-04-26 10:25:35 +00:00
silverwind
b31eef2828 Stabilize issue-project e2e test, increase timeout factor (#37297)
1. stabilize flaky e2e test from
2f5b5a9e9c
2. increase ci timeout factor to 4 as 3 was not enough
3. add a `e2e` category to files-changed so e2e-test-only changes
trigger ci

---
This PR was written with the help of Claude Opus 4.7

---------

Co-authored-by: Claude (Opus 4.7) <noreply@anthropic.com>
2026-04-19 17:27:23 +00:00
silverwind
cf1e4d7c42 Update GitHub Actions to latest major versions (#36964)
Update all Actions to their latest major versions:

- `actions/checkout`: v5 → v6
- `dorny/paths-filter`: v3 → v4
- `pnpm/action-setup`: v4 → v5
- `docker/setup-qemu-action`: v3 → v4
- `docker/setup-buildx-action`: v3 → v4
- `docker/build-push-action`: v6 → v7
- `docker/metadata-action`: v5 → v6
- `docker/login-action`: v3 → v4
- `crazy-max/ghaction-import-gpg`: v6 → v7
- `aws-actions/configure-aws-credentials`: v5 → v6

All updates are Node 24 runtime bumps with no workflow-breaking changes
for our usage.

Co-authored-by: Claude (Opus 4.6) <noreply@anthropic.com>
2026-03-23 14:42:36 -07:00
silverwind
18e0746b7b Rework e2e tests (#36634)
- Replace the e2e tests initialization with a simple bash script,
removing the previous Go harness.
- `make test-e2e` is the single entry point. It always starts a fully
isolated ephemeral Gitea instance with its own temp directory, SQLite
database, and config — no interference with the developer's running
instance.
- A separate `gitea-e2e` binary is built via `EXECUTABLE_E2E` using
`TEST_TAGS` (auto-includes sqlite with `CGO_ENABLED=1`), keeping the
developer's regular `gitea` binary untouched.
- No more split into database-specific e2e tests. Test timeouts are
strict, can be relaxed later if needed.
- Simplified and streamlined the playwright config and test files.
- Remove all output generation of playwright and all references to
visual testing.
- Tests run on Chrome locally, Chrome + Firefox on CI.
- Simplified CI workflow — visible separate steps for frontend, backend,
and test execution.
- All exported env vars use `GITEA_TEST_E2E_*` prefix.
- Use `GITEA_TEST_E2E_FLAGS` to pass flags to playwright, e.g.
`GITEA_TEST_E2E_FLAGS="--ui" make test-e2e` for UI mode or
`GITEA_TEST_E2E_FLAGS="--headed" make test-e2e` for headed mode.
- Use `GITEA_TEST_E2E_DEBUG=1 make test-e2e` to show Gitea server
output.

---------

Signed-off-by: silverwind <me@silverwind.io>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-20 16:26:47 -08:00
silverwind
66707bc3ea Fix actions lint (#36029)
actionlint since https://github.com/rhysd/actionlint/releases/tag/v1.7.9
detects constant conditions and this workflow was being disabled in
58d2a87c6c
by such a condition which made the lint fail:


https://github.com/go-gitea/gitea/actions/runs/19673752806/job/56349128912?pr=36028

Instead, remove the whole workflow file. I'm sure we can re-create it if
the need arises.

Also, I locked the actionlint dependency to prevent similar surprises in
the future.
2025-11-26 10:13:37 -08:00
silverwind
96102c69e7 Bump setup-go to v6 (#35660) 2025-10-14 14:28:05 -04:00
silverwind
912515e63a Bump actions/checkout to v5 (#35644) 2025-10-12 18:01:42 +00:00
silverwind
4d43d85941 Bump setup-node to v5 (#35448)
See https://github.com/actions/setup-node/releases/tag/v5.0.0

Caching is now enabled by default when `packageManager` is present in
package.json, and we have that. `cache-dependency-path` is unneccesary
because the action will automatically detect it.
2025-09-10 16:11:14 +00:00
techknowlogick
361e59fd53 Switch to pnpm (#35274)
Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: silverwind <me@silverwind.io>
2025-09-04 01:17:14 +00:00
silverwind
dcc9206a59 Raise minimum Node.js version to 20, test on 24 (#34713)
- Node.js 18 is now EOL, so raise minimum version to current LTS v20
- Test on 24
- Change devcontainers to use LTS version (currently 22),
[ref](https://github.com/devcontainers/features/tree/main/src/node)
2025-06-13 13:40:39 -04:00
wxiaoguang
58d2a87c6c update go&js dependencies (#34262) 2025-04-23 21:22:40 +00:00
silverwind
9880c1372e Bump CI,Flake and Snap to Node 22 (#32487)
Node 22 is LTS since 2024-10-29. Updated it everywhere.

---------

Co-authored-by: techknowlogick <techknowlogick@gitea.com>
2024-11-13 21:39:55 +00:00
silverwind
acfe29fc2b Enable npm cache on setup-node action (#30577)
Enable npm dependency cache in
[setup-node](https://github.com/actions/setup-node). This should work
reliably and across branches as well.
2024-04-19 03:29:08 +00:00
Rui Chen
caceb43313 feat: bump dessant/lock-threads and actions/setup-go to use nodejs20 runtime (#28565)
Update more actions to use nodejs20 runtime and also update the docs for
checkout action usage.

similar to:
- #27836
- #27096

---------

Signed-off-by: Rui Chen <rui@chenrui.dev>
2023-12-21 13:31:04 +08:00
Chongyi Zheng
0a710133cd Bump workflows in github actions (#27836)
All major version upgrades are related to using Node v20 as default
runtime
2023-10-30 15:56:43 +08:00
Yevhen Pavlov
d98c863884 actions/setup-go use go-version-file (#27651)
These changes will allow not to specify the version of go in every
pipeline.
2023-10-17 10:24:54 +00:00
puni9869
5e039b0580 Upgrading the actions/checkout@4 (#27096)
as title
..Upgrading the actions/checkout@4

Signed-off-by: puni9869 <punitinani1@hotmail.com>
Co-authored-by: silverwind <me@silverwind.io>
2023-09-16 15:06:27 +00:00
silverwind
1772814605 Lock go to 1.21 on CI (#26433)
To prevent unwanted surprises with new minor versions of go, lock the
version to minor version using [semver tilde
syntax](https://github.com/npm/node-semver#tilde-ranges-123-12-1). We
were already getting 1.21.0 since yesterday, so use that version now as
minimum.
2023-08-10 21:53:44 +00:00
silverwind
4c290e9209 GitHub Actions enhancements for frontend (#25150)
- Don't run DB tests for frontend-only changes
- Build frontend as part of frontend step
- Build everything when actions change
2023-06-14 23:30:37 +08:00
Lunny Xiao
93c6a9a652 Use file filters action instead of Github's files filter (#24877)
Inspired by
https://github.com/go-gitea/gitea/pull/24530#issuecomment-1558815301

This PR use a file filter action to do different CI jobs according
changed files types. All types are defined in
`.github/file-filters.yml`. Now there are 4 types, `docs`, `backend`,
`frontend` and `build`. Then if a PR only changed docs files, those CI
jobs which passed the conditions will run, and other types are also like
this.

---------

Co-authored-by: silverwind <me@silverwind.io>
2023-05-25 01:33:31 +00:00
Lunny Xiao
c78b923822 Don't run build and test if only docs changed (#24530)
Co-authored-by: techknowlogick <techknowlogick@gitea.io>
2023-05-16 02:53:18 +00:00
silverwind
6c8b680f91 GitHub Actions cleanups (#24620)
- Remove actions name where command is descriptive enough
- Use kebab-case instead of snake-case for step names
- Use shorter job names because to make PR checks more readable
- Remove duplicate `checks-backend`

---------

Co-authored-by: Yarden Shoham <git@yardenshoham.com>
2023-05-11 21:21:28 -04:00