Bug 1462466 (jp2a)

Summary: Review Request: jp2a - Converts jpg images to ASCII
Product: [Fedora] Fedora Reporter: Raphael Groner <projects.rg>
Component: Package ReviewAssignee: Jonny Heggheim <hegjon>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: rawhideCC: hegjon, morpheusv, package-review
Target Milestone: ---Keywords: Reopened
Target Release: ---Flags: hegjon: fedora-review+
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-09-02 22:24:39 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: 1462467    

Description Raphael Groner 2017-06-17 21:21:33 UTC
Spec URL: http://raphgro.fedorapeople.org//jp2a.spec
SRPM URL: http://raphgro.fedorapeople.org//jp2a-1.0.7-1.fc26.src.rpm

Description:
jp2a is a simple JPEG to ASCII converter.

Comment 1 Raphael Groner 2017-06-17 21:22:55 UTC
*** Bug 708664 has been marked as a duplicate of this bug. ***

Comment 2 Raphael Groner 2017-06-17 21:39:39 UTC
Task info: https://koji.fedoraproject.org/koji/taskinfo?taskID=20057135

Comment 3 Jonny Heggheim 2017-07-16 21:10:16 UTC
Package Review
==============

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


Issues:
=======
- 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: gcc
  See: http://fedoraproject.org/wiki/Packaging/Guidelines#Exceptions_2


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

