Bug 171314 - Review Request: gtkhtml36
Review Request: gtkhtml36
Status: CLOSED CURRENTRELEASE
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
rawhide
All Linux
medium Severity medium
: ---
: ---
Assigned To: Paul Howarth
Fedora Package Reviews List
:
Depends On:
Blocks: FE-ACCEPT
  Show dependency treegraph
 
Reported: 2005-10-20 13:53 EDT by Michael A. Peters
Modified: 2007-11-30 17:11 EST (History)
0 users

See Also:
Fixed In Version: 3.6.2-4
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2006-04-30 07:52:32 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Michael A. Peters 2005-10-20 13:53:15 EDT
Spec Name or Url: http://mpeters.us/fc_extras/compat-gtkhtml36.spec
SRPM Name or Url: http://mpeters.us/fc_extras/compat-gtkhtml36-3.6.2-1.src.rpm
Description: 

This package is targeted at FC5 - NOT fc3 or fc4.

Some software that build just fine under Fedora Core 4 have not been ported to the new gtkhtml 3.8 that is part of gnome 2.12.x

The devel subpackage would allow these software packages to be compiled in a gnome 2.12.x devel environment, the main package would allow these software package to be run in a gnome 2.12.x environment. This allows easier migration to FC5 for users who depend upon software that has not yet been ported to gtkhtml 3.8

The rpms install in Fedora Rawhide cleanly without conflicting with the new gtkhtml3-3.8.x rpm's 

Spec file is taken from the FC4 src.rpm and cleaned up a little bit.
Comment 1 Toshio Kuratomi 2005-10-20 22:48:01 EDT
What needs this?
Comment 2 Michael A. Peters 2005-10-20 23:07:28 EDT
Applications that have not yet ported to gtkhtml-3.8
I'll respond in more detail on the Extras list.

Comment 3 Michael A. Peters 2006-03-31 14:48:04 EST
Is it possible to get this reviewed?
I just verified that it does still build in mock.

I've got another package that has some bugs when built against the fc5 version
of gtkhtml - that are not present if built against gtkhtml-3.6
Comment 4 Paul Howarth 2006-04-25 10:50:12 EDT
Not sure about the naming convention for this one.

compat- packages usually build without -devel packages and are there for runtime
rather than build-time compatibility with older apps. The only compat-*-devel
packages I can find in FC5 or FE5 are the wxGTK packages.

For build-time compatibility, a name like gtkhtml36 would seem more sensible,
but that could cause confusion with the main package being gtkhtml3 and hence
giving the appearance of being "older". However, this does meet the package
naming guidelines, which the compat- package doesn't.

Another thing: are the static libraries really needed?

Minor nit:
warning: File listed twice: /usr/lib/libgtkhtml-3.6.so.18
warning: File listed twice: /usr/lib/libgtkhtml-3.6.so.18.0.2
Comment 5 Michael A. Peters 2006-04-25 12:55:21 EDT
I'll remove the static libraries - they are not needed.
With respect to the name - core uses compat-*

compat-db.i386                           4.2.52-4               core            
compat-gcc-32.i386                       3.2.3-55.fc5           core            
compat-gcc-32-c++.i386                   3.2.3-55.fc5           core            
compat-gcc-32-g77.i386                   3.2.3-55.fc5           core            
compat-libf2c-32.i386                    3.2.3-55.fc5           core            
compat-libgcc-296.i386                   2.96-135               core            
compat-libstdc++-296.i386                2.96-135               core            
compat-openldap.i386                     2.3.19_2.2.29-4        core            
compat-readline43.i386                   4.3-2.1                core            
compat-slang.i386                        1.4.9-27.2.1           core     

readline, gcc, libstdc++ are examples where it uses

compat-oldname-version as the package name.

