Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: foo_discogs (Read 1359211 times) previous topic - next topic
0 Members and 5 Guests are viewing this topic.

Re: foo_discogs

Reply #2950


mapping the sintax is like DISCOGS_ARTISTS_MEMBERS but artist members writes a multivalue and artists urls a single value with all the urls.

How can I write the urls as multivalue?

Sorry, I am not sure about this.
On my default tag mapping both ARTIST_URLS and ARTIST_MEMBERS generate comma separated string lists,
to have semicolons instead, you may try this?

Code: [Select]
$join(%<<RELEASE_ARTISTS_URLS>>%,; )

I believe there is an excellent help file :-[  included in distribution that I should be reading.

@frogworth, you are welcome and thanks for testing...
Update is not very accurate for releases that aren't part of a master releases
but still provides some assistance.

Hopefully @Zoomorph might come back at some point,
or another developer with more expertise than I do will show up and continue developement,
in the interim, of course I am absolutely in the obligation to keep releasing mod updates  :)


Re: foo_discogs

Reply #2951


mapping the sintax is like DISCOGS_ARTISTS_MEMBERS but artist members writes a multivalue and artists urls a single value with all the urls.

How can I write the urls as multivalue?

Sorry, I am not sure about this.
On my default tag mapping both ARTIST_URLS and ARTIST_MEMBERS generate comma separated string lists,
to have semicolons instead, you may try this?

Code: [Select]
$join(%<<RELEASE_ARTISTS_URLS>>%,; )

Yeah is strange...Is the only tag that does this.

Anyway your code solves the problem.

Thanks you  8)


I talked too soon.

The situation is more bizarre now.

The code write the urls with ; but in a single value.

for example:

With Buckethead - Grand Gallery Discogs Rel. ID : 5742047

DISCOGS_ARTIST_URLS return "http://www.bucketheadland.com; http://bucketheadpikes.com; https://music.bucketheadpikes.com/; https://books.discogs.com/credit/546378-buckethead"

But if I do $meta(DISCOGS_ARTIST_URLS,1) returns nothing

but $meta(DISCOGS_ARTIST_URLS,) returns "http://www.bucketheadland.com; http://bucketheadpikes.com; https://music.bucketheadpikes.com/; https://books.discogs.com/credit/546378-buckethead"

Its my foobar haunted?

Re: foo_discogs

Reply #2952



mapping the sintax is like DISCOGS_ARTISTS_MEMBERS but artist members writes a multivalue and artists urls a single value with all the urls.

How can I write the urls as multivalue?

Sorry, I am not sure about this.
On my default tag mapping both ARTIST_URLS and ARTIST_MEMBERS generate comma separated string lists,
to have semicolons instead, you may try this?

Code: [Select]
$join(%<<RELEASE_ARTISTS_URLS>>%,; )

Yeah is strange...Is the only tag that does this.

Anyway your code solves the problem.

Thanks you  8)


I talked too soon.

The situation is more bizarre now.

The code write the urls with ; but in a single value.

for example:

With Buckethead - Grand Gallery Discogs Rel. ID : 5742047

DISCOGS_ARTIST_URLS return
Code: [Select]
http://www.bucketheadland.com; http://bucketheadpikes.com; https://music.bucketheadpikes.com/; https://books.discogs.com/credit/546378-buckethead


But if I do $meta(DISCOGS_ARTIST_URLS,1) returns nothing

but $meta(DISCOGS_ARTIST_URLS,) returns
Code: [Select]
http://www.bucketheadland.com; http://bucketheadpikes.com; https://music.bucketheadpikes.com/; https://books.discogs.com/credit/546378-buckethead

Its my foobar haunted?


Re: foo_discogs

Reply #2954

The code write the urls with ; but in a single value.



remembered to set the field as multivalue in fb2k Preferences,

Is already in the list

or maybe need to right click on the field and split the values?

