Bug 1107089

Summary: Review Request: python-catkin_tools - Command line tools for working with catkin
Product: [Fedora] Fedora Reporter: Scott K Logan <logans>
Component: Package ReviewAssignee: Ankur Sinha (FranciscoD) <sanjay.ankur>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: package-review, sanjay.ankur
Target Milestone: ---Flags: sanjay.ankur: fedora-review+
gwync: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: python-catkin_tools-0.1.0-1.fc20 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-06-27 02:24:35 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Scott K Logan 2014-06-09 19:28:45 UTC
Spec URL: http://cottsay.fedorapeople.org/python-catkin_tools/python-catkin_tools.spec
SRPM URL: http://cottsay.fedorapeople.org/python-catkin_tools/python-catkin_tools-0.1.0-1.fc20.src.rpm

Description:
Provides command line tools for working with catkin.

Fedora Account System Username: cottsay

Koji scratch builds:
f19: http://koji.fedoraproject.org/koji/taskinfo?taskID=7028849
f20: http://koji.fedoraproject.org/koji/taskinfo?taskID=7028769

rpmlint output:
python-catkin_tools.noarch: W: no-manual-page-for-binary catkin
2 packages and 1 specfiles checked; 0 errors, 1 warnings.

Notes:
- This is a fairly straightforward python package that conforms with python [1] and Github [2] packaging guidelines.
- This package is related to, but not the same as python-catkin_pkg
- This package will target f19+ and el6+

[1] http://fedoraproject.org/wiki/Packaging:Python
[2] http://fedoraproject.org/wiki/Packaging:SourceURL?rd=Packaging/SourceURL#Github

Thanks,

--scott

Comment 1 Ankur Sinha (FranciscoD) 2014-06-10 07:09:36 UTC
Taking this one.

Comment 2 Ankur Sinha (FranciscoD) 2014-06-10 07:31:44 UTC
Review:

[+] OK
[-] NA
[?] Issue

** Mandatory review guidelines: **
 [?] rpmlint output:
