Sign in

Search issue titles and bodies, change requests and comments. Private repositories you cannot read are not included.

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.

Search for an issue when linking it to a change

838f282eebf7e68f61318eae93d03263df1341df · Keenan Nemetz · 10d ago · parent 267feec2

Search for an issue when linking it to a change

The link field only accepted an id that the author already knew. It is now a search box over the issue index that matches a title, a #number, or a ULID prefix. A matching issue is a button: picking one posts the same link write and replaces the Issues section with the new list. Issues already linked are left out of the results.

server/web/static/vole.css +19−3

@@ -1395,9 +1395,25 @@ details[open] > summary .tree-chevron { transform: rotate(90deg); }
1395 1395 .request-issue form button:hover { color: var(--bad); }
1396 1396 .request-unlink { display: inline-grid; place-items: center; width: 22px; min-height: 22px; border-radius: var(--radius); }
1397 1397 .request-unlink:hover { background: var(--bg-hover); text-decoration: none; }
1398 .request-issue-add { display: flex; gap: 6px; margin-top: 8px; }
1399 .request-issue-add input { flex: 1; min-width: 0; font-size: calc(12.65px * var(--font-scale)); }
1400 .request-issue-add button { flex: 0 0 auto; padding: 0 9px; }
1398 .request-issue-search { margin-top: 8px; }
1399 .request-issue-search input { width: 100%; font-size: calc(12.65px * var(--font-scale)); }
1400 .request-issue-results { margin-top: 6px; }
1401 .request-issue-results p { margin: 0; font-size: calc(12.65px * var(--font-scale)); }
1402 .thread-side .request-issue-match { margin: 0; }
1403 .request-issue-match button {
1404 display: flex;
1405 flex-direction: column;
1406 gap: 1px;
1407 width: 100%;
1408 min-height: 0;
1409 padding: 4px 6px;
1410 border: 0;
1411 border-radius: var(--radius);
1412 background: none;
1413 color: var(--fg);
1414 text-align: left;
1415 }
1416 .request-issue-match button:hover { background: var(--bg-hover); color: var(--accent); }
1401 1417
1402 1418 /* ---------- run detail ---------- */
1403 1419