Bug 652573 (ghc-zip-archive)

Summary: Review Request: ghc-zip-archive - Haskell zip-archive library
Product: [Fedora] Fedora Reporter: Jens Petersen <petersen>
Component: Package ReviewAssignee: Narasimhan <lakshminaras2002>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: fedora-package-review, haskell-devel, john.haxby, lakshminaras2002, notting
Target Milestone: ---Flags: lakshminaras2002: fedora-review+
gwync: fedora-cvs+
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: ghc-zip-archive-0.1.1.6-4.fc14 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-01-13 23:36:09 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: 652571    
Bug Blocks: 652582    
Attachments:
Description Flags
patch to fix up rpmlint warning, added COPYING to the base rpm none

Description Jens Petersen 2010-11-12 09:10:02 UTC
Spec URL: http://petersen.fedorapeople.org/ghc-zip-archive/ghc-zip-archive.spec
SRPM URL: http://petersen.fedorapeople.org/ghc-zip-archive/ghc-zip-archive-0.1.1.6-1.fc14.src.rpm
Description: 
The zip-archive library provides functions for creating, modifying, and extracting files from zip archives.

Comment 1 john.haxby@oracle.com 2010-12-01 15:25:00 UTC
When I try to build this I get:

Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.JBZkcU
+ umask 022
+ cd /home/jch/rpmbuild/BUILD
+ cd zip-archive-0.1.1.6
+ LANG=C
+ export LANG
+ unset DISPLAY
+ /usr/bin/runghc Setup configure --prefix=/usr --libdir=/usr/lib64 --docdir=/usr/share/doc/ghc-zip-archive-0.1.1.6 --htmldir=/usr/share/doc/ghc/html/libraries/zip-archive-0.1.1.6 '--libsubdir=$compiler/$pkgid' --enable-shared --ghc -p
Configuring zip-archive-0.1.1.6...
Setup: At least the following dependencies are missing:
binary -any
error: Bad exit status from /var/tmp/rpm-tmp.JBZkcU (%build)

I suspect that this is something to do with the "binary" in zip-archive.cabal but really I have no idea what.

Comment 2 Jens Petersen 2010-12-02 02:44:37 UTC
Thanks for catching that - yes I had forgotten the ghc-binary-devel dependency.

Spec: http://petersen.fedorapeople.org/ghc-zip-archive/ghc-zip-archive.spec
SRPM: http://petersen.fedorapeople.org/ghc-zip-archive/ghc-zip-archive-0.1.1.6-2.fc14.src.rpm