I use a script to correct the tags before using discogs that split the field...
and now that I check, it corrects aliases, in groups, members and others supossed multivalues fields so my discogs isn't writen multivalues fields for arrays.

I only noticed URLs at first cause a run service entry to open the links

 

Re: foo_discogs

Reply #2955
@paregistrase
Thanks for sharing your use case.

I guess value splitting is out of this component scope.
I'd say that foo_discogs doesn't differentiate between artists members and url arrays.
When it comes to writing their tags, it performs a single call to 'meta_set' passing a string of a comma separated list of members and another single call for the urls.

Re: foo_discogs

Reply #2956
@paregistrase
Thanks for sharing your use case.

I guess value splitting is out of this component scope.
I'd say that foo_discogs doesn't differentiate between artists members and url arrays.
When it comes to writing their tags, it performs a single call to 'meta_set' passing a string of a comma separated list of members and another single call for the urls.

No problem, just curious at this point why genres or labels writes multivalues and members and urls doesn't.

Anyway this is a old problem of mine, so old that I forgot that a fix was inside my correct tags script  :D

Thanks for your time

Re: foo_discogs

Reply #2957
Another mod release available... hope you enjoy it!

v2.23-mod.03

Change log:

  • Write, Update and Write+Update fix update.
  • Normal, Difference and Original views are now working like the original plugin.
  • Apply button in Edit Mappings shows configuration state.


  • New multi_search_exp & multi_replace_exp functions (Regex).
    example:
    $multi_replace_exp(%COMPOSER%,'^(.+)\s(.+)$','$2, $1')

v2.23-mod.03

Thanks for testing  :)

Re: foo_discogs

Reply #2958
Thanks for the update!!

A quick note re:
Thanks for testing  :)

I just did a quick test with a release that had an old/wrong ReleaseID. So in that process I needed to update some info with the different release ID.
The componenet (mod 3) correctly took & displayed all release info, but only applied most of it.
The one that didn't I noticed was the ReleaseID - i.e it was shown in the overview with the new ID, but the old one persisted afterwards and the new was not written to the files.
Also - in the mapping dialogue - ReleaseID  was set to write+update, but the whole line/field was greyed out in the mapping overview. So to my understanding this should have been written, but wasn't.
Could someone else see if this is replicatable for others ?

Cheers.
c.

Re: foo_discogs

Reply #2959
... in the mapping dialogue - ReleaseID  was set to write+update, but the whole line/field was greyed out in the mapping overview. So to my understanding this should have been written, but wasn't.
Could someone else see if this is replicatable for others ?

How did you set ReleaseID as write+update, did versions  < v.2.23 allowed it ?

I've just tested updating DISCOGS_XXXX_IDs either by removing them before rewrite or by adding duplicate mappings set as write + update. Both methods working here  ::)




Re: foo_discogs

Reply #2961
@stevehero
Just lightly tested regular expressions... please test with caution.
Hopefully the following days I'll find time to further test these funtions and the issue raised by alec.tron above...

Regards

Re: foo_discogs

