Bug 226337 - Merge Review: pyparted
Summary: Merge Review: pyparted
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: manuel wolfshant
QA Contact: Fedora Package Reviews List
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2007-01-31 20:45 UTC by Nobody's working on this, feel free to take it
Modified: 2009-09-21 20:53 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2007-07-02 00:50:43 UTC
Type: ---
Embargoed:
manuel.wolfshant: fedora-review+


Attachments (Terms of Use)

Description Nobody's working on this, feel free to take it 2007-01-31 20:45:52 UTC
Fedora Merge Review: pyparted

http://cvs.fedora.redhat.com/viewcvs/devel/pyparted/
Initial Owner: dcantrell

Comment 1 manuel wolfshant 2007-04-20 14:15:55 UTC
I am planning on reviewing this one, but I have a few questions/suggestions,
before doing an official full review:

- rpmlint has a couple of complaints on the src.rpm:
W: pyparted no-url-tag
W: pyparted mixed-use-of-spaces-and-tabs (spaces: line 4, tab: line 27)
The "no-url-tag" is of course propagated to the binary rpms, too.
Maybe you could fix those? 
- I notice CFLAGS is explicitely set :
export CFLAGS="-fPIC -O2 -g2"
If there is a good reason to override the default compiler options (including
the -fortify and so on), please be as kind as to explain it.
- SMP flags are not used; if their usage breaks compilation, please state that
in the spec, otherwise please use them
- The theory says that %makeinstall should be avoided, if possible. I assume it
is a must in this case? If so, could you please add a comment in the spec, to
make it clear ?
- I suggest adding AUTHORS and Changelog to the list of files, so that we know
who to bug in case of trouble :)


Comment 2 David Cantrell 2007-04-20 16:48:14 UTC
(In reply to comment #1)
> I am planning on reviewing this one, but I have a few questions/suggestions,
> before doing an official full review:
> 
> - rpmlint has a couple of complaints on the src.rpm:
> W: pyparted no-url-tag

Fixed.

> W: pyparted mixed-use-of-spaces-and-tabs (spaces: line 4, tab: line 27)

Fixed.

> - I notice CFLAGS is explicitely set :
> export CFLAGS="-fPIC -O2 -g2"
> If there is a good reason to override the default compiler options (including
> the -fortify and so on), please be as kind as to explain it.

There is no good reason.  Holdover from old old spec file.  Removed.

> - SMP flags are not used; if their usage breaks compilation, please state that
> in the spec, otherwise please use them

Fixed.

> - The theory says that %makeinstall should be avoided, if possible. I assume it
> is a must in this case? If so, could you please add a comment in the spec, to
> make it clear ?

Fixed.

> - I suggest adding AUTHORS and Changelog to the list of files, so that we know
> who to bug in case of trouble :)

Fixed.  Made a note in the AUTHORS file to use bugzilla.redhat.com to report bugs.

Comment 3 manuel wolfshant 2007-04-23 09:13:04 UTC
I'd say something is still wrong. Here is a snap from the build log in mock:

Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.37848
+ umask 022
+ cd /builddir/build/BUILD
+ cd pyparted-1.8.6
+ LANG=C
+ export LANG
+ unset DISPLAY
+ /usr/bin/make
gcc -O2 -Wall -g -I/usr/include/python2.5 -I. -fPIC -c -o partedmodule.o
partedmodule.c
gcc -O2 -Wall -g -I/usr/include/python2.5 -I. -fPIC -c -o pyconstraint.o
pyconstraint.c
gcc -O2 -Wall -g -I/usr/include/python2.5 -I. -fPIC -c -o pydevice.o pydevice.c
gcc -O2 -Wall -g -I/usr/include/python2.5 -I. -fPIC -c -o pydisk.o pydisk.c
gcc -O2 -Wall -g -I/usr/include/python2.5 -I. -fPIC -c -o pyexception.o
pyexception.c
gcc -O2 -Wall -g -I/usr/include/python2.5 -I. -fPIC -c -o pyfilesystem.o
pyfilesystem.c
gcc -O2 -Wall -g -I/usr/include/python2.5 -I. -fPIC -c -o pygeometry.o pygeometry.c
make: pkg-config: Command not found
gcc -O2 -Wall -g -I/usr/include/python2.5 -I. -fPIC -o partedmodule.so -shared
partedmodule.o pyconstraint.o pydevice.o pydisk.o pyexception.o pyf
ilesystem.o pygeometry.o
+ exit 0

It looks like standard compiler flags are not used. Could you please check ?


Comment 4 David Cantrell 2007-04-23 17:25:38 UTC
Should be fixed now.

Comment 5 manuel wolfshant 2007-04-23 22:10:07 UTC
==============

Key:
 - = N/A
 x = Check
 ! = Problem
 ? = Not evaluated

=== REQUIRED ITEMS ===
 [x] Buildroot is correct
(%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n))
 [!] Rpmlint output:
Source RPM:
E: pyparted no-cleaning-of-buildroot %install
pyparted-debuginfo &  pyparted: no output
 [x] Package is named according to the Package Naming Guidelines.
 [x] Spec file name must match the base package %{name}, in the format %{name}.spec.
 [x] Package meets the Packaging Guidelines.
 [x] Package is licensed with an open-source compatible license and meet other
