detached 495f8d7

fix(ci): add caching and 20m timeout for CGO lint

commit
495f8d70ada3113d0ed544bb590a97df2d34b843
author
bnema · · 2025-11-30 04:33 UTC
parent
920e9ed
signature
unsigned
3 files · +9 -8
M .github/workflows/ci.yml +5 -6
@@ -16,19 +16,17 @@ jobs:
1616 - uses: actions/setup-go@v6
1717 with:
1818 go-version: stable
19- - uses: actions/setup-node@v6
20- with:
21- node-version: '24'
19+ cache: true
2220 - name: Install WebKitGTK 6.0 dependencies
2321 run: |
2422 sudo apt-get update
2523 sudo apt-get install -y libwebkitgtk-6.0-dev libgtk-4-dev libgirepository1.0-dev
26- - name: Build frontend assets
27- run: make build-frontend
2824 - name: Run golangci-lint
2925 uses: golangci/golangci-lint-action@v7
3026 with:
31- version: v2.4
27+ version: v2.6.2
28+ skip-cache: false
29+ args: --timeout=20m
3230
3331 test:
3432 runs-on: ubuntu-latest
@@ -37,6 +35,7 @@ jobs:
3735 - uses: actions/setup-go@v6
3836 with:
3937 go-version: stable
38+ cache: true
4039 - uses: actions/setup-node@v6
4140 with:
4241 node-version: '24'
@@ -16,19 +16,17 @@ jobs:
16 - uses: actions/setup-go@v616 - uses: actions/setup-go@v6
17 with:17 with:
18 go-version: stable18 go-version: stable
19- - uses: actions/setup-node@v619+ cache: true
20- with:
21- node-version: '24'
22 - name: Install WebKitGTK 6.0 dependencies20 - name: Install WebKitGTK 6.0 dependencies
23 run: |21 run: |
24 sudo apt-get update22 sudo apt-get update
25 sudo apt-get install -y libwebkitgtk-6.0-dev libgtk-4-dev libgirepository1.0-dev23 sudo apt-get install -y libwebkitgtk-6.0-dev libgtk-4-dev libgirepository1.0-dev
26- - name: Build frontend assets
27- run: make build-frontend
28 - name: Run golangci-lint24 - name: Run golangci-lint
29 uses: golangci/golangci-lint-action@v725 uses: golangci/golangci-lint-action@v7
30 with:26 with:
31- version: v2.427+ version: v2.6.2
28+ skip-cache: false
29+ args: --timeout=20m
32 30
33 test:31 test:
34 runs-on: ubuntu-latest32 runs-on: ubuntu-latest
@@ -37,6 +35,7 @@ jobs:
37 - uses: actions/setup-go@v635 - uses: actions/setup-go@v6
38 with:36 with:
39 go-version: stable37 go-version: stable
38+ cache: true
40 - uses: actions/setup-node@v639 - uses: actions/setup-node@v6
41 with:40 with:
42 node-version: '24'41 node-version: '24'
M .golangci.yml +3 -1
@@ -95,6 +95,8 @@ linters:
9595
9696 exclusions:
9797 generated: lax
98+ paths:
99+ - vendor
98100 rules:
99101 - path: _test\.go
100102 linters:
@@ -113,7 +115,7 @@ linters:
113115 - lll
114116
115117 run:
116- timeout: 5m
118+ timeout: 20m
117119 modules-download-mode: readonly
118120 build-tags:
119121 - webkit_cgo
@@ -95,6 +95,8 @@ linters:
95 95
96 exclusions:96 exclusions:
97 generated: lax97 generated: lax
98+ paths:
99+ - vendor
98 rules:100 rules:
99 - path: _test\.go101 - path: _test\.go
100 linters:102 linters:
@@ -113,7 +115,7 @@ linters:
113 - lll115 - lll
114 116
115 run:117 run:
116- timeout: 5m118+ timeout: 20m
117 modules-download-mode: readonly119 modules-download-mode: readonly
118 build-tags:120 build-tags:
119 - webkit_cgo121 - webkit_cgo
M Makefile +1 -1
@@ -97,7 +97,7 @@ test-race: ## Run tests with race detection
9797 $(GOENV) CGO_ENABLED=1 go test -race -v ./...
9898
9999 # Linting
100-lint: ## Run golangci-lint
100+lint: ## Run golangci-lint (excludes pkg/webkit CGO files via config)
101101 @echo "Running golangci-lint..."
102102 golangci-lint run
103103
@@ -97,7 +97,7 @@ test-race: ## Run tests with race detection
97 $(GOENV) CGO_ENABLED=1 go test -race -v ./...97 $(GOENV) CGO_ENABLED=1 go test -race -v ./...
98 98
99 # Linting99 # Linting
100-lint: ## Run golangci-lint100+lint: ## Run golangci-lint (excludes pkg/webkit CGO files via config)
101 @echo "Running golangci-lint..."101 @echo "Running golangci-lint..."
102 golangci-lint run102 golangci-lint run
103 103

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 8

Tags 42

↑↓ moveenter openesc close