Reply #2962
I have found that the mod versions are only writing the first value of multi-value fields.
I have the tag mappings as default, and I have even set those fields to be multivalue in the advanced settings (which I didn't have to do with the original plugin).

For this release: https://www.discogs.com/x/release/3316537
track 1 should have four entries in DISCOGS_TRACK_CREDITS, but I'm only getting one.
I reverted to the on-mod 2.23 version and it wrote all the values as expected.

Re: foo_discogs

Reply #2963
@frogworth

Ouch!... bug found,  and fix is on its way  :-[

@alec.tron,
I am still unsure about a proper solution to ReleaseId overwrites... although I am including code that should help troubleshooting (preview summaries).

Thanks again for your feedback



Re: foo_discogs

Reply #2964
I've just tested updating DISCOGS_XXXX_IDs either by removing them before rewrite or by adding duplicate mappings set as write + update. Both methods working here  ::)
I'm not sure what you mean by "DISCOGS_XXXX_IDs" (?).
The Release ID field I had troubles with was:
DISCOGS_RELEASE_ID

As for:
How did you set ReleaseID as write+update, did versions  < v.2.23 allowed it ?
My bad - this is greyed out and is set to 'write' only. (DISCOGS_MASTER_RELEASE_ID, DISCOGS_ARTIST_ID & DISCOGS_LABEL_ID are all greyed out too, but set to 'write+update').

So it makes sense that it was not updating in one way.
But, if I as a user consciously pass on a different DISCOGS_RELEASE_ID in the very first dialogue window than to what it previously had, and all values (artist, title, etc) are updated accordingly from the new DISCOGS_RELEASE_ID page I state, then the DISCOGS_RELEASE_ID should also be updated/rewritten(or rather take the explicit DISCOGS_RELEASE_ID value I passed in the beginning). If not - then that would be a way to create disconnected data.... i.e. the DISCOGS_RELEASE_ID from one release, but the actual data applied to the files for every field from a different DISCOGS_RELEASE_ID...

Might be it's a legacy issue as well.... but never encountered it, and I'm sure I did update a given DISCOGS_RELEASE_ID field to a different DISCOGS_RELEASE_ID value when it was more appropriate/available to fetch the data from.

Churs.
c.

Re: foo_discogs

Reply #2965
@frogworth

Ouch!... bug found,  and fix is on its way  :-[

@alec.tron,
I am still unsure about a proper solution to ReleaseId overwrites... although I am including code that should help troubleshooting (preview summaries).

Thanks again for your feedback




Awesome, thanks so much! Now saving all fields fully :)

Re: foo_discogs

Reply #2966
Might be it's a legacy issue as well.... but never encountered it, and I'm sure I did update a given DISCOGS_RELEASE_ID field to a different DISCOGS_RELEASE_ID value when it was more appropriate/available to fetch the data from.
Just FYI, as this works and I can get around the issue of the DISCOGS_RELEASE_ID  not being re-written when updated in foo_discogs - so my current workflow for that then is, if I need to re-tag from a different release ID:
- Edit DISCOGS_RELEASE_ID on all files by hand to the new release to fetch data from
- run foo_discogs, picks up the new correct DISCOGS_RELEASE_ID , then applies all the data

This way I can get around not having disconnected data, i.e. the DISCOGS_RELEASE_ID  from the previous release, and the data from the new one, stated in the foo_discogs first window ID input (which does not get rewritten, iif updated by hand).

Churs.
c.

Re: foo_discogs

Reply #2967
@frogworth

That's great news...

I was scrathing my head about @paregistrase comments earlier  :)

@alec.tron

Thanks for the info... started to have a look at the cache, and soon will start testing if a button to delete the cache for a particular release would help... your comments are a source of inspiration!

Hope you enjoy testing
Mod#5 (v2.23-mod05)

Cheers!

Change log:

- Text box with number of tags being modified.
- Added Context menu to the Match Tracks panel..
- Fix for crash when arranging song order using the Control key.

Re: foo_discogs

Reply #2968
I was scrathing my head about @paregistrase comments earlier  :)

Me too man, it doesn't have any logic

I removed the component and the configuration file, all multivale and install it again.

Without modifications it writes:

DISCOGS_ALBUM_ARTISTS, DISCOGS_ARTIST_ID, DISCOGS_ARTIST_REALNAME, DISCOGS_ARTISTS, DISCOGS_RELEASE_CREDITS with ";" as separator

but
DISCOGS_ARTISTS_ALL_NAME_VARIATIONS, DISCOGS_ARTISTS_INGROUPS, DISCOGS_ARTISTS_URLS with ","

if I put DISCOGS_ARTISTS_URLS, for example, in multivalue and tag the file again the "Use ; character to separate multiple values" of edit window is active but the component write the values with "," as separator in a single value

Not logic at all

Re: foo_discogs

Reply #2969

Hi @paregistrase,

First, I apologize,

