Bug 453781 - Review Request: sat4j - A library of SAT solvers written in Java
Summary: Review Request: sat4j - A library of SAT solvers written in Java
Keywords:
Status: CLOSED NEXTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Deepak Bhole
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: 452875
TreeView+ depends on / blocked
 
Reported: 2008-07-02 14:18 UTC by Andrew Overholt
Modified: 2008-08-11 17:22 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2008-08-11 17:22:41 UTC
Type: ---
Embargoed:
dbhole: fedora-review+
kevin: fedora-cvs+


Attachments (Terms of Use)

Description Andrew Overholt 2008-07-02 14:18:54 UTC
Spec URL: http://overholt.fedorapeople.org/sat4j.spec
SRPM URL: http://overholt.fedorapeople.org/sat4j-2.0.0-1.fc9.src.rpm
Description: The aim of the SAT4J library is to provide an efficient library of SAT
solvers in Java. The SAT4J library targets first users of SAT "black
boxes", those willing to embed SAT technologies into their application
without worrying about the details.

Comment 1 Andrew Overholt 2008-07-14 18:15:35 UTC
I was missing a BR on eclipse-pde.  Added and updated at:

http://overholt.fedorapeople.org/sat4j.spec
http://overholt.fedorapeople.org/sat4j-2.0.0-2.fc9.src.rpm

Comment 2 Andrew Overholt 2008-07-14 18:21:58 UTC
I removed a Class-Path in MANIFEST.MF:

http://overholt.fedorapeople.org/sat4j.spec
http://overholt.fedorapeople.org/sat4j-2.0.0-3.fc9.src.rpm

Comment 3 Deepak Bhole 2008-07-14 18:39:18 UTC
Items with issues are prefixed with an "X:"

MUST:

* package is named appropriately
 - match upstream tarball or project name
   OK

 - try to match previous incarnations in other distributions/packagers for
consistency
   OK

 - specfile should be %{name}.spec
   OK

 - non-numeric characters should only be used in Release (ie. cvs or
   something)
   OK

 - for non-numerics (pre-release, CVS snapshots, etc.), see
   http://fedoraproject.org/wiki/Packaging/NamingGuidelines#PackageRelease
   N/A

 - if case sensitivity is requested by upstream or you feel it should be
   not just lowercase, do so; otherwise, use all lower case for the name
   N/A

 - don't use non-Latin, non-numeric, non-"-,.,_,+" characters in the name
   OK

http://fedoraproject.org/wiki/Packaging/Guidelines

* is it legal for Fedora to distribute this?
 - OSI-approved
 - not a kernel module
 - not shareware
 - is it covered by patents?
 - it *probably* shouldn't be an emulator
 - no binary firmware
   OK

* license field matches the actual license.
   OK

* no pre-built binaries (except for bootstrapping)
   X: jmock jar exists in both SOURCE files, and the spec file doesn't try to
remove it. Since jmock is used only for testing, this is probably okay. But
please keep the file only if the tests actually use it..

* license is open source-compatible.
 - use acronyms for licences where common
   OK

* specfile name matches %{name}
   OK

* verify source and patches (md5sum matches upstream, know what the patches do)
 - if upstream doesn't release source drops, put *clear* instructions on
   how to generate the the source drop; ie. 
  # svn export blah/tag blah
  # tar cjf blah-version-src.tar.bz2 blah
   N/A

* skim the summary and description for typos, etc.
   OK

* correct buildroot
 - MUST be below %{_tmppath}/ and MUST contain at least %{name}, %{version} and
   %{release}
 - should be (in descending order of preference:
    %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX)
    %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
    %{_tmppath}/%{name}-%{version}-%{release}-root
   OK

* if %{?dist} is used, it should be in that form (note the ? and %
locations)
   OK

* license text included in package and marked with %doc
   OK (no license text in tarballs)

* keep old changelog entries; use judgement when removing (too old?
useless?)
   OK