C/C++:
[x]: Package does not contain kernel modules.
[x]: Package contains no static executables.
[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.
     Note: Checking patched sources after %prep for licenses. Licenses
     found: "GPL (v2)", "Unknown or generated", "zlib/libpng curl GPL
     (v2)". 46 files have unknown license. Detailed output of licensecheck
     in /home/jonny/tmp/1462466-jp2a/licensecheck.txt
[x]: License file installed when any subpackage combination is installed.
[x]: %build honors applicable compiler flags or justifies otherwise.
[x]: Package contains no bundled libraries without FPC exception.
[x]: Changelog in prescribed format.
[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]: 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 30720 bytes in 6 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]: Package requires other packages for directories it uses.
[x]: Package must own all directories that it creates.
[x]: Package does not own files or directories owned by other packages.
[x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT
[x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
     beginning of %install.
[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).
[-]: Fully versioned dependency in subpackages if applicable.
     Note: No Requires: %{name}%{?_isa} = %{version}-%{release} in jp2a-
     debuginfo
[x]: Package functions as described.
[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[x]: 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]: 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.
[x]: Spec use %global instead of %define unless justified.

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

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


Rpmlint
-------
Checking: jp2a-1.0.7-1.fc27.x86_64.rpm
          jp2a-debuginfo-1.0.7-1.fc27.x86_64.rpm
          jp2a-1.0.7-1.fc27.src.rpm
jp2a.x86_64: W: spelling-error Summary(en_US) jpg -> jog, jg, pg
jp2a.x86_64: W: only-non-binary-in-usr-lib
jp2a.x86_64: W: hidden-file-or-dir /usr/lib/.build-id
jp2a.x86_64: W: hidden-file-or-dir /usr/lib/.build-id
jp2a.x86_64: W: manual-page-warning /usr/share/man/man1/jp2a.1.gz 30: warning: macro `Tp' not defined
jp2a-debuginfo.x86_64: W: invalid-url URL: https://csl.name/jp2a The read operation timed out
jp2a.src: W: spelling-error Summary(en_US) jpg -> jog, jg, pg
3 packages and 0 specfiles checked; 0 errors, 7 warnings.




Rpmlint (debuginfo)
-------------------
Checking: jp2a-debuginfo-1.0.7-1.fc27.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
jp2a.x86_64: W: spelling-error Summary(en_US) jpg -> jog, jg, pg
jp2a.x86_64: W: only-non-binary-in-usr-lib
jp2a.x86_64: W: hidden-file-or-dir /usr/lib/.build-id
jp2a.x86_64: W: hidden-file-or-dir /usr/lib/.build-id
jp2a.x86_64: W: manual-page-warning /usr/share/man/man1/jp2a.1.gz 30: warning: macro `Tp' not defined
2 packages and 0 specfiles checked; 0 errors, 5 warnings.



Requires
--------
jp2a-debuginfo (rpmlib, GLIBC filtered):

jp2a (rpmlib, GLIBC filtered):
    libc.so.6()(64bit)
    libcurl.so.4()(64bit)
    libjpeg.so.62()(64bit)
    libjpeg.so.62(LIBJPEG_6.2)(64bit)
    rtld(GNU_HASH)



Provides
--------
jp2a-debuginfo:
    jp2a-debuginfo
    jp2a-debuginfo(x86-64)

jp2a:
    jp2a
    jp2a(x86-64)



Source checksums
----------------
https://github.com/cslarsen/jp2a/archive/v1.0.7.tar.gz#/jp2a-1.0.7.tar.gz :
  CHECKSUM(SHA256) this package     : e509d8bbf9434afde5c342568b21d11831a61d9942ca8cb1633d4295b7bc5059
  CHECKSUM(SHA256) upstream package : e509d8bbf9434afde5c342568b21d11831a61d9942ca8cb1633d4295b7bc5059


Generated by fedora-review 0.6.1 (f03e4e7) last change: 2016-05-02
Command line :/usr/bin/fedora-review -m fedora-rawhide-x86_64 -b 1462466
Buildroot used: fedora-rawhide-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

Comment 4 Jonny Heggheim 2017-07-16 21:11:23 UTC
- 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: gcc
  See: http://fedoraproject.org/wiki/Packaging/Guidelines#Exceptions_2

Comment 5 Jonny Heggheim 2017-07-16 21:12:45 UTC
There are some files in the no debug package in /usr/lib, not sure how they ended up there since they are not defined in %files

Rpmlint:
jp2a.x86_64: W: only-non-binary-in-usr-lib
jp2a.x86_64: W: hidden-file-or-dir /usr/lib/.build-id
jp2a.x86_64: W: hidden-file-or-dir /usr/lib/.build-id

Comment 6 Jonny Heggheim 2017-07-16 21:13:48 UTC
I would prefer a bit more information in %description, can use the text from Debian for instance https://packages.debian.org/unstable/jp2a

Comment 7 Jonny Heggheim 2017-07-16 21:42:32 UTC
Review approved, none of the comments are must items

Comment 8 Raphael Groner 2017-08-13 21:54:32 UTC
Jonny, thanks for the review! I'll care about your comments while importing the package.

Comment 9 Gwyn Ciesla 2017-08-13 22:57:47 UTC
(fedrepo-req-admin):  The Pagure repository was created at https://src.fedoraproject.org/rpms/jp2a

Comment 10 Gwyn Ciesla 2017-08-13 22:58:13 UTC
(fedrepo-req-admin):  The Pagure repository was created at https://src.fedoraproject.org/rpms/jp2a

Comment 11 Raphael Groner 2017-08-14 05:44:50 UTC
(In reply to Jonny Heggheim from comment #4)
> - 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: gcc
>   See: http://fedoraproject.org/wiki/Packaging/Guidelines#Exceptions_2

This is a bug in f-r. Exceptions were removed from guidelines to not enforce gcc.
https://fedoraproject.org/wiki/Packaging:Guidelines#Compiler
https://pagure.io/packaging-committee/issue/497#comment-146293

(In reply to Jonny Heggheim from comment #5)
> There are some files in the no debug package in /usr/lib, not sure how they
> ended up there since they are not defined in %files
> 
> Rpmlint:
> jp2a.x86_64: W: only-non-binary-in-usr-lib
> jp2a.x86_64: W: hidden-file-or-dir /usr/lib/.build-id
> jp2a.x86_64: W: hidden-file-or-dir /usr/lib/.build-id

Bug in rpmlint.
https://bugzilla.redhat.com/show_bug.cgi?id=1431408

Comment 12 Raphael Groner 2017-08-14 20:44:16 UTC
Imported and built in rawhide. As pagure does not allow me to build for other branches, I'll delay till pagure is ready.

Comment 13 Matt Prahl 2017-08-17 12:54:19 UTC
(fedrepo-req-admin):  The Pagure repository was created at https://src.stg.fedoraproject.org/rpms/jp2a. You may create the branch "f26" using git in about 10 minutes.

Comment 14 Matt Prahl 2017-08-17 12:54:58 UTC
(fedrepo-req-admin):  The Pagure repository was created at https://src.stg.fedoraproject.org/rpms/jp2a. You may create the branch "f26" using git in about 10 minutes.

Comment 15 Matt Prahl 2017-08-17 12:56:25 UTC
Please disregard my two comments. These were for testing.

Comment 16 Raphael Groner 2017-08-21 12:01:40 UTC
Requested branches: f27, f26, epel7.

Comment 17 Fedora Update System 2017-08-24 13:03:59 UTC
jp2a-1.0.7-1.el7 has been submitted as an update to Fedora EPEL 7. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2017-5519555fe5

Comment 18 Fedora Update System 2017-08-24 13:04:08 UTC
jp2a-1.0.7-1.fc26 has been submitted as an update to Fedora 26. https://bodhi.fedoraproject.org/updates/FEDORA-2017-cd32c84ca3

Comment 19 Fedora Update System 2017-08-24 16:49:46 UTC
jp2a-1.0.7-1.fc26 has been pushed to the Fedora 26 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-cd32c84ca3

Comment 20 Fedora Update System 2017-08-24 23:47:34 UTC
jp2a-1.0.7-1.el7 has been pushed to the Fedora EPEL 7 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2017-5519555fe5

Comment 21 Fedora Update System 2017-09-02 22:24:39 UTC
jp2a-1.0.7-1.fc26 has been pushed to the Fedora 26 stable repository. If problems still persist, please make note of it in this bug report.

Comment 22 Fedora Update System 2017-09-08 23:48:14 UTC
jp2a-1.0.7-1.el7 has been pushed to the Fedora EPEL 7 stable repository. If problems still persist, please make note of it in this bug report.