-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Random improvements #13
base: main
Are you sure you want to change the base?
Conversation
Things may have changed now, but when I first started writing the plugin, I remember there was some reason I didn't do that. For the life of me I can't remember the reason though, so it may be fixed now... |
As for |
I thought about that too, but for now I decided to keep it seperate because VocaDB has a different default value. I'll probably just use the global setting though, since that's likely what you'd expect to be used |
Sorry, but do you mean that you've made some changes to it, or do I think there should be some changes made to them? I tried looking at the code but couldn't see anything that would affect them so I'm a little lost (or blind.) |
Also for artist string, I was thinking should the artists be sorted in alphabetical order? All of the artist fields in VocaDB website are already sorted alphabetically, with the exception of the The artists given by VocaDB api seem to be in addition order however, and so pretty much just a random order, depending on who was added first. When I got some time I'll try to check out how VocaDB creates the |
Now that artists and artists_ids are merged in a dict, each artist in the resulting artists list has a corresponsing element in the artists_ids list, even if the id has been set to an empty string. Beets seems to be inserting |
I say leave it as is, because if we start removing empty ids, the ids may not be at the same position as the artists name is. Since i don't know how to properly say what I mean, here's an example of what I mean:
Currently
But if we remove empty ones, ids may point to incorrect artists:
|
yeah, I was thinking the same thing, I just wasn't sure about it. Good to know I accidentally fixed a bug |
Not sure about this. I like the way artists are currently sorted. Here's an example: https://vocadb.net/S/304504
It's definitely generated server-side |
That's true. I've just had some songs in my library where artists seem to be in a completely random order so it came to mind, but now that you say it I agree. Anyways, I dug a little at VocaDB source, and we've got some differences in how we create the artist string. Current main differences to how this plugin does it are:
Also for transparency, points 4 and 5 are the main reasons I didn't/don't want to use the For reference: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I really don't like how request params are handled. Can you think of a better solution?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry, but as in what context? If it's about the *Params classes then at a quick look, I'm not sure how I would change/improve it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
jcrist/msgspec#797 (comment)
this might be a good solution
beetsplug/touhoudb.py
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we move all plugin files to be under vocadb folder, or leave additional sources to be under beetsplug?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think I'll leave it like it is.. for now.
I'm not sure if that's possible, but maybe an event hook could be used to dynamically add sources based on a configuration, thereby merging the currently separate plugins into one that could support arbitrary sources. But that's really not a priority for me right now.
Also, my goal is to decouple requests_handler from the plugin as much as possible, and turning it into a general-purpose API client at some point (still with the primary goal of making the plugin work).
After looking at the pr more closely, I'm not sure about the new dependencies.
Mostly, for both of these dependencies I'm just wondering, (how) will it improve this plugin? I just personally do not see that we gain much by using either of them. |
beetcamp uses it as well, it seems to be more reliable and future-proof (snejus/beetcamp@46c51eb)
|
I'm probably not gonna be able to get much done in the next few weeks since I have some important school work to to... I'll just push what I have right now. |
next thing I want to do is make the plugins use custom flexible attributes like vocadb_[...]id instead of mb_[...]id