2015-09-19, 17:59
Keeping design discussion off Github...
I feel that we need to make some changes to the multiple ways we hold artist names, and inconsistent way they are passed to different processes. I suspect that is giving us so problems with JSON output and NFO application, but if not it would still be good to make the design more robust.
Back in Gotham the concept of artist credits was introduced, this holds both artist name and MusicBrainz ID. The artists for songs and albums are now held in a vector of these objects. Previously the artist names were just held in a string vector, and this has been continued. We also store the concatonated names as a string, but this has a reasonable use.
I think that rather than try and maintain the same data in several forms we should stop using the string vector and in situations that a string vector is required use a method that extracts that information from the artist credits. An initial step in this direction has been made by PR8079, that uses a method to get artist names from Song and Album into CMusicInfoTag, but does not remove the string vector.
Because this change effect a number of files I would like some indication for dev team members if this is OK, rather than waste my time on editing code only to be rejected. It is really just good housekeeping rather than design change.
Anyone?
I feel that we need to make some changes to the multiple ways we hold artist names, and inconsistent way they are passed to different processes. I suspect that is giving us so problems with JSON output and NFO application, but if not it would still be good to make the design more robust.
Back in Gotham the concept of artist credits was introduced, this holds both artist name and MusicBrainz ID. The artists for songs and albums are now held in a vector of these objects. Previously the artist names were just held in a string vector, and this has been continued. We also store the concatonated names as a string, but this has a reasonable use.
I think that rather than try and maintain the same data in several forms we should stop using the string vector and in situations that a string vector is required use a method that extracts that information from the artist credits. An initial step in this direction has been made by PR8079, that uses a method to get artist names from Song and Album into CMusicInfoTag, but does not remove the string vector.
Because this change effect a number of files I would like some indication for dev team members if this is OK, rather than waste my time on editing code only to be rejected. It is really just good housekeeping rather than design change.
Anyone?