I guess value splitting is out of this component scope.
I'd say that foo_discogs doesn't differentiate between artists members and url arrays.
When it comes to writing their tags... blah blah

I realize now this is rubbish...

I tested using:

Code: [Select]
$split(%DISCOGS_ARTISTS_MEMBERS%) or
$split(%DISCOGS_ARTISTS_MEMBERS%,',')

... and multi-value was saved accordingly (in the original component and in modded version after v04)
$meta works directly afterwards.

Quote
Not logic at all
:)

Re: foo_discogs

Reply #2970
Hope you enjoy testing
Mod#5 (v2.23-mod05)

Cheers!

Change log:

- Text box with number of tags being modified.
- Added Context menu to the Match Tracks panel..
- Fix for crash when arranging song order using the Control key.
First of all many thanks for keeping this plugin updated! :-)

I tried the modded version for the first time today and it's crashing as soon as i'm trying to write the tags to the file. Not sure what i'm doing wrong. Last step could be deleting the discogs_plugin config file, which i'm trying to avoid for now (with non modded version everything worked as expected).

I added the reports. As you can see, i tried different combinations first to no success. Let me know if you need further information. For now back to non modded version... Looking forward the next releases!  O:)

EDIT: Out of pure interest i tried it with clean installation and config of your mod, but it's still crashing.

Re: foo_discogs

Reply #2971

Hi @paregistrase,

First, I apologize,

I guess value splitting is out of this component scope.
I'd say that foo_discogs doesn't differentiate between artists members and url arrays.
When it comes to writing their tags... blah blah

I realize now this is rubbish...

No problem.

I tested using:

Code: [Select]
$split(%DISCOGS_ARTISTS_MEMBERS%) or
$split(%DISCOGS_ARTISTS_MEMBERS%,',')

... and multi-value was saved accordingly (in the original component and in modded version after v04)
$meta works directly afterwards.

Quote
Not logic at all
:)

That is what I was doing after tagging with discogs component as a workarround all this time

Spliting the single value "," sepparate that discogs tagger writes make the tag multivalue.

Maybe I understand wrong but the field must be writen as multivalue for the component, like the others. right?




Re: foo_discogs

Reply #2972
That is what I was doing after tagging with discogs component as a workarround all this time

Spliting the single value "," sepparate that discogs tagger writes make the tag multivalue.
Maybe I understand wrong but the field must be writen as multivalue for the component, like the others. right?

I dont know what you mean by 'after tagging'. Why not doing it in one single step? Adding a new tag for example MY_ARTISTS_MEMBERS and keeping the DISCOGS_ARTISTS_MEMBERS for updates. No further step needed afaik.

Your understanding is right, using the FB2K API, it means calling meta_add_value instead of meta_set. After that, FB2K deals with the API request, taking into consideration the tag type specifications, or maybe delegating to another library...  ???


Re: foo_discogs

Reply #2973
First of all many thanks for keeping this plugin updated! :-)

I tried the modded version for the first time today and it's crashing as soon as i'm trying to write the tags to the file. Not sure what i'm doing wrong. Last step could be deleting the discogs_plugin config file, which i'm trying to avoid for now (with non modded version everything worked as expected).

I added the reports. As you can see, i tried different combinations first to no success. Let me know if you need further information. For now back to non modded version... Looking forward the next releases!  O:)

EDIT: Out of pure interest i tried it with clean installation and config of your mod, but it's still crashing.
Now the non-modded version crashed on me too. From today on i (tried) adding [%RELEASE_TOTAL_TRACKS% Track'('s')'] to end of master sub-release formatting string (as i liked the ability to see on first view how many tracks a release includes when being in find release window). Fetching of course is slower now, but worked so far. Maybe it's too much information for caching or something like that?

Re: foo_discogs

Reply #2974

EDIT: Out of pure interest i tried it with clean installation and config of your mod, but it's still crashing.


i've sent you a pm,
would you check if the crash no longer occurs in the attached version, please?