Viperinius / jellyfin-plugin-spotify-import

Import playlists from Spotify in Jellyfin
GNU General Public License v3.0
28 stars 2 forks source link

Unable to use fuzzy matching due to missing library, #32

Closed EvilSquirrelGuy closed 2 months ago

EvilSquirrelGuy commented 2 months ago

Whenever I run the plugin with fuzzy matching enabled, it seems to error out and complain about being unable to find the Fastenshtein library.

I've tried to put the net80 dll from the 1.0.0.8 version of the library's package into the plugin directory, but this didn't seem to work. Other matching types seem to work.

system info

Server OS: Debian 12 Jellyfin version: 10.9.6 Plugin version: 1.8.1.0

log entry

[2024-06-21 01:33:37.231 +01:00] [INF] Removing item, Type: "Playlist", Name: "genshin and also not genshin", Path: "/var/lib/jellyfin/data/playlists/genshin and also not genshin", Id: 35e32465-be50-700c-58b0-abc42a2b97f0
[2024-06-21 01:33:37.231 +01:00] [INF] Deleting item path, Type: "Playlist", Name: "genshin and also not genshin", Path: "/var/lib/jellyfin/data/playlists/genshin and also not genshin", Id: 35e32465-be50-700c-58b0-abc42a2b97f0
[2024-06-21 01:33:37.345 +01:00] [ERR] Error executing Scheduled Task
System.IO.FileNotFoundException: Could not load file or assembly 'Fastenshtein, Version=1.0.0.8, Culture=neutral, PublicKeyToken=null'. The system cannot find the file specified.

File name: 'Fastenshtein, Version=1.0.0.8, Culture=neutral, PublicKeyToken=null'
   at Viperinius.Plugin.SpotifyImport.Matchers.FuzzyMatcher.Matches(String target, String item)
   at Viperinius.Plugin.SpotifyImport.Matchers.TrackComparison.Equal(String jellyfinName, String providerName, ItemMatchLevel matchLevel)
   at Viperinius.Plugin.SpotifyImport.Matchers.TrackComparison.AlbumNameEqual(MusicAlbum jfItem, ProviderTrackInfo providerItem, ItemMatchLevel matchLevel)
   at Viperinius.Plugin.SpotifyImport.PlaylistSync.GetAlbum(MusicArtist artist, ProviderTrackInfo providerTrackInfo, Int32& nextAlbumIndex)
   at Viperinius.Plugin.SpotifyImport.PlaylistSync.GetMatchingTrack(ProviderTrackInfo providerTrackInfo, ItemMatchCriteria& failedMatchCriterium)
   at Viperinius.Plugin.SpotifyImport.PlaylistSync.FindTracksAndAddToPlaylist(Playlist playlist, List`1 providerTrackInfos, User user, CancellationToken cancellationToken)
   at Viperinius.Plugin.SpotifyImport.PlaylistSync.Execute(CancellationToken cancellationToken)
   at Viperinius.Plugin.SpotifyImport.Tasks.SpotifyImportTask.ExecuteAsync(IProgress`1 progress, CancellationToken cancellationToken)
   at Emby.Server.Implementations.ScheduledTasks.ScheduledTaskWorker.ExecuteInternal(TaskOptions options)
[2024-06-21 01:33:37.346 +01:00] [INF] "Import Spotify playlists" Failed after 0 minute(s) and 2 seconds
Viperinius commented 2 months ago

Ohh, thanks for reporting this. Turns out I forgot to include this new dependency in the built archive for release 1.8.1.0, so feeling a little bit dumb right now :)

Version 1.8.1.1 is out now and should come with the correct dlls, please let Jellyfin update the plugin to this version and try again

EvilSquirrelGuy commented 2 months ago

Awesome stuff, just updated and it works perfectly :)