<feed xmlns='http://www.w3.org/2005/Atom'>
<title>hutch.git/Hutch/Views/Repositories, branch v3.0.4</title>
<subtitle>ios client for sourcehut. swiftui.
</subtitle>
<id>http://git.krz.sh/krz/hutch.git/atom?h=v3.0.4</id>
<link rel='self' href='http://git.krz.sh/krz/hutch.git/atom?h=v3.0.4'/>
<link rel='alternate' type='text/html' href='http://git.krz.sh/krz/hutch.git/'/>
<updated>2026-04-13T19:20:27+00:00</updated>
<entry>
<title>fix: mercurial parity and graphql handling</title>
<updated>2026-04-13T19:20:27+00:00</updated>
<author>
<name>Christian Cleberg</name>
<email>hello@cleberg.net</email>
</author>
<published>2026-04-13T19:20:27+00:00</published>
<link rel='alternate' type='text/html' href='http://git.krz.sh/krz/hutch.git/commit/?id=5e63048ab6a741ae947f7fe42efcb5206a3f3963'/>
<id>urn:sha1:5e63048ab6a741ae947f7fe42efcb5206a3f3963</id>
<content type='text'>
- implements consistent UX between repo types
- ensures centralized services and routes are used between repo types
- graphql error handling is centralized
- error messages are consistent

Implements: https://todo.sr.ht/~ccleberg/hutch/58
Implements: https://todo.sr.ht/~ccleberg/hutch/59
</content>
</entry>
<entry>
<title>perf: reduce redundant fetches and improve list render efficiency</title>
<updated>2026-04-13T18:26:08+00:00</updated>
<author>
<name>Christian Cleberg</name>
<email>hello@cleberg.net</email>
</author>
<published>2026-04-13T18:26:08+00:00</published>
<link rel='alternate' type='text/html' href='http://git.krz.sh/krz/hutch.git/commit/?id=06b24715cd244475ded5482e926721a57278a3cf'/>
<id>urn:sha1:06b24715cd244475ded5482e926721a57278a3cf</id>
<content type='text'>
- Remove no-op per-row task from RepositoryListView; loadMoreIfNeeded
  is a stub for repos so each row was allocating a Task that did nothing
- Fix BuildListView auto-refresh stopping permanently after navigating
  away; startAutoRefresh now runs unconditionally on task so it restarts
  on every reappear, not just first load
- Add lastRefreshed tracking to HomeViewModel with a needsRefresh(after:)
  helper; HomeView and WorkView scene-activation handlers now skip
  loadDashboard() if the data is less than 60 seconds old
- Add 120-second TTL to repository build status refresh; statuses are
  no longer re-fetched on every tab appear, only when stale or when the
  user explicitly pulls to refresh (forceRefresh: true)

Implements: https://todo.sr.ht/~ccleberg/hutch/56
</content>
</entry>
<entry>
<title>release: v3.0.0 — navigation overhaul, Work view, and multi-pin support</title>
<updated>2026-04-13T18:09:57+00:00</updated>
<author>
<name>Christian Cleberg</name>
<email>hello@cleberg.net</email>
</author>
<published>2026-04-13T18:09:57+00:00</published>
<link rel='alternate' type='text/html' href='http://git.krz.sh/krz/hutch.git/commit/?id=f5f5757d0e1b78470429ae7cb9f742c95662849b'/>
<id>urn:sha1:f5f5757d0e1b78470429ae7cb9f742c95662849b</id>
<content type='text'>
Reworks the app's core navigation and home screen for v3.0.0:

- Replace Inbox with Work view: unified dashboard showing unread threads
  and assigned tickets, with All/Unread/Assigned scope picker
- Overhaul Home screen: redesigned with pinned items grid (trackers,
  repos, mailing lists, users), recent activity section, and system
  status banner; backed by HomePinStore supporting all resource types
- Simplify navigation bars across list screens: default toolbar shows
  only the primary action (+) and an overflow menu (…); pin, share, and
  select moved into the overflow menu; selection mode gets its own nav
  bar with Cancel / "N Selected" / All
- Consolidate repo detail toolbars: pin and share moved into the
  existing actions menu for both Git and Mercurial detail views
