Bug 678634 - Review Request: Saaghar - A Cross-Platform Persian Poetry Software
Summary: Review Request: Saaghar - A Cross-Platform Persian Poetry Software
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Jiri Popelka
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-02-18 17:22 UTC by Hedayat Vatankhah
Modified: 2011-12-02 21:29 UTC (History)
4 users (show)

Fixed In Version: Saaghar-0.9.69-1.fc15
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2011-12-02 21:27:44 UTC
Type: ---
jpopelka: fedora-review+
gwync: fedora-cvs+


Attachments (Terms of Use)

Description Hedayat Vatankhah 2011-02-18 17:22:08 UTC
Spec URL: http://hedayat.fedorapeople.org/reviews/Saaghar/Saaghar.spec
SRPM URL: http://hedayat.fedorapeople.org/reviews/Saaghar/Saaghar-0.7.2-1.1051.fc14.src.rpm

Description: 
Saaghar is a cross-platform Persian poetry software. It uses 
http://ganjoor.net database. It has lots of features:
* Tabbed UI
* Tabbed and dock-able search widgets
* Print and Print Preview
* Export, It supports exporting to "PDF", "HTML", "TeX", "CSV" and "TXT"
* Copy and Multi-selection
* Customisable interface

Koji Build: http://koji.fedoraproject.org/koji/taskinfo?taskID=2849523

Comment 1 Raghu Udiyar 2011-03-13 20:21:16 UTC
Hello Hedayat,

Few things to note :

- Consider using lower case for the spec and package name :

http://fedoraproject.org/wiki/Packaging:NamingGuidelines#Case_Sensitivity

- BuildRoot and %clean are not required any more :

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

- Add some description for the patches - are they Fedora specific? Can the patches be integrated into upstream? See :

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

- Use desktop-file-validate :
http://fedoraproject.org/wiki/Packaging:Guidelines#desktop-file-install_usage

- Looks like a typo in the release field :

Release:        1.1051%{?dist}

- You can omit the %dir in the files section :

%dir %{_datadir}/saaghar


HTH

Comment 2 Hedayat Vatankhah 2011-03-13 23:09:27 UTC
(In reply to comment #1)
> Hello Hedayat,
Hi! Thanks a lot for reviewing this package :)

> 
> Few things to note :
> 
> - Consider using lower case for the spec and package name :
> 
> http://fedoraproject.org/wiki/Packaging:NamingGuidelines#Case_Sensitivity
When I was selecting the name I checked various placing in the code and the project and I conclude that upstream prefers Saaghar to saaghar, so I decided to go with the former (e.g. the archive file name and the name of Debian packages generated by upstream). 


> 
> - BuildRoot and %clean are not required any more :
> 
> http://fedoraproject.org/wiki/Packaging:Guidelines#BuildRoot_tag
OK, removed.


> 
> - Add some description for the patches - are they Fedora specific? Can the
> patches be integrated into upstream? See :
> 
> http://fedoraproject.org/wiki/Packaging:Guidelines#All_patches_should_have_an_upstream_bug_link_or_comment
> 
Oops, sorry for forgetting that. Added.


> - Use desktop-file-validate :
> http://fedoraproject.org/wiki/Packaging:Guidelines#desktop-file-install_usage Added (was a little misinterpretation :P).

> 
> - Looks like a typo in the release field :
> 
> Release:        1.1051%{?dist}
Nope. A little description added to the first patch. This is in fact a minor version used by upstream for the version with Saaghar-upstream_update.patch patch applied (the version is directly extracted from a version macro in source files).

> 
> - You can omit the %dir in the files section :
> 
> %dir %{_datadir}/saaghar
I don't want to add the whole directory to the main package. There is a DB inside %{_datadir}/saaghar which is included in Saaghar-data sub-package. But I wanted the main package to own the directory.

> 
> 
> HTH

Thanks again. 

Updated SRPM and SPEC files are here:
SPEC: http://hedayat.fedorapeople.org/reviews/Saaghar/0.7.2-2/Saaghar.spec
SRPM: http://hedayat.fedorapeople.org/reviews/Saaghar/0.7.2-2/Saaghar-0.7.2-2.1051.fc14.src.rpm

Comment 5 Hedayat Vatankhah 2011-11-20 16:34:24 UTC
Updated to the latest release 0.9.69 with some cleanups:
SPEC: http://hedayat.fedorapeople.org/reviews/Saaghar/0.9.69-1/Saaghar.spec
SRPM: http://hedayat.fedorapeople.org/reviews/Saaghar/0.9.69-1/Saaghar-0.9.69-1.fc16.src.rpm

Comment 6 Jiri Popelka 2011-11-21 17:05:38 UTC
[OK] MUST: rpmlint must be run on the source rpm and all binary rpms the build produces.
Saaghar.x86_64: E: incorrect-fsf-address /usr/share/doc/Saaghar-0.9.69/README
Saaghar.x86_64: W: no-manual-page-for-binary saaghar                                                                                                                              
Both this problems are task for upstream.

[OK] MUST: The package must be named according to the Package Naming Guidelines.
[OK] MUST: The spec file name must match the base package %{name}, in the format %{name}.spec unless your package has an exemption.
[OK] MUST: The package must meet the Packaging Guidelines.
Consider removing %defattr(-,root,root,-)
https://fedoraproject.org/wiki/Packaging/Guidelines#File_Permissions

