Bug 579514

Summary: Review Request: pyaudio - Python bindings for PortAudio
Product: [Fedora] Fedora Reporter: Christian Krause <chkr>
Component: Package ReviewAssignee: Orcan Ogetbil <oget.fedora>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: fedora-package-review, notting, oget.fedora
Target Milestone: ---Flags: oget.fedora: fedora-review+
kevin: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: pyaudio-0.2.3-2.fc12 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-05-15 20:21:06 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Christian Krause 2010-04-05 16:47:25 UTC
Spec URL: http://chkr.fedorapeople.org/review/pyaudio.spec
SRPM URL: http://chkr.fedorapeople.org/review/pyaudio-0.2.3-1.fc11.src.rpm
Description: 
PyAudio provides Python bindings for PortAudio, the cross-platform
audio I/O library. Using PyAudio, you can easily use Python to play
and record audio on a variety of platforms.

Comment 1 Orcan Ogetbil 2010-04-10 04:28:55 UTC
Here is the full review. There are a few suggestions/warnings (!), and two blockers (*):

- rpmlint is clean

! Group tag should probably be "System Environment/Libraries"

* DS_Store files need to be removed in %prep as per the guidelines. Maybe the 
  whole packaging/ directory should be removed?
      http://fedoraproject.org/wiki/Packaging/Guidelines#No_inclusion_of_pre-built_binaries_or_libraries

! CHANGELOG file, and tests/ directorf might be packaged as %doc.

! We prefer %defattr(-,root,root, -) most of the time

! Simply "python" can be used instead of %{__python} for macro consistency. Or 
  "%{__rm}" can be used instead of "rm".

! The package provides _portaudio.so(). I hope this doesn't result in a 
  conflict.

* Python guidelines changed a bit recently. Accordingly,
    * We need to use BuildRequires: python2-devel
    ! Also please check the macros section in the new guidelines.
    - I think the rest is fine. But as I am not that familiar with the new 
      python packaging guidelines, I advise you to go through the page once. 
      We might have missed something.
     See:
         http://fedoraproject.org/wiki/Packaging/Python

Comment 2 Christian Krause 2010-04-10 17:01:09 UTC
Orcan, thanks for the review!

(In reply to comment #1)
> ! Group tag should probably be "System Environment/Libraries"

Done.

> * DS_Store files need to be removed in %prep as per the guidelines. Maybe the 
>   whole packaging/ directory should be removed?

Done, removed the complete packaging/ directory.

> ! CHANGELOG file, and tests/ directorf might be packaged as %doc.

Done.

> ! We prefer %defattr(-,root,root, -) most of the time

Done.

> ! Simply "python" can be used instead of %{__python} for macro consistency. Or 
>   "%{__rm}" can be used instead of "rm".

Done, I have chosen the variant without macros.
 
> ! The package provides _portaudio.so(). I hope this doesn't result in a 
>   conflict.

It looks like that this is some kind of standard to package the glue-libraries as _name.so:
ls /usr/lib/python2.6/site-packages/*.so

Since normal libraries usually provide something like:
rpm -q --provides portaudio
libportaudio.so.2  
libportaudiocpp.so.0  

and the python glue libs provide

rpm -q --provides pyaudio
_portaudio.so  

any conflicts are prevented (no "lib" prefix but "_" as an additional prefix).

> * Python guidelines changed a bit recently. Accordingly,
>     * We need to use BuildRequires: python2-devel

Done.

>     ! Also please check the macros section in the new guidelines.
>     - I think the rest is fine. But as I am not that familiar with the new 
>       python packaging guidelines, I advise you to go through the page once. 
>       We might have missed something.
>      See:
>          http://fedoraproject.org/wiki/Packaging/Python    

I have made the definition of the %python_sitearch optional (only for F-12 and earlier) as it was suggested. The other changes and/or macros are only useful for python3 packages.

Spec URL: http://chkr.fedorapeople.org/review/pyaudio.spec
SRPM URL: http://chkr.fedorapeople.org/review/pyaudio-0.2.3-2.fc11.src.rpm

Comment 3 Orcan Ogetbil 2010-04-11 00:26:22 UTC
Thanks for the update! This looks good to me.

------------------------------------------
This package (pyaudio) is APPROVED by oget
------------------------------------------

Comment 4 Christian Krause 2010-04-11 09:48:46 UTC
Thanks, Orcan!

New Package CVS Request
=======================
Package Name: pyaudio
Short Description: Python bindings for PortAudio
Owners: chkr
Branches: F-13 F-12 F-11
InitialCC:

Comment 5 Kevin Fenzi 2010-04-11 19:19:49 UTC
CVS done (by process-cvs-requests.py).

Comment 6 Fedora Update System 2010-05-13 15:43:06 UTC
pyaudio-0.2.3-2.fc13 has been submitted as an update for Fedora 13.
http://admin.fedoraproject.org/updates/pyaudio-0.2.3-2.fc13

Comment 7 Fedora Update System 2010-05-13 15:44:06 UTC
pyaudio-0.2.3-2.fc12 has been submitted as an update for Fedora 12.
http://admin.fedoraproject.org/updates/pyaudio-0.2.3-2.fc12

Comment 8 Fedora Update System 2010-05-13 15:44:49 UTC
pyaudio-0.2.3-2.fc11 has been submitted as an update for Fedora 11.
http://admin.fedoraproject.org/updates/pyaudio-0.2.3-2.fc11

Comment 9 Fedora Update System 2010-05-15 20:21:00 UTC
pyaudio-0.2.3-2.fc11 has been pushed to the Fedora 11 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 10 Fedora Update System 2010-05-15 20:32:35 UTC
pyaudio-0.2.3-2.fc13 has been pushed to the Fedora 13 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 11 Fedora Update System 2010-05-15 20:44:45 UTC
pyaudio-0.2.3-2.fc12 has been pushed to the Fedora 12 stable repository.  If problems still persist, please make note of it in this bug report.