[Abcde-users] Unknown Artist but release found on MusicBrainz

Steve McIntyre steve at einval.com
Sun Feb 21 00:10:16 GMT 2016


On Sat, Feb 20, 2016 at 01:46:56PM -0700, Alan W. Kerr wrote:
>
>in a statement in the "HERE" block.  So, lines 98-101 are:
>
>	my @events = @{$release->release_event_list()->events()};
>	my $rel_year =  substr($events[0]->date(),0,4);
>
>        $releasenum++;
>
>and the problem seems to be the "date()" command.  Which might also explain
>why this happens infrequently...  you probably have few CD that put you in
>the "HERE" block.
>
>SO!  Finally...  to the programmers/maintainers of this:
>
>1) is there an error here?  can someone please fix it?
>2) if there is NOT an error (the problem is in the musicbrainz database),
>then can someone add some perl logic to gracefully skip this error and
>continue?

Thanks Alan, this looks like a good catch. That code was added in the
last update to abcde-musicbrainz-tool back in October last year:

commit 64a362f4ad828821eb27c7cb14ceeaf14312eab1
Author: Steve McIntyre <steve at einval.com>
Date:   Sat Oct 3 12:13:29 2015 +0100

    Grab year information too when using musicbrainz
    
    Thanks to Marco Hoppstaedter for the patch. Closes issue 10:
    http://abcde.einval.com/bugzilla/show_bug.cgi?id=10

It looks to me like maybe there are some releases without event
information, and that causes confusion. I've not seen this myself on
any CDs here that I'm aware of, but that could just be dumb luck of
course.

If you change the code

        my $rel_year =  substr($events[0]->date(),0,4);

to

	my $rel_year = "";
	if ($release->release_event_list()->count() > 0) {
	    $rel_year =  substr($events[0]->date(),0,4);
	}

and try again with one of your problem CDs, does it work better?

-- 
Steve McIntyre, Cambridge, UK.                                steve at einval.com
Support the Campaign for Audiovisual Free Expression: http://www.eff.org/cafe/




More information about the Abcde-users mailing list