sindresorhus / sindresorhus/Defaults
Use `Color.Resolved` to serialize `Color` on macOS 14+
Nobody has claimed this yet.
- Dominant language
- Swift
- Stars
- 2.5k
- Forks
- 163
- PR merge metrics
- No merged PRs in 30d
Description
https://developer.apple.com/documentation/swiftui/color/resolve(in:)
https://developer.apple.com/documentation/swiftui/color/resolved
It should be able to store the color better than what we currently do. We still need to preserve backwards compatibility, so we can first try loading it as Color.Resolved and if it fails, we can use the old way.
Color.Resolved is Codable, so we should use that for the serialization.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading the linked Apple documentation for Color.resolve(in:) and Color.Resolved, then locate the existing Color serialization entry point in the Defaults repository. Confirm that decoding tries Color.Resolved first and retains the old fallback path for backwards compatibility; verify both formats can still be loaded.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- macos, swift
- Domain
- desktop-dev
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100