Description of problem: python-musicbrainz2 depends on the libdiscid library, but there is no dependency in it nor is there even a RPM for libdiscid available in Fedora 7. The dependency is somewhat obscured due to the use of ctypes in python-musicbrainz2, so its an easy mistake to make. Version-Release number of selected component (if applicable): python-musicbrainz2-0.4.1-1.fc7 How reproducible: Always. Steps to Reproduce: python [GCC 4.1.2 20070403 (Red Hat 4.1.2-8)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import musicbrainz2.disc >>> musicbrainz2.disc.readDisc() Actual results: Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/usr/lib/python2.5/site-packages/musicbrainz2/disc.py", line 171, in readDisc libDiscId = _openLibrary() File "/usr/lib/python2.5/site-packages/musicbrainz2/disc.py", line 70, in _openLibrary raise NotImplementedError('Error opening library: ' + str(e)) NotImplementedError: Error opening library: libdiscid.so.0: cannot open shared object file: No such file or directory Expected results: Successful opening of CD TOC and the return of a MusicBrainz disc ID data structure. Additional info: We need a libdiscid RPM, and need to add a dependency in the python-musicbrainz2 build.
Created attachment 159281 [details] Proposed spec file for the library. Here is a quick spec file that seems to work ok. You'll still have to add the "Requires" to python-musicbrainz2.spec and rev it.
Marking this as "high" since a great deal of the python library's functionality is unavailable without the associated C library.
Actually, it looks like libmusicbrainz lacks the CD identifying functionality as well. It should "BuildRequires" libdiscid-devel and "Requires" libbdiscid to get full functionality. If you need a proper test case, let me know.
Kyle, it looks like you've done a pretty good job putting the spec for libdiscid together. Have you looked into becoming a Fedora contributor yourself? I don't have a lot of time right now to run another package through the review process. http://fedoraproject.org/wiki/PackageMaintainers/Join
Will someone plan to submit libdiscid for review ? (optionally needed for #382101 )
I currently don't have time to go through the work to become a Fedora contributor; I'm staying in bug writing and external contributions mode. It'll need an internal sponsor.
Package review of libdiscid filed: bug #384191. Once this is approved, we should update the python-musicbrainz2 package to Requires: libdiscid. Picard will then get the libdiscid package indirectly because it depends on python-musicbrainz2 Does python-musicbrainz2 also need the devel package at build-time? i.e. BuildRequires: libdiscid-devel ? From comment #3, it looks like it should also be added as a BuildRequires: libdiscid-devel there (I'll file a separate bug on that).
Separate bug #384251 for libmusicbrainz2 filed. Jeffrey: once libdiscid is available, could you (or give me permission) to rebuild python-musicbrainz2 with a new "Requires: libdiscid" across the F-7, F-8 and devel?
(In reply to comment #8) > Separate bug #384251 for libmusicbrainz2 filed. > > Jeffrey: once libdiscid is available, could you (or give me permission) to > rebuild python-musicbrainz2 with a new "Requires: libdiscid" across the F-7, > F-8 and devel? Sure, what's your FAS username? I'll add you as co-maintainer.
(In reply to comment #9) > Sure, what's your FAS username? I'll add you as co-maintainer. alexlan
python-musicbrainz2-0.5.0-1.fc8 has been pushed to the Fedora 8 testing repository. If problems still persist, please make note of it in this bug report. If you want to test the update, you can install it with su -c 'yum --enablerepo=updates-testing update python-musicbrainz2'
python-musicbrainz2-0.5.0-1.fc7 has been pushed to the Fedora 7 testing repository. If problems still persist, please make note of it in this bug report. If you want to test the update, you can install it with su -c 'yum --enablerepo=updates-testing update python-musicbrainz2'
python-musicbrainz2-0.5.0-1.fc7 has been pushed to the Fedora 7 stable repository. If problems still persist, please make note of it in this bug report.
python-musicbrainz2-0.5.0-1.fc8 has been pushed to the Fedora 8 stable repository. If problems still persist, please make note of it in this bug report.