GitView v0.1.14
GitView v0.1.14 — KiCad boards, and cross-probing between schematic and PCB
GitView could already draw a KiCad schematic and highlight a net across it. This release adds the
board, and lets a selection cross between the two.
Open a .kicad_pcb
A board tab draws the PCB instead of showing its s-expression source.
It opens showing almost nothing, on purpose. You get the board outline immediately — a couple of
kilobytes — plus a row of layer chips carrying their populations (F.Cu 5376, B.Cu 4771, In2.Cu 540).
Copper is fetched only when you switch a layer on, because a copper layer on a real board is megabytes and
nothing should spend that before you have said what you want to look at. The counts are there so enabling a
layer is an informed choice rather than a surprise.
Tap a track or a pad to select its net. On colour the net goes accent and the rest dims; on the Color
E-Ink profile there is no accent to fall back on, so selection is carried by stroke weight — the same
rule the diff and schematic viewers already follow.
Only layers that actually hold something are offered. A board declares 39 and most are empty.
Cross-probe: schematic ⇄ board
Select a net on the schematic and an on board → action appears. It opens the .kicad_pcb beside it
with the same net already selected and copper switched on, so you land on the answer rather than a blank
outline. on schematic → goes back the same way.
The action only appears when there is genuinely a counterpart to open. GitView asks the bridge whether the
sibling file exists at the ref you are browsing rather than guessing from the filename, so it will not
offer you a button that fails.
A drawing that keeps up with its file
Previously, if a schematic or board changed on disk while you had it open, the picture quietly stopped
being true — the text refreshed underneath, the drawing did not. Editing a board in KiCad with GitView open
beside it now shows the change instead of a stale render.
A related hang is fixed too: resolving a save conflict on a KiCad tab left it on a loading skeleton
permanently.
Fixed: large boards failed at any committed ref
Reading a blob was capped at 64 MB. A KiCad board is the first thing GitView opens that is routinely
bigger — vme-wren.kicad_pcb is 66 MB — so browsing one at a branch or commit failed with an internal
buffer error while the working-tree copy worked fine. Blobs now have their own 128 MB ceiling, checked
before reading, so an oversized file gives a clear error naming the file and both sizes.
Also fixed
- Copper was being silently truncated. A flat 20,000-primitive cap per layer, chosen from one board,
cut real routing on a denser one — missing traces on the layer the feature exists to show. Caps are now
by role: copper, silkscreen and the board outline get a much higher ceiling, annotation overlays keep the
tight one, and truncation always says which kind of loss it was. - Net chips are properly tappable. They were a ~20 dp target with no accessibility role; now 48 dp,
announced and operable by a screen reader. - The schematic no longer draws over the toolbar or under the navigation bar, and framing ignores
stray annotation parked away from the circuit. - A memory fault on the bridge: browsing a few large boards could retain gigabytes.
Upgrading
Nothing to do. No re-pairing, no configuration change, no migration. Install the .deb on the bridge
host and the .apk on the device, in either order.
The .apk is signed with the same release key as previous versions, so it upgrades in place over
v0.1.13 — your saved bridges and pairings are kept.
Both artifacts
Every release ships both, whichever component changed. This time both did.
gitview-bridge_0.1.14_all.deb— the host bridgegitview-0.1.14.apk— the Android client (release-signed)SHA256SUMS
Verify the APK's signing certificate matches the SHA-256 published in the README before installing.
Known limits
- Selecting a component on the board is not supported — only nets. Locating a footprint needs shape
data the per-layer format does not carry, so it is absent rather than half-working. - 3D is not in this release.
- On a multi-layer board, cross-probing a net that is a ground plane lights the whole plane. That is
accurate, and it is visually heavy.