Bug 510969 - Review Request: valide - New Package IDE for vala
Review Request: valide - New Package IDE for vala
Status: CLOSED CURRENTRELEASE
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
11
All Linux
low Severity medium
: ---
: ---
Assigned To: Susi Lehtola
Fedora Extras Quality Assurance
:
: val(a)ide (view as bug list)
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2009-07-12 18:37 EDT by MERCIER Jonathan
Modified: 2009-08-07 12:43 EDT (History)
5 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2009-08-07 12:43:13 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
susi.lehtola: fedora‑review+
tibbs: fedora‑cvs+


Attachments (Terms of Use)
SPEC file (5.37 KB, application/octet-stream)
2009-07-12 18:37 EDT, MERCIER Jonathan
no flags Details
SRC.RPM (892.54 KB, application/x-rpm)
2009-07-12 18:38 EDT, MERCIER Jonathan
no flags Details

  None (edit)
Description MERCIER Jonathan 2009-07-12 18:37:07 EDT
Created attachment 351409 [details]
SPEC file

Val(a)IDE is an Intergrate Developpement Environnement for
the Vala programming language.

RPMLINT issue:
_____________________________________________________________________
$ rpmlint -i rpmbuild/RPMS/x86_64/valide-0.5.1-275svn.0.2.fc11.x86_64.rpm 
valide.x86_64: W: no-soname /usr/lib64/libvalide-0.0.so
valide.x86_64: E: zero-length /usr/share/valide/licenses/None
valide.x86_64: W: devel-file-in-non-devel-package /usr/include/valide-0.5/plugins/opened-documents/opened-documents.h
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.

valide.x86_64: W: devel-file-in-non-devel-package /usr/include/valide-0.5/plugins/todo/todo.h
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.

valide.x86_64: W: devel-file-in-non-devel-package /usr/include/valide-0.5/plugins/completion/completion.h
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.

valide.x86_64: W: devel-file-in-non-devel-package /usr/include/valide-0.5/libvalide/valide-0.0.h
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.

valide.x86_64: W: devel-file-in-non-devel-package /usr/include/valide-0.5/plugins/file-browser/file-browser.h
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.

valide.x86_64: W: devel-file-in-non-devel-package /usr/include/valide-0.5/plugins/symbol/symbol.h
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.

valide.x86_64: W: file-not-in-%lang /usr/share/locale/fr/LC_MESSAGES/valide.mo
valide.x86_64: E: invalid-desktopfile /usr/share/applications/valide.desktop
.desktop file is not valid, check with desktop-file-validate

1 packages and 0 specfiles checked; 2 errors, 8 warnings.


_____________________________________________________________________

$ rpmlint -i rpmbuild/RPMS/x86_64/valide-debuginfo-0.5.1-275svn.0.2.fc11.x86_64.rpm 
1 packages and 0 specfiles checked; 0 errors, 0 warnings.

_____________________________________________________________________

$ rpmlint -i rpmbuild/SRPMS/valide-0.5.1-275svn.0.2.fc11.src.rpm 
1 packages and 0 specfiles checked; 0 errors, 0 warnings.
Comment 1 MERCIER Jonathan 2009-07-12 18:38:21 EDT
Created attachment 351410 [details]
SRC.RPM
Comment 2 MERCIER Jonathan 2009-07-12 18:48:46 EDT
*** Bug 498106 has been marked as a duplicate of this bug. ***
Comment 3 Fabian Affolter 2009-07-12 18:50:46 EDT
I would like to suggest that you take a look at the Fedora Packaging Guidelines [1] if you have missed that till now.

[1] https://fedoraproject.org/wiki/Packaging:Guidelines
Comment 4 MERCIER Jonathan 2009-07-12 18:59:17 EDT
can you explain please ?
for devel file ?
this file is generated by waf in %build, i delete this file after build? put in %{include} ?
if you have an anwer i take it ;)
Comment 5 MERCIER Jonathan 2009-07-12 18:59:42 EDT
can you explain please ?
for devel file ?
this file is generated by waf in %build, i delete this file after build? put in %{include} ?
if you have an answer i take it ;)
Comment 6 Jason Tibbitts 2009-07-12 19:02:20 EDT
What was wrong with the existing ticket for this?

In addition to the guidelines above, I really suggest that you read http://fedoraproject.org/wiki/PackageMaintainers/Join

There are many procedures there which will make your package review happen faster, but you don't seem to have followed them.

Using bugzilla attachments for package reviews makes it rather difficult on the reviewer, and if you wish for your package to be reviewed it's best to make things as easy on the reviewers.  Do you not have some web space you can put the spec and src.rpm in?

It's nice that you posted the rpmlint output along with rpmlint's suggestions for resolving it, but what you really need to do is either actually resolve rpmlint's complaints, or justify why each complaint is acceptable.  The output by itself is not really useful.
Comment 7 MERCIER Jonathan 2009-07-12 19:16:10 EDT
ok, sorry
link for src.rpm
http://bioinformatiques.free.fr/SRPMS/valide-0.5.1-275svn.0.2.fc11.src.rpm

