detached f19a207

Merge branch 'main' into refactor/engine-abstraction

commit
f19a20751bb1deea9521ddc79d9cf6d922d4d8fa
author
bnema · · 2026-03-18 19:54 UTC
committer
GitHub · · 2026-03-18 19:54 UTC
merge of
5b9fd74 + 7fa0377 · diff against the first parent
signature
GPG UnverifiedB5690EEEBB952194 The key is unknown
4 files · +457 -973
M go.mod +4 -4
@@ -11,14 +11,14 @@ require (
1111 github.com/godbus/dbus/v5 v5.2.2
1212 github.com/jwijenbergh/purego v0.0.0-20251017112123-b71757b9ba42
1313 github.com/jwijenbergh/puregotk v0.0.0-20260212181341-fb13c245f9f0
14- github.com/ncruces/go-sqlite3 v0.31.1
14+ github.com/ncruces/go-sqlite3 v0.32.0
1515 github.com/pelletier/go-toml/v2 v2.2.4
1616 github.com/pressly/goose/v3 v3.27.0
1717 github.com/rs/zerolog v1.34.0
1818 github.com/spf13/cobra v1.10.2
1919 github.com/spf13/viper v1.21.0
2020 github.com/stretchr/testify v1.11.1
21- golang.org/x/image v0.36.0
21+ golang.org/x/image v0.37.0
2222 golang.org/x/sys v0.42.0
2323 gopkg.in/yaml.v3 v3.0.1
2424 )
@@ -65,7 +65,7 @@ require (
6565 github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e // indirect
6666 go.uber.org/multierr v1.11.0 // indirect
6767 go.yaml.in/yaml/v3 v3.0.4 // indirect
68- golang.org/x/sync v0.19.0 // indirect
69- golang.org/x/text v0.34.0 // indirect
68+ golang.org/x/sync v0.20.0 // indirect
69+ golang.org/x/text v0.35.0 // indirect
7070 gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 // indirect
7171 )
@@ -11,14 +11,14 @@ require (
11 github.com/godbus/dbus/v5 v5.2.211 github.com/godbus/dbus/v5 v5.2.2
12 github.com/jwijenbergh/purego v0.0.0-20251017112123-b71757b9ba4212 github.com/jwijenbergh/purego v0.0.0-20251017112123-b71757b9ba42
13 github.com/jwijenbergh/puregotk v0.0.0-20260212181341-fb13c245f9f013 github.com/jwijenbergh/puregotk v0.0.0-20260212181341-fb13c245f9f0
14- github.com/ncruces/go-sqlite3 v0.31.114+ github.com/ncruces/go-sqlite3 v0.32.0
15 github.com/pelletier/go-toml/v2 v2.2.415 github.com/pelletier/go-toml/v2 v2.2.4
16 github.com/pressly/goose/v3 v3.27.016 github.com/pressly/goose/v3 v3.27.0
17 github.com/rs/zerolog v1.34.017 github.com/rs/zerolog v1.34.0
18 github.com/spf13/cobra v1.10.218 github.com/spf13/cobra v1.10.2
19 github.com/spf13/viper v1.21.019 github.com/spf13/viper v1.21.0
20 github.com/stretchr/testify v1.11.120 github.com/stretchr/testify v1.11.1
21- golang.org/x/image v0.36.021+ golang.org/x/image v0.37.0
22 golang.org/x/sys v0.42.022 golang.org/x/sys v0.42.0
23 gopkg.in/yaml.v3 v3.0.123 gopkg.in/yaml.v3 v3.0.1
24 )24 )
@@ -65,7 +65,7 @@ require (
65 github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e // indirect65 github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e // indirect
66 go.uber.org/multierr v1.11.0 // indirect66 go.uber.org/multierr v1.11.0 // indirect
67 go.yaml.in/yaml/v3 v3.0.4 // indirect67 go.yaml.in/yaml/v3 v3.0.4 // indirect
68- golang.org/x/sync v0.19.0 // indirect68+ golang.org/x/sync v0.20.0 // indirect
69- golang.org/x/text v0.34.0 // indirect69+ golang.org/x/text v0.35.0 // indirect
70 gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 // indirect70 gopkg.in/check.v1 v1.0.0-20190902080502-41f04d3bba15 // indirect
71 )71 )
M go.sum +8 -8 generated file: collapsed
M webui/package-lock.json +436 -952 generated file: collapsed
M webui/package.json +9 -9
@@ -21,26 +21,26 @@
2121 "devDependencies": {
2222 "@internationalized/date": "^3.12.0",
2323 "@lucide/svelte": "^0.577.0",
24- "@sveltejs/vite-plugin-svelte": "^6.2.4",
25- "@tailwindcss/cli": "^4.2.1",
26- "@tailwindcss/postcss": "^4.2.1",
27- "@types/node": "^25.4.0",
28- "@typescript-eslint/eslint-plugin": "^8.57.0",
29- "@typescript-eslint/parser": "^8.57.0",
24+ "@sveltejs/vite-plugin-svelte": "^7.0.0",
25+ "@tailwindcss/cli": "^4.2.2",
26+ "@tailwindcss/postcss": "^4.2.2",
27+ "@types/node": "^25.5.0",
28+ "@typescript-eslint/eslint-plugin": "^8.57.1",
29+ "@typescript-eslint/parser": "^8.57.1",
3030 "autoprefixer": "^10.4.27",
3131 "eslint": "^10.0.3",
3232 "eslint-plugin-svelte": "^3.15.2",
3333 "globals": "^17.4.0",
3434 "postcss": "^8.5.8",
35- "svelte": "^5.53.10",
35+ "svelte": "^5.54.0",
3636 "svelte-awesome-color-picker": "^4.1.0",
3737 "svelte-check": "^4.4.5",
3838 "tailwind-variants": "^3.2.2",
3939 "tailwindcss": "^4.0.0",
4040 "tw-animate-css": "^1.4.0",
4141 "typescript": "^5.3.0",
42- "typescript-eslint": "^8.57.0",
43- "vite": "^7.3.1"
42+ "typescript-eslint": "^8.57.1",
43+ "vite": "^8.0.0"
4444 },
4545 "dependencies": {
4646 "bits-ui": "^2.16.3",
@@ -21,26 +21,26 @@
21 "devDependencies": {21 "devDependencies": {
22 "@internationalized/date": "^3.12.0",22 "@internationalized/date": "^3.12.0",
23 "@lucide/svelte": "^0.577.0",23 "@lucide/svelte": "^0.577.0",
24- "@sveltejs/vite-plugin-svelte": "^6.2.4",24+ "@sveltejs/vite-plugin-svelte": "^7.0.0",
25- "@tailwindcss/cli": "^4.2.1",25+ "@tailwindcss/cli": "^4.2.2",
26- "@tailwindcss/postcss": "^4.2.1",26+ "@tailwindcss/postcss": "^4.2.2",
27- "@types/node": "^25.4.0",27+ "@types/node": "^25.5.0",
28- "@typescript-eslint/eslint-plugin": "^8.57.0",28+ "@typescript-eslint/eslint-plugin": "^8.57.1",
29- "@typescript-eslint/parser": "^8.57.0",29+ "@typescript-eslint/parser": "^8.57.1",
30 "autoprefixer": "^10.4.27",30 "autoprefixer": "^10.4.27",
31 "eslint": "^10.0.3",31 "eslint": "^10.0.3",
32 "eslint-plugin-svelte": "^3.15.2",32 "eslint-plugin-svelte": "^3.15.2",
33 "globals": "^17.4.0",33 "globals": "^17.4.0",
34 "postcss": "^8.5.8",34 "postcss": "^8.5.8",
35- "svelte": "^5.53.10",35+ "svelte": "^5.54.0",
36 "svelte-awesome-color-picker": "^4.1.0",36 "svelte-awesome-color-picker": "^4.1.0",
37 "svelte-check": "^4.4.5",37 "svelte-check": "^4.4.5",
38 "tailwind-variants": "^3.2.2",38 "tailwind-variants": "^3.2.2",
39 "tailwindcss": "^4.0.0",39 "tailwindcss": "^4.0.0",
40 "tw-animate-css": "^1.4.0",40 "tw-animate-css": "^1.4.0",
41 "typescript": "^5.3.0",41 "typescript": "^5.3.0",
42- "typescript-eslint": "^8.57.0",42+ "typescript-eslint": "^8.57.1",
43- "vite": "^7.3.1"43+ "vite": "^8.0.0"
44 },44 },
45 "dependencies": {45 "dependencies": {
46 "bits-ui": "^2.16.3",46 "bits-ui": "^2.16.3",

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