Skip to content

Yashima 0.3.0

Choose a tag to compare

@KoichiroKAMADA KoichiroKAMADA released this 22 Jun 10:43
a19c167

Yashima 0.3.0 focuses on smoother SwiftUI and scrolling-list integrations while keeping Yashima's core boundary as a general local artifact cache.

Highlights:

  • Added YCache.Options.uiLifecycle for SwiftUI List, LazyVGrid, .task(id:), and other caller-lifetime-bound workloads.
  • Updated optionalValue, optionalJPEG, and optionalPNG so miss generation participates in single-flight sharing and cancellation.
  • Preserved the rule that nil, CancellationError, and thrown failures are not stored as cache entries.
  • Added documentation for video thumbnails, PhotoKit thumbnails, SwiftUI lifecycle usage, and small Codable derived values.
  • Clarified when to use uiLifecycle versus the default shared producer behavior for detail, background, and export work.
  • Kept AVFoundation, PhotoKit, SwiftUI, and app-specific producers outside Yashima core.

Storage metadata schema is unchanged, so existing 0.2.x cache entries remain compatible.

For Swift Package Manager users, use .upToNextMinor(from: "0.3.0") while Yashima remains pre-1.0.