Bug 1188372 (kate5) - Review Request: kate5 - Advanced Text Editor
Summary: Review Request: kate5 - Advanced Text Editor
Keywords:
Status: CLOSED DUPLICATE of bug 1194330
Alias: kate5
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Nobody's working on this, feel free to take it
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: kde-reviews plasma5
TreeView+ depends on / blocked
 
Reported: 2015-02-02 17:28 UTC by Rex Dieter
Modified: 2015-02-19 14:57 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2015-02-19 14:57:10 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Rex Dieter 2015-02-02 17:28:25 UTC
Spec URL: https://rdieter.fedorapeople.org/rpms/plasma5/kate5.spec
SRPM URL: https://rdieter.fedorapeople.org/rpms/plasma5/kate5-14.12.1-1.fc21.src.rpm
Description: Advanced Text Editor
Fedora Account System Username: rdieter

Comment 1 Rex Dieter 2015-02-02 17:29:45 UTC
Introducing a kate5 package, because we need to keep the existing kde4-based kate around (at least kate-part anyway)

Scratch build:
http://koji.fedoraproject.org/koji/taskinfo?taskID=8796612

Comment 2 Mario Blättermann 2015-02-02 18:18:36 UTC
$ rpmlint -i -v *
kate5.src: I: checking
kate5.src: I: checking-url https://projects.kde.org/projects/kde/applications/kate (timeout 10 seconds)
kate5.src:52: W: macro-in-comment %{name}
There is a unescaped macro after a shell style comment in the specfile. Macros
are expanded everywhere, so check if it can cause a problem in this case and
escape the macro with another leading % if appropriate.

kate5.src:52: W: macro-in-comment %{version}
There is a unescaped macro after a shell style comment in the specfile. Macros
are expanded everywhere, so check if it can cause a problem in this case and
escape the macro with another leading % if appropriate.

kate5.src:52: W: macro-in-comment %{release}
There is a unescaped macro after a shell style comment in the specfile. Macros
are expanded everywhere, so check if it can cause a problem in this case and
escape the macro with another leading % if appropriate.

kate5.src: I: checking-url http://download.kde.org/stable/applications/14.12.1/src/kate-14.12.1.tar.xz (timeout 10 seconds)
kate5.x86_64: I: checking
kate5.x86_64: I: checking-url https://projects.kde.org/projects/kde/applications/kate (timeout 10 seconds)
kate5.x86_64: E: invalid-soname /usr/lib64/libkdeinit5_kate.so libkdeinit5_kate.so
The soname of the library is neither of the form lib<libname>.so.<major> or
lib<libname>-<major>.so.

kate5.x86_64: W: gzipped-svg-icon /usr/share/icons/hicolor/scalable/apps/kate.svgz
Not all desktop environments that support SVG icons support them gzipped
(.svgz).  Install the icon as plain uncompressed SVG.

kate5-debuginfo.x86_64: I: checking
kate5-debuginfo.x86_64: I: checking-url https://projects.kde.org/projects/kde/applications/kate (timeout 10 seconds)
kate5-plugins.x86_64: I: checking
kate5-plugins.x86_64: I: checking-url https://projects.kde.org/projects/kde/applications/kate (timeout 10 seconds)
kate5-plugins.x86_64: W: no-documentation
The package contains no documentation (README, doc, etc). You have to include
documentation files.

kate5.spec: I: checking
kate5.spec:52: W: macro-in-comment %{name}
There is a unescaped macro after a shell style comment in the specfile. Macros
are expanded everywhere, so check if it can cause a problem in this case and
escape the macro with another leading % if appropriate.

kate5.spec:52: W: macro-in-comment %{version}
There is a unescaped macro after a shell style comment in the specfile. Macros
are expanded everywhere, so check if it can cause a problem in this case and
escape the macro with another leading % if appropriate.

kate5.spec:52: W: macro-in-comment %{release}
There is a unescaped macro after a shell style comment in the specfile. Macros
are expanded everywhere, so check if it can cause a problem in this case and
escape the macro with another leading % if appropriate.

kate5.spec: I: checking-url http://download.kde.org/stable/applications/14.12.1/src/kate-14.12.1.tar.xz (timeout 10 seconds)
kwrite.x86_64: I: checking
kwrite.x86_64: I: checking-url https://projects.kde.org/projects/kde/applications/kate (timeout 10 seconds)
kwrite.x86_64: E: invalid-soname /usr/lib64/libkdeinit5_kwrite.so libkdeinit5_kwrite.so
The soname of the library is neither of the form lib<libname>.so.<major> or
lib<libname>-<major>.so.

kwrite.x86_64: W: shared-lib-calls-exit /usr/lib64/libkdeinit5_kwrite.so exit.5
This library package calls exit() or _exit(), probably in a non-fork()
context. Doing so from a library is strongly discouraged - when a library
function calls exit(), it prevents the calling program from handling the
error, reporting it to the user, closing files properly, and cleaning up any
state that the program has. It is preferred for the library to return an
actual error code and let the calling program decide how to handle the
situation.

kwrite.x86_64: W: no-manual-page-for-binary kwrite
Each executable in standard binary directories should have a man page.

5 packages and 1 specfiles checked; 2 errors, 10 warnings.


Regarding the macro-in-comment warnings, the verbose rpmlint output says it all what to do.


The invalid-soname error messages need to be addressed. There's nothing comparable in the kate-4* package.

$ rpm -qp --provides kate5-14.12.1-1.fc22.x86_64.rpm
application()
application(org.kde.kate.desktop)
config(kate5) = 14.12.1-1.fc22
kate = 14.12.1-1.fc22
kate5 = 14.12.1-1.fc22
kate5(x86-64) = 14.12.1-1.fc22
libkdeinit5_kate.so()(64bit)
mimehandler(text/plain)

Maybe it is needed to filter it out of the Provides?


The exit() call is not that critical, as far as I know, but maybe should be reported upstream.

The gzipped icons and missing man page can be ignored for the time being.

Comment 3 Mario Blättermann 2015-02-02 18:29:32 UTC
Moreover, you should move COPYING.LIB to %license to make it cloud-safe from the start on.

Comment 4 Rex Dieter 2015-02-02 20:58:24 UTC
Many KDE applications use that libkdeinit trick a lot to optimize startup and shared memory.   It's not a shared library in the conventional sense, so I would argue does not need to adhere to those general rules (not calling exit or invalid soname).

Filtering the libkdeinit Provides is a possibility, I'll consider it.

As far as the macro in a comment, 

# not sure if we want -plugins by default, let's play it safe
# and go with no initially -- rex
#Requires: %{name}-plugins%{?_isa} = %{version}-%{release}

this too is harmless

Comment 5 Rex Dieter 2015-02-18 18:58:02 UTC
Come to think more on it, since kate(5) no longer includes the kate-part component, we won't have to worry about keeping this co-installable either moving forward (in contrast to the situation with konsole4 and konsole5).

So, I'm currently leaning toward closing this review, and opening one for kate4(-part) instead.

Comment 6 Rex Dieter 2015-02-19 14:57:10 UTC

*** This bug has been marked as a duplicate of bug 1194330 ***


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