Skip to content

Conversation

@JOJ0
Copy link
Member

@JOJ0 JOJ0 commented Aug 30, 2025

Description

Addresses some fixes and additions mentioned here #5915 and some I collected myself over the years.

Of course genres and sub-genres classifications always are rather opinionated, but I consider them useful for others too. Critical feedback is welcome.

To Do

  • Changelog. (Add an entry to docs/changelog.rst to the bottom of one of the lists near the top of the document.)

Summary by Sourcery

Enhance the lastgenre plugin’s genre whitelist by adding new genres and refining the hierarchy.

Enhancements:

  • Add multiple new genres across world, electronic, hip hop, jazz, rock, punk, and other categories
  • Reorganize subgenre tree: nest oldschool jungle under jungle, add leftfield and halftime, relocate uk hardcore and dub
  • Remove obsolete genre country-rap
  • Update genres.txt to sync with the revised genres-tree.yaml

@sourcery-ai

This comment has been minimized.

@JOJ0
Copy link
Member Author

JOJ0 commented Aug 30, 2025

@emiham please check

@arsaboo: you might have some additions to the soundtrack section. I suppose you're our expert with bollywood and so on :-) thanks!

@JOJ0 JOJ0 force-pushed the lastgenre_whitelist_tree_updates branch from ae9daba to d63d056 Compare August 30, 2025 08:54
@JOJ0
Copy link
Member Author

JOJ0 commented Aug 30, 2025

By the way I did some research via the last.fm API to see what the global top 100 genres are. We mostly had them already and now they are completed with this PR:

   Last.fm Top Tags
