Bug 907213

Summary: Review Request: lmfit - Levenberg-Marquardt least-squares minimization and curve fitting
Product: [Fedora] Fedora Reporter: Miro Hrončok <mhroncok>
Component: Package ReviewAssignee: T.C. Hollingsworth <tchollingsworth>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: notting, package-review, rc040203, tchollingsworth
Target Milestone: ---Flags: tchollingsworth: fedora-review+
gwync: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-04-28 03:50:08 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:
Bug Depends On:    
Bug Blocks: 907585    
Attachments:
Description Flags
licensecheck output none

Description Miro Hrončok 2013-02-03 19:43:04 UTC
Spec URL: https://raw.github.com/hroncok/SPECS/master/stbi.spec
SRPM URL: https://github.com/downloads/hroncok/SPECS/lmfit-3.5-1.fc18.src.rpm

Description:

C/C++ library for Levenberg-Marquardt least-squares minimization and curve
fitting

Fedora Account System Username: churchyard

Comment 1 Miro Hrončok 2013-02-03 19:49:46 UTC
Correct Spec URL: https://raw.github.com/hroncok/SPECS/master/lmfit.spec

My fault.

Comment 2 Ralf Corsepius 2013-02-04 16:03:10 UTC
Some comments:

1. You can't package the demo binaries into /usr/share/doc/*, because all files below /usr/share must be arch-independent.