- Add recent activity tracking via RecentActivityStore
- Add work and inbox deep link aliases (hutch://work, hutch://inbox)

Implements: https://todo.sr.ht/~ccleberg/hutch/55
</content>
</entry>
<entry>
<title>feat: add power user actions</title>
<updated>2026-04-13T14:57:23+00:00</updated>
<author>
<name>Christian Cleberg</name>
<email>hello@cleberg.net</email>
</author>
<published>2026-04-13T14:57:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.krz.sh/krz/hutch.git/commit/?id=0e461a382257979037e8927e5f6b468635b0a7fe'/>
<id>urn:sha1:0e461a382257979037e8927e5f6b468635b0a7fe</id>
<content type='text'>
Implements: https://todo.sr.ht/~ccleberg/hutch/52
Implements: https://todo.sr.ht/~ccleberg/hutch/53
Implements: https://todo.sr.ht/~ccleberg/hutch/54
</content>
</entry>
<entry>
<title>feat: add multi-account support</title>
<updated>2026-04-13T04:19:20+00:00</updated>
<author>
<name>Christian Cleberg</name>
<email>hello@cleberg.net</email>
</author>
<published>2026-04-13T04:19:20+00:00</published>
<link rel='alternate' type='text/html' href='http://git.krz.sh/krz/hutch.git/commit/?id=ee9f2904aa319231b7047fca3cb069f0c07019cd'/>
<id>urn:sha1:ee9f2904aa319231b7047fca3cb069f0c07019cd</id>
<content type='text'>
Implements: https://todo.sr.ht/~ccleberg/hutch/49
Implements: https://todo.sr.ht/~ccleberg/hutch/50
Implements: https://todo.sr.ht/~ccleberg/hutch/51
</content>
</entry>
<entry>
<title>feat: add search and recent queries</title>
<updated>2026-04-13T03:52:33+00:00</updated>
<author>
<name>Christian Cleberg</name>
<email>hello@cleberg.net</email>
</author>
<published>2026-04-13T03:52:33+00:00</published>
<link rel='alternate' type='text/html' href='http://git.krz.sh/krz/hutch.git/commit/?id=72f860e0e171f6aac4e7d896e7a571147dbcb5c5'/>
<id>urn:sha1:72f860e0e171f6aac4e7d896e7a571147dbcb5c5</id>
<content type='text'>
Implements: https://todo.sr.ht/~ccleberg/hutch/47
Implements: https://todo.sr.ht/~ccleberg/hutch/48
</content>
</entry>
<entry>
<title>feat: add repo settings management</title>
<updated>2026-04-13T03:30:22+00:00</updated>
<author>
<name>Christian Cleberg</name>
<email>hello@cleberg.net</email>
</author>
<published>2026-04-13T03:30:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.krz.sh/krz/hutch.git/commit/?id=54d037548261c1546555a89a6a803b542a769880'/>
<id>urn:sha1:54d037548261c1546555a89a6a803b542a769880</id>
<content type='text'>
Implements: https://todo.sr.ht/~ccleberg/hutch/42
Implements: https://todo.sr.ht/~ccleberg/hutch/43
Implements: https://todo.sr.ht/~ccleberg/hutch/44
</content>
</entry>
<entry>
<title>feat: add repository acl management</title>
<updated>2026-04-13T03:16:14+00:00</updated>
<author>
<name>Christian Cleberg</name>
<email>hello@cleberg.net</email>
</author>
<published>2026-04-13T03:16:14+00:00</published>
<link rel='alternate' type='text/html' href='http://git.krz.sh/krz/hutch.git/commit/?id=7a875798fea9321bad2636040d9be2c30bc0fa8f'/>
<id>urn:sha1:7a875798fea9321bad2636040d9be2c30bc0fa8f</id>
<content type='text'>
Implements: https://todo.sr.ht/~ccleberg/hutch/39
Implements: https://todo.sr.ht/~ccleberg/hutch/40
Implements: https://todo.sr.ht/~ccleberg/hutch/41
</content>
</entry>
<entry>
<title>feat: add theme and high-density display modes</title>
<updated>2026-04-13T00:47:57+00:00</updated>
<author>
<name>Christian Cleberg</name>
<email>hello@cleberg.net</email>
</author>
<published>2026-04-13T00:47:57+00:00</published>
<link rel='alternate' type='text/html' href='http://git.krz.sh/krz/hutch.git/commit/?id=1354f2464180ece6d13296a543a964ddf6d2d393'/>
<id>urn:sha1:1354f2464180ece6d13296a543a964ddf6d2d393</id>
<content type='text'>
Refs: https://todo.sr.ht/~ccleberg/hutch/24
Implements: https://todo.sr.ht/~ccleberg/hutch/25
</content>
</entry>
<entry>
<title>fix: improve inbox patch rendering and diff collapsing</title>
<updated>2026-04-13T00:22:51+00:00</updated>
<author>
<name>Christian Cleberg</name>
<email>hello@cleberg.net</email>
</author>
<published>2026-04-13T00:22:51+00:00</published>
<link rel='alternate' type='text/html' href='http://git.krz.sh/krz/hutch.git/commit/?id=eb1a5fe236d40d1ccd0901bd458167973a878c82'/>
<id>urn:sha1:eb1a5fe236d40d1ccd0901bd458167973a878c82</id>
<content type='text'>
Fixes: https://todo.sr.ht/~ccleberg/hutch/22
Implements: https://todo.sr.ht/~ccleberg/hutch/35
</content>
</entry>
</feed>