* packages meets FHS (http://www.pathname.com/fhs/)
   OK

* rpmlint on <this package>.srpm gives no output
 - justify warnings if you think they shouldn't be there
   OK (one warning re: no-documentation, acceptable in this case)

* changelog should be in one of these formats:

  * Fri Jun 23 2006 Jesse Keating <jkeating> - 0.6-4
  - And fix the link syntax.

  * Fri Jun 23 2006 Jesse Keating <jkeating> 0.6-4
  - And fix the link syntax.

  * Fri Jun 23 2006 Jesse Keating <jkeating>
  - 0.6-4
  - And fix the link syntax.
   OK

* Packager tag should not be used
   OK

* Vendor tag should not be used
   OK

* Distribution tag should not be used
   OK

* use License and not Copyright 
   OK

* Summary tag should not end in a period
   OK

* if possible, replace PreReq with Requires(pre) and/or Requires(post)
   N/A

* specfile is legible
 - this is largely subjective; use your judgement
   OK

* package successfully compiles and builds on at least x86
   OK

* BuildRequires are proper
   OK

* summary should be a short and concise description of the package
   OK

* description expands upon summary (don't include installation
instructions)
   OK

* make sure lines are <= 80 characters
   OK

* specfile written in American English
   OK

* make a -doc sub-package if necessary
 - see
  
http://fedoraproject.org/wiki/Packaging/Guidelines#head-9bbfa57478f0460c6160947a6bf795249488182b
   N/A

* packages including libraries should exclude static libraries if possible
   N/A

* don't use rpath
   N/A

* config files should usually be marked with %config(noreplace)
   N/A

* GUI apps should contain .desktop files
   N/A

* should the package contain a -devel sub-package?
   OK (no)

* use macros appropriately and consistently
 - ie. %{buildroot} and %{optflags} vs. $RPM_BUILD_ROOT and $RPM_OPT_FLAGS
   OK

* don't use %makeinstall
   OK

* install section must begin with rm -rf $RPM_BUILD_ROOT or %{buildroot}
   OK

* locale data handling correct (find_lang)
 - if translations included, add BR: gettext and use %find_lang %{name} at the
   end of %install
   N/A

* consider using cp -p to preserve timestamps
   OK

* split Requires(pre,post) into two separate lines
   N/A

* package should probably not be relocatable
   N/A

* package contains code
 - see http://fedoraproject.org/wiki/Packaging/Guidelines#CodeVsContent
 - in general, there should be no offensive content
   N/A

* package should own all directories and files
   OK

* there should be no %files duplicates
   OK

* file permissions should be okay; %defattrs should be present
   OK

* %clean should be present
   OK

* %doc files should not affect runtime
   N/A

* if it is a web app, it should be in /usr/share/%{name} and *not* /var/www
   N/A

* no files can be under /srv
   OK

* verify the final provides and requires of the binary RPMs
   N/A

* run rpmlint on the binary RPMs
   OK (see above for warning re: no documentation, waived off)

SHOULD:
* package should include license text in the package and mark it with %doc
   N/A

* package should build on i386
   OK

Additional notes:
1. Consider adding descriptions to patches, if possible
2. There are significant test failures during build.. is this expected?

Comment 4 Andrew Overholt 2008-07-14 18:48:12 UTC
I've added descriptions for the patches.

I've just dropped jmock and I'm now not running the tests during the build
(which do have expected failures, yes).

http://overholt.fedorapeople.org/sat4j.spec
http://overholt.fedorapeople.org/sat4j-2.0.0-4.fc9.src.rpm

Comment 5 Deepak Bhole 2008-07-14 18:50:57 UTC
Looks good. Patches now have descriptions, jmock jar is removed, and tests are
not run.

Setting fedora-review+

Comment 6 Andrew Overholt 2008-07-14 19:34:01 UTC
New Package CVS Request
=======================
Package Name: sat4j
Short Description: A library of SAT solvers written in Java
Owners: overholt
Branches:
InitialCC:
Cvsextras Commits:

Comment 7 Andrew Overholt 2008-07-14 19:34:38 UTC
(Deepak:  I was told that reviews need to remain assigned to the reviewer even
after the review is finished)

Comment 8 Kevin Fenzi 2008-07-15 15:47:45 UTC
cvs done.


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