[Bug 752829] Review Request: glue-validator - A validation framework for GLUE 2.0 information

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

 



Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug.


https://bugzilla.redhat.com/show_bug.cgi?id=752829

--- Comment #15 from Steve Traylen <steve.traylen@xxxxxxx> 2011-12-04 12:08:04 EST ---
Please use the redhat koji instance for reviews. There is no guarantee that
this koji has the "correct" configuration. You have already all the permissions
you need to do so.  Also that koji is not public it appears.

Build targets: dist-5E-epel , dist-6E-epel , dist-f16 and dist-rawhide are I
guess your targets.

As I mentioned in comment #2 you should now remove the BuildFails flag.


Review:


 +:ok, =:needs attention, -:needs fixing

MUST Items:
[=] MUST: rpmlint must be run on every package.
$ rpmlint SPECS/glue-validator.spec
RPMS/noarch/glue-validator-1.0.0-2.el6.noarch.rpm
SRPMS/glue-validator-1.0.0-2.el6.src.rpm 
SPECS/glue-validator.spec: W: no-cleaning-of-buildroot %install

If you plan to target EPEL5 as well this must change.

SPECS/glue-validator.spec: W: invalid-url Source0: glue-validator-1.0.0.tar.gz
Expected since a build from SVN.

glue-validator.noarch: W: spelling-error Summary(en_US) Valiation ->
Valuation, Validation, Variation

Valiation is clearly a typo.

glue-validator.noarch: W: incoherent-version-in-changelog 1.0.0-1
['1.0.0-2.el6', '1.0.0-2']

The changelog does not match the version and release.

glue-validator.noarch: W: no-documentation
Validation, Variation
Valuation, Validation, Variation

[+] MUST: The package must be named according to the Package Naming Guidelines.

[+] MUST: The spec file name must match the base package %{name}
list and more]
[+] MUST: The package must be licensed with a Fedora approved license and meet
the Licensing Guidelines.
ASL 2.0
[+] MUST: The License field in the package spec file must match the actual
license.
License specified in setup.py.
[+] 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.
No license file available.
[=] MUST: The spec file must be written in American English.
See typo  in rpmlint.
[+] 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.

svn export http://svnweb.cern.ch/guest/gridinfo/glue-validator/tags/R_1_0_0 \
   glue-validator-1.0.0
and comparing that to the tar ball in the .spec file.

$ diff -r --brief glue-validator-1.0.0 ../SPECS/glue-validator-1.0.0
Only in ../SPECS/glue-validator-1.0.0/bin: glue-schema-validator
Only in ../SPECS/glue-validator-1.0.0: glue-validator.spec
Only in ../SPECS/glue-validator-1.0.0/lib: glue1
Only in ../SPECS/glue-validator-1.0.0/lib/glue2: tests
Only in ../SPECS/glue-validator-1.0.0/lib: validator
Only in ../SPECS/glue-validator-1.0.0: Makefile
Only in ../SPECS/glue-validator-1.0.0: MANIFEST.in
Only in glue-validator-1.0.0: PKG-INFO
Only in ../SPECS/glue-validator-1.0.0: tests


[+] MUST: The package must successfully compile and build into binary rpms on
at least one supported architecture.
[+] 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
[+] MUST: The spec file MUST handle locales properly. This is done by using the
%find_lang macro.
No locales presnet.
[+] 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.
No shared libs.
[=] MUST: If the package is designed to be relocatable, the packager must state
this fact in the request for review

You have a Prefix but I can't believe you meant this package to be relocatable?
If you do intend relocation then provide a reason but it has to be very strong.
http://fedoraproject.org/wiki/Packaging:Guidelines#Relocatable_packages

[+] MUST: A package must own all directories that it creates. If it does not
create a directory that it uses, then it should require a package which does
create that directory.
[+] MUST: A package must not contain any duplicate files in the %files listing.
[+] MUST: Permissions on files must be set properly. Executables should be set
with executable permissions, for example. Every %files section must include a
%defattr(...) line.
[+] MUST: Each package must have a %clean section, which contains rm -rf
%{buildroot} (or $RPM_BUILD_ROOT).
[=] MUST: Each package must consistently use macros, as described in the macros
section of Packaging Guidelines.

You use 'python' on one line but '%{__python}' else where. Be consistant,
there may be others.

[+] MUST: The package must contain code, or permissible content. This is
described in detail in the code vs. content section of Packaging Guidelines.
[+] MUST: Large documentation files should go in a doc subpackage.
No documentation :-)
[+] MUST: If a package includes something as %doc, it must not affect the
runtime of the application.
[+] MUST: Packages must not own files or directories already owned by other
packages.
[=] MUST: At the beginning of %install, each package MUST run rm -rf
%{buildroot} (or $RPM_BUILD_ROOT).
Needed for EPEL5 anyway.
[+] 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.
Please request upstream add one.

[+] SHOULD: The reviewer should test that the package builds in mock.
supported architectures.

Summary of things wrong.
(1)
A clean of the buildroot is required if you plan epel5?
See 
rpmlint -I no-cleaning-of-buildroot

(2)
Valiation is a typo.

(3)
The changelog does not match the version and release
See: http://fedoraproject.org/wiki/Packaging:Guidelines#Changelogs
Please actually update changelogs during this process. These 
"releases" count to someextent and the history should extend
back to this process.

(4)
Source does not match upstream, see above.

(5)
Be consistant with macros, see above.


Comments:
(1)
Prefix: %{_prefix}  must not be present unless you really desire relocation,
I doubt it.
(2)
Url: http://cern.ch/glue  is better as URL as it's an ancronymn
(3)
BuildArchitectures: noarch is normally BuildArch: noarch. Apart from
anything else this does not syntax correctly in vim... It does seem to work
thouhg.
(4) 
Convention is that %globals are set at the top of the .spec file to 
ensure they really are global, i.e the sitelib and sitearch ones.
(5)
Please at least request that upstream add a license file.

(6) 
You set both python_sitelib and python_sitearch but one is redundant.

(7)
The %description is very terse. Please expand on it a bit, what is glue?

(8)
It's strange I think to hard code a schema version in the summary, 
in particular 2.0. Better to say in the description only that 'glue-validate'
will currently validate the 2.0 schema and leave the summary as non-schema
specific.

These comments indicate more that you have not learnt the guidelines more
than you have. Please at least try and correct rpmlint errors at the very
least and if they are not fixed justify why they are not fixed in the review
submission. I normally ignore such packages with a comment 
'rpmlint fails like this, please fix or justify the failiures.'

-- 
Configure bugmail: https://bugzilla.redhat.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
_______________________________________________
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]