Spec URL: http://5dollarwhitebox.org/tmp/python-drizzle.spec SRPM URL: http://5dollarwhitebox.org/tmp/python-drizzle-0.08.2-2.fc12.src.rpm Description: Drizzle is a transactional SQL92 compliant relational database, geared towards a plugin based architecture. This package provides Python wrappers via the libdrizzle client protocol library.
Here are some initial comments: - According to the naming guidelines, the package name should match the name of the tarball. Hence, rename it to python-libdrizzle. - Drop Source1 and the separately added file LICENSE. License files must only be packaged if they are part of the tarball. Instead, ask upstream to add it. - The package seems to be licensed under BSD, so change the License field accordingly. - Please add a complete link to the mentioned LaunchPad ticket. - Replace the definition of python_sitearch as mentioned in https://fedoraproject.org/wiki/Packaging:Python#Macros
- I just noticed that packages providing Python modules should follow a slightly different naming scheme. So you can leave the package name as is. - Explicitly BR the version of python-devel required (https://fedoraproject.org/wiki/Packaging:Python#BuildRequires). - Drop option --single-version-externally-managed (https://fedoraproject.org/wiki/Packaging:Python_Eggs#Providing_Eggs_using_Setuptools).
Thank you for the feedback, updated as requested: Spec URL: http://5dollarwhitebox.org/tmp/python-drizzle.spec SRPM URL: http://5dollarwhitebox.org/tmp/python-drizzle-0.08.2-3.fc12.src.rpm $ rpmlint -i RPMS/x86_64/python-drizzle-* python-drizzle.x86_64: I: enchant-dictionary-not-found en_US A dictionary for the Enchant spell checking library is not available for the language given in the info message. Spell checking will proceed with rpmlint's built-in implementation for localized tags in this language. 2 packages and 0 specfiles checked; 0 errors, 0 warnings.
Here's the formal review of python-drizzle. The package looks almost fine. As far as I noticed, there are just 2 further things to be fixed: - replace %define with %global in the definition of pyver (%global should be preferred over %define) - add BR: python-setuptools to prevent downloading the setup tools during buildtime $ rpmlint RPMS/x86_64/python-drizzle-0.08.2-3.fc12.x86_64.rpm python-drizzle.x86_64: W: spelling-error Summary(en_US) libdrizzle -> lib drizzle, lib-drizzle, drizzle python-drizzle.x86_64: W: spelling-error %description -l en_US transactional -> transaction, transnational, transactor python-drizzle.x86_64: W: spelling-error %description -l en_US plugin -> plug in, plug-in, plugging python-drizzle.x86_64: W: spelling-error %description -l en_US libdrizzle -> lib drizzle, lib-drizzle, drizzle 1 packages and 0 specfiles checked; 0 errors, 4 warnings. The above spelling errors can be ignored. --------------------------------- keys used in following checklist: [+] OK [.] OK, not applicable [X] needs work --------------------------------- [+] MUST: The package must be named according to the Package Naming Guidelines. [+] MUST: The spec file name must match the base package %{name}. [+] MUST: The package must meet the Packaging Guidelines. [+] MUST: The package must be licensed with a Fedora approved license. [+] MUST: The License field in the package spec file must match the actual license. [.] MUST: The bundled file containing the text of the license(s) for the package must be included in %doc. - no license file in package [+] MUST: The spec file must be written in American English. [+] MUST: The spec file for the package MUST be legible. [+] MUST: The sources used to build the package must match the upstream source. $ md5sum python-libdrizzle-0.08.2.tar.gz* 796f54e88675f57ae4cfb9a094832977 python-libdrizzle-0.08.2.tar.gz 796f54e88675f57ae4cfb9a094832977 python-libdrizzle-0.08.2.tar.gz.1 [+] MUST: The package MUST successfully compile and build into binary rpms on at least one primary architecture. - builds in mock - doesn't build in koji because of missing libdrizzle-devel which is currently in updates-testing [.] MUST: If the package does not successfully compile, build or work on an architecture, ... [+] MUST: All build dependencies must be listed in BuildRequires. [.] MUST: The spec file MUST handle locales properly. [.] MUST: Packages storing shared library files (not just symlinks) must call ldconfig in %post and %postun. [+] MUST: Packages must NOT bundle copies of system libraries. [.] MUST: If the package is designed to be relocatable, ... [+] MUST: A package must own all directories that it creates. [+] MUST: A Fedora package must not list a file more than once in %files. [+] MUST: Permissions on files must be set properly. [+] MUST: Each package must consistently use macros. [+] MUST: The package must contain code, or permissable content. [.] MUST: Large documentation files must go in a -doc subpackage. [+] MUST: Files in %doc must not affect the runtime of the application. [.] MUST: Header files must be in a -devel package. [.] MUST: Static libraries must be in a -static package. [.] MUST: If a package contains library files with a suffix (e.g. libfoo.so.1.1), ... [.] MUST: devel packages must require the base package [.] MUST: Packages must NOT contain any .la libtool archives [.] MUST: Packages containing GUI applications must include a %{name}.desktop file [+] MUST: Packages must not own files or directories already owned by other packages. [+] MUST: At the beginning of %install, each package MUST run rm -rf %{buildroot}. [+] MUST: All filenames in rpm packages must be valid UTF-8. [+] MUST: Python eggs must be built from source. [X] MUST: Python eggs must not download any dependencies during the build process. - add BR: python-setuptools to prevent downloading them during buildtime [+] MUST: If egg-info files are generated by the modules build scripts they must be included in the package. [.] MUST: When building a compat package, it must install using easy_install -m so it won't conflict with the main package. [.] MUST: When building multiple versions (for a compat package) ... [.] SHOULD: A package which is used by another package via an egg interface should provide egg info. [+] SHOULD: The packager SHOULD query upstream to include the license text. [+] SHOULD: The reviewer should test that the package builds in mock. [.] SHOULD: The package should compile and build into binary rpms on all supported architectures. [.] SHOULD: If scriptlets are used, those scriptlets must be sane. [.] SHOULD: Usually, subpackages other than devel should require the base package using a fully versioned dependency. [.] SHOULD: pkgconfig(.pc) files this is usually for development purposes, so should be placed in a -devel pkg. A reasonable exception is that the main pkg itself is a devel tool not installed in a user runtime, e.g. gcc or gdb.
Thanks Martin, updated as requested. Spec URL: http://5dollarwhitebox.org/tmp/python-drizzle.spec SRPM URL: http://5dollarwhitebox.org/tmp/python-drizzle-0.08.2-4.fc12.src.rpm $ rpmlint -i RPMS/x86_64/python-drizzle*0.08.2-4* python-drizzle.x86_64: I: enchant-dictionary-not-found en_US A dictionary for the Enchant spell checking library is not available for the language given in the info message. Spell checking will proceed with rpmlint's built-in implementation for localized tags in this language. 2 packages and 0 specfiles checked; 0 errors, 0 warnings.
OK, fine. Since I couldn't find any further issues we're finished here. In order to get python-drizzle built in koji, you have to request rel-eng to add libdrizzle as a buildroot override. ---------------- Package APPROVED ----------------
New Package CVS Request ======================= Package Name: python-drizzle Short Description: Python wrappers for libdrizzle Owners: derks Branches: F-12 F-13 EL-5 EL-6 InitialCC:
CVS done (by process-cvs-requests.py).
python-drizzle-0.08.2-5.el5 has been submitted as an update for Fedora EPEL 5. http://admin.fedoraproject.org/updates/python-drizzle-0.08.2-5.el5
python-drizzle-0.08.2-5.fc12 has been submitted as an update for Fedora 12. http://admin.fedoraproject.org/updates/python-drizzle-0.08.2-5.fc12
python-drizzle-0.08.2-5.fc13 has been submitted as an update for Fedora 13. http://admin.fedoraproject.org/updates/python-drizzle-0.08.2-5.fc13
python-drizzle-0.08.2-5.el5 has been pushed to the Fedora EPEL 5 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-drizzle'. You can provide feedback for this update here: http://admin.fedoraproject.org/updates/python-drizzle-0.08.2-5.el5
python-drizzle-0.08.2-5.fc13 has been pushed to the Fedora 13 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-drizzle'. You can provide feedback for this update here: http://admin.fedoraproject.org/updates/python-drizzle-0.08.2-5.fc13
python-drizzle-0.08.2-5.fc12 has been pushed to the Fedora 12 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-drizzle'. You can provide feedback for this update here: http://admin.fedoraproject.org/updates/python-drizzle-0.08.2-5.fc12
python-drizzle-0.08.2-5.fc13 has been pushed to the Fedora 13 stable repository. If problems still persist, please make note of it in this bug report.
python-drizzle-0.08.2-5.fc12 has been pushed to the Fedora 12 stable repository. If problems still persist, please make note of it in this bug report.
python-drizzle-0.08.2-5.el5 has been pushed to the Fedora EPEL 5 stable repository. If problems still persist, please make note of it in this bug report.