what's changed
fixed
- resilient embed page extraction handles Spotify A/B testing / regional structure changes (closes #27)
- token extraction tries multiple JSON paths before giving up
added
_deep_find()and_resolve_path()helpers for flexible JSON traversal- comprehensive tests for alternative embed page structures (45 tests total)
details
spotify may serve different __NEXT_DATA__ JSON structures depending on region or A/B testing. previously, the app crashed with Unexpected embed page structure: 'state' when the state key was missing. now _extract_entity() tries 3 known paths before falling back to recursive search, and token extraction does the same.
install via homebrew (macos)
brew tap sunnypatell/sunnify https://github.com/sunnypatell/sunnify-spotify-downloader
brew install --cask sunnify
sudo xattr -cr /Applications/Sunnify.appfull changelog: v2.0.1...v2.0.2