Wouldn't it be better to use URL http://sourceforge.net/projects/saaghar/ ?
Because I'm not able to switch http://pojh.iblogger.org/saaghar/
to english (there's probably not such an option) and the sourceforge page points to it anyway.

[OK] MUST: The package must be licensed with a Fedora approved license and meet the Licensing Guidelines .
[OK] MUST: The License field in the package spec file must match the actual license.
[OK] 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.
a72340b04c782f7f39ba12afe5688306  Saaghar-0.9.69.tar.gz
cedf5c41a75a122f94a14f78611f336c  Saaghar-data-59.90.07.xz

[OK] MUST: The package MUST successfully compile and build into binary rpms on at least one primary architecture.
[NA] 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.
[OK] MUST: All build dependencies must be listed in BuildRequires, except for any that are listed in the exceptions section of the Packaging Guidelines.
qt4-devel works ok, however correct package name is qt-devel

[NA] MUST: The spec file MUST handle locales properly.
[NA] MUST: Every binary RPM package (or subpackage) which stores shared library files (not just symlinks) in any of the dynamic linker's default paths, must call ldconfig in %post and %postun.
[NA] MUST: Packages must NOT bundle copies of system libraries.
[NA] MUST: If the package is designed to be relocatable, the packager must state this fact in the request for review, along with the rationalization for relocation of that specific package.
[OK] 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.
[OK] MUST: A Fedora package must not list a file more than once in the spec file's %files listings.
[OK] MUST: Permissions on files must be set properly.
[OK] MUST: Each package must consistently use macros.
[OK] MUST: The package must contain code, or permissable content.
[NA] MUST: Large documentation files must go in a -doc subpackage.
[OK] MUST: If a package includes something as %doc, it must not affect the runtime of the application.
[NA] 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.
[NA] MUST: In the vast majority of cases, devel packages must require the base package using a fully versioned dependency.
[NA] MUST: Packages must NOT contain any .la libtool archives, these must be removed in the spec if they are built.
[OK] 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.
desktop-file-validate is OK in this case
[OK] MUST: Packages must not own files or directories already owned by other packages.
[OK] MUST: All filenames in rpm packages must be valid UTF-8.

[OK] SHOULD: The reviewer should test that the package builds in mock.
[OK] SHOULD: The reviewer should test that the package functions as described. A package should not segfault instead of running, for example.
[-] SHOULD: Usually, subpackages other than devel should require the base package using a fully versioned dependency.
I think Saaghar-data should require base package, but it's probably not a problem as it is (i.e. when base package requires -data subpackage).

[-] SHOULD: your package should contain man pages for binaries/scripts. If it doesn't, work with upstream to add them where they make sense.
See the rpmlint warning above.

Comment 7 Jiri Popelka 2011-11-21 17:09:13 UTC
As all the notes in the above comment are of 'nice-to-have' kind this package can be considered Approved.

Comment 8 Hedayat Vatankhah 2011-11-21 17:26:00 UTC
Thanks for the (very tidy) review (and sorry for my not-that-good review). 

* Saaghar.x86_64: E: incorrect-fsf-address /usr/share/doc/Saaghar-0.9.69/README
Saaghar.x86_64: W: no-manual-page-for-binary saaghar                            
Both this problems are task for upstream.
- I'll contact upstream about them. 


* Consider removing %defattr(-,root,root,-)
- OK

* Wouldn't it be better to use URL http://sourceforge.net/projects/saaghar/ ?
Because I'm not able to switch http://pojh.iblogger.org/saaghar/
to english (there's probably not such an option) and the sourceforge page
points to it anyway.
- You're right. It is a non-English website. I'll update the URL as you suggested.

* qt4-devel works ok, however correct package name is qt-devel
- OK, will be fixed.

* I think Saaghar-data should require base package, but it's probably not a
problem as it is (i.e. when base package requires -data subpackage)
- hmmm... the base package must require the subpackage in this case, but I'm not sure if it is also needed in the other way around. But I'll consider your suggestion and might add that dependency too.

Thanks again.

Comment 9 Hedayat Vatankhah 2011-11-21 17:37:54 UTC
New Package SCM Request
=======================
Package Name: Saaghar
Short Description: A Cross-Platform Persian Poetry Software
Owners: hedayat
Branches: f15 f16
InitialCC:

Comment 10 Gwyn Ciesla 2011-11-21 18:05:24 UTC
Git done (by process-git-requests).

Comment 11 Fedora Update System 2011-11-21 20:06:57 UTC
Saaghar-0.9.69-1.fc16 has been submitted as an update for Fedora 16.
https://admin.fedoraproject.org/updates/Saaghar-0.9.69-1.fc16

Comment 12 Fedora Update System 2011-11-21 20:07:05 UTC
Saaghar-0.9.69-1.fc15 has been submitted as an update for Fedora 15.
https://admin.fedoraproject.org/updates/Saaghar-0.9.69-1.fc15

Comment 13 Fedora Update System 2011-11-23 00:51:21 UTC
Saaghar-0.9.69-1.fc16 has been pushed to the Fedora 16 testing repository.

Comment 14 Fedora Update System 2011-12-02 21:27:44 UTC
Saaghar-0.9.69-1.fc16 has been pushed to the Fedora 16 stable repository.

Comment 15 Fedora Update System 2011-12-02 21:29:02 UTC
Saaghar-0.9.69-1.fc15 has been pushed to the Fedora 15 stable repository.


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