┏━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━┳━━━━━━━━━━┳━━━━━━━━━━━━┳━━━━━━┓
┃ Name                 ┃ Url                                          ┃  Reach ┃ Taggings ┃ Streamable ┃ Wiki ┃
┡━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━╇━━━━━━━━━━╇━━━━━━━━━━━━╇━━━━━━┩
│ rock                 │ https://www.last.fm/tag/rock                 │ 402262 │  4058674 │ 1          │ {}   │
│ electronic           │ https://www.last.fm/tag/electronic           │ 261468 │  2486055 │ 1          │ {}   │
│ seen live            │ https://www.last.fm/tag/seen+live            │  82543 │  2188754 │ 1          │ {}   │
│ alternative          │ https://www.last.fm/tag/alternative          │ 266787 │  2127536 │ 1          │ {}   │
│ pop                  │ https://www.last.fm/tag/pop                  │ 233227 │  2071309 │ 1          │ {}   │
│ indie                │ https://www.last.fm/tag/indie                │ 259944 │  2062217 │ 1          │ {}   │
│ female vocalists     │ https://www.last.fm/tag/female+vocalists     │ 169083 │  1632510 │ 1          │ {}   │
│ metal                │ https://www.last.fm/tag/metal                │ 158694 │  1301081 │ 1          │ {}   │
│ alternative rock     │ https://www.last.fm/tag/alternative+rock     │ 169891 │  1224442 │ 1          │ {}   │
│ jazz                 │ https://www.last.fm/tag/jazz                 │ 149702 │  1192298 │ 1          │ {}   │
│ classic rock         │ https://www.last.fm/tag/classic+rock         │ 137078 │  1148404 │ 1          │ {}   │
│ ambient              │ https://www.last.fm/tag/ambient              │ 149611 │  1118691 │ 1          │ {}   │
│ experimental         │ https://www.last.fm/tag/experimental         │ 144881 │  1106711 │ 1          │ {}   │
│ folk                 │ https://www.last.fm/tag/folk                 │ 151065 │   954068 │ 1          │ {}   │
│ indie rock           │ https://www.last.fm/tag/indie+rock           │ 137038 │   923808 │ 1          │ {}   │
│ punk                 │ https://www.last.fm/tag/punk                 │ 145176 │   916066 │ 1          │ {}   │
│ Hip-Hop              │ https://www.last.fm/tag/Hip-Hop              │ 131136 │   915754 │ 1          │ {}   │
│ hard rock            │ https://www.last.fm/tag/hard+rock            │ 115197 │   910240 │ 1          │ {}   │
│ black metal          │ https://www.last.fm/tag/black+metal          │  64336 │   900662 │ 1          │ {}   │
│ instrumental         │ https://www.last.fm/tag/instrumental         │ 125889 │   884461 │ 1          │ {}   │
│ singer-songwriter    │ https://www.last.fm/tag/singer-songwriter    │ 109870 │   855086 │ 1          │ {}   │
│ dance                │ https://www.last.fm/tag/dance                │ 134224 │   818773 │ 1          │ {}   │
│ 80s                  │ https://www.last.fm/tag/80s                  │ 100599 │   795876 │ 1          │ {}   │
│ death metal          │ https://www.last.fm/tag/death+metal          │  72776 │   757584 │ 1          │ {}   │
│ Progressive rock     │ https://www.last.fm/tag/Progressive+rock     │  96648 │   752542 │ 1          │ {}   │
│ heavy metal          │ https://www.last.fm/tag/heavy+metal          │  90777 │   748593 │ 1          │ {}   │
│ hardcore             │ https://www.last.fm/tag/hardcore             │  99317 │   719270 │ 1          │ {}   │
│ british              │ https://www.last.fm/tag/british              │  93478 │   698745 │ 1          │ {}   │
│ soul                 │ https://www.last.fm/tag/soul                 │ 102001 │   693562 │ 1          │ {}   │
│ chillout             │ https://www.last.fm/tag/chillout             │ 103575 │   652243 │ 1          │ {}   │
│ electronica          │ https://www.last.fm/tag/electronica          │ 102430 │   638212 │ 1          │ {}   │
│ rap                  │ https://www.last.fm/tag/rap                  │ 110339 │   622320 │ 1          │ {}   │
│ industrial           │ https://www.last.fm/tag/industrial           │  84955 │   584225 │ 1          │ {}   │
│ punk rock            │ https://www.last.fm/tag/punk+rock            │  98323 │   579356 │ 1          │ {}   │
│ Classical            │ https://www.last.fm/tag/Classical            │  74823 │   578799 │ 1          │ {}   │
│ Soundtrack           │ https://www.last.fm/tag/Soundtrack           │  85636 │   573890 │ 1          │ {}   │
│ blues                │ https://www.last.fm/tag/blues                │  96364 │   554429 │ 1          │ {}   │
│ thrash metal         │ https://www.last.fm/tag/thrash+metal         │  62868 │   523533 │ 1          │ {}   │
│ 90s                  │ https://www.last.fm/tag/90s                  │  57110 │   499195 │ 1          │ {}   │
│ metalcore            │ https://www.last.fm/tag/metalcore            │  68306 │   497185 │ 1          │ {}   │
│ psychedelic          │ https://www.last.fm/tag/psychedelic          │  78562 │   485970 │ 1          │ {}   │
│ acoustic             │ https://www.last.fm/tag/acoustic             │ 111651 │   484739 │ 1          │ {}   │
│ japanese             │ https://www.last.fm/tag/japanese             │  50142 │   477855 │ 1          │ {}   │
│ hip hop              │ https://www.last.fm/tag/hip+hop              │  80282 │   462562 │ 1          │ {}   │
│ post-rock            │ https://www.last.fm/tag/post-rock            │  66088 │   456724 │ 1          │ {}   │
│ Progressive metal    │ https://www.last.fm/tag/Progressive+metal    │  62820 │   452795 │ 1          │ {}   │
│ House                │ https://www.last.fm/tag/House                │  74731 │   449331 │ 1          │ {}   │
│ german               │ https://www.last.fm/tag/german               │  59784 │   445347 │ 1          │ {}   │
│ techno               │ https://www.last.fm/tag/techno               │  72326 │   442987 │ 1          │ {}   │
│ new wave             │ https://www.last.fm/tag/new+wave             │  64786 │   437207 │ 1          │ {}   │
│ trance               │ https://www.last.fm/tag/trance               │  65327 │   436819 │ 1          │ {}   │
│ funk                 │ https://www.last.fm/tag/funk                 │  83933 │   436287 │ 1          │ {}   │
│ post-punk            │ https://www.last.fm/tag/post-punk            │  60313 │   417920 │ 1          │ {}   │
│ american             │ https://www.last.fm/tag/american             │  28041 │   415759 │ 1          │ {}   │
│ piano                │ https://www.last.fm/tag/piano                │  76164 │   412258 │ 1          │ {}   │
│ indie pop            │ https://www.last.fm/tag/indie+pop            │  67517 │   402719 │ 1          │ {}   │
│ reggae               │ https://www.last.fm/tag/reggae               │  79997 │   402181 │ 1          │ {}   │
│ 70s                  │ https://www.last.fm/tag/70s                  │  50542 │   398812 │ 1          │ {}   │
│ electro              │ https://www.last.fm/tag/electro              │  76744 │   393429 │ 1          │ {}   │
│ trip-hop             │ https://www.last.fm/tag/trip-hop             │  71655 │   387941 │ 1          │ {}   │
│ rnb                  │ https://www.last.fm/tag/rnb                  │  57404 │   384279 │ 1          │ {}   │
│ 60s                  │ https://www.last.fm/tag/60s                  │  47619 │   377914 │ 1          │ {}   │
│ country              │ https://www.last.fm/tag/country              │  59911 │   371604 │ 1          │ {}   │
│ Power metal          │ https://www.last.fm/tag/Power+metal          │  50467 │   363993 │ 1          │ {}   │
│ Melodic Death Metal  │ https://www.last.fm/tag/Melodic+Death+Metal  │  53749 │   358761 │ 1          │ {}   │
│ downtempo            │ https://www.last.fm/tag/downtempo            │  56055 │   353534 │ 1          │ {}   │
│ emo                  │ https://www.last.fm/tag/emo                  │  66409 │   349016 │ 1          │ {}   │
│ male vocalists       │ https://www.last.fm/tag/male+vocalists       │  28374 │   342203 │ 1          │ {}   │
│ post-hardcore        │ https://www.last.fm/tag/post-hardcore        │  47860 │   334736 │ 1          │ {}   │
│ doom metal           │ https://www.last.fm/tag/doom+metal           │  41820 │   328065 │ 1          │ {}   │
│ Psychedelic Rock     │ https://www.last.fm/tag/Psychedelic+Rock     │  46461 │   299612 │ 1          │ {}   │
│ synthpop             │ https://www.last.fm/tag/synthpop             │  48147 │   295089 │ 1          │ {}   │
│ oldies               │ https://www.last.fm/tag/oldies               │  36324 │   290774 │ 1          │ {}   │
│ Love                 │ https://www.last.fm/tag/Love                 │  52691 │   289829 │ 1          │ {}   │
│ beautiful            │ https://www.last.fm/tag/beautiful            │  42965 │   284635 │ 1          │ {}   │
│ french               │ https://www.last.fm/tag/french               │  55640 │   280536 │ 1          │ {}   │
│ 00s                  │ https://www.last.fm/tag/00s                  │  13362 │   277809 │ 1          │ {}   │
│ russian              │ https://www.last.fm/tag/russian              │  43764 │   273970 │ 1          │ {}   │
│ Gothic Metal         │ https://www.last.fm/tag/Gothic+Metal         │  46485 │   272371 │ 1          │ {}   │
│ cover                │ https://www.last.fm/tag/cover                │  30365 │   269967 │ 1          │ {}   │
│ Grunge               │ https://www.last.fm/tag/Grunge               │  70711 │   265908 │ 1          │ {}   │
│ idm                  │ https://www.last.fm/tag/idm                  │  38957 │   265765 │ 1          │ {}   │
│ noise                │ https://www.last.fm/tag/noise                │  43231 │   265594 │ 1          │ {}   │
│ dark ambient         │ https://www.last.fm/tag/dark+ambient         │  35298 │   264423 │ 1          │ {}   │
│ guitar               │ https://www.last.fm/tag/guitar               │  51963 │   261167 │ 1          │ {}   │
│ Gothic               │ https://www.last.fm/tag/Gothic               │  47915 │   260907 │ 1          │ {}   │
│ britpop              │ https://www.last.fm/tag/britpop              │  62043 │   253558 │ 1          │ {}   │
│ pop rock             │ https://www.last.fm/tag/pop+rock             │  51984 │   249658 │ 1          │ {}   │
│ screamo              │ https://www.last.fm/tag/screamo              │  44216 │   249655 │ 1          │ {}   │
│ swedish              │ https://www.last.fm/tag/swedish              │  44030 │   248315 │ 1          │ {}   │
│ favorites            │ https://www.last.fm/tag/favorites            │  27740 │   245381 │ 1          │ {}   │
│ lounge               │ https://www.last.fm/tag/lounge               │  42381 │   241443 │ 1          │ {}   │
│ Mellow               │ https://www.last.fm/tag/Mellow               │  37848 │   240796 │ 1          │ {}   │
│ grindcore            │ https://www.last.fm/tag/grindcore            │  32226 │   238280 │ 1          │ {}   │
│ Nu Metal             │ https://www.last.fm/tag/Nu+Metal             │  50376 │   237131 │ 1          │ {}   │
│ jazz fusion          │ https://www.last.fm/tag/jazz+fusion          │  12322 │   235003 │ 1          │ {}   │
│ j-pop                │ https://www.last.fm/tag/j-pop                │  26699 │   234824 │ 1          │ {}   │
│ albums I own         │ https://www.last.fm/tag/albums+I+own         │  14038 │   233354 │ 1          │ {}   │
│ under 2000 listeners │ https://www.last.fm/tag/under+2000+listeners │   6402 │   231738 │ 1          │ {}   │
│ female vocalist      │ https://www.last.fm/tag/female+vocalist      │  41838 │   231227 │ 1          │ {}   │
└──────────────────────┴──────────────────────────────────────────────┴────────┴──────────┴────────────┴──────┘

