BlueHuskyStudios / BlueHuskyStudios/DeadassSimpleMediaPlayer
Introduce schema versions on all persisted types
- Dominant language
- Swift
- Stars
- 0
- Forks
- 3
- Avg merge
- 2d 22h
- Merged PRs (30d)
- 9
Description
`NowPlayingSnapshot`, `SavedPlaylist`, and `PlaybackHistory` are `Codable` with no version field. Any future rename or type change makes existing documents fail to decode — and the catch blocks log and continue, so the user silently loses their queue, playlists, or history.
The app is in public TestFlight now, so there's an installed base. Adding a version field is cheap today and impossible retroactively.
Contributor guide
Research direction
Locate the Codable declarations for NowPlayingSnapshot, SavedPlaylist, and PlaybackHistory, then trace where their documents are persisted and decoded, including the catch blocks that currently log and continue. Define the versioning and compatibility behavior for existing documents, and consider the installed TestFlight data; done means all three persisted types can safely evolve without silently losing queue, playlist, or history data.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- swift
- Domain
- data, mobile
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100