* Thu Dec  2 2010 Jens Petersen <petersen> - 0.1.1.6-2
- also depends on binary (#652573)

Comment 3 Narasimhan 2010-12-06 11:42:06 UTC
Created attachment 464957 [details]
patch to fix up rpmlint warning, added  COPYING to the base rpm

Comment 4 Narasimhan 2010-12-08 16:20:15 UTC
I built and installed the package (incl devel and prof). I am unable to find the exported module ( Codec.Archive.Zip ) via ghci. Could you let me know whether it is the same case for you? Or I am doing something incorrect?

I almost completed the review except for the above blocker.

Thanks,

Comment 5 Narasimhan 2010-12-08 16:35:36 UTC
Update:
When I run ghci as root, I can see the exported module but not as a normal user.

Comment 6 Jens Petersen 2010-12-09 15:22:21 UTC
(In reply to comment #3)
> patch to fix up rpmlint warning

buildroot setting and cleaning is now deprecated in the Packaging Guidelines.

> added  COPYING to the base rpm

Thanks - fixing:

Spec: http://petersen.fedorapeople.org/ghc-zip-archive/ghc-zip-archive.spec
SRPM:
http://petersen.fedorapeople.org/ghc-zip-archive/ghc-zip-archive-0.1.1.6-3.fc13.src.rpm

(In reply to comment #4)
> I am unable to find the exported module ( Codec.Archive.Zip ) via ghci.

I was trying to test earlier but had some system (rpm or fs issue) problem.
Can you describe the steps you are taking?

So, sorry I can't test right now with rawhide but at least
the following works for me:

$ rpm -q ghc
ghc-6.12.1-5.fc13.i686
$ cabal install zip-zrchive
:
:
$ ghci -package zip-archive
GHCi, version 6.12.1: http://www.haskell.org/ghc/  :? for help
Loading package ghc-prim ... linking ... done.
:
Loading package zip-archive-0.1.1.6 ... linking ... done.
Loading package ffi-1.0 ... linking ... done.
Prelude> :module Codec.Archive.Zip
Prelude Codec.Archive.Zip> 

I can certainly look into to it more later, and we
should certainly support ghci, but I am not
sure if it is a review blocker.

(In reply to comment #5)
> When I run ghci as root, I can see the exported module but not as a normal
> user.

As a normal user what is your output of "ghc-pkg list zip-archive"?

Comment 7 Narasimhan 2010-12-10 02:24:58 UTC
>buildroot setting and cleaning is now deprecated in the Packaging Guidelines.
True. I thought if I was patching it, I would add those two lines as well to reduce the rpmlint warnings :).

ghc-pkg list  zip-archive
/usr/lib64/ghc-6.12.3/package.conf.d
   zip-archive-0.1.1.6

--A small program like

import Codec.Archive.Zip

main = do
        putStrLn "hello world"
        return ()

--gives me this as a normal user
ghc --make test.hs

test.hs:1:7:
    Could not find module `Codec.Archive.Zip':
      Use -v to see a list of the files searched for.


But compiles as root. 

I can approve the package. Once the build occurs in rawhide, I can help you out in testing the functionality using that small program.

Comment 8 Narasimhan 2010-12-10 02:53:32 UTC
I am getting  a build error in rawhide.

RPM build errors:
    File listed twice: /usr/share/doc/ghc-zip-archive-0.1.1.6
    create archive failed on file /home/narasimhan/rpmbuild/BUILDROOT/ghc-zip-archive-0.1.1.6-3.fc14.x86_64/usr/share/doc/ghc-zip-archive-0.1.1.6/LICENSE: cpio: Bad magic

http://koji.fedoraproject.org/koji/taskinfo?taskID=2656250

Comment 9 Jens Petersen 2010-12-21 08:05:46 UTC
(In reply to comment #7)
> ghc --make test.hs
> 
> test.hs:1:7:
>     Could not find module `Codec.Archive.Zip':
>       Use -v to see a list of the files searched for.

Works for me with rawhide ghc certainly.
I suspect some local problem on your machine perhaps.
But I can test F14 too later.

(In reply to comment #8)
> cpio: Bad magic

Oops, me too.  Fixed in:

Spec: http://petersen.fedorapeople.org/ghc-zip-archive/ghc-zip-archive.spec
SRPM:
http://petersen.fedorapeople.org/ghc-zip-archive/ghc-zip-archive-0.1.1.6-4.fc14.src.rpm

Comment 10 Narasimhan 2010-12-25 08:01:58 UTC
> Works for me with rawhide ghc certainly.
> I suspect some local problem on your machine perhaps.
> But I can test F14 too later.

I created another non administrative user and tried to compile the file. It worked properly. I am guessing there is some issue with the set of packages I have installed via cabal using my regular account.

Comment 11 Narasimhan 2010-12-25 09:19:27 UTC
Here is my review. I did a ghc-pkg recache --user and that fixed the issue. The test program compiles and runs fine.

[+]MUST: rpmlint must be run on every package. The output should be posted in the review.
ghc-zip-archive.src: W: spelling-error Summary(en_US) Haskell -> Gaskell, Gaitskell, Skellum
The value of this tag appears to be misspelled. Please double-check.

ghc-zip-archive.x86_64: W: spelling-error Summary(en_US) Haskell -> Gaskell, Gaitskell, Skellum
The value of this tag appears to be misspelled. Please double-check.

ghc-zip-archive-devel.x86_64: W: spelling-error Summary(en_US) Haskell -> Gaskell, Gaitskell, Skellum
The value of this tag appears to be misspelled. Please double-check.

ghc-zip-archive-prof.x86_64: E: devel-dependency ghc-zip-archive-devel
Your package has a dependency on a devel package but it's not a devel package
itself.

ghc-zip-archive-prof.x86_64: W: no-documentation
The package contains no documentation (README, doc, etc). You have to include
documentation files.

ghc-zip-archive-prof.x86_64: W: devel-file-in-non-devel-package /usr/lib64/ghc-6.12.3/zip-archive-0.1.1.6/libHSzip-archive-0.1.1.6_p.a
A development file (usually source code) is located in a non-devel package. If
you want to include source code in your package, be sure to create a
development package.

4 packages and 0 specfiles checked; 1 errors, 5 warnings.

[+]MUST: The package must be named according to the Package Naming Guidelines.
[+]MUST: The spec file name must match the base package %{name}, in the format %{name}.spec
[+]MUST: The package must meet the Packaging Guidelines.
        Naming-Yes, only building the library not the executable
        Version-release - Matches
        License - OK, included COPYING into the base package.
        No prebuilt external bits - OK
        Spec legibity - OK
        Package template - OK
        Arch support - OK
        Libexecdir - OK
        rpmlint - yes
        changelogs - OK
        Source url tag  - OK, validated.
        BuildRoot is ignored - OK
        %clean is ignored - OK
        Build Requires list - OK
        Summary and description - OK
        API documentation - OK, in devel package

[+]MUST: The package must be licensed with a Fedora approved license and meet the Licensing Guidelines .
[+]MUST: The License field in the package spec file must match the actual license.
[+]MUST: 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 must be included in %doc.
Included LICENSE and COPYING file
[+]MUST: The spec file must be written in American English.
[+]MUST: The spec file for the package MUST be legible.
[+]MUST: The sources used to build the package must match the upstream source,as provided in the spec URL. Reviewers should use md5sum for this task.
md5sum ghc-zip-archive-0.1.1.6-4.fc14.src/zip-archive-0.1.1.6.tar.gz 
4806077be79ecb5486306432ee93e38d  ghc-zip-archive-0.1.1.6-4.fc14.src/zip-archive-0.1.1.6.tar.gz

md5sum ~/Downloads/zip-archive-0.1.1.6.tar.gz 
4806077be79ecb5486306432ee93e38d  ~/Downloads/zip-archive-0.1.1.6.tar.gz

[+]MUST: The package MUST successfully compile and build into binary rpms on at least one primary architecture.
Built on x86_64 http://koji.fedoraproject.org/koji/taskinfo?taskID=2688795
[+]MUST: If the package does not successfully compile, build or work on an architecture, then those architectures should be listed in the spec in
ExcludeArch.
[+]MUST: All build dependencies must be listed in BuildRequires.
[NA]MUST: The spec file MUST handle locales properly using the %find_lang macro
[NA]MUST: Packages stores shared library files must call ldconfig in %post and %postun.
[+]MUST: Packages must NOT bundle copies of system libraries.
Checked with rpmquery --list
[NA]MUST: If the package is designed to be relocatable, the packager must state this fact in the request for review.
[+]MUST: A package must own all directories that it creates.
Checked with rpmquery --whatprovides
[+]MUST: A Fedora package must not list a file more than once in the spec file's %files listings.
[+]MUST: Permissions on files must be set properly.
Checked with ls -lR
[+]MUST: Each package must consistently use macros.
[+]MUST: The package must contain code, or permissable content.
[+]MUST: Large documentation files must go in a -doc subpackage.
[+]MUST: If a package includes something as %doc, it must not affect the runtime of the application.
[+]MUST: Header files must be in a -devel package.
[NA]MUST: Static libraries must be in a -static package.
[NA]MUST: If a package contains library files with a suffix (e.g.libfoo.so.1.1), then library files that end in .so (without suffix) must go in a -devel package.
[+]MUST: devel packages must require the base package using a fully versioned dependency: Requires: {name} = %{version}-%{release}
rpm -e ghc-zip-archive
error: Failed dependencies:
	ghc-zip-archive = 0.1.1.6-4.fc14 is needed by (installed) ghc-zip-archive-devel-0.1.1.6-4.fc14.x86_64

rpm -e ghc-zip-archive-devel
error: Failed dependencies:
	ghc-zip-archive-devel = 0.1.1.6-4.fc14 is needed by (installed) ghc-zip-archive-prof-0.1.1.6-4.fc14.x86_64

[NA]MUST: Packages must NOT contain any .la libtool archives, these must be removed in the spec if they are built.
[NA]MUST: Packages containing GUI applications must include a %{name}.desktop file, and that file must be properly installed with desktop-file-install in the %install section
[+]MUST: Packages must not own files or directories already owned by other packages.
checked with rpmquery --list
[+]MUST: All filenames in rpm packages must be valid UTF-8.

Should items
[+]SHOULD: If the source package does not include license text(s) as a separate file from upstream, the packager SHOULD query upstream to include it.
[+]SHOULD: The reviewer should test that the package functions as described.
Installed the package. wrote and ran a program that imports the module Control.Archive.Zip. Works as expected.
[+]SHOULD: If scriptlets are used, those scriptlets must be sane.

cabal2spec-diff is OK.

APPROVED.

Comment 12 Jens Petersen 2010-12-28 08:50:17 UTC
Thank you for the review. :)

New Package SCM Request
=======================
Package Name: ghc-zip-archive
Short Description: Haskell zip-archive library
Owners: petersen
Branches: f14 f13
InitialCC: haskell-sig

Comment 13 Kevin Fenzi 2011-01-02 20:12:57 UTC
Git done (by process-git-requests).

Comment 14 Jens Petersen 2011-01-05 02:14:04 UTC
Packages built for f15, f14 and f13.

Comment 15 Fedora Update System 2011-01-05 02:15:05 UTC
ghc-zip-archive-0.1.1.6-4.fc13 has been submitted as an update for Fedora 13.
https://admin.fedoraproject.org/updates/ghc-zip-archive-0.1.1.6-4.fc13

Comment 16 Fedora Update System 2011-01-05 02:15:13 UTC
ghc-zip-archive-0.1.1.6-4.fc14 has been submitted as an update for Fedora 14.
https://admin.fedoraproject.org/updates/ghc-zip-archive-0.1.1.6-4.fc14

Comment 17 Fedora Update System 2011-01-05 21:19:35 UTC
ghc-zip-archive-0.1.1.6-4.fc13 has been pushed to the Fedora 13 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update ghc-zip-archive'.  You can provide feedback for this update here: https://admin.fedoraproject.org/updates/ghc-zip-archive-0.1.1.6-4.fc13

Comment 18 Fedora Update System 2011-01-13 23:36:04 UTC
ghc-zip-archive-0.1.1.6-4.fc13 has been pushed to the Fedora 13 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 19 Fedora Update System 2011-01-13 23:37:25 UTC
ghc-zip-archive-0.1.1.6-4.fc14 has been pushed to the Fedora 14 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 20 Jens Petersen 2012-06-20 08:59:39 UTC
Package Change Request
======================
Package Name: ghc-zip-archive
New Branches: el6
Owners: petersen
InitialCC: haskell-sig

Comment 21 Gwyn Ciesla 2012-06-20 12:05:21 UTC
Git done (by process-git-requests).