v0.21.0 cd9706d

.goreleaser.yaml RawHistoryFolder

1# GoReleaser config — builds cross-platform binaries and GitHub Release
2# artifacts for zut. The release workflow creates conventional-commit-based
3# v0.x tags, then invokes GoReleaser for that immutable tag.
4version: 2
5
6project_name: zut
7
8before:
9  hooks:
10    - go mod tidy
11
12builds:
13  - id: zut
14    main: ./cmd/zut
15    binary: zut
16    env:
17      - CGO_ENABLED=0
18    goos: [linux, darwin, windows]
19    goarch: [amd64, arm64]
20    # Windows/arm64 is shipped by Go but rarely used — skip to keep the
21    # release artifact list tidy.
22    ignore:
23      - goos: windows
24        goarch: arm64
25    flags:
26      - -trimpath
27    ldflags:
28      - -s -w
29      - -X main.version={{.Version}}
30      - -X main.commit={{.Commit}}
31      - -X main.date={{.Date}}
32
33archives:
34  - id: zut
35    # Human-friendly name: zut_0.1.0_darwin_arm64.tar.gz
36    name_template: "{{ .ProjectName }}_{{ .Version }}_{{ .Os }}_{{ .Arch }}"
37    files:
38      - LICENSE
39      - README.md
40    format_overrides:
41      - goos: windows
42        formats: [zip]
43
44checksum:
45  name_template: "checksums.txt"
46  algorithm: sha256
47
48snapshot:
49  version_template: "{{ incpatch .Version }}-next"
50
51git:
52  # Git's version-aware sort selects semantic versions correctly.
53  tag_sort: -version:refname
54
55changelog:
56  sort: asc
57  use: github
58  filters:
59    # Styling-only commits are neither releasable nor useful release notes.
60    exclude:
61      - "^style:"
62  groups:
63    - title: Added
64      regexp: "^feat(\\([^)]+\\))?!?:"
65      order: 0
66    - title: Fixed
67      regexp: "^fix(\\([^)]+\\))?!?:"
68      order: 1
69    - title: Changed
70      regexp: "^(perf|refactor|build)(\\([^)]+\\))?!?:"
71      order: 2
72    - title: Maintenance
73      regexp: "^(chore|ci)(\\([^)]+\\))?!?:"
74      order: 3
75    - title: Documentation
76      regexp: "^docs(\\([^)]+\\))?!?:"
77      order: 4
78    - title: Tests
79      regexp: "^test(\\([^)]+\\))?!?:"
80      order: 5
81    - title: Other changes
82      order: 999
83
84release:
85  github:
86    owner: bnema
87    name: zut
88  draft: false
89  prerelease: auto
90  header: |
91    ## zut {{ .Tag }}
92
93    Install with:
94
95    ```bash
96    curl -fsSL https://raw.githubusercontent.com/bnema/zut/main/install.sh | bash
97    ```
98
99    Or download a binary below, verify it with `checksums.txt`, and add it to your `$PATH`.

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 1

Tags 476

↑↓ moveenter openesc close