[asinha@ankur-laptop  SRPMS]$ rpmlint /var/lib/mock/fedora-rawhide-x86_64/result/*.rpm ../SPECS/python-catkin_tools.spec ./python-catkin_tools-0.1.0-1.fc20.src.rpm
python-catkin_tools.noarch: W: wrong-file-end-of-line-encoding /usr/share/doc/python-catkin_tools/html/_static/jquery.js
python-catkin_tools.noarch: W: no-manual-page-for-binary catkin
3 packages and 1 specfiles checked; 0 errors, 2 warnings.

^ One tiny error to fix.

 [+] License is acceptable (...)
 [+] License field in spec is correct
 [+] License files included in package %docs if included in source package
 [-] License files installed when any subpackage combination is installed
 [+] Spec written in American English
 [+] Spec is legible
 [+] Sources match upstream unless altered to fix permissibility issues
Getting https://github.com/catkin/catkin_tools/archive/4464fb0db62602276df27ed241cef3020f8c8fc9/catkin_tools-4464fb0db62602276df27ed241cef3020f8c8fc9.tar.gz
to /tmp/review/catkin_tools-4464fb0db62602276df27ed241cef3020f8c8fc9.tar.gz
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   161  100   161    0     0    154      0  0:00:01  0:00:01 --:--:--   154
  0     0    0  358k    0     0   105k      0 --:--:--  0:00:03 --:--:--  189k
04c08f5fb031e4839fdd47d015c4fa32 /tmp/review/catkin_tools-4464fb0db62602276df27ed241cef3020f8c8fc9.tar.gz
04c08f5fb031e4839fdd47d015c4fa32 /home/asinha/rpmbuild/SOURCES/catkin_tools-4464fb0db62602276df27ed241cef3020f8c8fc9.tar.gz
removed ‘/tmp/review/catkin_tools-4464fb0db62602276df27ed241cef3020f8c8fc9.tar.gz’
removed directory: ‘/tmp/review’

 [+] Build succeeds on at least one primary arch
 [-] Build succeeds on all primary arches or has ExcludeArch + bugs filed
 [+] BuildRequires correct, justified where necessary
 [-] Locales handled with %find_lang, not %_datadir/locale/*
 [-] %post, %postun call ldconfig if package contains shared .so files
 [+] No bundled libs
 [-] Relocatability is justified
 [+] Package owns all directories it creates
 [+] Package requires others for directories it uses but does not own
 [+] No duplication in %files unless necessary for license files
 [+] File permissions are sane
 [+] Package contains permissible code or content
 [-] Large docs go in -doc subpackage
 [+] %doc files not required at runtime
 [-] Static libs go in -static package/virtual Provides
 [-] Development files go in -devel package
 [-] -devel packages Require base with fully-versioned dependency, %_isa
 [+] No .la files
 [-] GUI app uses .desktop file, installs it with desktop-file-install
 [+] File list does not conflict with other packages' without justification
 [+] File names are valid UTF-8

** Optional review guidelines: **
 [-] Query upstream about including license files
 [-] Translations of description, summary
 [+] Builds in mock
 [+] Builds on all arches
 [+] Functions as described (e.g. no crashes)
 [-] Scriptlets are sane
 [-] Subpackages require base with fully-versioned dependency if sensible
 [-] .pc file subpackage placement is sensible
 [+] No file deps outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin
 [+] Include man pages if available

Naming guidelines:
 [+] Package names use only a-zA-Z0-9-._+ subject to restrictions on -._+
 [+] Package names are sane
 [+] No naming conflicts
 [+] Spec file name matches base package name
 [+] Version is sane
 [+] Version does not contain ~
 [+] Release is sane
 [+] %dist tag
 [-] Case used only when necessary
 [-] Renaming handled correctly

Packaging guidelines:
 [+] Useful without external bits
 [+] No kmods
 [+] Pre-built binaries, libs removed in %prep
 [+] Sources contain only redistributable code or content
 [+] Spec format is sane
 [+] Package obeys FHS, except libexecdir, /run, /usr/target
 [+] No files in /bin, /sbin, /lib* on >= F17
 [-] Programs run before FS mounting use /run instead of /var/run
 [-] Binaries in /bin, /sbin do not depend on files in /usr on < F17
 [-] No files under /srv, /opt, /usr/local
 [+] Changelog in prescribed format
 [+] No Packager, Vendor, Copyright, PreReq tags
 [+] Summary does not end in a period
 [+] Correct BuildRoot tag on < EL6
 [+] Correct %clean section on < EL6
 [*] Requires correct, justified where necessary
^ Just a note that we aren't requiring ros-release for these tool sets

 [+] Summary, description do not use trademarks incorrectly
 [+] All relevant documentation is packaged, appropriately marked with %doc
 [+] Doc files do not drag in extra dependencies (e.g. due to +x)
 [-] Code compilable with gcc is compiled with gcc
 [-] Build honors applicable compiler flags or justifies otherwise
 [-] PIE used for long-running/root daemons, setuid/filecap programs
 [-] Useful -debuginfo package or disabled and justified
 [-] Package with .pc files Requires pkgconfig on < EL6
 [+] No static executables
 [+] Rpath absent or only used for internal libs
 [-] Config files marked with %config(noreplace) or justified %config
 [+] No config files under /usr
 [-] Third party package manager configs acceptable, in %_docdir
 [-] .desktop files are sane
 [+] Spec uses macros consistently
 [?] Spec uses macros instead of hard-coded names where appropriate
^ Purely cosmetic. You can do something like %global module catkin_tools and
then use %{module} everywhere. Not necessary, not a blocker, of course.

 [-] Spec uses macros for executables only when configurability is needed
 [-] %makeinstall used only when alternatives don't work
 [-] Macros in Summary, description are expandable at srpm build time
 [-] Spec uses %{SOURCE#} instead of $RPM_SOURCE_DIR and %sourcedir
 [+] No software collections (scl)
 [-] Macro files named /etc/rpm/macros.%name
 [+] Build uses only python/perl/shell+coreutils/lua/BuildRequired langs
 [+] %global, not %define
 [-] Package translating with gettext BuildRequires it
 [-] Package translating with Linguist BuildRequires qt-devel
 [?] File ops preserve timestamps
^ Consider using -p with the install commands to preserve timestamps

 [-] Parallel make
 [+] No Requires(pre,post) notation
 [-] User, group creation handled correctly (See Packaging:UsersAndGroups)
 [-] Web apps go in /usr/share/%name, not /var/www
 [-] Conflicts are justified
 [+] One project per package
 [+] No bundled fonts
 [-] Patches have appropriate commentary
 [+] Available test suites executed in %check
 [-] tmpfiles.d used for /run, /run/lock on >= F15

 ** Python guidelines: **
 [+] Runtime Requires correct
 [-] Python macros declared on < EL6
 [+] All .py files packaged with .pyc, .pyo counterparts
 [+] Includes .egg-info files/directories when generated
 [-] Provides/Requires properly filtered
 [-] Code that invokes gtk.gdk.get_pixels_array() Requires numpy


Mostly Ok. A few nitpicks, that is all. Please correct these before you push to SCM.

**** APPROVED ****

Thanks,
Warm regards,
Ankur

Comment 3 Scott K Logan 2014-06-10 16:58:40 UTC
Okay, I updated the spec for:
- use of the %{module} macro
- installation of man pages preserve timestamps

The line encoding issue is an upstream problem, and I am filing a bug to get it fixed. It only affects rawhide, so I think we can continue with this package.

Thanks,

--scott

Comment 4 Scott K Logan 2014-06-10 17:02:07 UTC
New Package SCM Request
=======================
Package Name: python-catkin_tools
Short Description: Command line tools for working with catkin
Upstream URL: http://catkin-tools.readthedocs.org
Owners: cottsay rmattes ankursinha
Branches: f19 f20 el6 epel7
InitialCC:

Comment 5 Gwyn Ciesla 2014-06-10 17:34:35 UTC
Git done (by process-git-requests).

Comment 6 Fedora Update System 2014-06-12 18:52:59 UTC
python-catkin_tools-0.1.0-1.fc20,python-wstool-0.1.3-1.fc20,python-vcstools-0.1.35-1.fc20,python-rosinstall_generator-0.1.9-1.fc20,python-rosdep-0.10.27-2.fc20,python-catkin_pkg-0.2.2-1.fc20,python-catkin_lint-1.3.6-1.fc20,python-bloom-0.5.9-1.fc20 has been submitted as an update for Fedora 20.
https://admin.fedoraproject.org/updates/python-catkin_tools-0.1.0-1.fc20,python-wstool-0.1.3-1.fc20,python-vcstools-0.1.35-1.fc20,python-rosinstall_generator-0.1.9-1.fc20,python-rosdep-0.10.27-2.fc20,python-catkin_pkg-0.2.2-1.fc20,python-catkin_lint-1.3.6-1.fc20,python-bloom-0.5.9-1.fc20

Comment 7 Fedora Update System 2014-06-12 18:53:13 UTC
python-catkin_tools-0.1.0-1.fc19,python-wstool-0.1.3-1.fc19,python-vcstools-0.1.35-1.fc19,python-rosinstall_generator-0.1.9-1.fc19,python-rosdep-0.10.27-2.fc19,python-catkin_pkg-0.2.2-1.fc19,python-bloom-0.5.9-1.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/python-catkin_tools-0.1.0-1.fc19,python-wstool-0.1.3-1.fc19,python-vcstools-0.1.35-1.fc19,python-rosinstall_generator-0.1.9-1.fc19,python-rosdep-0.10.27-2.fc19,python-catkin_pkg-0.2.2-1.fc19,python-bloom-0.5.9-1.fc19

Comment 8 Fedora Update System 2014-06-13 05:27:38 UTC
Package python-catkin_tools-0.1.0-1.fc20, python-wstool-0.1.3-1.fc20, python-vcstools-0.1.35-1.fc20, python-rosinstall_generator-0.1.9-1.fc20, python-rosdep-0.10.27-2.fc20, python-catkin_pkg-0.2.2-1.fc20, python-catkin_lint-1.3.6-1.fc20, python-bloom-0.5.9-1.fc20:
* should fix your issue,
* was pushed to the Fedora 20 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing python-catkin_tools-0.1.0-1.fc20 python-wstool-0.1.3-1.fc20 python-vcstools-0.1.35-1.fc20 python-rosinstall_generator-0.1.9-1.fc20 python-rosdep-0.10.27-2.fc20 python-catkin_pkg-0.2.2-1.fc20 python-catkin_lint-1.3.6-1.fc20 python-bloom-0.5.9-1.fc20'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2014-7318/python-catkin_tools-0.1.0-1.fc20,python-wstool-0.1.3-1.fc20,python-vcstools-0.1.35-1.fc20,python-rosinstall_generator-0.1.9-1.fc20,python-rosdep-0.10.27-2.fc20,python-catkin_pkg-0.2.2-1.fc20,python-catkin_lint-1.3.6-1.fc20,python-bloom-0.5.9-1.fc20
then log in and leave karma (feedback).

Comment 9 Fedora Update System 2014-06-27 02:24:35 UTC
python-catkin_tools-0.1.0-1.fc19, python-wstool-0.1.3-1.fc19, python-vcstools-0.1.35-1.fc19, python-rosinstall_generator-0.1.9-1.fc19, python-rosdep-0.10.27-2.fc19, python-catkin_pkg-0.2.2-1.fc19, python-bloom-0.5.9-1.fc19 has been pushed to the Fedora 19 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 10 Fedora Update System 2014-06-27 02:26:03 UTC
python-catkin_tools-0.1.0-1.fc20, python-wstool-0.1.3-1.fc20, python-vcstools-0.1.35-1.fc20, python-rosinstall_generator-0.1.9-1.fc20, python-rosdep-0.10.27-2.fc20, python-catkin_pkg-0.2.2-1.fc20, python-catkin_lint-1.3.6-1.fc20, python-bloom-0.5.9-1.fc20 has been pushed to the Fedora 20 stable repository.  If problems still persist, please make note of it in this bug report.