Skip to content

Releases: jeffvli/feishin

0.7.2

30 Jul 08:57
8815246
Compare
Choose a tag to compare

0.7.2 is here! Sorry for the delayed release!

Highlights

  • (UI) You can now jump to lyrics in the full-screen player (#656) (Thanks @gelaechter)
  • (UI) Add play similar tracks from context menu (#650) (Thanks @isaiahfuller)
  • (UI) Fixed fullscreen player metadata not updating in certain situations (#680) (Thanks @dragonish)
  • (UI) Fixed fullscreen player lyrics alignment when re-opening the window (#676) (Thanks @dragonish)
  • (UI) Add setting to toggle the home page feature carousel (Thanks @kgarner7)
  • (UI) Add setting to use native image aspect ratios for images (Thanks @kgarner7)
  • (Jellyfin) Fixed authentication invalidating on Jellyfin if logging in from multiple locations (#660) (Thanks @sel10ut)
  • (Jellyfin) Fixed recent albums on the homepage fetching incorrect data (#629) (Thanks @sel10ut)
  • (Desktop) Fixed Minimize to Tray setting toggle showing incorrect value (#664) (Thanks @sel10ut)
  • (Desktop) Fixed app crash on macOS for some users (#668) (Thanks @yuygfgg)
  • (Desktop) Fixed window not re-opening when Exit to Tray is enabled (Thanks @kgarner7)
  • (Desktop) Electron v26 -> v31 / Node v16 -> v18

What's Changed

  • Add option to play similar tracks from the context menu by @isaiahfuller in #650
  • Allow jumping to lyrics by @gelaechter in #656
  • (Jellyfin) Adjust querying recent album releases by @sel10ut in #629
  • [bugfix] Fix cache settings not being sentence cased by @iiPythonx in #657
  • [bugfix]: properly clean up MPV on quit, use pid for socket by @kgarner7 in #627
  • MediaSession/Remote enhancements by @kgarner7 in #632
  • (Jellyfin) Allow multiple sessions from the same user with different instances by @sel10ut in #660
  • [bugfix]: use tsx instead of ts-node, update @electron/rebuild by @kgarner7 in #659
  • Bump the npm_and_yarn group across 2 directories with 2 updates by @dependabot in #662
  • Bump ws from 8.17.1 to 8.18.0 in /release/app in the npm_and_yarn group across 1 directory by @dependabot in #663
  • Adding in docker compose instructions to README by @minicoz in #654
  • Fix minimize to tray setting toggle by @sel10ut in #664
  • fix blank screen when reopening window on macos by @yuygfgg in #668
  • Fix synchronized lyrics that may become unaligned during playback after re-rendering by @dragonish in #676
  • Fix full screen player metadata may not change when switching queue by @dragonish in #680

New Contributors

Full Changelog: v0.7.1...v0.7.2

0.7.1

07 May 06:06
Compare
Choose a tag to compare

0.7.1 released to fix missing Windows binary.

Full Changelog: v0.7.0...v0.7.1

0.7.0

07 May 03:37
Compare
Choose a tag to compare

0.7.0 is here!

Moving forwards, release notes will be simplified as so. Thanks to all the contributors as always!

Highlights

  • (UI) Added Get Info button on dropdowns to show extended details for the selected item
  • (UI) Changed titlebar on light theme to use a lighter color
  • (UI) Error page now shows server menu in case to handle cases where application can become stuck
  • (UI) Fixed synchronized lyrics not repeating when track is repeated on fullscreen player
  • (UI) Added toggle to switch between tracks and albums when double clicking an item in the genres list
  • (UI) (Jellyfin) Fixed lyrics parsing for Jellyfin v10.9.0
  • (UI) (Navidrome) Adds Share item to item context menus
  • (UI) (Navidrome) Added inPlaylist and notInPlaylist operators for Navidrome smart playlists
  • (UI) (Navidrome) Added JSON preview for smart playlist builder output
  • (UI) Added Farsi and Chinese (Traditional) languages (thanks to translators!)
  • (Desktop) The positioning state of the application is now persisted (maximize, fullscreen, window position)
  • (Player) Various fixes/improvements with player implementation including mpris and scrobbling
  • ...and more: view commits

What's Changed

  • Bump the npm_and_yarn group across 1 directory with 2 updates by @dependabot in #542
  • Bump the npm_and_yarn group across 1 directory with 1 update by @dependabot in #551
  • Bump the npm_and_yarn group across 1 directory with 1 update by @dependabot in #557
  • Bump the npm_and_yarn group across 1 directory with 1 update by @dependabot in #561
  • [bugfix]: Resolve MPV next/prev race condition by @kgarner7 in #566
  • [bugfix]: Add a fallback image to the dynamic background url by @iiPythonx in #571
  • [enhancement]: Show item details by @kgarner7 in #573
  • Fix portrait mode detection by @Kaydax in #582
  • [enhancement]: Support react-router links in Modal by @kgarner7 in #586
  • [enhancement]: Support toggling Album/Track view for gneres by @kgarner7 in #591
  • Implement Navidrome sharing by @iiPythonx in #575
  • [bugfix]: Handle top-level songs for Jellyfin by @kgarner7 in #553
  • Bump ejs from 3.1.9 to 3.1.10 in the npm_and_yarn group across 1 directory by @dependabot in #602
  • Fix LrcLib fetcher by @vukanovics in #603
  • Allow smaller album covers in card/poster display by @Dylancyclone in #598
  • Add new Navidrome smart playlist operators (up to v0.52.0) by @jeffvli in #604

New Contributors

Full Changelog: v0.6.1...v0.7.0

0.6.1

13 Mar 07:27
Compare
Choose a tag to compare

Fixed

  • (Navidrome) Fixed application becoming stuck when Navidrome credential session times out (#538)

Other

  • Downgraded from Electron v27 to v26 to restore compatibility with macOS 10.13 and 10.14 (#534)

0.6.0

06 Mar 00:35
1b08dfc
Compare
Choose a tag to compare

0.6.0 is here!

Due to the large number of updates in this version, there may be undocumented changes that are not listed here.

Docker

Added a way for a static server to be configured for the dockerized version of Feishin. Check the docker compose for new environment variables configuration.

Added

  • URLs in the Note column are now formatted as links
  • External resource (last.fm, musicbrainz) links are now optionally displayed on the album and artist pages
  • Album pages now show description if available
  • Added dynamic image background option in fullscreen player (#526) (Thanks @iiPythonx)
  • Added additional mpris metadata fields
    • audioBpm
    • comment
    • contentCreated
    • lastUsed
    • userRating
  • Added options to clear the Feishin HTTP and Query cache to clear stored lyrics
  • Added related songs to the Related tab on the fullscreen player
  • Added codec column for song lists
  • Added option to start app as minimized

Changed

  • Playback speed control is now a slider instead of a selection (#437) (Thanks @marksdestiny)
  • Web player is now the default instead of MPV
  • (Jellyfin) Adding a jellyfin server now allows for an empty password field
  • Default hotkey for play/pause toggle set to SPACEBAR
  • Changed icon for Play Random on the player bar

Fixed

  • (Jellyfin) Fixed getPlaylistSongList endpoint only returning the first 300 songs (#449) (Thanks @SlyFabi)
  • Properly set native titlebar on macOS (#209) (Thanks @kgarner7)
  • Fixed long artist page descriptions not being truncated
  • Fixed playback when SHUFFLE and REPEAT ONE is enabled and there is only one track in the queue
  • (MPV) Fixed audio sample rate value on startup (#470) (Thanks @kgarner7)
  • Player buttons are now disabled when the queue is empty
  • Fixed play queue scroll position changing when app window focus changes
  • Fixed scrobbling condition when a song is repeated
  • Fixed volume when set by MPRIS
  • Fixed player index being offset by 1 when restoring queue on startup
  • Various translation fixes

What's Changed

  • AppImage: Set proper categories on desktop entry by @mihawk90 in #430
  • Update scrobble-settings.tsx by @salguerooo in #440
  • Use startIndex in Jellyfin getPlaylistSongList by @SlyFabi in #449
  • Improve the playback speed control by @marksdestiny in #437
  • Bump axios from 1.5.1 to 1.6.0 by @dependabot in #459
  • Bump zod from 3.21.4 to 3.22.3 by @dependabot in #460
  • Bump @babel/traverse from 7.22.19 to 7.23.7 by @dependabot in #462
  • Bump postcss from 8.4.27 to 8.4.33 by @dependabot in #463
  • Bump electron from 25.3.0 to 25.8.4 in /release/app by @dependabot in #464
  • Bump follow-redirects from 1.15.2 to 1.15.5 by @dependabot in #461
  • Fixed incorrect label for album sort by release date by @rappo in #458
  • Add frame to macOS native window bar by @jeffvli in #209
  • [bugfix]: defer restore queue until mpv exists by @kgarner7 in #435
  • [bugfix]: Validate audio sample range, catch AudioContext error by @kgarner7 in #470
  • [bugfix]: Fix add to playlist success message by @kgarner7 in #473
  • [bugfix]: Fix safari audio context by @kgarner7 in #471
  • [enhancement]: support clearing query and http cache by @kgarner7 in #475
  • [bugfix]: Fix repeated track scrobbling by @kgarner7 in #480
  • [feature]: Show album comment, Last.fm/MusicBrainz links by @kgarner7 in #450
  • [bugfix/enhancement] Order artist's Top Songs by play count by @lymnyx in #487
  • [enhancement] Add a button size setting by @iiPythonx in #486
  • [bugfix] Fix global hotkeys not working on startup by @iiPythonx in #488
  • [bugfix] Fixes route of most played songs on home page by @lymnyx in #489
  • [bugfix/enhancement] Fixes german translations being sentence-case by @lymnyx in #491
  • [bugfix]: default go libsecret, support changing secret store by @kgarner7 in #493
  • Bump the npm_and_yarn group across 2 directories with 2 updates by @dependabot in #500
  • [enhancement]: Audio player enhancements by @kgarner7 in #501
  • [bugfix/enhancement]: Support Navidrome structured lyrics by @kgarner7 in #484
  • [enhancement]: support reordering homepage by @kgarner7 in #494
  • Image Resolution Setting by @darkpixlz in #492
  • [bugfix]: Macos trusted accessibility by @kgarner7 in #512
  • Bump the npm_and_yarn group across 2 directories with 1 update by @dependabot in #521
  • [enhancement]: Start minimized by @kgarner7 in #522
  • Add a pre-defined server for the docker version by @Kakoluz in #413
  • [enhancement]: Better version checks by @kgarner7 in #514
  • [bugfix]: Check for Navidrome authentication on startup by @kgarner7 in #510
  • [enhancement]: Differentiate shared and owner playlists for Navidrome by @kgarner7 in #517
  • [enhancement]: Make related tab on full screen player useful by @kgarner7 in #519
  • [enhancements]: fix carousel, full screen metadata improvements by @kgarner7 in #524
  • [feat] Add a dynamic image option to the fullscreen player by @iiPythonx in #526
  • [enhancement]: better version checks for lyrics, Navidrome by @kgarner7 in #529

New Contributors

Full Changelog: v0.5.3...v0.6.0

0.5.3

14 Dec 09:53
Compare
Choose a tag to compare

Small release to fix a few things. Also added arm64 AppImage.

What's Changed

  • Fix setting of replaygain fallback by @kgarner7 in #390
  • Fix 'undefined' in window title when song has no artist name by @mcneb10 in #402
  • [bugfix]: fix playDate parsing for navidrome unstable by @kgarner7 in #408

New Contributors

Full Changelog: v0.5.2...v0.5.3

0.5.2

18 Nov 09:59
Compare
Choose a tag to compare

Just pushing a few fixes.

Added

Fixed

  • Fixed app potentially opening multiple instances (#385)
  • Fixed discord rich presence not displaying if song does not have an artist (#359) (Thanks @Trapigtrogen)
  • Fixed incorrect translation text in album page (#376) (Thanks @kgarner7)

Other

  • Bumped electron from v25 -> v27

0.5.1

02 Nov 19:13
Compare
Choose a tag to compare

Fixing a few things, and thanks to everyone who contributed to translations!

Added

  • Translations (status)
    • Spanish
    • German
    • Italian
    • Russian
    • Portugese
    • French
    • Japanese
    • Polish
    • Chinese (simplified)

Changed

  • Increased sidebar image resolution from 300x300 to 500x500
  • (Jellyfin) "Most Played" on home page now displays songs instead of albums

Fixed

  • Fixed translation keys:
    • Player pause button
    • Fullscreen player tabs
    • Fullscreen player configuration
    • List filters
  • Fixed opacity in full screen player right section
  • Fixed custom font path triggering error in settings page when set in macOS (#343) (Thanks @kgarner7)
  • Fixed text shadow styles on full screen player when using light themes

What's Changed

  • [bugfix]: Remove setting path in attempt to bypass bug by @kgarner7 in #344

Full Changelog: v0.5.0...v0.5.1

0.5.0

31 Oct 10:35
Compare
Choose a tag to compare

0.5.0 is here!

This release introduces localization (multi-language) support which is now hosted on weblate. Visit the link if you would like to contribute a translation.

Known issues: There's a couple bugs on the full screen player in 0.5.0 regarding opacity and the translation keys. They're already fixed, but going to wait a bit to see if there are any other bugs that need fixing before pushing 0.5.1.

Added

  • Added localization support via weblate (#74)
  • Added discord rich presence (#72)
  • Added amd64, arm64, and armv7 Docker images (#336) (Thanks @bubylou)
  • Added animated play indicator to currently playing track (#237) (Thanks @kgarner7)
  • Added PUBLIC_PATH Docker environment variable to allow customizing the path Feishin is served from (#307) (Thanks @kgarner7)
  • Added system and custom font support (#270, #288) (Thanks @kgarner7)
  • Added customizable primary accent color (#282) (Thanks @kgarner7)
  • Added customizable playback speed (#94) (Thanks @kgarner7)
  • Added additional hotkeys (#326) (Thanks @GermanDarknes)
    • Favorite/unfavorite current song
    • Favorite/unfavorite previous song

Changed

  • Changed Rating component functionality from [double click to clear] -> [click on the same rating to clear] (#332) (Thanks @kgarner7)
  • (Jellyfin) Change hardcoded Jellyfin DeviceID values to include hostname and username (#312) (Thanks @LilyRose2798)
  • Fullscreen player now uses dynamic image resolution based on window size (#290) (Thanks @TacoCake)
  • Poster carousel now resets to initial position on data refresh (#285) (Thanks @kgarner7)
  • (Navidrome) Artist images are now always attmepted to be fetched even when it is potentially unvailable (#317) (Thanks @kgarner7)
  • Window title now displays SONG_NAME — ARTIST_NAME instead of SONG_NAME

Fixed

  • (MPV player) Fixed MPV playing the same track twice after toggling repeat (#292) (Thanks @kgarner7)
  • (WEB player) Fixed queue not pausing on the last track when repeat is disabled (#291)
  • (Navidrome) Fixed artist year filter becoming stuck (#299) (Thanks @kgarner7)
  • (Navidrome) Fixed smart playlist query editor unable to scroll (#322)
  • (Jellyfin) Fixed playing songs from global search menu (#294) (Thanks @kgarner7)
  • (Jellyfin) Fixed playlist fetch implementation (reverted to previous)
  • (Jellyfin) Fixed missing Play count filter on Jellyfin album sort
  • (Jellyfin) Fixed "edit playlist" form not working due to invalid fetch (#327)
  • Removed unused CORS and SSL toggle from web UI (#305) (Thanks @kgarner7)
  • Fixed add to playlist logic when attempting to skip duplicates (#300) (Thanks @kgarner7)
  • Fixed current track queue position when removing songs from the queue (#226) (Thanks @kgarner7)
  • Fixed rate 0 hotkey not working (#338) (Thanks @GermanDarknes)

Full Changelog: v0.4.0...v0.4.1

What's Changed

  • [bugfix]: Fix MPV player playing the same track twice after toggling repeat by @kgarner7 in #292
  • [bugfix]: fix artist discography year filter not clearing by @kgarner7 in #299
  • [bugfix]: Replace hardcoded Jellyfin authentication DeviceId to include hostname and username by @LilyRose2798 in #312
  • [bugfix]: remove ignore CORS/SSL switches from web version by @kgarner7 in #305
  • In the fullscreen player use dynamic resolution for the main image by @TacoCake in #290
  • [bugfix]: properly implement Jellyfin getSongDetail by @kgarner7 in #298
  • [bugfix]: do not duplicate tracks when adding to multiple playlists by @kgarner7 in #300
  • [feature]: support running feishin on custom path by @kgarner7 in #307
  • Reset Carousel position on data refresh by @kgarner7 in #303
  • [Remote] Full PWA support, misc bugfixes by @kgarner7 in #280
  • add more emphasis to current song by @kgarner7 in #283
  • [bugfix]: fix queue offset when removing tracks by @kgarner7 in #301
  • [feature]: Support using system fonts by @kgarner7 in #304
  • [bugfix/feat]: always fetch artist image for Navidrome by @kgarner7 in #317
  • [Feature] Support changing accent/primary color by @kgarner7 in #282
  • Support changing playback rate by @kgarner7 in #275
  • Add favorite hotkey options by @GermanDarknes in #326
  • [bugfix/feature]: Improve ratings by @kgarner7 in #332
  • [bugfix]: prevent default by @kgarner7 in #334
  • Build docker container for arm by @bubylou in #336
  • Fix clear rating hotkey by @GermanDarknes in #338
  • Add localization support by @jeffvli in #333

New Contributors

Full Changelog: v0.4.1...v0.5.0

0.4.1

08 Oct 03:18
Compare
Choose a tag to compare

Small release to fix some issues.

Fixed

  • Fixed issue with incorrect duration conversion causing some scrobbles to fail (#277) (Thanks @kgarner7)
  • Fixed last song in the queue not scrobbling (#207)
  • (Jellyfin) Fixed unsynchronized lyrics only displaying the first line (#279) (Thanks @kgarner7)
  • Fix app menu quit button functionality not working when exit to tray is enabled (#184)
  • Fixed Tracks list page not refreshing on search when using grid view
  • Fixed playback not automatically continuing to the second song in the queue when starting playback from a fresh restart
  • Fixed opacity on unsynchronized lyrics container

Removed

  • Removed fade animations on navigation

What's Changed

Full Changelog: v0.4.0...v0.4.1