With respect to the devel package - it obviously isn't needed for runtime use,
but it may be useful for building software that either doesn't work with new
gtkhtml - or for software where the port to the new gtkhtml3 isn't as good as
the older version.
Comment 6 Paul Howarth 2006-04-25 13:01:19 EDT
(In reply to comment #5)
> I'll remove the static libraries - they are not needed.
> With respect to the name - core uses compat-*
> 
> compat-db.i386                           4.2.52-4               core            
> compat-gcc-32.i386                       3.2.3-55.fc5           core            
> compat-gcc-32-c++.i386                   3.2.3-55.fc5           core            
> compat-gcc-32-g77.i386                   3.2.3-55.fc5           core            
> compat-libf2c-32.i386                    3.2.3-55.fc5           core            
> compat-libgcc-296.i386                   2.96-135               core            
> compat-libstdc++-296.i386                2.96-135               core            
> compat-openldap.i386                     2.3.19_2.2.29-4        core            
> compat-readline43.i386                   4.3-2.1                core            
> compat-slang.i386                        1.4.9-27.2.1           core     

Note that none of the above have a -devel package; that's what I was getting at
regarding runtime and build-time compatibility.

> With respect to the devel package - it obviously isn't needed for runtime use,
> but it may be useful for building software that either doesn't work with new
> gtkhtml - or for software where the port to the new gtkhtml3 isn't as good as
> the older version.

Yes, I get that - after all that's why this package is here.

The package naming guidelines say this:

Multiple packages with the same base name

For many reasons, it is sometimes advantageous to keep multiple versions of a
package in Fedora Core and Fedora Extras, to be installed simultaneously. When
doing so, the package name should reflect this fact. The most recent version of
a package should use the base name with no versions, and all other addons should
note their version in the name. The exception to this are kernel and
kernel-module-* packages, which can have multiple versions installed
concurrently with the same base name (but different versions).

Example:
openssl occasionally has multiple versions in Fedora for backwards compatibility.
The most current version of openssl has Name: openssl
The previous version of openssl has Name: openssl096b
Note that we do not use delimiters in the name in this situation, we remove the
period '.' from the version number and attach it to the name.



To be honest I think that the name you have is better but the precedents and
naming guidelines suggest otherwise.
Comment 7 Michael A. Peters 2006-04-25 14:07:59 EDT
OK - I changed the name to gtkhtml36 and fixed the rpmlint error and removed
static libs.

As soon as my mock build finishes, I'll upload the fixed src.rpm and spec file.
Comment 8 Michael A. Peters 2006-04-25 14:52:04 EDT
New src.rpm and spec file:

http://mpeters.us/fc_extras/gtkhtml36-3.6.2-2.fc5.src.rpm
http://mpeters.us/fc_extras/gtkhtml36.spec
Comment 9 Paul Howarth 2006-04-26 07:26:44 EDT
Review:

- rpmlint OK (only warning is gtkhtml36-devel no-documentation, ignorable)
- package and spec naming OK
- package meets guidelines
- license is part GPL, part LGPL; spec matches, GPL text included, LGPL text
  missing
- spec file written in English and is legible
- sources match upstream
- package builds OK in mock for FC5 (i386) and installs OK with gtkhtml3
  present
- BR's OK
- %find_lang used appropriately
- /sbin/ldconfig called properly in %post and %postun
- not relocatable
- no duplicate files
- permissions OK, %defattr used properly
- %clean section present and correct
- macro usage is consistent
- code, not content
- no large docs
- docs don't affect runtime
- header files, pkgconfig file, and .so file properly placed in -devel
  subpackage
- devel package requires same release of base package
- libtool and static archives removed
- library package, not app, so no desktop file
- scriptlets are sane
- Compared with gtkhtml3.spec revision 1.30 in CVS; changes are limited to
  those mentioned in %changelog

Needswork:

- include COPYING.LIB as %doc
- Package needs to own %{_libdir}/gtkhtml (gtkhtml3 might not be installed)

Suggestions:

- Include BUGS as %doc
- Use FE-standard buildroot:
  %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
- Since patch2 is neither included in the SRPM nor applied, is there any point
  having it mentioned in the spec at all?

Really picky nits:

- "etc" (in summary for -devel) is an abbreviation and should be "etc."
- $RPM_BUILD_ROOT/%{_libdir} better written as $RPM_BUILD_ROOT%{_libdir} since
  %{_libdir}'s expansion always starts with "/"

Comment 10 Michael A. Peters 2006-04-26 19:56:14 EDT
Thanks for the excellent review.
I made all of the suggested and mandatory changes:

http://mpeters.us/fc_extras/gtkhtml36-3.6.2-3.fc5.src.rpm
http://mpeters.us/fc_extras/gtkhtml36.spec
Comment 11 Paul Howarth 2006-04-27 07:56:43 EDT
(In reply to comment #10)
> Thanks for the excellent review.
> I made all of the suggested and mandatory changes:
> 
> http://mpeters.us/fc_extras/gtkhtml36-3.6.2-3.fc5.src.rpm
> http://mpeters.us/fc_extras/gtkhtml36.spec

Approved.

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