Skip to content

Conversation

@kagemomiji
Copy link
Owner

@kagemomiji kagemomiji commented Aug 22, 2025

Fix #742

This pull request introduces several improvements and refactorings to the lyrics handling functionality, as well as updates to CI workflow configurations. The most significant changes are the refactoring of the lyrics-related classes and controllers to support lyrics persistence, improved security checks, and simplification of the lyrics API. Additionally, all GitHub Actions workflows have been updated to use the latest version of the Java setup action.

Lyrics functionality refactor and enhancements:

  • Renamed and refactored LyricsInfo to LyricsStatus in airsonic-main/src/main/java/org/airsonic/player/ajax/LyricsStatus.java, removing unused fields and adding persisted/tryLater flags to better represent lyrics fetch and persistence status. [1] [2]
  • Refactored LyricsWSController to use dependency injection for services, improved security checks, and changed the lyrics fetch API to persist lyrics when possible. The response now uses LyricsStatus and supports saving lyrics to media files. [1] [2] [3] [4] [5]
  • Updated LyricsController to use dependency injection, provide lyrics view/edit/update endpoints, and ensure lyrics are only accessible/modified if the user has access to the media file. [1] [2]
  • Refactored SubsonicRESTController to use LyricsService directly for lyrics lookup and removed dependency on the old LyricsWSController. Lyrics are now retrieved and returned if available, based on artist/title and user music folders. [1] [2] [3] [4]

CI/CD workflow updates:

  • Updated all GitHub Actions workflow files to use actions/setup-java@v5 instead of @v4 for Java setup, ensuring compatibility with the latest Java build tools and improved reliability. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]

kagemomiji and others added 12 commits August 18, 2025 08:28
Bumps [actions/setup-java](https://github.com/actions/setup-java) from 4 to 5.
- [Release notes](https://github.com/actions/setup-java/releases)
- [Commits](actions/setup-java@v4...v5)

---
updated-dependencies:
- dependency-name: actions/setup-java
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
Bumps [org.springframework.boot:spring-boot-starter-parent](https://github.com/spring-projects/spring-boot) from 3.5.4 to 3.5.5.
- [Release notes](https://github.com/spring-projects/spring-boot/releases)
- [Commits](spring-projects/spring-boot@v3.5.4...v3.5.5)

---
updated-dependencies:
- dependency-name: org.springframework.boot:spring-boot-starter-parent
  dependency-version: 3.5.5
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>
…s/setup-java-5' into issue742-replace-lyrics-source-to-lrc
…work.boot-spring-boot-starter-parent-3.5.5' into issue742-replace-lyrics-source-to-lrc
@kagemomiji kagemomiji merged commit 4b5be7b into main Aug 23, 2025
17 checks passed
@kagemomiji kagemomiji deleted the issue742-replace-lyrics-source-to-lrc branch August 23, 2025 05:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug]: Lyrics Not Working

2 participants