mirror of
https://github.com/advplyr/audiobookshelf.git
synced 2026-05-30 23:40:40 +02:00
[Bug]: Incorrect authors created from match results due to comma-separation #1764
Open
opened 2026-04-24 23:57:27 +02:00 by adam
·
7 comments
No Branch/Tag Specified
master
book_tags_genres_dedupe
episode_download_fallback
Issue-4540-SortBy-StartedDate-and-FinishedDate
episode_meta_tagging
fix_authorize_race_condition
redirect_transcode_requests
progress_updated_sort
fix_ereader_socket_event
fix_change_empty_root_password
fix_podcast_session_track_index
fix_set_token
session_modal_user
localize_durations
fix_oidc_create_user
jwt_auth_refactor
fix_scanner_deleting_single_file_books
fix_mediaprogress_updatedat_2
experimental_next_client
podcast_episode_duration
episode-timestamps-clickable
book_author_secondary_sort_title
podcast_useragents
pathexists_user_access
fix_pathexists_join
book_author_secondary_sort
clean_duplicate_mediaprogress
sanitize_html_description
trix_prevent_attachments
check_path_api_fix
fix_mediaprogress_updatedat
increase_express_json_limit
fix_dockerfile_nunicode
search_episodes
audiobook_tools_update
episode_secondary_sorts
hls_stream_url_update
new_session_track_endpoint
audiobook_tools_enhancements
watcher_rescans_update
player_track_tooltip
fix_exclude_prefixes_crash
socket_item_events
fix_podcast_episode_scanner_promise
new_stats_controller
count_cache_for_userpermissions
parsing-opf-v3
validate_migration_files
fix-quick-match-all-crash
fix-chapter-end-sleep-timer
stringify_sequelize_query
remove-col-ambiguity
fix_next_prev_edit_description
details_trim_whitespace
fix_content_url_basepath
fix_logger_fatal
progress_bar_visibility
batch-edit-populate-map-details
feed_generator_updates
bookmark-modal-updates
migrate-library-item-in-scanner
migrate-new-library-items
migrate-podcasts-new-library-item-2
migrate-podcasts-new-library-item
fix-remove-episode-from-playlist
playback-session-use-new-library-item
refactor-library-item
fix-heatmap-caption
feed-episodes-upsert
share-media-player-media-session-api
remove-old-playlist
remove_old_collection_object
plugin-implementation-demo
feed_migration
refactor-feeds-from-item
fix_remove_authors_no_books
v2.17.3-fk-constraints-migration
migrations-first-upgrade
sqlite_2
feature/nuxt-target-server
waveform
sqlite
playlists
video
v2.35.1
v2.35.0
v2.34.0
v2.33.2
v2.33.1
v2.33.0
v2.32.1
v2.32.0
v2.31.0
v2.30.0
v2.29.0
v2.28.0
v2.27.0
v2.26.3
v2.26.2
v2.26.1
v2.26.0
v2.25.1
v2.25.0
v2.24.0
v2.23.0
v2.22.0
v2.21.0
v2.20.0
v2.19.5
v2.19.4
v2.19.3
v2.19.2
v2.19.1
v2.19.0
v2.18.1
v2.18.0
v2.17.7
v2.17.6
v2.17.5
v2.17.4
v2.17.3
v2.17.2
v2.17.1
v2.17.0
v2.16.2
v2.16.1
v2.16.0
v2.15.1
v2.15.0
v2.14.0
v2.13.4
v2.13.3
v2.13.2
v2.13.1
v2.13.0
v2.12.3
v2.12.2
v2.12.1
v2.12.0
v2.11.0
v2.10.1
v2.10.0
v2.9.0
v2.8.1
v2.8.0
v2.7.2
v2.7.1
v2.7.0
v2.6.0
v2.5.0
v2.4.4
v2.4.3
v2.4.2
v2.4.1
v2.4.0
v2.3.5
v2.3.4
v2.3.3
v2.3.2
v2.3.1
v2.3.0
v2.2.23
v2.2.22
v2.2.21
v2.2.20
v2.2.19
v2.2.18
v2.2.17
v2.2.16
v2.2.15
v2.2.14
v2.2.13
v2.2.12
v2.2.11
v2.2.10
v2.2.9
v2.2.8
v2.2.7
v2.2.6
v2.2.5
v2.2.4
v2.2.3
v2.2.2
v2.2.1
v2.2.0
v2.1.5
v2.1.4
v2.1.3
v2.1.2
v2.1.1
v2.1.0
v2.0.24
v2.0.23
v2.0.22
v2.0.21
v2.0.20
v2.0.19
v2.0.18
v2.0.17
v2.0.16
v2.0.15
v2.0.14
v2.0.13
v2.0.12
v2.0.11
v2.0.10
v2.0.9
v2.0.8
v2.0.7
v2.0.6
v2.0.5
v2.0.4
v2.0.3
v2.0.2
v2.0.1
v1.7.2
v1.7.1
v1.7.0
v1.6.0
v1.5.5
v1.5.0
v1.4.11
v1.4.9
v1.4.7
v1.4.6
v1.4.4
v1.4.2
v1.4.0
v1.4.1
v1.3.4
v1.3.3
v1.3.1
v1.2.8
v1.2.6
v1.2.5
v1.2.4
v1.2.1
v1.1.15
v1.1.14
v1.1.13
v1.1.12
v1.1.11
v1.1.10
v1.1.9
v1.1.8
v1.0.0
0.9.61-beta.0
0.9.61-beta
Labels
Clear labels
authentication
backlog
bug
chapter editor
config-issue
ebooks
encoding/embedding
enhancement
help wanted
listening sessions & progress
planned
possible plugin
progress sync
pull-request
sorting/filtering/searching
unable to reproduce
upload
users & permissions
waiting
Mirrored from GitHub Pull Request
No Label
bug
Milestone
No items
No Milestone
Projects
Clear projects
No project
Assignees
adam (Adam Melkus)
Clear assignees
No Assignees
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: starred/audiobookshelf#1764
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @mikiher on GitHub (Feb 25, 2024).
Describe the issue
Currently, when book match results are created, several authors are joined into a single author field with commas (e.g. "John Doe, Jane Doe"). Then when a match is selected (or when using quick match), the author field is again split into several authors, using comma separation.
Te current logic is problematic, since in many cases a single author name can include a comma (e.g. "John Doe, Ph.D."), and it is then split incorrectly into a number of authors (e.g. "Joen Doe" and "Ph.D"). A side-effect of this bahviour also caused #2650.
Proposed Solution:
Most match providers already return separate authors (I believe itunes is the only one returning a single author)
Instead of joining them into a single author field and then splitting it again, we should change the match results structure to contain an array of authors.
Steps to reproduce the issue
Expected: Book has single author "John Doe, Ph.D."
Actual: Book has two authors, "John Doe", and "Ph.D."
Audiobookshelf version
v2.8.0
How are you running audiobookshelf?
Built from source
@advplyr commented on GitHub (Dec 21, 2024):
I can't remember if this was fixed yet but I remember some work being done there at some point. I don't know of a book to test this with.
@mikiher commented on GitHub (Dec 21, 2024):
This is not resolved.
For example, try matching Feeling Good by David Burns on Google Books.
@damajor commented on GitHub (Feb 5, 2025):
This is really a pain and getting urgent to fix I think.
Audiobooks with multiples authors (same logic applies also to narrators) gets completly screwed when the list contains a single name author, even perfectly tagged audiobooks.
@advplyr You don't need specific audiobook to reproduce, just setup an author/narrator metadata with a list like this one
"Fname1 Lname1, Fname2 Lname2, SingleName, Fname3 Lname3"No matters where the single name author is, the fuzzy detection logic of ABS will screw up things.
I even tried with different authors separators and it does not help. I falsely assumed that some separators (
';','&') would help because I don't remember any author names with';'or'&'in them, but not.It happens when using metadata from audiobook files AND also when using PATH to discover authors.
Possible solutions:
The fuzzy discovering logic is great BUT it should never be mandatory.
This issue is very similar to this one #1675
@advplyr commented on GitHub (Feb 5, 2025):
@damajor
I just tested this with the author names you mention in the folder structure and it pulled in correctly.
To run this test I updated the scanner precedence moving folder structure to the top to ensure that the authors would be pulled from the folder name.
I'm aware of author names like this
John Doe, Ph.Dbeing an issue but I'm not sure how to reproduce the single name author issue you are referring to.Can you verify what version of Abs you are running and give more exact reproducible steps?
@damajor commented on GitHub (Feb 5, 2025):
I just made a new test container (latest ABS) with the following audiobook tree:
I used this library settings:
Folder authors string is exactly the same inside the audiobook file.
And the results:
Well honestly I did not test with a single name author/narrator in middle of the list, but it seems that does not work if there is one in the first place of the author list. Maybe a side/edge effect ?
@mikiher commented on GitHub (Feb 5, 2025):
In any case, the thing you're describing is not the same as the issue I described when I opened this bug. My issue specifically has to with matching (i.e. getting metadata from a match provider like Audible), not with metadata obtained through scanning. You should probably open a separate issue.
@damajor commented on GitHub (Feb 5, 2025):
@mikiher & @advplyr I created this one (#3940) to track my issue.