link for spec file:
http://bioinformatiques.free.fr/SPECS/valide.spec

i have contact upstream for all this warning

 E: invalid-desktopfile /usr/share/applications/valide.desktop
will be fixed quickly

for this:
 W: no-soname /usr/lib64/libvalide-0.0.so
 E: zero-length /usr/share/valide/licenses/None
I wait upstream, maybe for the first need use libtool


for W: devel-file-in-non-devel-package
i did'nt know what i need to do, this file are generated by waf (autotool) in build section. .h and .c generated file i remove it ?

Thanks for answer, sorry for previous inconvenience
Comment 8 Jason Tibbitts 2009-07-12 19:21:54 EDT
Generally we just don't package zero-length files like that, unless they serve some purpose.

What are the .h and .c files for?  Do they actually need to be installed with the package?  Are they somehow used at runtime?

Your release tag doesn't match the requirements for snapshot packages: http://fedoraproject.org/wiki/Packaging:NamingGuidelines#Snapshot_packages
Comment 9 MERCIER Jonathan 2009-07-12 19:30:48 EDT
@tibbs
_________________________________________________________________________
In addition to the guidelines above, I really suggest that you read
http://fedoraproject.org/wiki/PackageMaintainers/Join
_________________________________________________________________________

i have already get gponsored with spe package, earth-and-moon-package, gdesklets-citations, gdesklet-SlideShow

ok for naming rpm i will be fix tomorrow ( have read this guideline but too quickly)

is not 0.5.1-275svn.0.2 but is 0.5.1-0.2.275svn
Comment 10 MERCIER Jonathan 2009-07-12 19:32:14 EDT
sorry %{alphatag} beginning with the date in YYYYMMDD format
^^ i go to bed --> []
Comment 11 Peter Lemenkov 2009-07-13 04:56:27 EDT
You shouldn't strip libraries and executables or you'll get the empty debug package. Please, don't do it.
Comment 12 Susi Lehtola 2009-07-13 06:37:19 EDT
You have to fill your whole name in Bugzilla.
Comment 13 Susi Lehtola 2009-07-13 06:44:17 EDT
Have you even read the packaging guidelines..?

- Explicit requires are forbidden, at least those on gtk2, gtksourceview2, sqlite and unique are automatically picked up by rpm.
http://fedoraproject.org/wiki/Packaging/Guidelines