FYI I'm not considering tags that are not actual music genres. I had myself sort them out via Claude Sonnet 4 and this is the summary - in my opinion there is useful information in them but I'm not sure how to incorporate them into lastgenre yet (or if better use them elsewhere) - just a sidenote and some brainstorming here:

❌ Filtered Out (Non-musical genres):
Temporal tags: "80s", "90s", "70s", "60s", "00s"
Geographic/nationality tags: "british", "american", "japanese", "german", "french", "swedish", "russian"
Descriptive tags: "female vocalists", "male vocalists", "female vocalist"
Experience tags: "seen live"
Personal tags: "albums I own", "favorites"
Popularity metrics: "under 2000 listeners"
Emotional descriptors: "beautiful", "Love", "Mellow"
Performance type: "cover"

@JOJ0 JOJ0 marked this pull request as ready for review August 30, 2025 10:13
Copilot AI review requested due to automatic review settings August 30, 2025 10:13
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

Updates the lastgenre plugin's genre classification system with fixes and additions for better music genre categorization. This addresses issues mentioned in #5915 and includes curated improvements to the genre whitelist and hierarchical structure.

  • Fixed genre naming inconsistencies (hyphen vs space formatting)
  • Added new genre categories and subcategories across various music styles
  • Reorganized genre hierarchy structure for better classification