legal requirements as defined in the legal section of Packaging Guidelines.
 [x] License field in the package spec file matches the actual license.
     License type:GPL
 [x] If (and only if) the source package includes the text of the license(s) in
its own file, then that file, containing the text of the license(s) for the
package is included in %doc.
 [x] Spec file is written in American English. See also note 2&3 below
 [x] Spec file for the package is legible.
 [x] Sources used to build the package matches the upstream source, as provided
in the spec URL.
     SHA1SUM of package: f431a4e84a7a5671c1ed653c99d25a89c9acbf8d
pyparted-1.8.6.tar.bz2
 [x] Package successfully compiles and builds into binary rpms on at least one
supported architecture.
     Tested on:devel/x86_64
 [x] Package is not known to require ExcludeArch, OR:
     Arches excluded: -
     Why: -
 [!] All build dependencies are listed in BuildRequires, except for any that are
listed in the exceptions section of Packaging Guidelines. See below issue #3
 [-] The spec file handles locales properly.
 [-] ldconfig called in %post and %postun if required.
 [x] Package is not relocatable.
 [x] Package must own all directories that it creates.                         
                                          
 [x] Package requires other packages for directories it uses.
 [x] Package does not contain duplicates in %files.
 [x] Permissions on files are set properly.
 [x] Package has a %clean section, which contains rm -rf %{buildroot} (or
$RPM_BUILD_ROOT).
 [x] Package consistently uses macros.
 [x] Package contains code, or permissable content.
 [-] Large documentation files are in a -doc subpackage, if required.
 [-] Package uses nothing in %doc for runtime.
 [-] Header files in -devel subpackage, if present.
 [-] Static libraries in -devel subpackage, if present.
 [!] Package requires pkgconfig, if .pc files are present. See below under issue #3
 [x] Development .so files in -devel subpackage, if present.
 [-] Fully versioned dependency in subpackages, if present.
 [x] Package does not contain any libtool archives (.la).
 [-] Package contains a properly installed %{name}.desktop file if it is a GUI
application.
 [x] Package does not own files or directories owned by other packages.

=== SUGGESTED ITEMS ===
 [x] Package does not include license text files separate from upstream.
 [-] Description and summary sections in the package spec file contains
translations for supported Non-English languages, if available.
 [x] Reviewer should test that the package builds in mock.
     Tested on: devel, x86_64 and i386
 [x] Package should compile and build into binary rpms on all supported
architectures.
     Tested on: devel, x86_64 and i386
 [x] Package functions as described.
 [-] Scriptlets must be sane, if used.
 [-] The placement of pkgconfig(.pc) files are correct.
 [x] File based requires are sane.
 [x] Latest version is packaged.

=== Issues ===
1. Please add back the "rm -fR buildroot" line in %install, looks like it was
deleted by accident when editing the make line
2. The description tag says "it is used for manipulation partition tables". I am
not a native English speaker, but to me it looks like a cat has eaten a word. I
suggest "[...] used for manipulation of partition tables" or "[...] used for
manipulating partition tables"
3. The Summary field says "python module for..." while the Desc field starts
with "python modules for". How about sticking with either singular (module) or
plural (modules) ?
4. The makefile mentions the need of pkg-config since version 1.8.3. However
there is no .pc file and the spurious call to pkg-config (via LDFLAGS) leads to
an error message in the build log. I suggest either using the already existing
Makefile patch to remove the call to pkg-config or requiring pkg-config if the
.pc will come back.


Comment 6 manuel wolfshant 2007-06-14 18:21:58 UTC
David, the current releases (both 1.8.6-2 in the CVS, as well as 1.8.5-4 in
rawhide) still lack the "rm -fR buildroot" line in %install.

Comment 7 David Cantrell 2007-06-14 18:44:29 UTC
Whoops.  Looks like I made the fix, but never built it in to rawhide.  Done in
pyparted-1.8.7-1

Thanks.

Comment 8 manuel wolfshant 2007-06-14 19:12:02 UTC
APPROVED.

David, please consider my suggestions from the end of comment #5 before building
in rawhide.

Comment 9 David Cantrell 2007-06-14 19:21:29 UTC
(In reply to comment #5)
> 1. Please add back the "rm -fR buildroot" line in %install, looks like it was
> deleted by accident when editing the make line

Done.

> 2. The description tag says "it is used for manipulation partition tables". I am
> not a native English speaker, but to me it looks like a cat has eaten a word. I
> suggest "[...] used for manipulation of partition tables" or "[...] used for
> manipulating partition tables"

Done.  It's 'manipulating partition tables'.

> 3. The Summary field says "python module for..." while the Desc field starts
> with "python modules for". How about sticking with either singular (module) or
> plural (modules) ?

Done.  It's 'Python module'.

> 4. The makefile mentions the need of pkg-config since version 1.8.3. However
> there is no .pc file and the spurious call to pkg-config (via LDFLAGS) leads to
> an error message in the build log. I suggest either using the already existing
> Makefile patch to remove the call to pkg-config or requiring pkg-config if the
> .pc will come back.

The pkgconfig file is there.  I've added a BuildRequire for pkgconfig.

New version is pyparted-1.8.8-1.

Comment 10 manuel wolfshant 2007-06-29 22:38:33 UTC
david, please consider closing this bug when you have 30 seconds to spare 


Note You need to log in before you can comment on or make changes to this bug.