- You have a big bunch of unowned directories.
 %{_includedir}/valide-0.5/
 %{_libdir}/plugins/ (this doesn't look correct!)
 %{_datadir}/pixmaps/valide/
 %{_datadir}/vala/vapi/
 %{_datadir}/valide/
Also the %files section is way too long.

- Desktop file is not installed correctly.
http://fedoraproject.org/wiki/Packaging/Guidelines

- Locales are not handled properly.
 "Using %{_datadir}/locale/* is strictly forbidden"
http://fedoraproject.org/wiki/Packaging/ReviewGuidelines
Comment 14 MERCIER Jonathan 2009-07-13 18:40:20 EDT
ok some fix:
____________________________________________________________________
$ rpmlint -i rpmbuild/SRPMS/valide-0.5.1-278svn.0.3.fc11.src.rpm 
1 packages and 0 specfiles checked; 0 errors, 0 warnings.
____________________________________________________________________

$ rpmlint -i rpmbuild/RPMS/x86_64/valide-debuginfo-0.5.1-278svn.0.3.fc11.x86_64.rpm 
1 packages and 0 specfiles checked; 0 errors, 0 warnings.
____________________________________________________________________

$ rpmlint -i rpmbuild/RPMS/x86_64/valide-0.5.1-278svn.0.3.fc11.x86_64.rpm 
valide.x86_64: W: unstripped-binary-or-object /usr/lib64/valide/plugins/file-browser/libfile-browser.so
valide.x86_64: W: unstripped-binary-or-object /usr/lib64/valide/plugins/opened-documents/libopened-documents.so
valide.x86_64: W: unstripped-binary-or-object /usr/lib64/libvalide-0.0.so.0.5.1
valide.x86_64: W: unstripped-binary-or-object /usr/lib64/valide/plugins/symbol/libsymbol.so
valide.x86_64: W: unstripped-binary-or-object /usr/lib64/valide/plugins/completion/libcompletion.so
valide.x86_64: W: unstripped-binary-or-object /usr/lib64/valide/plugins/todo/libtodo.so
valide.x86_64: E: zero-length /usr/share/valide/licenses/None
1 packages and 0 specfiles checked; 1 errors, 6 warnings.
____________________________________________________________________
For the 5th warning i have remove strip command --->  #11 
For the last warning, the upstream say is normal intentionally empty file

Spec file:
http://bioinformatiques.free.fr/SPECS/valide.spec

SRC.RPM file:
http://bioinformatiques.free.fr/SRPMS/valide-0.5.1-278svn.0.3.fc11.src.rpm
Comment 15 Susi Lehtola 2009-07-14 04:57:56 EDT
A few comments:

- You still need to fill in your whole name in Bugzilla.

- I get the following output from rpmlint:

valide.x86_64: W: unstripped-binary-or-object /usr/lib64/valide/plugins/file-browser/libfile-browser.so
valide.x86_64: W: unstripped-binary-or-object /usr/lib64/valide/plugins/opened-documents/libopened-documents.so
valide.x86_64: W: unstripped-binary-or-object /usr/lib64/libvalide-0.0.so.0.5.1
valide.x86_64: W: unstripped-binary-or-object /usr/lib64/valide/plugins/symbol/libsymbol.so
valide.x86_64: W: unstripped-binary-or-object /usr/lib64/valide/plugins/completion/libcompletion.so
valide.x86_64: W: unstripped-binary-or-object /usr/lib64/valide/plugins/todo/libtodo.so
valide.x86_64: E: zero-length /usr/share/valide/licenses/None
4 packages and 0 specfiles checked; 1 errors, 6 warnings.

Check that you have the package "redhat-rpm-macros" installed on your system and add
 find %{buildroot}%{_libdir} -name *.so -exec chmod 755 {} \;
to the end of install to give the .so files executable permissions so that rpmbuild picks them up and strips them.

- Drop the explicit requires. rpm automatically picks up the requires on all of them. As an IDE this probably should Require: vala-devel though. The intltool requirement is OK.

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

- The remove command should most likely be in %preun, since in the %postun phase the package has already been removed and %{_bindir}/%{name} doesn't exist anymore. Also, you should probably add some logic so that the commands aren't run when the package is upgraded.

- The "%{_bindir}/%{name} --add" doesn't work. Upon installation of the RPM I get
Preparing...                ########################################### [100%]
   1:valide                 ########################################### [100%]
(valide:21124): Gtk-WARNING **: cannot open display: 
warning: %post(valide-0.5.1-278svn.0.3.fc11.x86_64) scriptlet failed, exit status 1

- For consistency use
 %{_bindir}/valide
in the files section instead of
 %{_bindir}/%{name}.

- Unowned directories issues. Change
 %dir %{_libdir}/%{name}
 %{_libdir}/%{name}/plugins/*
 %{_datadir}/pixmaps/valide/*
 %{_datadir}/vala/vapi/*
 %{_datadir}/valide/*
to
 %{_libdir}/%{name}/
 %{_datadir}/pixmaps/valide/
 %{_datadir}/vala/vapi/*
 %{_datadir}/valide/
in the main package and
 %{_includedir}/valide-0.5/*
to
 %{_includedir}/valide-0.5/
in the -devel package.

- You are placing icons in %{_datadir}/icons/hicolor/ so you must Require: hicolor-icon-theme. You must refresh the icon cache as instructed in
https://fedoraproject.org/wiki/Packaging/ScriptletSnippets#Icon_Cache

- Package doesn't build in mock due to missing BR desktop-file-utils.

- Add
 Requires: %{name} = %{version}-%{release}
to the -devel package. You don't have to duplicate the requires of the main package in the -devel package when there is a dependency chain.
http://fedoraproject.org/wiki/Packaging/Guidelines#Requiring_Base_Package

- You are mixing macros, which is forbidden.
http://fedoraproject.org/wiki/Packaging/Guidelines#Using_.25.7Bbuildroot.7D_and_.25.7Boptflags.7D_vs_.24RPM_BUILD_ROOT_and_.24RPM_OPT_FLAGS

- Change all references to "./waf" to "./waf -v" to get debugging output.

- Change
 ./waf configure --prefix=%{_prefix} --with-libdir=%{_libdir}
to
CFLAGS="%{optflags}" LINKFLAGS="%{optflags}" ./waf -v configure --prefix=%{_prefix} --with-libdir=%{_libdir}
in order to get the Fedora optimization flags into use.

- For consistency, change
 %defattr(-, root, root)
to
 %defattr(-,root,root,-)
in the -devel package.

- ldconfig is part of glibc, so I'd drop the
Requires(post):		/sbin/ldconfig
Requires(postun):	/sbin/ldconfig
Comment 16 Susi Lehtola 2009-07-14 05:21:02 EDT
The release tag is incorrect: instead of
 %{svn_revision}.0.3%{?dist}
it should be
 0.3.%{svn_revision}%{?dist}
http://fedoraproject.org/wiki/Packaging/NamingGuidelines#Pre-Release_packages
Comment 17 Pierre-YvesChibon 2009-07-14 07:08:56 EDT
(In reply to comment #12)
> You have to fill your whole name in Bugzilla.  

Where do you get that "have to" from ?
Comment 18 Susi Lehtola 2009-07-14 07:27:14 EDT
(In reply to comment #17)
> (In reply to comment #12)
> > You have to fill your whole name in Bugzilla.  
> 
> Where do you get that "have to" from ?  

It's not necessary for "normal" BZ users, but for packagers it's standard procedure since the bugzilla account is tightly coupled with the Fedora Account System.

At least you can think of it as courtesy to other people.
Comment 19 Susi Lehtola 2009-07-14 07:28:13 EDT
(In reply to comment #18)
> At least you can think of it as courtesy to other people.  

.. and I refuse to review any packages submitted/written by anonymous people.
Comment 20 Pierre-YvesChibon 2009-07-14 07:32:58 EDT
I understand you point of view and accept it, but I can see Jonathan's name of the page here and on the spec :)
Comment 21 Susi Lehtola 2009-07-14 07:34:58 EDT
(In reply to comment #20)
> I understand you point of view and accept it, but I can see Jonathan's name of
> the page here and on the spec :)  

It was already in the spec but he must have changed the name in bugzilla now...
Comment 22 MERCIER Jonathan 2009-07-14 07:42:58 EDT
This morining i have add in preference account my firts name but the last name exist since a long time
Comment 23 MERCIER Jonathan 2009-07-14 07:43:16 EDT
This morning i have add in preference account my first name but the last name exist since a long time
Comment 24 MERCIER Jonathan 2009-07-14 07:50:07 EDT
Spec file:
http://bioinformatiques.free.fr/SPECS/valide.spec

SRC.RPM file:
http://bioinformatiques.free.fr/SRPMS/valide-0.5.1-278svn.0.3.fc11.src.rpm 
____________________________________________________________________

$ rpmlint -i rpmbuild/SRPMS/valide-0.5.1-0.4.278svn.fc11.src.rpm 
1 packages and 0 specfiles checked; 0 errors, 0 warnings.
____________________________________________________________________
$ rpmlint -i rpmbuild/RPMS/x86_64/valide-*
valide.x86_64: E: devel-dependency vala-devel
Your package has a dependency on a devel package but it's not a devel package
itself.

valide.x86_64: E: zero-length /usr/share/valide/licenses/None
3 packages and 0 specfiles checked; 2 errors, 0 warnings.
____________________________________________________________________
Comment 25 MERCIER Jonathan 2009-07-14 08:21:01 EDT
E: zero-length /usr/share/valide/licenses/None --> Comment #14
|--->For the last warning, the upstream say is normal intentionally empty file

E: devel-dependency vala-devel

Your package has a dependency on a devel package but it's not a devel package-------> As an IDE this probably should Require: vala-devel though. The intltool requirement is OK. Comment # 15
Comment 26 Susi Lehtola 2009-07-14 08:30:20 EDT
- You didn't increment the release tag. Please increment the release tag whenever making changes to the spec file. (Except when the version tag is incremented the release tag falls back to 1.)

- Drop
 Requires:		vala		>= %{vala_version}
and put the version requirement in the Requires: vala-devel. (dependency on vala is automatically picked up, also vala-devel pulls it in.)

- Devel package doesn't have to
 Requires:	vala-devel		>= %{vala_version}
since this requirement is already in the main package. Drop it.

- The BuildRequires line is unnecessarily long. Please divide it in at least two separate lines.

- You should add comments to the %post and %postun sections. Now it's a bit unclear to the reader what is the purpose of the commands.

- For clarity of the spec file you could remove some of the empty lines within the sections, %build, %install, %post and %postun are a bit too sparse compared to their environment.
Comment 27 Susi Lehtola 2009-07-14 08:44:12 EDT
(In reply to comment #26)
> - You didn't increment the release tag. Please increment the release tag
> whenever making changes to the spec file. (Except when the version tag is
> incremented the release tag falls back to 1.)

Oh, that was just in the link you posted. No problem.
Comment 28 Susi Lehtola 2009-07-14 08:49:47 EDT
(In reply to comment #24)
> $ rpmlint -i rpmbuild/RPMS/x86_64/valide-*
> valide.x86_64: E: devel-dependency vala-devel
> Your package has a dependency on a devel package but it's not a devel package
> itself.

Yes, this is fine.

> valide.x86_64: E: zero-length /usr/share/valide/licenses/None

This can be ignored if it's supposed to be empty by design.
Comment 29 Susi Lehtola 2009-07-14 08:51:50 EDT
Your Requires: lines are messed up.

$ rpm -qpR valide-0.5.1-0.4.278svn.fc11.x86_64.rpm 
/bin/sh  
/bin/sh  
0.7.3  
hicolor-icon-theme  
libatk-1.0.so.0()(64bit)  
libc.so.6()(64bit)  
libc.so.6(GLIBC_2.2.5)(64bit)  
libc.so.6(GLIBC_2.3)(64bit)  
libc.so.6(GLIBC_2.3.4)(64bit)  
libc.so.6(GLIBC_2.4)(64bit)  
libc.so.6(GLIBC_2.7)(64bit)  
libcairo.so.2()(64bit)  
libfontconfig.so.1()(64bit)  
libfreetype.so.6()(64bit)  
libgdk-x11-2.0.so.0()(64bit)  
libgdk_pixbuf-2.0.so.0()(64bit)  
libgio-2.0.so.0()(64bit)  
libglib-2.0.so.0()(64bit)  
libgmodule-2.0.so.0()(64bit)  
libgobject-2.0.so.0()(64bit)  
libgthread-2.0.so.0()(64bit)  
libgtk-x11-2.0.so.0()(64bit)  
libgtksourceview-2.0.so.0()(64bit)  
libpango-1.0.so.0()(64bit)  
libpangocairo-1.0.so.0()(64bit)  
libpangoft2-1.0.so.0()(64bit)  
libpthread.so.0()(64bit)  
librt.so.1()(64bit)  
libsqlite3.so.0()(64bit)  
libunique-1.0.so.0()(64bit)  
libvala.so.0()(64bit)  
libvalide-0.0.so.0()(64bit)  
libxml2.so.2()(64bit)  
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rtld(GNU_HASH)  
vala >= >=
vala-devel  

$ rpm -qpR valide-devel-0.5.1-0.4.278svn.fc11.x86_64.rpm 
0.7.3  
2.7.3  
intltool  
libvalide-0.0.so.0()(64bit)  
libxml2-devel >= >=
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
vala-devel >= >=
valide = 0.5.1-0.4.278svn.fc11
Comment 30 MERCIER Jonathan 2009-07-14 09:06:20 EDT
ok fixed
Spec file:
http://bioinformatiques.free.fr/SPECS/valide.spec

SRC.RPM file:
http://bioinformatiques.free.fr/SRPMS/valide-0.5.1-0.5.278svn.fc11.src.rpm
____________________________________________________________________  
$ rpm -qpR rpmbuild/RPMS/x86_64/valide-0.5.1-0.5.278svn.fc11.x86_64.rpm 
/bin/sh  
/bin/sh  
hicolor-icon-theme  
libatk-1.0.so.0()(64bit)  
libc.so.6()(64bit)  
libc.so.6(GLIBC_2.2.5)(64bit)  
libc.so.6(GLIBC_2.3)(64bit)  
libc.so.6(GLIBC_2.3.4)(64bit)  
libc.so.6(GLIBC_2.4)(64bit)  
libc.so.6(GLIBC_2.7)(64bit)  
libcairo.so.2()(64bit)  
libfontconfig.so.1()(64bit)  
libfreetype.so.6()(64bit)  
libgdk-x11-2.0.so.0()(64bit)  
libgdk_pixbuf-2.0.so.0()(64bit)  
libgio-2.0.so.0()(64bit)  
libglib-2.0.so.0()(64bit)  
libgmodule-2.0.so.0()(64bit)  
libgobject-2.0.so.0()(64bit)  
libgthread-2.0.so.0()(64bit)  
libgtk-x11-2.0.so.0()(64bit)  
libgtksourceview-2.0.so.0()(64bit)  
libpango-1.0.so.0()(64bit)  
libpangocairo-1.0.so.0()(64bit)  
libpangoft2-1.0.so.0()(64bit)  
libpthread.so.0()(64bit)  
librt.so.1()(64bit)  
libsqlite3.so.0()(64bit)  
libunique-1.0.so.0()(64bit)  
libvala.so.0()(64bit)  
libvalide-0.0.so.0()(64bit)  
libxml2.so.2()(64bit)  
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
rtld(GNU_HASH)  
vala-devel >= 0.7.3
____________________________________________________________________  
rpm -qpR rpmbuild/RPMS/x86_64/valide-devel-0.5.1-0.5.278svn.fc11.x86_64.rpm 
intltool  
libvalide-0.0.so.0()(64bit)  
libxml2-devel >= 2.7.3
rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(FileDigests) <= 4.6.0-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
valide = 0.5.1-0.5.278svn.fc11
Comment 31 Susi Lehtola 2009-07-14 09:12:46 EDT
$ sudo rpm -Uvh valide-0.5.1-0.5.278svn.fc11.x86_64.rpm 
Preparing...                ########################################### [100%]
   1:valide                 ########################################### [100%]

(valide:13042): Gtk-WARNING **: cannot open display: 

$ sudo rpm -e valide
/var/tmp/rpm-tmp.9uSTWm: line 3: /usr/bin/valide: No such file or directory

Comment #15 item 5.
Comment 32 Susi Lehtola 2009-07-14 09:17:38 EDT
Where did you get the commands
 valide --add
and
 valide --remove
?


I get (after installation):

$ valide --add
Unknown option --add
$ valide --remove
Unknown option --remove

Drop the invocations from the spec file.
Comment 33 MERCIER Jonathan 2009-07-14 09:47:01 EDT
yes sorry fixed
Spec file:
http://bioinformatiques.free.fr/SPECS/valide.spec

SRC.RPM file:
http://bioinformatiques.free.fr/SRPMS/valide-0.5.1-0.6.278svn.fc11.src.rpm
____________________________________________________________________

$ su -c 'rpm -ivh rpmbuild/RPMS/x86_64/valide-0.5.1-0.6.278svn.fc11.x86_64.rpm'
Mot de passe : 
Préparation...              ########################################### [100%]
   1:valide                 ########################################### [100%]
____________________________________________________________________
$ which valide
/usr/bin/valide
____________________________________________________________________
$ su -c 'rpm -e valide
/var/tmp/rpm-tmp.xtJcWO: line 3: /usr/bin/valide: No such file or directory

???
Comment 34 Susi Lehtola 2009-07-14 09:56:13 EDT
(In reply to comment #33)
> yes sorry fixed
> Spec file:
> http://bioinformatiques.free.fr/SPECS/valide.spec
> 
> SRC.RPM file:
> http://bioinformatiques.free.fr/SRPMS/valide-0.5.1-0.6.278svn.fc11.src.rpm
> ____________________________________________________________________
> 
> $ su -c 'rpm -ivh rpmbuild/RPMS/x86_64/valide-0.5.1-0.6.278svn.fc11.x86_64.rpm'
> Mot de passe : 
> Préparation...              ########################################### [100%]
>    1:valide                 ########################################### [100%]
> ____________________________________________________________________
> $ which valide
> /usr/bin/valide
> ____________________________________________________________________
> $ su -c 'rpm -e valide
> /var/tmp/rpm-tmp.xtJcWO: line 3: /usr/bin/valide: No such file or directory

?? Why do you want to run valide as root when the rpm is installed / uninstalled ??

As I said in comment #31, I explained the reason for that error in comment #15.
Comment 35 MERCIER Jonathan 2009-07-14 10:26:25 EDT
____________________________________________________________________
$ rpmlint -i rpmbuild/RPMS/x86_64/valide-*
valide.x86_64: E: devel-dependency vala-devel
Your package has a dependency on a devel package but it's not a devel package
itself.

valide.x86_64: E: zero-length /usr/share/valide/licenses/None
3 packages and 0 specfiles checked; 2 errors, 0 warnings.
____________________________________________________________________
$ su -c 'rpm -ivh rpmbuild/RPMS/x86_64/valide-0.5.1-0.7.278svn.fc11.x86_64.rpm '
Mot de passe : 
Préparation...              ########################################### [100%]
   1:valide                 ########################################### [100%]
____________________________________________________________________
$ su -c 'rpm -e valide'
Password : 
$
____________________________________________________________________
Spec file:
http://bioinformatiques.free.fr/SPECS/valide.spec

SRC.RPM file:
http://bioinformatiques.free.fr/SRPMS/valide-0.5.1-0.7.278svn.fc11.src.rpm
Comment 36 Susi Lehtola 2009-07-14 10:39:46 EDT
- I'm still quite not sure about the Requires of the devel package
 Requires:	libxml2-devel >= %{libxml2_version}
 Requires:	intltool

The upstream page
 http://www.valaide.org/content/download
doesn't say anything about these. libxml2 is needed to run, but that requirement is already there. I'd drop these.

- Drop the %doc from -devel. -devel requires the main package which already contains the same documentation.

- You could be more verbose in your changelog comments. "Fix spec file" doesn't tell you anything.

- Version the BuildRequires: vala-devel and gtk2-devel. The build should fail if the dependencies are not there.
Comment 37 MERCIER Jonathan 2009-07-14 11:16:24 EDT
the upstream say is necessary libxml2-devel but for a latest version
Then i remove this requires
____________________________________________________________________

$ rpmlint -i rpmbuild/RPMS/x86_64/valide-*
valide.x86_64: E: devel-dependency vala-devel
Your package has a dependency on a devel package but it's not a devel package
itself.

valide.x86_64: E: zero-length /usr/share/valide/licenses/None
valide-devel.x86_64: W: no-documentation
The package contains no documentation (README, doc, etc). You have to include
documentation files.

3 packages and 0 specfiles checked; 2 errors, 1 warnings.
____________________________________________________________________

Spec file:
http://bioinformatiques.free.fr/SPECS/valide.spec

SRC.RPM file:
http://bioinformatiques.free.fr/SRPMS/valide-0.5.1-0.8.278svn.fc11.src.rpm
Comment 38 Susi Lehtola 2009-07-14 12:04:44 EDT
- You still have to have intltool in the BuildRequires, otherwise the package won't build in mock.

- I suggest changing the Summary of the main package to
"An integrated development environment (IDE) for the Vala programming language"

- The summary of -devel should be
"Support for developing plugins for Val(a)IDE"
(drop the "the")

- A couple of spelling mistakes in the %description, it should read
"Val(a)IDE is an Integrated Development Environment for the Vala programming language."
and that of -devel
"Val(a)IDE is an Integrated Development Environment for the Vala programming language.

This package allows you to develop plugins that add new functionality
to Val(a)IDE."

- You are missing
 %posttrans
 gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
from https://fedoraproject.org/wiki/Packaging:ScriptletSnippets

**

rpmlint output:
valide.src:112: W: macro-in-%changelog _bindir
valide.src:118: W: macro-in-%changelog global
valide.src:122: W: macro-in-%changelog vala_version
valide.src:123: W: macro-in-%changelog vala_version
valide.src:125: W: macro-in-%changelog post
valide.src: W: mixed-use-of-spaces-and-tabs (spaces: line 122, tab: line 1)
valide.src: E: specfile-error error: Macro %variable has empty body
valide.x86_64: E: devel-dependency vala-devel
valide.x86_64: E: zero-length /usr/share/valide/licenses/None
valide-devel.x86_64: W: no-documentation
4 packages and 0 specfiles checked; 3 errors, 7 warnings.

- When you refer to macros in changelog put another % in front of it so that rpm doesn't evaluate them, e.g. %%{_bindir}. That takes care of 1-5 and 7. Remove the tabbing in the changelog entry to get rid of 6.

- The three last rpmlint errors and warnings are expected.


MUST: The package does not yet exist in Fedora. The Review Request is not a duplicate. OK

MUST: The spec file for the package is legible and macros are used consistently. OK
- Check the suggestions above.

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 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: The sources used to build the package must match the upstream source, as provided in the spec URL. NEEDSWORK
- Why are you using an SVN version and not the stable release tarball?
- If you really have to use the SVN version, you have to look at
 https://fedoraproject.org/wiki/Packaging/SourceURL#Using_Revision_Control
to mark the spec file accordingly.

MUST: The package MUST successfully compile and build into binary rpms. OK
MUST: The spec file MUST handle locales properly. OK

MUST: Optflags are used and time stamps preserved. OK
- Headers seem to be generated during build, so their time stamps will differ from build to build.

MUST: Packages containing shared library files must call ldconfig. OK
MUST: A package must own all directories that it creates or require the package that owns the directory. OK

MUST: Files only listed once in %files listings. OK
- I suggest using
 %{_libdir}/libvalide-*.so.*
in %files of the main package and
 %{_libdir}/libvalide-*.so
in the %files of the -devel package to avoid trouble when the soname changes. Same thing with
 %{_includedir}/valide-0.5/
you can use
 %{_includedir}/valide-*/
instead.

MUST: Debuginfo package is complete. OK
MUST: Permissions on files must be set properly. OK
MUST: Clean section exists. OK
MUST: Large documentation files must go in a -doc subpackage. N/A

MUST: All relevant items are included in %doc. Items in %doc do not affect runtime of application. OK
- You could alphabetize the %doc listing, it's faster to check that way.

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'. N/A
MUST: If a package contains library files with a suffix then library files ending in .so must go in a -devel package. OK
MUST: In the vast majority of cases, devel packages must require the base package using a fully versioned dependency. OK
MUST: Packages does not contain any .la libtool archives. N/A
MUST: Desktop files are installed properly. OK
MUST: No file conflicts with other packages and no general names. OK
MUST: Buildroot cleaned before install. OK
SHOULD: %{?dist} tag is used in release. OK
SHOULD: If the package does not include license text(s) as separate files from upstream, the packager should query upstream to include it. OK
SHOULD: The package builds in mock. OK
Comment 39 MERCIER Jonathan 2009-07-14 13:07:19 EDT
i think all is fixed
____________________________________________________________
$ rpmlint -i rpmbuild/SRPMS/valide-0.5.1-0.9.20090713svn278.fc11.src.rpm 
1 packages and 0 specfiles checked; 0 errors, 0 warnings.
____________________________________________________________
$ rpmlint -i rpmbuild/RPMS/x86_64/valide-*

valide.x86_64: E: devel-dependency vala-devel
Your package has a dependency on a devel package but it's not a devel package
itself.

valide.x86_64: E: zero-length /usr/share/valide/licenses/None
valide-devel.x86_64: W: no-documentation
The package contains no documentation (README, doc, etc). You have to include
documentation files.

3 packages and 0 specfiles checked; 2 errors, 1 warnings.
____________________________________________________________
I use svn release because i have do some work with upstream for fix the build in fedora environment

Spec file:
http://bioinformatiques.free.fr/SPECS/valide.spec

SRC.RPM file:
http://bioinformatiques.free.fr/SRPMS/valide-0.5.1-0.9.20090713svn278.fc11.src.rpm
Comment 40 Susi Lehtola 2009-07-14 13:34:49 EDT
Some tinkering:

- Remove the second line break in %description:
Val(a)IDE is an Integrated Development Environment for
the Vala programming
language.

- Remove the empty line before the Requires: of the devel package, and add one before the %description of devel and in the middle of the chapters of devel's %description.

- You can also remove some of the extra line breaks in %files.

- You don't have to write "Fix spec file:" in the changelog if you write what you have done after it.

(Then there was the alphabetization of %doc.)

** 

These are rather trivial issues, I'll let you fix these yourself. This package is

APPROVED
Comment 41 MERCIER Jonathan 2009-07-14 13:48:05 EDT
Spec file:
http://bioinformatiques.free.fr/SPECS/valide.spec

SRC.RPM file:
http://bioinformatiques.free.fr/SRPMS/valide-0.5.1-0.10.20090713svn278.fc11.src.rpm

____________________________________________________________
$ rpmlint -i rpmbuild/SRPMS/valide-0.5.1-0.10.20090713svn278.fc11.src.rpm 
1 packages and 0 specfiles checked; 0 errors, 0 warnings.

____________________________________________________________

$ rpmlint  -i rpmbuild/RPMS/x86_64/valide-*
valide.x86_64: E: devel-dependency vala-devel
Your package has a dependency on a devel package but it's not a devel package
itself.

valide.x86_64: W: incoherent-version-in-changelog 0.5.1-0.10.svn27820090713 ['0.5.1-0.10.20090713svn278.fc11', '0.5.1-0.10.20090713svn278']
The last entry in %changelog contains a version identifier that is not
coherent with the epoch:version-release tuple of the package.

valide.x86_64: E: zero-length /usr/share/valide/licenses/None
valide-devel.x86_64: W: no-documentation
The package contains no documentation (README, doc, etc). You have to include
documentation files.

3 packages and 0 specfiles checked; 2 errors, 2 warnings.
_________________________________________________________
Comment 42 MERCIER Jonathan 2009-07-14 13:56:16 EDT
New Package CVS Request
=======================
Package Name: valide
Short Description: An IDE for the Vala programming language
Owners: bioinfornatics@gmail.com
Branches: F10 F11
InitialCC: bioinfornatics
Comment 43 MERCIER Jonathan 2009-07-14 14:13:25 EDT
New Package CVS Request
=======================
Package Name: valide
Short Description: An IDE for the Vala programming language
Owners: bioinfornatics
Branches: F10 F11
Comment 44 MERCIER Jonathan 2009-07-14 14:28:19 EDT
sorry fixe changelog
$ rpmlint  -i rpmbuild/RPMS/x86_64/valide-*
valide.x86_64: E: devel-dependency vala-devel
Your package has a dependency on a devel package but it's not a devel package
itself.

valide.x86_64: E: zero-length /usr/share/valide/licenses/None
valide-devel.x86_64: W: no-documentation
The package contains no documentation (README, doc, etc). You have to include
documentation files.

3 packages and 0 specfiles checked; 2 errors, 1 warnings.

Spec file:
http://bioinformatiques.free.fr/SPECS/valide.spec

SRC.RPM file:
http://bioinformatiques.free.fr/SRPMS/valide-0.5.1-0.11.20090713svn278.fc11.src.rpm
Comment 45 Jason Tibbitts 2009-07-14 22:35:43 EDT
CVS done.
Comment 46 MERCIER Jonathan 2009-07-15 04:52:27 EDT
Thanks to Jussi Lehtola for this help and this review
Comment 47 Mamoru TASAKA 2009-07-15 12:26:18 EDT
Well,

- Would you check for the dependency for -devel subpackage?
  For example, valide-0.5/libvalide/valide-0.0.h contains:
-------------------------------------------------------------
     5  #include <glib.h>
     6  #include <gtk/gtk.h>
     7  #include <glib-object.h>
     8  #include <stdlib.h>
     9  #include <string.h>
    10  #include <gdk-pixbuf/gdk-pixdata.h>
    11  #include <gtksourceview/gtksourceview.h>
    12  #include <gdk/gdk.h>
    13  #include <float.h>
    14  #include <math.h>
    15  #include <libxml/xpath.h>
    16  #include <sqlite3.h>
-------------------------------------------------------------
  This means that -devel package should have "Requires: gtksourceview2-devel"
  and so on.
Comment 48 MERCIER Jonathan 2009-07-28 16:19:16 EDT
yes, in the fisrt spec they had this require but the comment #13 say no explicit require --> http://fedoraproject.org/wiki/Packaging/Guidelines

I add or non this require ?
Comment 49 MERCIER Jonathan 2009-07-28 16:19:27 EDT
yes, in the fisrt spec they had this require but the comment #13 say no explicit require --> http://fedoraproject.org/wiki/Packaging/Guidelines

I add or no this require ?
Comment 50 Susi Lehtola 2009-07-28 16:43:48 EDT
(In reply to comment #49)
> yes, in the fisrt spec they had this require but the comment #13 say no
> explicit require --> http://fedoraproject.org/wiki/Packaging/Guidelines
> 
> I add or no this require ?  

That doesn't apply to -devel packages - only the libraries are pulled in. If the use of a -devel package requires some other headers to be present, the -devel pacakge must Requires: them.
Comment 51 MERCIER Jonathan 2009-07-28 16:48:57 EDT
ok so i need add this require

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