Reviewed Changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
beetsplug/lastgenre/genres.txt Fixed hyphenation inconsistency for "industrial hip hop"
beetsplug/lastgenre/genres-tree.yaml Added multiple new genres and reorganized hierarchy structure
Comments suppressed due to low confidence (1)

beetsplug/lastgenre/genres-tree.yaml:1

  • [nitpick] The removal of 'country-rap' genre appears inconsistent with the overall pattern of adding genres in this PR. Consider whether this removal is intentional or if it should be relocated to maintain the genre coverage.
- african:

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

sourcery-ai[bot]

This comment was marked as spam.

@JOJ0
Copy link
Member Author

JOJ0 commented Aug 30, 2025

What we also see here that having a feature that aliases / _normalises genres is critical. Just look at how much is tagged as hip-hop and hip hop - not even last.fm is aware of that 2 genres for the same exist - even their wiki pages for those two are different texts!

So the genre aliases feature mentioned here should prioritized in my opinion to make lastgenre actually useful and less errorprone: #5915 (comment)

@emiham
Copy link
Contributor

emiham commented Sep 1, 2025

not even last.fm is aware of that 2 genres for the same exist - even their wiki pages for those two are different texts!

That is ridiculous. I agree that aliases are very important, as long as it's clear how they interact with the tree.

@JOJ0 JOJ0 added this to the 2.4.0 milestone Sep 2, 2025
@JOJ0 JOJ0 force-pushed the lastgenre_whitelist_tree_updates branch 2 times, most recently from 818c8d4 to a5962eb Compare September 4, 2025 18:03
@emiham
Copy link
Contributor

emiham commented Sep 4, 2025

Sorry, I didn't realize I was tagged as a reviewer. It looks good so far but let me know when you want to merge and I'll take a final look!

Copy link
Member

@snejus snejus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, just need to move uk hardcore back under hardcore, I think. Could you also add a note in the changelog by any chance?

@JOJ0
Copy link
Member Author

JOJ0 commented Sep 5, 2025

Looks good, just need to move uk hardcore back under hardcore, I think. Could you also add a note in the changelog by any chance?

