[Bug 888301] Review Request: orthanc - RESTful DICOM server for healthcare and medical research

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Product: Fedora
https://bugzilla.redhat.com/show_bug.cgi?id=888301

--- Comment #3 from Antonio Trande <trpost@xxxxxxxxxxxx> ---
Note: this is an 'unofficial package review'; it could contain errors and is
not officially valid. :)


Package Review
==============

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


Issues:
=======
[!]: Spec file name must match the spec package %{name}, in the format
     %{name}.spec.
     Note: orthanc-0.4.0-2.fc17.spec should be orthanc.spec
See: http://fedoraproject.org/wiki/Packaging/NamingGuidelines#Spec_file_name

Rename .spec file: orthanc.spec

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

C/C++:
[x]: Header files in -devel subpackage, if present.
[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.

Generic:
[!]: Package is licensed with an open-source compatible license and meets
     other legal requirements as defined in the legal section of Packaging
     Guidelines.

There are two components differently licensed (according to the README file
included on package).
The 'License' tag for the rpm so should be 'GPLv3+ and BSD and MIT'. However
README file reports a
'GPLv3 license with the OpenSSL exception' that seems not compatible with GPLv3
(see http://fedoraproject.org/wiki/Licensing:Main)
In my opinion, you should contact Fedora Project Legal
(http://fedoraproject.org/wiki/Legal:Main) or wait other comments.  

[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.
     Note: rm -rf %{buildroot} present but not required
[x]: Sources contain only permissible code or content.
[x]: %config files are marked noreplace or the reason is justified.
[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.
[-]: Development files must be in a -devel package
[-]: Package requires other packages for directories it uses.
[-]: 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]: 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 (v3 or later)", "Unknown or generated", "MIT/X11 (BSD like)",
     "zlib/libpng", "BSD (3 clause)", "BSD (2 clause)". 6 files have unknown
     license. Detailed output of licensecheck in
     /home/sagitter/888301-orthanc-0.4.0-2.fc17/licensecheck.txt
[x]: Package consistently uses macro is (instead of hard-coded directory
     names).
[x]: Package is named using only allowed ASCII characters.
[x]: Package is named according to the Package Naming Guidelines.
[x]: No %config files under /usr.
[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.
[!]: Spec file name must match the spec package %{name}, in the format
     %{name}.spec.
     Note: orthanc-0.4.0-2.fc17.spec should be orthanc.spec

Rename .spec file: orthanc.spec

[x]: 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.
     Note: Documentation size is 51200 bytes in 4 files.
[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.

 orthanc-0.4.0-2.fc17.i686.rpm  successfully builded by using mock.
 orthanc-0.4.0-2.fc18.x86_64.rpm successfully builded by using rpmbuild.
In both cases, rpmlint shows this warning: W: only-non-binary-in-usr-lib. 
I think it is related to https://bugzilla.redhat.com/show_bug.cgi?id=794777 

[x]: Buildroot is not present
[x]: Package has no %clean section with rm -rf %{buildroot} (or
     $RPM_BUILD_ROOT)
[x]: 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).
[?]: Package functions as described.

rpm correctly installed, orthanc.service created, orthanc group created but
user must be added manually to it.

[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[!]: Patches link to upstream bugs/comments/lists or are otherwise justified.

If exists, add the link to every patch otherwise at least include a comment
right above.
https://fedoraproject.org/wiki/Packaging:PatchUpstreamStatus?rd=Packaging/PatchUpstreamStatus

[x]: The placement of pkgconfig(.pc) files are correct.
[-]: Scriptlets must be sane, if used.
[x]: SourceX tarball generation or download is documented.
[x]: SourceX / PatchY prefixed with %{name}.
     Note: Source2 (jsoncpp-src-0.5.0.tar.gz) Source0 (Orthanc-0.4.0.tar.gz)
     Source1 (mongoose-3.1.tgz)
[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.
[x]: Large data in /usr/share should live in a noarch subpackage if package is
     arched.


Rpmlint
-------
Checking: orthanc-debuginfo-0.4.0-2.fc16.x86_64.rpm
          orthanc-0.4.0-2.fc16.x86_64.rpm
          orthanc-0.4.0-2.fc16.src.rpm
orthanc.x86_64: W: spelling-error Summary(en_US) healthcare -> health care,
health-care, ethereal
orthanc.x86_64: W: non-standard-uid /var/lib/orthanc orthanc
orthanc.x86_64: W: non-standard-gid /var/lib/orthanc orthanc
orthanc.x86_64: W: non-standard-uid /var/lib/orthanc/db-v3 orthanc
orthanc.x86_64: W: non-standard-gid /var/lib/orthanc/db-v3 orthanc
orthanc.src: W: spelling-error Summary(en_US) healthcare -> health care,
health-care, ethereal
3 packages and 0 specfiles checked; 0 errors, 6 warnings.




Rpmlint (installed packages)
----------------------------
# rpmlint orthanc orthanc-debuginfo
orthanc.x86_64: I: enchant-dictionary-not-found en_US
orthanc.x86_64: W: non-standard-uid /var/lib/orthanc orthanc
orthanc.x86_64: W: non-standard-gid /var/lib/orthanc orthanc
orthanc.x86_64: W: non-standard-uid /var/lib/orthanc/db-v3 orthanc
orthanc.x86_64: W: non-standard-gid /var/lib/orthanc/db-v3 orthanc
2 packages and 0 specfiles checked; 0 errors, 4 warnings.
# echo 'rpmlint-done:'



Requires
--------
orthanc-debuginfo-0.4.0-2.fc16.x86_64.rpm (rpmlib, GLIBC filtered):


orthanc-0.4.0-2.fc16.x86_64.rpm (rpmlib, GLIBC filtered):

    /bin/sh
    config(orthanc) = 0.4.0-2.fc16
    libboost_filesystem-mt.so.1.47.0()(64bit)
    libboost_system-mt.so.1.47.0()(64bit)
    libboost_thread-mt.so.1.47.0()(64bit)
    libc.so.6()(64bit)
    libcrypto.so.10()(64bit)
    libcurl.so.4()(64bit)
    libdcmdata.so.3.6()(64bit)
    libdcmnet.so.3.6()(64bit)
    libgcc_s.so.1()(64bit)
    libgcc_s.so.1(GCC_3.0)(64bit)
    libglog.so.0()(64bit)
    libm.so.6()(64bit)
    liboflog.so.3.6()(64bit)
    libofstd.so.3.6()(64bit)
    libpng12.so.0()(64bit)
    libpng12.so.0(PNG12_0)(64bit)
    libpthread.so.0()(64bit)
    libsqlite3.so.0()(64bit)
    libssl.so.10()(64bit)
    libstdc++.so.6()(64bit)
    libstdc++.so.6(CXXABI_1.3)(64bit)
    libstdc++.so.6(CXXABI_1.3.1)(64bit)
    libuuid.so.1()(64bit)
    libuuid.so.1(UUID_1.0)(64bit)
    libz.so.1()(64bit)
    libz.so.1(ZLIB_1.2.0)(64bit)
    rtld(GNU_HASH)
    shadow-utils
    systemd-units



Provides
--------
orthanc-debuginfo-0.4.0-2.fc16.x86_64.rpm:

    orthanc-debuginfo = 0.4.0-2.fc16
    orthanc-debuginfo(x86-64) = 0.4.0-2.fc16

orthanc-0.4.0-2.fc16.x86_64.rpm:

    config(orthanc) = 0.4.0-2.fc16
    orthanc = 0.4.0-2.fc16
    orthanc(x86-64) = 0.4.0-2.fc16



MD5-sum check
-------------
http://downloads.sourceforge.net/project/jsoncpp/jsoncpp/0.5.0/jsoncpp-src-0.5.0.tar.gz
:
  CHECKSUM(SHA256) this package     :
22b14ecd0de8cdad2b6b6839f6d0804d3b84e91f42861ebd843832a26a927433
  CHECKSUM(SHA256) upstream package :
22b14ecd0de8cdad2b6b6839f6d0804d3b84e91f42861ebd843832a26a927433
https://orthanc.googlecode.com/files/Orthanc-0.4.0.tar.gz :
  CHECKSUM(SHA256) this package     :
ca2bf9b176a307141b9f72c7483431efc2d7aa48116c64ba4e8a80ac55548e3a
  CHECKSUM(SHA256) upstream package :
ca2bf9b176a307141b9f72c7483431efc2d7aa48116c64ba4e8a80ac55548e3a
https://mongoose.googlecode.com/files/mongoose-3.1.tgz :
  CHECKSUM(SHA256) this package     :
fd003ff722d8b654a6ceaaadeffb1806d2d513afe888ba00ecfb4a115897844c
  CHECKSUM(SHA256) upstream package :
fd003ff722d8b654a6ceaaadeffb1806d2d513afe888ba00ecfb4a115897844c


Generated by fedora-review 0.3.1 (b71abc1) last change: 2012-10-16
Buildroot used: fedora-16-x86_64
Command line :/usr/bin/fedora-review -b 888301

In

%pre
# http://fedoraproject.org/wiki/Packaging%3aUsersAndGroups
# "We never remove users or groups created by packages"

getent group orthanc >/dev/null || groupadd -r orthanc
getent passwd orthanc >/dev/null || \
    useradd -r -g orthanc -d %{_sharedstatedir}/orthanc -s /sbin/nologin \
    -c "User account that holds information for Orthanc" orthanc

'exit 0' is omitted at the end. Why ?
http://fedoraproject.org/wiki/Packaging%3aUsersAndGroups

-- 
You are receiving this mail because:
You are on the CC list for the bug.
Unsubscribe from this bug https://bugzilla.redhat.com/token.cgi?t=YVJTFaEW0D&a=cc_unsubscribe
_______________________________________________
package-review mailing list
package-review@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/package-review



[Index of Archives]     [Fedora Legacy]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [KDE Users]     [Fedora Tools]