<feed xmlns='http://www.w3.org/2005/Atom'>
<title>hutch.git/HutchTests/RecentActivityStoreTests.swift, branch main</title>
<subtitle>ios client for sourcehut. swiftui.
</subtitle>
<id>http://git.krz.sh/krz/hutch.git/atom?h=main</id>
<link rel='self' href='http://git.krz.sh/krz/hutch.git/atom?h=main'/>
<link rel='alternate' type='text/html' href='http://git.krz.sh/krz/hutch.git/'/>
<updated>2026-08-07T22:33:46+00:00</updated>
<entry>
<title>Adopt Swift 6 language mode</title>
<updated>2026-08-07T22:33:46+00:00</updated>
<author>
<name>Christian Cleberg</name>
<email>hello@cleberg.net</email>
</author>
<published>2026-08-07T22:33:46+00:00</published>
<link rel='alternate' type='text/html' href='http://git.krz.sh/krz/hutch.git/commit/?id=283fbf00fdffd64c924b6cb22c84e803b718f078'/>
<id>urn:sha1:283fbf00fdffd64c924b6cb22c84e803b718f078</id>
<content type='text'>
Flip SWIFT_VERSION to 6.0 (keeping SWIFT_DEFAULT_ACTOR_ISOLATION = MainActor)
and resolve every resulting diagnostic. Mechanical, no behaviour change:

- Models: pure value types in Models/ and utility extensions (Date, DateFormatter,
  SRHTWebURL) marked nonisolated so the nonisolated networking layer can use them.
- App Intents: stored 'static var' (title/description/openAppWhenRun/
  typeDisplayRepresentation/defaultQuery/caseDisplayRepresentations) -&gt; 'static let';
  drop the invalid @retroactive on the in-module LookupType: AppEnum.
- Sendable dicts: 'nil as String? as Any' -&gt; 'nil as String? as any Sendable'.
- UserDefaults: retroactive @unchecked Sendable (documented thread-safe).
- WidgetKit completion handlers rebound nonisolated(unsafe) to cross into Task {};
  TipStoreViewModel task handle is @ObservationIgnored nonisolated(unsafe) for
  its nonisolated deinit.
- Tests run on @MainActor; a few constant fixtures marked nonisolated for use in
  @Sendable stub closures.

Builds and the full suite are clean in Swift 6 mode. Roadmap updated.
</content>
</entry>
<entry>
<title>Let users clear recent activity on Home (#11)</title>
<updated>2026-08-07T06:44:17+00:00</updated>
<author>
<name>Christian Cleberg</name>
<email>hello@cleberg.net</email>
</author>
<published>2026-08-07T06:44:17+00:00</published>
<link rel='alternate' type='text/html' href='http://git.krz.sh/krz/hutch.git/commit/?id=a0ed11a3c4ddb2f532fa70884dc2829a23a5eec8'/>
<id>urn:sha1:a0ed11a3c4ddb2f532fa70884dc2829a23a5eec8</id>
<content type='text'>
Add a Clear button in the Home Recent section header to drop all
entries, plus swipe-to-delete on each row to forget a single item
(gated on the existing swipe-actions setting). Back it with
RecentActivityStore.clear and remove(id:), with unit tests.
</content>
</entry>
</feed>
