Releases: surfbryce/beautiful-lyrics
4.1.6
Removed Spotify shading effect in the Now Playing View and improved Canvas visibility, fixed inconsistent behavior with the hovering of the Page View-Controls, fixed crashing bugs.
Full List of Closed Issues: #847
Full Changelog: 4.1.5...4.1.6
4.1.5
4.1.4
Another small update, fixes bug in Spotify version 2.17.834 (and any other versions) where the Now Playing View doesn't use an "aside" element and instead uses a "section" element with specific class-name
Full List of Closed Issues: #700
Full Changelog: 4.1.3...4.1.4
4.1.3
4.1.2
More Legacy support and covering some edge-cases
Here are the Highlights
- Improved Sidebar/Now-Playing Detection so that it should work in any scenario for any version
- Improved SpotifyRequestBuilder in the Spices package so that it is supported in all legacy Spotify versions
- Improved TokenProvider support in the Spices package so that it is supported in all legacy Spotify versions
Full List of Closed Issues: #692
Full Changelog: 4.1.1...4.1.2
4.1.1
4.1.0
Another update that brings a lot of improvements, bug fixes, and adjustments so that every version of Spotify can be better supported.
Here are the Highlights
- Almost ALL Spotify versions should be supported now and working
- Refined Lyrics Service algorithm to accurately match and provide Karaoke and Line lyrics to even more songs
- Significantly better Local File support, Local Songs now look the same as Normal Songs on Spotify
- Slight Performance Gains due to only enabling the Dynamic Background when needed (for example, the Sidebar background USED to still be enabled when Cinema/Fullscreen was open)
- Brand new Extension Bug Reporting universal shortcuts to easily get HTML/CSS Files and Spotify/Spicetify information now matter what Operating System you are using (Linux could not get this information previously, but now they can)
- New Issue Reporting templates
Full List of Closed Issues: #657
New Contributors
Full Changelog: 4.0.0...4.1.0
4.0.0
First truly HUGE update that changed (and recently broke) a lot of things.
The major things of note are these:
- Completely restructured the Extensions codebase
- Dramatically improved Developer Experience by moving to Deno and removing all instances of external local paths
- Services like Cache, Player, and Session all moved to Spices JSR Package so that other Spicetify Extension Developer can utilize my work
- Removed use of Spicetify-Creator and made entirely new Build-Process within the Spices JSR Package which any Spicetify Extension Developer can utilize to publish their extensions (Video tutorials for this to be released soon)
- Lyrics Service rewrite and algorithm changes, now utilizes users Spotify AccessToken to get song information on the Service side to improve lyric searching capabilities
- Entirely new CUSTOM Cinema/Fullscreen view, both are now combined and only difference is if the Window is Fullscreen
For those experiencing issues, there will be a patch soon. A few Wiki pages will be made so I can easily redirect people to specific articles that can help you and me get your PROBLEM SOLVED!
This release is mainly just to get the tag/release out and so that it can be archivable.
Just to touch base on the Spotify AccessToken thing, a couple of releases ago I discussed that I was going to do this. To give a refresher, there is no security concern with me using your AccessToken as it can't really be used for anything else other than the API. The reason WHY it is NEEDED is because when you are matching lyrics you can't really do so just based on the song ISRC because there could be other versions (remasters for example have different ISRCS) that are basically identical that have lyrics but the ISRC one does not, this solves that issue and many others. Having the song information from Spotify while finding lyrics helps drastically improve the process and accuracy of the lyrics that I get as well.
I am currently actively looking at the Issues tab and watching for anything that I can improve with the Lyrics Service. I have made many changes already and I am seeing improvements just from the issues you guys have made, so when you come across a song that should have lyrics or doesn't have the best version possible, make an issue for it and I will look at it.
Full Changelog: 3.3.1...4.0.0
3.3.1
These are the Bug Fixes:
- Fixed AccessToken leading to 401 Network Errors when Spotify has been open for more than an hour due to using Spicetify.Session.accessToken which does NOT update. Instead now uses Spicetify.Platform.AuthorizationAPI._tokenProvider and self-caching to determine when to wait for a refresh and when to use the already cached token
Full Changelog: 3.3.0...3.3.1
3.3.0
Sorry for the long delay in fixing everything, been very busy in real life with Music Production and Running my Business, I put aside some time today dedicated to this project alone.
The main changes are these:
- Completely redid the Lyrics Backend/Provider to be more accurate to the Song being requested and to be more efficient in Retrieving the Lyrics, I've been putting this off and had closed the Lyrics Backend off a while back thinking I was going to get to it quickly, now the backend is back open
- Fixed Spotify's CosmosAsync from preventing any requests to the Spotify API that I made with a custom implementation for Spotify Fetch
The Backend changes were absolutely necessary and it actually perfectly setups the Lyric Editor update I've been wanting to do. The only lyrics parsed on the Client now are the Spotify lyrics if you are premium. All other lyrics are parsed on the server now and everything now uses the same lyric structure, which means that when the Lyric Editor comes I can store the same structure on the Server as the Client gets. The Client is only responsible for the Language Detection/Romanization and the Interlude additions.
Anyways, there's a few bugs I ran into on the Client (visually) that I want to get to soon and a few features that would be nice to add. Additionally, I've been slowly working on optimizations which should help improve performance. Some of the optimizations will also improve UX and what visual effects I can do (like staggered lyric movement).
There's also another thing I want to mention, I realized if I had the Server get the Spotify track information for a Spotify Track ID then I could do the ISRC processing there and additionally make the lyric retrieval more accurate by accounting for the duration of a track (and accounting for lyric possibilities that way). This would require sending the Server (Cloudflare) the users spotify Access Token. Now fortunately, I don't think this is a big security/privacy concern, as the Access Token can only really be useful for API Calls and the Server doesn't have access to the Authorization header (which is where the real privacy/security concerns lie).
Anyways, I hope everybody enjoys the extension again!
Full Changelog: 3.2.3...3.3.0