that is intentional: i see uk hardcore (92 style) as the predecessor of jungle

uk hardcore has sonically more to do with jungle than it has with any hardcore/gabber styles

@JOJ0
Copy link
Member Author

JOJ0 commented Sep 5, 2025

Looks good, just need to move uk hardcore back under hardcore, I think. Could you also add a note in the changelog by any chance?

that is intentional: i see uk hardcore (92 style) as the predecessor of jungle

uk hardcore has sonically more to do with jungle than it has with any hardcore/gabber styles

last.fm agrees: ... breakbeat driven.....early uk rave days....breaks breaks breaks: https://www.last.fm/tag/uk+hardcore then around 93 I guess somebody called it Jungle, because the 4x4 kicks got less, actually not really sure why. There is some other legend about it....keep that for another time ;-) Early Jungle often had a Happy Hardcore vibe to it too, and that also is listed as a related genre. Or is UK Hardcore even a sub-genre of Oldschool Jungle? Would that make more sense?

But yeah at the end of the day - it's complicated and will never be correct. It just bothered me that dozens of oldschool breakbeat tracks were curated as Hardcore, even though they sound pretty much Oldschool Jungle and I will mix them together with them in a DJ set, so...

I'm not sure if the term UK Hardcore is nowadays used as a general description for any Hardcore music coming from the UK - at least the last.fm wiki page seems to point to that additionally to describing what it sounds like https://www.last.fm/tag/uk+hardcore

Was researching a little more for other opinions and found this awesome mix haha: https://soundcloud.com/realrifts/uk-hardcore-jungle-oldskool-hitmix, an also this person calls that old happy vibes breakbeat style "UK Hardcore"

@JOJ0
Copy link
Member Author

JOJ0 commented Sep 5, 2025

I moved UK Hardcore back below Hardcore, since Breakbeat Hardcore which essentially is a synonym for UK Hardcore is even somewhere else: It is under Breakbeat. But why is Drum And Bass not below breakbeat? Hmm probably because that style made it to the top/pop? ;-) So in the end: Everything is always wrong and always right. I give up sorting genres for today 🤣 🤣

@snejus
Copy link
Member

snejus commented Sep 5, 2025

I asked Perplexity a couple of questions about this and did some research myself: https://www.perplexity.ai/search/describe-uk-hardcore-genre-and-55zV3KuPQVSVMXXGLmKMgA

  • Breakbeat is largely the parent
  • 90s: UK Hardcore, the sound is characterized by fast tempos, sampled vocals, stabs, and energetic breakbeats
  • 92-93s: Jungle emerges as a darker, more complex offshoot of breakbeat hardcore and darkcore, pioneered by UK producers fusing breakbeats with reggae bass, dancehall samples, and soundsystem culture.

I listen to both genres a lot, and I just can't place them in the same bucket... I guess darker UK hardcore from the early 90s does sound close to early jungle, but that's the only similarity I could hear. Personally, I think the main difference is complexity: uk hardcore is simple, while jungle evolved to be more complex. Also, UK hardcore came before jungle, so nesting under jungle seems to be a bit wrong.

@JOJ0
Copy link
Member Author

JOJ0 commented Sep 5, 2025

I asked Perplexity a couple of questions about this and did some research myself: https://www.perplexity.ai/search/describe-uk-hardcore-genre-and-55zV3KuPQVSVMXXGLmKMgA

  • Breakbeat is largely the parent

  • 90s: UK Hardcore, the sound is characterized by fast tempos, sampled vocals, stabs, and energetic breakbeats

  • 92-93s: Jungle emerges as a darker, more complex offshoot of breakbeat hardcore and darkcore, pioneered by UK producers fusing breakbeats with reggae bass, dancehall samples, and soundsystem culture.

I listen to both genres a lot, and I just can't place them in the same bucket... I guess darker UK hardcore from the early 90s does sound close to early jungle, but that's the only similarity I could hear. Personally, I think the main difference is complexity: uk hardcore is simple, while jungle evolved to be more complex. Also, UK hardcore came before jungle, so nesting under jungle seems to be a bit wrong.

I changed it back already. Just works for me, but not even that always. I'd play 93 jungle together with uk hc but not 94/95 jungle so.., yeah not always 😅

Only thing I don't agree with is that history is of importance for canonicalization. If it were, DnB and subgenres would have to be below Jungle too. That also seems wrong. I think it's about what's the broader term for whatever reason it evolved to be. Popularity, more well known, more widely used name and so on.