I'd recommend to do one of the following:
a) To only ship the sources (*.c) under /usr/share/doc/*
b) To install the demos somewhere below %{_libdir}/lmfit in a separate *-demos  package (One way to do so would be to use %configure --bindir=%{_libdir}/lmfit.)
c) To apply --program-prefix
d) Not to ship the demos.

2. Consider appending --disable-static to %configure.
This would avoid much of the "rm"-sequence you are using to remove the static libs and would avoid compiling the libraries twice.

3. The %check section is superflous.
%check is supposed to run a testsuite, but this package doesn't ship one.

Comment 3 Miro Hrončok 2013-02-04 16:40:19 UTC
(In reply to comment #2)
> 1. You can't package the demo binaries into /usr/share/doc/*, because all
> files below /usr/share must be arch-independent.
That was not my intention. They are present by mistake.

> I'd recommend to do one of the following:
> a) To only ship the sources (*.c) under /usr/share/doc/*
This is what i wanted. I deleted the apps from /usr/bin, but I didn't noticed they are in demos too.

> 2. Consider appending --disable-static to %configure.
> This would avoid much of the "rm"-sequence you are using to remove the
> static libs and would avoid compiling the libraries twice.
Good point

> 3. The %check section is superflous.
> %check is supposed to run a testsuite, but this package doesn't ship one.
OK.

Comment 4 Miro Hrončok 2013-02-04 16:47:54 UTC
Spec URL: https://raw.github.com/hroncok/SPECS/master/lmfit.spec
SRPM URL: https://github.com/downloads/hroncok/SPECS/lmfit-3.5-2.fc18.src.rpm

- Do not package demo binaries to %%doc
- Added --disable-static to configure

Comment 5 T.C. Hollingsworth 2013-04-19 02:17:02 UTC
Package Review
==============

Key:
[x] = Pass
[!] = Fail
[-] = Not applicable
[?] = Not evaluated
[ ] = Manual review needed

Status: NEEDS WORK

===== Issues ====

[!]: License is listed as "BSD and CC-BY", but licensecheck identifies some
     GPLv2+ files.
     
     See the attachment for details.  Please correct the License tag or justify
     the exclusion of the GPL in a comment.
     
[!]: License is listed as "BSD", but no copy of the license is included.

     The BSD license states: 
     
        "Redistributions in binary form must reproduce the above copyright
         notice, this list of conditions and the following disclaimer in the 
         documentation and/or other materials provided with the distribution."
        
     In order to comply with this clause of the license, a copy of the license
     text MUST be included in %doc.  You can either work with upstream to include
     one, or include one yourself.
     
     For more information on handling this situation, see:
     https://fedoraproject.org/wiki/Packaging:LicensingGuidelines#License_Text


===== MUST items =====

C/C++:
[x]: Header files in -devel subpackage, if present.
[x]: ldconfig called in %post and %postun if required.
[x]: Package does not contain any libtool archives (.la)
[x]: Package does not contain kernel modules.
[x]: Package contains no static executables.
[x]: Rpath absent or only used for internal libs.
[x]: Development (unversioned) .so files in -devel subpackage, if present.

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]: Package successfully compiles and builds into binary rpms on at least one
     supported primary architecture.
[x]: %build honors applicable compiler flags or justifies otherwise.
[x]: All build dependencies are listed in BuildRequires, except for any that
     are listed in the exceptions section of Packaging Guidelines.
[x]: Package contains no bundled libraries.
[x]: Changelog in prescribed format.
[x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
     beginning of %install.
[x]: Sources contain only permissible code or content.
[x]: Each %files section contains %defattr if rpm < 4.4
[x]: Macros in Summary, %description expandable at SRPM build time.
[-]: Package contains desktop file if it is a GUI application.
[x]: Development files must be in a -devel package
[x]: Package requires other packages for directories it uses.
[x]: Package uses nothing in %doc for runtime.
[x]: Package is not known to require ExcludeArch.
[x]: Package does not contain duplicates in %files.
[x]: Permissions on files are set properly.
[x]: Fully versioned dependency in subpackages, if present.
[x]: Package complies to the Packaging Guidelines
[x]: Spec file lacks Packager, Vendor, PreReq tags.
[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.
[!]: License field in the package spec file matches the actual license.
     Note: Checking patched sources after %prep for licenses. Licenses found:
     "GPL (v2 or later)", "Unknown or generated". 2 files have unknown
     license. Detailed output of licensecheck in
     /home/fedora/patches/FedoraReview/907213-lmfit/licensecheck.txt
[!]: License file installed when any subpackage combination is installed.
[x]: Package consistently uses macro is (instead of hard-coded directory
[!]: If the package is under multiple licenses, the licensing breakdown must
     be documented in the spec.
[x]: Package is named using only allowed ASCII characters.
[x]: Package is named according to the Package Naming Guidelines.
[x]: Package does not generate any conflict.
     Note: Package contains no Conflicts: tag(s)
[x]: Package do not use a name that already exist
[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]: Package must own all directories that it creates.
[x]: Package does not own files or directories owned by other packages.
[x]: Package installs properly.
[x]: Package is not relocatable.
[x]: Requires correct, justified where necessary.
[x]: CheckResultdir
[x]: Rpmlint is run on all rpms the build produces.
     Note: There are rpmlint messages (see attachment).
[x]: Sources used to build the package match the upstream source, as provided
     in the spec URL.
[x]: Spec file is legible and written in American English.
[x]: Spec file name must match the spec package %{name}, in the format
     %{name}.spec.
[-]: Package contains systemd file(s) if in need.
[x]: File names are valid UTF-8.
[x]: Useful -debuginfo package or justification otherwise.
[-]: Large documentation must go in a -doc subpackage.
[x]: Packages must not store files under /srv, /opt or /usr/local

===== SHOULD items =====

Generic:
[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)
[!]: 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]: Dist tag is present.
[x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: Final provides and requires are sane (rpm -q --provides and rpm -q
     --requires).
[x]: Package functions as described.
[x]: Latest version is packaged.
[-]: Package does not include license text files separate from upstream.
[x]: The placement of pkgconfig(.pc) files are correct.
[x]: Scriptlets must be sane, if used.
[x]: SourceX tarball generation or download is documented.
[x]: SourceX / PatchY prefixed with %{name}.
[x]: SourceX is a working URL.
[-]: 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.
[!]: %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.

===== EXTRA items =====

Generic:
[x]: Rpmlint is run on all installed packages.
     Note: There are rpmlint messages (see attachment).
[x]: Spec file according to URL is the same as in SRPM.
[-]: Large data in /usr/share should live in a noarch subpackage if package is
     arched.

Rpmlint
-------
Checking: lmfit-debuginfo-3.5-2.fc20.x86_64.rpm
          lmfit-3.5-2.fc20.x86_64.rpm
          lmfit-3.5-2.fc20.src.rpm
          lmfit-devel-3.5-2.fc20.x86_64.rpm
lmfit.x86_64: W: spelling-error Summary(en_US) Levenberg -> Ehrenberg
lmfit.src: W: spelling-error Summary(en_US) Levenberg -> Ehrenberg
lmfit-devel.x86_64: W: no-documentation
4 packages and 0 specfiles checked; 0 errors, 3 warnings.

OK


Rpmlint (installed packages)
----------------------------
# rpmlint lmfit-debuginfo lmfit-devel lmfit
lmfit-devel.x86_64: W: no-documentation
lmfit.x86_64: W: spelling-error Summary(en_US) Levenberg -> Ehrenberg
3 packages and 0 specfiles checked; 0 errors, 2 warnings.
# echo 'rpmlint-done:'

OK

Requires
--------
lmfit-debuginfo-3.5-2.fc20.x86_64.rpm (rpmlib, GLIBC filtered):
    

lmfit-3.5-2.fc20.x86_64.rpm (rpmlib, GLIBC filtered):
    
    /sbin/ldconfig
    libc.so.6()(64bit)
    libm.so.6()(64bit)
    rtld(GNU_HASH)

lmfit-devel-3.5-2.fc20.x86_64.rpm (rpmlib, GLIBC filtered):
    
    liblmmin.so.2()(64bit)
    lmfit(x86-64) = 3.5-2.fc20

OK

Provides
--------
lmfit-debuginfo-3.5-2.fc20.x86_64.rpm:
    
    lmfit-debuginfo = 3.5-2.fc20
    lmfit-debuginfo(x86-64) = 3.5-2.fc20

lmfit-3.5-2.fc20.x86_64.rpm:
    
    liblmmin.so.2()(64bit)
    lmfit = 3.5-2.fc20
    lmfit(x86-64) = 3.5-2.fc20

lmfit-devel-3.5-2.fc20.x86_64.rpm:
    
    lmfit-devel = 3.5-2.fc20
    lmfit-devel(x86-64) = 3.5-2.fc20

OK

MD5-sum check
-------------
http://joachimwuttke.de/src/lmfit-3.5.tgz :
  CHECKSUM(SHA256) this package     : d3f4274d22d1e0e1a8700308ddcfc99576189369dd85b782f68c1530863aadd4
  CHECKSUM(SHA256) upstream package : d3f4274d22d1e0e1a8700308ddcfc99576189369dd85b782f68c1530863aadd4

OK

Generated by fedora-review 0.3.1 (f4bc12d) last change: 2012-10-16
Buildroot used: fedora-rawhide-vanilla-x86_64
Command line :./try-fedora-review -b907213

Comment 6 T.C. Hollingsworth 2013-04-19 02:20:33 UTC
Created attachment 737487 [details]
licensecheck output

Sorry, forgot the attachment.

I don't think the file in question in packaged, so this is probably a non-issue.

Comment 7 Miro Hrončok 2013-04-19 09:40:42 UTC
No, ltmain.sh is not included and yes, COPYING with BSD license is included.

Comment 8 T.C. Hollingsworth 2013-04-19 22:27:08 UTC
Wow, I was full of fail last night, sorry.  Package APPROVED.

Comment 9 Miro Hrončok 2013-04-20 17:56:01 UTC
New Package SCM Request
=======================
Package Name: lmfit
Short Description: Levenberg-Marquardt least-squares minimization and curve fitting
Owners: churchyard
Branches: f17 f18 f19

Comment 10 Gwyn Ciesla 2013-04-22 13:19:33 UTC
Git done (by process-git-requests).

Comment 11 Fedora Update System 2013-04-22 18:01:43 UTC
lmfit-3.5-2.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/lmfit-3.5-2.fc19

Comment 12 Fedora Update System 2013-04-22 18:02:39 UTC
lmfit-3.5-2.fc18 has been submitted as an update for Fedora 18.
https://admin.fedoraproject.org/updates/lmfit-3.5-2.fc18

Comment 13 Fedora Update System 2013-04-22 18:03:21 UTC
lmfit-3.5-2.fc17 has been submitted as an update for Fedora 17.
https://admin.fedoraproject.org/updates/lmfit-3.5-2.fc17

Comment 14 Fedora Update System 2013-04-23 03:02:26 UTC
lmfit-3.5-2.fc19 has been pushed to the Fedora 19 testing repository.

Comment 15 Fedora Update System 2013-04-28 03:50:11 UTC
lmfit-3.5-2.fc19 has been pushed to the Fedora 19 stable repository.

Comment 16 Fedora Update System 2013-05-02 03:54:14 UTC
lmfit-3.5-2.fc18 has been pushed to the Fedora 18 stable repository.

Comment 17 Fedora Update System 2013-05-02 03:57:41 UTC
lmfit-3.5-2.fc17 has been pushed to the Fedora 17 stable repository.