a native ios client for gitbay

client ios swift

https://gitbay.org

blame and file editing, the last two parity rows !14

merged cmc wants to merge krz/gitbay-ios:blame-and-edit into main

cmc

The iOS half of krz/gitbay!99, and the last two rows on the Parity matrix.

  • Blame: one attribution per run of lines sharing a commit (short sha, subject, author, date), paging from wherever the server's span ended rather than assuming a page size. A failed later page leaves what is on screen alone. Offered only for text files; binary is a refusal.
  • Editing: commits through repo commit-file on the ref the file was read from, content over stdin. Truncated reads are deliberately not editable — committing a partial read would delete the rest of the file. The server's refusals (signed-commit policy, unverified email, archived) are what the sheet shows.

Harness: openRepo clears a stale query before typing, and the blame/edit smoke relaunches between halves — .searchable keeps its text across navigation and clearing it from the harness proved unreliable.

159 unit tests green. Live smoke green against the deployed server: blame on krz/gitbay's go.mod, and an edit committed to a scratch repo — verified server-side as a real commit, authored with the verified email and honestly unsigned — with the scratch repo deleted afterward.

With this merged, every web-yes row on the Parity matrix is on iOS.

Ref #11