vole
Clone
Read only, no credentials:
https://rodent.software/git/vole.git
Write over SSH with a registered key:
git clone ssh://git@0.0.0.0:2222/vole.git
A free and open-source forge that lives in your Git repo.
Rename Change requests to Changes in the web UI
b06184d1105ff5ea27a5b8dd0a827f0bf870ce7a · Keenan Nemetz · 11d ago · parent 55615c7a
Rename Change requests to Changes in the web UI Use one word for a proposed branch update: the repository tab, page heading, list, empty states, overview, home page, activity feed, and error messages now say Changes. Add the missing subtitle to the changes list page.
server/web/templates/requests.html +11−10
| @@ -4,9 +4,10 @@ | |||
| 4 | 4 | ||
| 5 | 5 | <div class="page-head"> | |
| 6 | 6 | <div class="page-head-main"> | |
| 7 | <h1>Change requests</h1> | ||
| 7 | <h1>Changes</h1> | ||
| 8 | <p class="page-sub">Branches proposed for a base branch, with review and approvals before they land.</p> | ||
| 8 | 9 | </div> | |
| 9 | {{if .CanOpen}}<div class="page-head-actions"><a class="button" href="/r/{{.Name}}/requests/new">{{icon "plus"}}New change request</a></div>{{end}} | ||
| 10 | {{if .CanOpen}}<div class="page-head-actions"><a class="button" href="/r/{{.Name}}/requests/new">{{icon "plus"}}New change</a></div>{{end}} | ||
| 10 | 11 | </div> | |
| 11 | 12 | ||
| 12 | 13 | {{template "change_list" .}} | |
| @@ -33,7 +34,7 @@ | |||
| 33 | 34 | <div class="panel"> | |
| 34 | 35 | <table class="change-list"> | |
| 35 | 36 | <thead> | |
| 36 | <tr><th>Status</th><th>Change request</th><th>Base ← Head</th><th>Author</th><th>Approvals</th><th>Age</th></tr> | ||
| 37 | <tr><th>Status</th><th>Change</th><th>Base ← Head</th><th>Author</th><th>Approvals</th><th>Age</th></tr> | ||
| 37 | 38 | </thead> | |
| 38 | 39 | <tbody> | |
| 39 | 40 | {{range .Rows}} | |
| @@ -55,22 +56,22 @@ | |||
| 55 | 56 | {{template "pager" .Pager}} | |
| 56 | 57 | {{else if and (eq .State "open") .Total}} | |
| 57 | 58 | <div class="empty-state"> | |
| 58 | <p>No open change requests.{{if .Merged}} {{.Merged}} merged.{{end}}{{if .Closed}} {{.Closed}} closed.{{end}}</p> | ||
| 59 | {{if .Merged}}<a href="/r/{{.Name}}/requests?state=merged" hx-get="/r/{{.Name}}/requests?state=merged" hx-target="#change-list" hx-swap="outerHTML" hx-push-url="true">View merged change requests</a>{{end}} | ||
| 59 | <p>No open changes.{{if .Merged}} {{.Merged}} merged.{{end}}{{if .Closed}} {{.Closed}} closed.{{end}}</p> | ||
| 60 | {{if .Merged}}<a href="/r/{{.Name}}/requests?state=merged" hx-get="/r/{{.Name}}/requests?state=merged" hx-target="#change-list" hx-swap="outerHTML" hx-push-url="true">View merged changes</a>{{end}} | ||
| 60 | 61 | {{if and .Merged .Closed}} · {{end}} | |
| 61 | {{if .Closed}}<a href="/r/{{.Name}}/requests?state=closed" hx-get="/r/{{.Name}}/requests?state=closed" hx-target="#change-list" hx-swap="outerHTML" hx-push-url="true">View closed change requests</a>{{end}} | ||
| 62 | {{if .Closed}}<a href="/r/{{.Name}}/requests?state=closed" hx-get="/r/{{.Name}}/requests?state=closed" hx-target="#change-list" hx-swap="outerHTML" hx-push-url="true">View closed changes</a>{{end}} | ||
| 62 | 63 | </div> | |
| 63 | 64 | {{else if .Filtered}} | |
| 64 | 65 | <div class="empty-state"> | |
| 65 | <p>No change requests match this filter.</p> | ||
| 66 | <p>No changes match this filter.</p> | ||
| 66 | 67 | <a href="/r/{{.Name}}/requests" hx-get="/r/{{.Name}}/requests" hx-target="#change-list" hx-swap="outerHTML" hx-push-url="true">Clear filters</a> | |
| 67 | 68 | </div> | |
| 68 | 69 | {{else}} | |
| 69 | 70 | <div class="empty-state"> | |
| 70 | <p>No change requests yet.</p> | ||
| 71 | <p>No changes yet.</p> | ||
| 71 | 72 | <p class="muted">From a clone of this repository:</p> | |
| 72 | 73 | <pre>vole change new --title "..." --base {{.Base}}</pre> | |
| 73 | <p class="muted">A change request is also just a directory on the <code>vole</code> branch: | ||
| 74 | <p class="muted">A change is also just a directory on the <code>vole</code> branch: | ||
| 74 | 75 | <code>requests/<ulid>/request.md</code> naming the base branch and the head | |
| 75 | 76 | commit, plus <code>approvals/<account-id>.md</code> from each approver.</p> | |
| 76 | 77 | </div> | |
| @@ -274,7 +275,7 @@ | |||
| 274 | 275 | {{end}} | |
| 275 | 276 | ||
| 276 | 277 | {{define "request_tabs"}} | |
| 277 | <nav class="subtabs" aria-label="Change request sections"> | ||
| 278 | <nav class="subtabs" aria-label="Change sections"> | ||
| 278 | 279 | <a class="{{if eq .Tab "conversation"}}active{{end}}" href="/r/{{.Name}}/requests/{{.Request.ID}}"{{if eq .Tab "conversation"}} aria-current="page"{{end}}>{{icon "message-square"}}Conversation</a> | |
| 279 | 280 | <a class="{{if eq .Tab "files"}}active{{end}}" href="/r/{{.Name}}/requests/{{.Request.ID}}/files"{{if eq .Tab "files"}} aria-current="page"{{end}}>{{icon "file"}}Changes <span class="chip-count">{{.FileCount}}</span></a> | |
| 280 | 281 | <a class="{{if eq .Tab "runs"}}active{{end}}" href="/r/{{.Name}}/requests/{{.Request.ID}}/runs"{{if eq .Tab "runs"}} aria-current="page"{{end}}>{{icon "play"}}Runs <span class="chip-count">{{len .Checks}}</span></a> | |