Bug 241656 - Review Request: ocaml-csv - OCaml library for reading and writing CSV files
Summary: Review Request: ocaml-csv - OCaml library for reading and writing CSV files
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
Target Milestone: ---
Assignee: Daniel Berrangé
QA Contact: Fedora Package Reviews List
Depends On: 240655
Blocks: 251068
TreeView+ depends on / blocked
Reported: 2007-05-29 12:35 UTC by Richard W.M. Jones
Modified: 2007-11-30 22:12 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Last Closed: 2007-08-24 16:47:27 UTC
Type: ---
berrange: fedora-review+
kevin: fedora-cvs+

Attachments (Terms of Use)

Description Richard W.M. Jones 2007-05-29 12:35:01 UTC
Spec URL: http://annexia.org/tmp/ocaml-csv.spec
SRPM URL: http://annexia.org/tmp/ocaml-csv-1.1.6-1.src.rpm
Description: This is an OCaml library for reading and writing CSV (comma-separated values) files.

Comment 1 Richard W.M. Jones 2007-06-11 19:52:52 UTC
Spec URL: http://annexia.org/tmp/ocaml/ocaml-csv.spec
SRPM URL: http://annexia.org/tmp/ocaml/ocaml-csv-1.1.6-2.src.rpm

Updated to latest OCaml packaging guidelines.
Built against OCaml 3.10.
Tested against bytecode-only architectures.

Comment 2 Jason Tibbitts 2007-07-29 17:47:09 UTC
This fails to build for me due to a missing dependency on ocaml-extlib-devel.

Comment 3 Richard W.M. Jones 2007-08-01 10:48:14 UTC
Added dependency on bug 240655.

Comment 4 Daniel Berrangé 2007-08-24 00:48:33 UTC
      - MUST: rpmlint must be run on every package. [WARNING]

$ rpmlint ocaml-csv-1.1.6-2.src.rpm 
W: ocaml-csv invalid-license LGPL

Needs fixing

$ rpmlint ocaml-csv-1.1.6-2.fc8.x86_64.rpm 
W: ocaml-csv devel-file-in-non-devel-package /usr/lib64/ocaml/csv/csv.cmi

Bogus warning

W: ocaml-csv invalid-license LGPL

Needs fixing

E: ocaml-csv only-non-binary-in-usr-lib

Bogus Error for OCaml packages

$ rpmlint ocaml-csv-devel-1.1.6-2.fc8.x86_64.rpm 
W: ocaml-csv-devel invalid-license LGPL

Needs fixing

      - MUST: The package must be named according to the Package Naming
Guidelines. [OK]
      - MUST: The spec file name must match the base package %{name} [OK]
      - MUST: The package must meet the Packaging Guidelines. [OK]
      - MUST: The package must be licensed with a Fedora approved license [OK]
      - MUST: The License field in the package spec file must match the actual
license. [WARNING: tar.gz contains no license info. Website says LGPL + OCaml
Linking Exception & links to LGPLv3. Please clarify specfile & upstream]
      - 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. [OK]
      - MUST: The spec file must be written in American English. [OK]
      - MUST: The spec file for the package MUST be legible. [OK]
      - MUST: The sources used to build the package must match the upstream
source, as provided in the spec URL.  [OK]
      - MUST: The package must successfully compile and build into binary rpms
on at least one supported architecture. [OK x86_64 rawhide]
      - 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. [N/A]
      - MUST: All build dependencies must be listed in BuildRequires [OK]
      - MUST: The spec file MUST handle locales properly. [N/A]
      - MUST: Every binary RPM package which stores shared library files (not
just symlinks) in any of the dynamic linker's default paths, must call ldconfig
in %post and %postun. [N/A]
      - MUST: If the package is designed to be relocatable, the packager must
state this fact in the request for review. [N/A]
      - MUST: A package must own all directories that it creates. [OK]
      - MUST: A package must not contain any duplicate files in the %files
listing. [OK]
      - MUST: Permissions on files must be set properly. [OK]
      - MUST: Each package must have a %clean section [OK]
      - MUST: Each package must consistently use macros [OK]
      - MUST: The package must contain code, or permissable content. [OK]
      - MUST: Large documentation files should go in a -doc subpackage.  [N/A]
      - MUST: If a package includes something as %doc, it must not affect the
runtime of the application. [N/A]
      - MUST: Header files must be in a -devel package. [OK]
      - MUST: Static libraries must be in a -static package. [N/A]
      - MUST: Packages containing pkgconfig(.pc) files must 'Requires:
pkgconfig' (for directory ownership and usability). [N/A]
      - 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. [N/A]
      - MUST: In the vast majority of cases, devel packages must require the
base package using a fully versioned dependency: Requires: %{name} =
%{version}-%{release} [OK] 
      - MUST: Packages must NOT contain any .la libtool archives [N/A]
      - MUST: Packages containing GUI applications must include a
%{name}.desktop file [N/A]
      - MUST: Packages must not own files or directories already owned by other
packages. [OK]
      - MUST: At the beginning of %install, each package MUST run rm -rf
%{buildroot} (or $RPM_BUILD_ROOT). See Prepping BuildRoot For %install for
details. [OK]
      - MUST: All filenames in rpm packages must be valid UTF-8. [OK]

OK, all supplementary guidelines for OCaml at:


Will approve pending clarification of LGPL version, and addition of OCaml Linker
Exception note to License.

Comment 5 Daniel Berrangé 2007-08-24 01:02:32 UTC
Correction: needs to have an ExcludeArch: ppc64, since the ocaml base package
has an ExcludeArch.

Comment 6 Richard W.M. Jones 2007-08-24 12:07:37 UTC
Updated version:

Spec URL: http://annexia.org/tmp/ocaml/ocaml-csv.spec
SRPM URL: http://annexia.org/tmp/ocaml/ocaml-csv-1.1.6-3.src.rpm

* Fri Aug 24 2007 Richard W.M. Jones <rjones@redhat.com> - 1.1.6-3
- License clarified to LGPLv2+ (and fixed/clarified upstream).
- Added ExcludeArch ppc64

A note on the "OCaml linking exception": This is an additional
permission/freedom given to users of OCaml libraries which allows users to
disregard section 6 of the LGPL (the one where a proprietary app has to ship a
relinkable binary), as this requirement makes no sense for OCaml libraries
because of the way they are linked.

Since it's an additional freedom given to users of the library, I didn't include
it in the License field.  Library users may if they want confine themselves to
the additional terms of LGPLv2 section 6.


Comment 7 Daniel Berrangé 2007-08-24 13:35:02 UTC
All items addressed -> APPROVED

Comment 8 Richard W.M. Jones 2007-08-24 13:49:16 UTC
New Package CVS Request
Package Name: ocaml-csv
Short Description: OCaml library for reading and writing CSV files
Owners: rjones@redhat.com
Branches: F-7
InitialCC: rjones@redhat.com
Cvsextras Commits: yes

Comment 9 Kevin Fenzi 2007-08-24 15:29:59 UTC
moving forward please use your Fedora Account System name in requests, not email. 

cvs done.

Comment 10 Richard W.M. Jones 2007-11-07 15:42:54 UTC
Package Change Request
Package Name: ocaml-csv
New Branches: EL-5

Comment 11 Kevin Fenzi 2007-11-07 19:54:54 UTC
cvs done.

Note You need to log in before you can comment on or make changes to this bug.