https://bugzilla.redhat.com/show_bug.cgi?id=1466961
Bug ID: 1466961 Summary: Review Request: datamash - A statistical, numerical and textual operations tool Product: Fedora Version: rawhide Component: Package Review Severity: medium Priority: medium Assignee: nobody@fedoraproject.org Reporter: hannes@stressinduktion.org QA Contact: extras-qa@fedoraproject.org CC: package-review@lists.fedoraproject.org
Spec URL: http://people.redhat.com/~hsowa/datamash.spec SRPM URL: http://people.redhat.com/~hsowa/datamash-1.1.1-1.fc25.src.rpm Description: GNU datamash is a command-line program which performs basic numeric,textual and statistical operations on input textual data files. Fedora Account System Username: stressinduktion
https://bugzilla.redhat.com/show_bug.cgi?id=1466961
--- Comment #1 from Yanko Kaneti yaneti@declera.com --- *** Bug 1466960 has been marked as a duplicate of this bug. ***
https://bugzilla.redhat.com/show_bug.cgi?id=1466961
José Matos jamatos@fc.up.pt changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED CC| |jamatos@fc.up.pt Flags| |fedora-review?
--- Comment #2 from José Matos jamatos@fc.up.pt --- Taking care of the review.
According to fedora-review the package has the following issues:
- Provides: bundled(gnulib) in place as required. Note: Bundled gnulib but no Provides: bundled(gnulib) See:
http://fedoraproject.org/wiki/Packaging:No_Bundled_Libraries#Requirement_if_... - All build dependencies are listed in BuildRequires, except for any that are listed in the exceptions section of Packaging Guidelines. Note: These BR are not needed: info See: http://fedoraproject.org/wiki/Packaging/Guidelines#Exceptions_2 - Package uses either %{buildroot} or $RPM_BUILD_ROOT Note: Using both %{buildroot} and $RPM_BUILD_ROOT See: http://fedoraproject.org/wiki/Packaging/Guidelines#macros
Could you comment/take care of this, please?
https://bugzilla.redhat.com/show_bug.cgi?id=1466961
Dave Love dave.love@manchester.ac.uk changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |dave.love@manchester.ac.uk
--- Comment #3 from Dave Love dave.love@manchester.ac.uk --- Some comments, as I intended to get round to re-submitting this:
It needs Requires(preun): info
The licence isn't installed, and there's an empty %doc.
It should run make check (and BR perl(Digest::MD5) perl(Digest::SHA) perl(Data::Dumper)).
I don't think the completion file should be %config. [The packaging guide could use instructions for completions.]
Can I interest you in changes for completion installation on EPEL?
https://bugzilla.redhat.com/show_bug.cgi?id=1466961
--- Comment #4 from Hannes Frederic Sowa hannes@stressinduktion.org --- (In reply to José Matos from comment #2)
Taking care of the review.
According to fedora-review the package has the following issues:
- Provides: bundled(gnulib) in place as required. Note: Bundled gnulib but no Provides: bundled(gnulib) See:
http://fedoraproject.org/wiki/Packaging: No_Bundled_Libraries#Requirement_if_you_bundle
- All build dependencies are listed in BuildRequires, except for any that are listed in the exceptions section of Packaging Guidelines. Note: These BR are not needed: info See: http://fedoraproject.org/wiki/Packaging/Guidelines#Exceptions_2
- Package uses either %{buildroot} or $RPM_BUILD_ROOT Note: Using both %{buildroot} and $RPM_BUILD_ROOT See: http://fedoraproject.org/wiki/Packaging/Guidelines#macros
Could you comment/take care of this, please?
I will. Thanks for the review. I upload a new specs and srpm new.
I also should mention that this my first RPM in fedora, but I already found a sponsor (lrintel).
https://bugzilla.redhat.com/show_bug.cgi?id=1466961
--- Comment #5 from Hannes Frederic Sowa hannes@stressinduktion.org --- I updated the files in place.
I changed:
* removed info from BR * added perl(Digest::MD5) perl(Digest::SHA) perl(Data::Dumper) to BR * added Provides: bundled(gnulib) [do I need to include a version here? - rpmlint complains] * added Requires(preun): info * consistently using %{buildroot} instead of $RPM_BUILD_ROOT * added %check make check * bash_completion is not a %config file * added license and doc files
Do I need to add a version to bundled(gnulib)? rpmlint complains right now.
rawhide: https://koji.fedoraproject.org/koji/taskinfo?taskID=20366919 F25: https://koji.fedoraproject.org/koji/taskinfo?taskID=20366933
Could you have another look?
Dave, I would love to make this package compatible to EPEL. I am going to read into that but feel free to dump any links on me. :)
Thanks!
https://bugzilla.redhat.com/show_bug.cgi?id=1466961
--- Comment #6 from Dave Love dave.love@manchester.ac.uk --- (In reply to Hannes Frederic Sowa from comment #5)
Do I need to add a version to bundled(gnulib)? rpmlint complains right now.
Yes, I noticed that. You can't add a version, as it doesn't have one. I'd just note/explain the error in the spec file.
You don't need to remove buildroot in %install these days, but it doesn't hurt. Also the packaging guidelines say not to use macros like %_rm
Dave, I would love to make this package compatible to EPEL. I am going to read into that but feel free to dump any links on me. :)
I'll attach a patch. I realize it's only really for el6, but _I think_ the location for completions should be changed on others, as in the patch. Otherwise the diff is mostly moot. (I don't know if using pkg-config is the right way to get the completions directory.) Handling completions should be in packaging guidelines. You do need to own the completions directories with %dir anyhow, which I patched in.
Hope that helps, and apologies if I'm stepping on reviewer toes.
https://bugzilla.redhat.com/show_bug.cgi?id=1466961
--- Comment #7 from Dave Love dave.love@manchester.ac.uk --- Created attachment 1295270 --> https://bugzilla.redhat.com/attachment.cgi?id=1295270&action=edit spec patch
https://bugzilla.redhat.com/show_bug.cgi?id=1466961
--- Comment #8 from Hannes Frederic Sowa hannes@stressinduktion.org --- Hi,
(In reply to Dave Love from comment #6)
(In reply to Hannes Frederic Sowa from comment #5)
Do I need to add a version to bundled(gnulib)? rpmlint complains right now.
Yes, I noticed that. You can't add a version, as it doesn't have one. I'd just note/explain the error in the spec file.
According to rpm --whatprovides 'bundled(gnulib)' at least some libraries specify version attributes. I just couldn't figure out yet how they do it.
You don't need to remove buildroot in %install these days, but it doesn't hurt.
Yep, I understood. I did it for grepability and cosmetic reasons. ;)
Also the packaging guidelines say not to use macros like %_rm
I will change that.
Dave, I would love to make this package compatible to EPEL. I am going to read into that but feel free to dump any links on me. :)
I'll attach a patch. I realize it's only really for el6, but _I think_ the location for completions should be changed on others, as in the patch. Otherwise the diff is mostly moot. (I don't know if using pkg-config is the right way to get the completions directory.) Handling completions should be in packaging guidelines. You do need to own the completions directories with %dir anyhow, which I patched in.
Hope that helps, and apologies if I'm stepping on reviewer toes.
No no, any help is welcome. Thanks a lot for the patch. Can I just use it and apply it to my version? How can I attribute your help in the spec file correctly?
Thanks!
https://bugzilla.redhat.com/show_bug.cgi?id=1466961
--- Comment #9 from Dave Love dave.love@manchester.ac.uk --- Of course you can use the changes. I don't think it's necessary to attribute changes from a review, and they're not copyright-significant.
Have you seen the discussion on fedora-devel about un-versioned bundled provides?
https://bugzilla.redhat.com/show_bug.cgi?id=1466961
--- Comment #10 from Hannes Frederic Sowa hannes@stressinduktion.org --- Sorry for the late reply. I was on the road for some time.
(In reply to Dave Love from comment #9)
Of course you can use the changes. I don't think it's necessary to attribute changes from a review, and they're not copyright-significant.
Have you seen the discussion on fedora-devel about un-versioned bundled provides?
I just added your patch to the spec file and refreshed the source rpm as well the spec file in its initial location.
Spec URL: http://people.redhat.com/~hsowa/datamash.spec SRPM URL: http://people.redhat.com/~hsowa/datamash-1.1.1-1.fc25.src.rpm
F26: https://koji.fedoraproject.org/koji/taskinfo?taskID=20521975 F25: https://koji.fedoraproject.org/koji/taskinfo?taskID=20521994 EPEL7: https://koji.fedoraproject.org/koji/taskinfo?taskID=20522005 rawhide: https://koji.fedoraproject.org/koji/taskinfo?taskID=20522110
I couldn't figure out which target is for epel6. :/
What do you think?
https://bugzilla.redhat.com/show_bug.cgi?id=1466961
--- Comment #11 from Hannes Frederic Sowa hannes@stressinduktion.org --- Ping. Dave, do you have any other comments?
https://bugzilla.redhat.com/show_bug.cgi?id=1466961
--- Comment #12 from Dave Love dave.love@manchester.ac.uk --- (In reply to Hannes Frederic Sowa from comment #11)
Ping. Dave, do you have any other comments?
Not more that it builds on el6 (the koji el6-candidate target, though I used mock). I'm not the reviewer, though.
https://bugzilla.redhat.com/show_bug.cgi?id=1466961
--- Comment #13 from José Matos jamatos@fc.up.pt --- I am the reviewer. :-)
And I was happy to see the discussion.
One note, when you update the spec file you should update the release number. That helps the reviewer (and is present in the guidelines for submission). Please do not forget that in a next submission.
For the moment I will review the version that you published in comment #10.
I will send the full review either today or tomorrow morning (UTC FWIW). :-)
https://bugzilla.redhat.com/show_bug.cgi?id=1466961
José Matos jamatos@fc.up.pt changed:
What |Removed |Added ---------------------------------------------------------------------------- Flags|fedora-review? |fedora-review+
--- Comment #14 from José Matos jamatos@fc.up.pt --- The package is approved. The details follow:
Package Review ==============
Legend: [x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated
===== MUST items =====
C/C++: [x]: Package does not contain kernel modules. [x]: Package contains no static executables. [x]: Provides: bundled(gnulib) in place as required. [x]: Header files in -devel subpackage, if present. [x]: Package does not contain any libtool archives (.la) [x]: Rpath absent or only used for internal libs.
Generic: [x]: Package is licensed with an open-source compatible license and meets 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 file installed when any subpackage combination is installed. [x]: Package does not own files or directories owned by other packages. Note: Dirs in package are owned also by: /usr/share/bash-completion (unar, kmod, licensecheck, libmbim, rpmdevtools, python2-pip, rpmlint, libqmi, ModemManager, bash-completion, tracker, yum, dnf, python3-pip, fedpkg, cmake-data, glib2, git-core, lightdm), /usr/share/bash-completion/completions(unar, kmod, licensecheck, libmbim, rpmdevtools, python2-pip, rpmlint, libqmi, ModemManager, firewalld, libappstream-glib, dnf, tracker, yum, bash-completion, python3-pip, fedpkg, cmake-data, glib2, git-core, lightdm) [x]: %build honors applicable compiler flags or justifies otherwise. [x]: Package contains no bundled libraries without FPC exception. [x]: Changelog in prescribed format. [ ]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the beginning of %install. Note: rm -rf %{buildroot} present but not required [x]: Sources contain only permissible code or content. [-]: Package contains desktop file if it is a GUI application. [-]: Development files must be in a -devel package [x]: Package uses nothing in %doc for runtime. [x]: Texinfo files are installed using install-info in %post and %preun if package has .info files. Note: Texinfo .info file(s) in datamash [x]: The spec file handles locales properly. [x]: Package consistently uses macros (instead of hard-coded directory names). [x]: Package is named according to the Package Naming Guidelines. [x]: Package does not generate any conflict. [x]: Package obeys FHS, except libexecdir and /usr/target. [-]: If the package is a rename of another package, proper Obsoletes and Provides are present. [x]: Requires correct, justified where necessary. [x]: Spec file is legible and written in American English. [-]: Package contains systemd file(s) if in need. [x]: Useful -debuginfo package or justification otherwise. [x]: Package is not known to require an ExcludeArch tag. [-]: Large documentation must go in a -doc subpackage. Large could be size (~1MB) or number of files. Note: Documentation size is 71680 bytes in 7 files. [x]: Package complies to the Packaging Guidelines [x]: Package successfully compiles and builds into binary rpms on at least one supported primary architecture. [x]: Package installs properly. [x]: Rpmlint is run on all rpms the build produces. Note: There are rpmlint messages (see attachment). [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 %license. [x]: Package requires other packages for directories it uses. [x]: Package must own all directories that it creates. [x]: All build dependencies are listed in BuildRequires, except for any that are listed in the exceptions section of Packaging Guidelines. [x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT [x]: Macros in Summary, %description expandable at SRPM build time. [x]: Dist tag is present. [x]: Package does not contain duplicates in %files. [x]: Permissions on files are set properly. [x]: Package use %makeinstall only when make install DESTDIR=... doesn't work. [x]: Package is named using only allowed ASCII characters. [x]: Package does not use a name that already exists. [x]: Package is not relocatable. [x]: Sources used to build the package match the upstream source, as provided in the spec URL. [x]: Spec file name must match the spec package %{name}, in the format %{name}.spec. [x]: File names are valid UTF-8. [x]: Packages must not store files under /srv, /opt or /usr/local
===== SHOULD items =====
Generic: [-]: If the source package does not include license text(s) as a separate file from upstream, the packager SHOULD query upstream to include it. [x]: Final provides and requires are sane (see attachments). [x]: Fully versioned dependency in subpackages if applicable. Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in datamash-debuginfo [x]: Package functions as described. [x]: Latest version is packaged. [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]: Package should compile and build into binary rpms on all supported architectures. [x]: %check is present and all tests pass. [x]: Packages should try to preserve timestamps of original installed files. [x]: Spec use %global instead of %define unless justified. Note: %define requiring justification: %define compdir %(pkg-config --exists bash-completion && [x]: Reviewer should test that the package builds in mock. [x]: Buildroot is not present [x]: Package has no %clean section with rm -rf %{buildroot} (or $RPM_BUILD_ROOT) [x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin. [x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file [x]: Sources can be downloaded from URI in Source: tag [x]: SourceX is a working URL.
===== EXTRA items =====
Generic: [x]: Large data in /usr/share should live in a noarch subpackage if package is arched. Note: Arch-ed rpms have a total of 2396160 bytes in /usr/share [x]: Rpmlint is run on debuginfo package(s). Note: No rpmlint messages. [x]: Rpmlint is run on all installed packages. Note: No rpmlint messages. [x]: Spec file according to URL is the same as in SRPM.
Rpmlint ------- Checking: datamash-1.1.1-1.fc26.x86_64.rpm datamash-debuginfo-1.1.1-1.fc26.x86_64.rpm datamash-1.1.1-1.fc26.src.rpm datamash.src:18: W: unversioned-explicit-provides bundled(gnulib) datamash.src:9: W: mixed-use-of-spaces-and-tabs (spaces: line 9, tab: line 6) 3 packages and 0 specfiles checked; 0 errors, 2 warnings.
Rpmlint (debuginfo) ------------------- Checking: datamash-debuginfo-1.1.1-1.fc26.x86_64.rpm 1 packages and 0 specfiles checked; 0 errors, 0 warnings.
Rpmlint (installed packages) ---------------------------- sh: /usr/bin/python: No such file or directory 2 packages and 0 specfiles checked; 0 errors, 0 warnings.
Requires -------- datamash (rpmlib, GLIBC filtered): /bin/sh info libc.so.6()(64bit) libm.so.6()(64bit) rtld(GNU_HASH)
datamash-debuginfo (rpmlib, GLIBC filtered):
Provides -------- datamash: bundled(gnulib) datamash datamash(x86-64)
datamash-debuginfo: datamash-debuginfo datamash-debuginfo(x86-64)
Source checksums ---------------- http://ftp.gnu.org/gnu/datamash/datamash-1.1.1.tar.gz : CHECKSUM(SHA256) this package : 420819b3d7372ee3ce704add847cff7d08c4f8176c1d48735d4a632410bb801b CHECKSUM(SHA256) upstream package : 420819b3d7372ee3ce704add847cff7d08c4f8176c1d48735d4a632410bb801b
Generated by fedora-review 0.6.1 (f03e4e7) last change: 2016-05-02 Command line :/usr/bin/fedora-review -b 1466961 Buildroot used: fedora-26-x86_64 Active plugins: Generic, Shell-api, C/C++ Disabled plugins: Java, Python, fonts, SugarActivity, Ocaml, Perl, Haskell, R, PHP Disabled flags: EXARCH, DISTTAG, EPEL5, BATCH, EPEL6
https://bugzilla.redhat.com/show_bug.cgi?id=1466961
--- Comment #15 from José Matos jamatos@fc.up.pt --- Now that the package is approved the author suggests that a new release (1.2) will follow soon. :-)
https://bugzilla.redhat.com/show_bug.cgi?id=1466961
Hannes Frederic Sowa hannes@stressinduktion.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Assignee|nobody@fedoraproject.org |jamatos@fc.up.pt
--- Comment #16 from Hannes Frederic Sowa hannes@stressinduktion.org --- Jose, I assigned the ticket to you, it seems I need to do this for requesting a repository.
https://bugzilla.redhat.com/show_bug.cgi?id=1466961
--- Comment #17 from Gwyn Ciesla limburgher@gmail.com --- (fedrepo-req-admin): The Pagure repository was created at https://src.fedoraproject.org/rpms/datamash
https://bugzilla.redhat.com/show_bug.cgi?id=1466961
--- Comment #18 from Dave Love dave.love@manchester.ac.uk --- Why hasn't this been finished off? I was expecting to be able to install it.
https://bugzilla.redhat.com/show_bug.cgi?id=1466961
Hannes Frederic Sowa hsowa@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |hsowa@redhat.com
--- Comment #19 from Hannes Frederic Sowa hsowa@redhat.com --- Hi Dave, oh, I see it hadn't build for f27. I need to take care of that. It is in rawhide already though.
https://bugzilla.redhat.com/show_bug.cgi?id=1466961
--- Comment #20 from Dave Love dave.love@manchester.ac.uk --- I expected it to be built for all the current releases, and the review bug to get auto-closed. (I was actually after it for EPEL.)
https://bugzilla.redhat.com/show_bug.cgi?id=1466961
--- Comment #21 from Hannes Frederic Sowa hsowa@redhat.com --- I just requested the appropriate branches (again). Let's see. I try to push them asap.
https://bugzilla.redhat.com/show_bug.cgi?id=1466961
Filipe Rosset rosset.filipe@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |rosset.filipe@gmail.com
--- Comment #22 from Filipe Rosset rosset.filipe@gmail.com --- I requested branches for f26 and f27 (f28, epel7 and master are OK)
https://pagure.io/releng/fedora-scm-requests/issue/5949 https://pagure.io/releng/fedora-scm-requests/issue/5950
https://bugzilla.redhat.com/show_bug.cgi?id=1466961
--- Comment #23 from Filipe Rosset rosset.filipe@gmail.com --- (In reply to Hannes Frederic Sowa from comment #21)
I just requested the appropriate branches (again). Let's see. I try to push them asap.
Hi Hannes, I pushed to all current branches (master, f28, f27, f26 and epel7) and build an update to datamash-1.3
I think we can go ahead and close this ticket.
https://bugzilla.redhat.com/show_bug.cgi?id=1466961
--- Comment #24 from Filipe Rosset rosset.filipe@gmail.com --- https://koji.fedoraproject.org/koji/packageinfo?packageID=24577
https://bugzilla.redhat.com/show_bug.cgi?id=1466961
--- Comment #25 from Hannes Frederic Sowa hannes@stressinduktion.org --- Thanks, Filipe, that is awesome of you!
https://bugzilla.redhat.com/show_bug.cgi?id=1466961
José Matos jamatos@fc.up.pt changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |CLOSED Resolution|--- |CURRENTRELEASE Last Closed| |2018-08-27 19:44:07
package-review@lists.fedoraproject.org