But can you please ask your magic machine if breakbeat hardcore is a subgenre of hardcore or rather breakbeat? From what last.fm wiki page tells https://www.last.fm/tag/breakbeat+hardcore/wiki and from my feeling it's more similar to uk hardcore / oldschool rave than to what I think of classic or nu breaks/breakbeat

@snejus
Copy link
Member

snejus commented Sep 6, 2025

Thanks! See https://music.ishkur.com/

@JOJ0
Copy link
Member Author

JOJ0 commented Sep 6, 2025

Thanks! See https://music.ishkur.com/

Thanks but doesn't have. Breakbeat Hardcore. Your magic machine?

@JOJ0
Copy link
Member Author

JOJ0 commented Sep 6, 2025

Thanks! See https://music.ishkur.com/

Thanks but doesn't have. Breakbeat Hardcore. Your magic machine?

https://www.perplexity.ai/search/6cbc2c46-f190-49b1-9029-7372e372faf3

magic machine says we should move it below HC. Will do...

@JOJ0 JOJ0 requested a review from a team as a code owner September 12, 2025 05:25
@JOJ0 JOJ0 force-pushed the lastgenre_whitelist_tree_updates branch from 0e63f9f to 1a3de86 Compare September 13, 2025 07:08
@JOJ0
Copy link
Member Author

JOJ0 commented Sep 13, 2025

Sorry, I didn't realize I was tagged as a reviewer. It looks good so far but let me know when you want to merge and I'll take a final look!

A final look is in order @emiham. I rebased a little and commit-by-commit review including some reasons why is an option. Also I realized that it's critical with the current state of the plugin that accents with eg. spanish is important. if we write cancion in the tree and canción in the whitelist, canonicalization won't work. As far as I know the last.fm api understands unicode genre names and hopefully our code does as well, if not we'll fix it. The other way round (changing everything everywhere to ascii - which last.fm would also understand - seemed wrong and huge amount of changes! Anyway unicode was not invented yesterday, just saying, will/should work :-)

After all it is a neverending story, and again I came across dozens of genres that are actually synonyms. I did not try to put in all the variations into our tree and list and still be in favor of hopefully soonish start with getting my aliases feature ready for a PR. To really use the power of last.fm, we just need something like it.

Thanks in advance!

JOJ0 added a commit to JOJ0/beets that referenced this pull request Sep 13, 2025
Fixes to the beets default tree and whitlist files I collected over the
years; Includes Tags last.fm returns quite often; Also the
chart.getTopTags API endpoint was checked to make sure the top 100
charts are included in beets default tree and whitelist.
that came up in the pull request comments and other discussions.
Also changes decided during PR discussions and more research.
experimental, even though a tag last.fm very often returns (in top 20
tag charts!), it is too broad of a term to be pinned downed with any
particular genre, thus can't really be used for canonicalization.
@JOJ0 JOJ0 force-pushed the lastgenre_whitelist_tree_updates branch from 3d8c486 to d24a851 Compare September 13, 2025 07:30
Copy link
Member

@snejus snejus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great to me!

@JOJ0 JOJ0 merged commit 160d407 into beetbox:master Sep 13, 2025
17 checks passed
@JOJ0
Copy link
Member Author

JOJ0 commented Sep 13, 2025

Sorry, I didn't realize I was tagged as a reviewer. It looks good so far but let me know when you want to merge and I'll take a final look!

A final look is in order @emiham. I rebased a little and commit-by-commit review including some reasons why is an option. Also I realized that it's critical with the current state of the plugin that accents with eg. spanish is important. if we write cancion in the tree and canción in the whitelist, canonicalization won't work. As far as I know the last.fm api understands unicode genre names and hopefully our code does as well, if not we'll fix it. The other way round (changing everything everywhere to ascii - which last.fm would also understand - seemed wrong and huge amount of changes! Anyway unicode was not invented yesterday, just saying, will/should work :-)

After all it is a neverending story, and again I came across dozens of genres that are actually synonyms. I did not try to put in all the variations into our tree and list and still be in favor of hopefully soonish start with getting my aliases feature ready for a PR. To really use the power of last.fm, we just need something like it.

Thanks in advance!

Change of plans since we'd like to release today, I just merged it. Anyway thanks @emiham if you find anything or have additions we can address that in the future.

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.

3 participants