Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1080411 - Review Request: trojita - IMAP e-mail client
Summary: Review Request: trojita - IMAP e-mail client
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Christopher Meng
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: FE-DEADREVIEW qt-reviews 1208582
TreeView+ depends on / blocked
 
Reported: 2014-03-25 11:43 UTC by Karel Volný
Modified: 2015-05-09 09:36 UTC (History)
11 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
: 1208582 (view as bug list)
Environment:
Last Closed: 2015-05-08 21:10:13 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
trojita-0.4.1-2 (3.48 KB, text/plain)
2014-04-14 11:31 UTC, Karel Volný
no flags Details
build log from koji with failed test of html formatting (678.74 KB, text/plain)
2015-04-01 18:07 UTC, Raphael Groner
no flags Details


Links
System ID Private Priority Status Summary Last Updated
KDE Software Compilation 345739 0 None None None Never

Description Karel Volný 2014-03-25 11:43:16 UTC
Spec URL: http://kvolny.fedorapeople.org/trojita.spec
SRPM URL: http://kvolny.fedorapeople.org/trojita-0.4.1-1.fc20.src.rpm
Description: 

Trojitá is a Qt IMAP e-mail client which:
  * Enables you to access your mail anytime, anywhere.
  * Does not slow you down. If we can improve the productivity of an e-mail
    user, we better do.
  * Respects open standards and facilitates modern technologies. We value
    the vendor-neutrality that IMAP provides and are committed to be as
    interoperable as possible.
  * Is efficient — be it at conserving the network bandwidth, keeping memory
    use at a reasonable level or not hogging the system's CPU.
  * Can be used on many platforms. One UI is not enough for everyone, but our
    IMAP core works fine on anything from desktop computers to cell phones
    and big ERP systems.
  * Plays well with the rest of the ecosystem. We don't like reinventing wheels,
    but when the existing wheels quite don't fit the tracks, we're not afraid
    of making them work.

Fedora Account System Username: kvolny

Koji scratch builds:
F20: http://koji.fedoraproject.org/koji/taskinfo?taskID=6671258
EPEL7: http://koji.fedoraproject.org/koji/taskinfo?taskID=6671502
Rawhide: http://koji.fedoraproject.org/koji/taskinfo?taskID=6671309

Comment 1 Karel Volný 2014-03-25 12:00:07 UTC
note that I've filed some bugs upstream for the things I've workarounded in spec:

Bug 332578 - superfluous x-test language
[https://bugs.kde.org/show_bug.cgi?id=332578]

Bug 332579 - unversioned plugins library (rpmlint invalid-soname issue)
[https://bugs.kde.org/show_bug.cgi?id=332579]

Comment 2 Rex Dieter 2014-04-13 21:18:12 UTC
Offhand looks like a good start, some initial suggestions (SHOULD are just recommendations and/or a matter of taste, MUST are required):

1.  SHOULD add
Requires: hicolor-icon-theme
instead of:
%dir %{_datadir}/icons/hicolor
%dir %{_datadir}/icons/hicolor/*

2.  MUST add some icon scriptlets, see
https://fedoraproject.org/wiki/Packaging:ScriptletSnippets#Icon_Cache

3.  SHOULD include .spec comments clearly identifying items that are workarounds for the bugs referenced in comment #1


Oh, just noticed the bug is assigned, but no review flag set, Christopher, was that just an oversight?

Comment 3 Christopher Meng 2014-04-14 03:07:58 UTC
(In reply to Rex Dieter from comment #2)
> Oh, just noticed the bug is assigned, but no review flag set, Christopher,
> was that just an oversight?

Sorry, it's not an omission. I'm busy recently, I will review this later in the afternoon today.

Comment 4 Karel Volný 2014-04-14 11:30:20 UTC
(In reply to Rex Dieter from comment #2)
> Offhand looks like a good start, some initial suggestions (SHOULD are just
> recommendations and/or a matter of taste, MUST are required):

thanks

> 1.  SHOULD add
> Requires: hicolor-icon-theme
> instead of:
> %dir %{_datadir}/icons/hicolor
> %dir %{_datadir}/icons/hicolor/*

I prefer not to add dependencies that are not really needed ... multiple ownership of a directory seems to me less evil

> 2.  MUST add some icon scriptlets, see
> https://fedoraproject.org/wiki/Packaging:ScriptletSnippets#Icon_Cache

shame on me, I've completely forgotten about this gnomish stuff

(hm, now I wonder if I've overlooked it in the review, or such checkpoint is missing? - RFE material? - but I'm not in the mood to investigate now with all those errata in my queue :-/)

> 3.  SHOULD include .spec comments clearly identifying items that are
> workarounds for the bugs referenced in comment #1

added

@Christopher:
I'm going to attach new spec version here, is that okay for you, or do I have to reupload it on the web together with new srpm?

Comment 5 Karel Volný 2014-04-14 11:31:35 UTC
Created attachment 886100 [details]
trojita-0.4.1-2

$ diff trojita.spec~ trojita.spec                                                                                                                                                                                 
3c3                                                                                                                                                                                                                                          
< Release:        1%{?dist}                                                                                                                                                                                                                  
---                                                                                                                                                                                                                                          
> Release:        2%{?dist}                                                                                                                                                                                                                  
47a48                                                                                                                                                                                                                                        
> # https://bugs.kde.org/show_bug.cgi?id=332578                                                                                                                                                                                              
52a54,55                                                                                                                                                                                                                                     
> # change path for the library                                                                                                                                                                                                              
> # https://bugs.kde.org/show_bug.cgi?id=332579                                                                                                                                                                                              
87a91,105
> %post
> /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
> 
> 
> %postun
> if [ $1 -eq 0 ] ; then
>     /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null
>     /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
> fi
> 
> 
> %posttrans
> /usr/bin/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
> 
> 
88a107,110
> * Mon Apr 14 2014 Karel Volný <kvolny> 0.4.1-2
> - Fixed icon handling and added comments as per the package review
> - https://bugzilla.redhat.com/show_bug.cgi?id=1080411#c2
>

Comment 6 Christopher Meng 2014-04-14 12:14:53 UTC
Please attach the fixed version, I will review it later.

Comment 7 Christopher Meng 2014-04-16 01:08:19 UTC
Please also attach the fixed SRPM.

Comment 9 Christopher Meng 2014-04-20 12:57:56 UTC
Package Review
==============

Legend:
[x] = Pass, [!] = Fail, [-] = Not applicable, [?] = Not evaluated



Issues:
=======
- Package installs a %{name}.desktop using desktop-file-install or desktop-
  file-validate if there is such a file.


===== MUST items =====

C/C++:
[x]: Package does not contain kernel modules.
[x]: Package contains no static executables.
[x]: Development (unversioned) .so files in -devel subpackage, if present.
     Note: Unversioned so-files in private %_libdir subdirectory (see
     attachment). Verify they are not in ld path.
[x]: Package does not contain any libtool archives (.la)
[x]: Rpath absent or only used for internal libs.

Generic:
[x]: Package is licensed with an open-source compatible license and meets
     other legal requirements as defined in the legal section of Packaging
     Guidelines.
[x]: License field in the package spec file matches the actual license.
     Note: Checking patched sources after %prep for licenses. Licenses found:
     "GPL", "LGPL (v2)", "LGPL (v2.1 or later) (with incorrect FSF address)",
     "LGPL (v2 or later)", "Unknown or generated", "BSD (3 clause)". 65 files
     have unknown license. Detailed output of licensecheck:

BSD (3 clause)
--------------
trojita-0.4.1/src/Imap/Model/FindInterestingPart.cpp
trojita-0.4.1/src/Imap/Model/FindInterestingPart.h
trojita-0.4.1/src/Imap/Model/MailboxFinder.cpp
trojita-0.4.1/src/Imap/Model/MailboxFinder.h
trojita-0.4.1/src/XtConnect/MailSynchronizer.cpp
trojita-0.4.1/src/XtConnect/MailSynchronizer.h
trojita-0.4.1/src/XtConnect/MessageDownloader.cpp
trojita-0.4.1/src/XtConnect/MessageDownloader.h
trojita-0.4.1/src/XtConnect/SqlStorage.cpp
trojita-0.4.1/src/XtConnect/SqlStorage.h
trojita-0.4.1/src/XtConnect/XtConnect.cpp
trojita-0.4.1/src/XtConnect/XtConnect.h
trojita-0.4.1/src/XtConnect/main.cpp

GPL
---
trojita-0.4.1/src/AbookAddressbook/AbookAddressbook.cpp
trojita-0.4.1/src/AbookAddressbook/AbookAddressbook.h
trojita-0.4.1/src/AbookAddressbook/be-contacts.cpp
trojita-0.4.1/src/AbookAddressbook/be-contacts.h
trojita-0.4.1/src/AppVersion/SetCoreApplication.cpp
trojita-0.4.1/src/AppVersion/SetCoreApplication.h
trojita-0.4.1/src/Common/Application.cpp
trojita-0.4.1/src/Common/Application.h
trojita-0.4.1/src/Common/ConnectionId.cpp
trojita-0.4.1/src/Common/ConnectionId.h
trojita-0.4.1/src/Common/ConnectionMethod.h
trojita-0.4.1/src/Common/DeleteAfter.cpp
trojita-0.4.1/src/Common/DeleteAfter.h
trojita-0.4.1/src/Common/FileLogger.cpp
trojita-0.4.1/src/Common/FileLogger.h
trojita-0.4.1/src/Common/FindWithUnknown.h
trojita-0.4.1/src/Common/InvokeMethod.h
trojita-0.4.1/src/Common/Logging.h
trojita-0.4.1/src/Common/MetaTypes.cpp
trojita-0.4.1/src/Common/MetaTypes.h
trojita-0.4.1/src/Common/Paths.cpp
trojita-0.4.1/src/Common/Paths.h
trojita-0.4.1/src/Common/PortNumbers.h
trojita-0.4.1/src/Common/RingBuffer.h
trojita-0.4.1/src/Common/SettingsCategoryGuard.h
trojita-0.4.1/src/Common/SettingsNames.cpp
trojita-0.4.1/src/Common/SettingsNames.h
trojita-0.4.1/src/Common/SqlTransactionAutoAborter.h
trojita-0.4.1/src/Composer/ComposerAttachments.cpp
trojita-0.4.1/src/Composer/ComposerAttachments.h
trojita-0.4.1/src/Composer/ContentDisposition.h
trojita-0.4.1/src/Composer/MessageComposer.cpp
trojita-0.4.1/src/Composer/MessageComposer.h
trojita-0.4.1/src/Composer/PlainTextFormatter.cpp
trojita-0.4.1/src/Composer/PlainTextFormatter.h
trojita-0.4.1/src/Composer/Recipients.cpp
trojita-0.4.1/src/Composer/Recipients.h
trojita-0.4.1/src/Composer/ReplaceSignature.cpp
trojita-0.4.1/src/Composer/ReplaceSignature.h
trojita-0.4.1/src/Composer/SenderIdentitiesModel.cpp
trojita-0.4.1/src/Composer/SenderIdentitiesModel.h
trojita-0.4.1/src/Composer/SubjectMangling.cpp
trojita-0.4.1/src/Composer/SubjectMangling.h
trojita-0.4.1/src/Composer/Submission.cpp
trojita-0.4.1/src/Composer/Submission.h
trojita-0.4.1/src/Gui/AbstractAddressbook.h
trojita-0.4.1/src/Gui/AbstractPartWidget.h
trojita-0.4.1/src/Gui/AttachmentView.cpp
trojita-0.4.1/src/Gui/AttachmentView.h
trojita-0.4.1/src/Gui/AutoCompletion.cpp
trojita-0.4.1/src/Gui/AutoCompletion.h
trojita-0.4.1/src/Gui/CompleteMessageWidget.cpp
trojita-0.4.1/src/Gui/CompleteMessageWidget.h
trojita-0.4.1/src/Gui/ComposeWidget.cpp
trojita-0.4.1/src/Gui/ComposeWidget.h
trojita-0.4.1/src/Gui/ComposerAttachmentsList.cpp
trojita-0.4.1/src/Gui/ComposerAttachmentsList.h
trojita-0.4.1/src/Gui/ComposerTextEdit.cpp
trojita-0.4.1/src/Gui/ComposerTextEdit.h
trojita-0.4.1/src/Gui/EmbeddedWebView.cpp
trojita-0.4.1/src/Gui/EmbeddedWebView.h
trojita-0.4.1/src/Gui/EnvelopeView.cpp
trojita-0.4.1/src/Gui/EnvelopeView.h
trojita-0.4.1/src/Gui/ExternalElementsWidget.cpp
trojita-0.4.1/src/Gui/ExternalElementsWidget.h
trojita-0.4.1/src/Gui/FindBar.cpp
trojita-0.4.1/src/Gui/FindBar.h
trojita-0.4.1/src/Gui/FromAddressProxyModel.cpp
trojita-0.4.1/src/Gui/FromAddressProxyModel.h
trojita-0.4.1/src/Gui/IconLoader.h
trojita-0.4.1/src/Gui/LoadablePartWidget.cpp
trojita-0.4.1/src/Gui/LoadablePartWidget.h
trojita-0.4.1/src/Gui/MailBoxTreeView.cpp
trojita-0.4.1/src/Gui/MailBoxTreeView.h
trojita-0.4.1/src/Gui/MessageListWidget.cpp
trojita-0.4.1/src/Gui/MessageListWidget.h
trojita-0.4.1/src/Gui/MessageSourceWidget.cpp
trojita-0.4.1/src/Gui/MessageSourceWidget.h
trojita-0.4.1/src/Gui/MessageView.cpp
trojita-0.4.1/src/Gui/MessageView.h
trojita-0.4.1/src/Gui/MsgListView.cpp
trojita-0.4.1/src/Gui/MsgListView.h
trojita-0.4.1/src/Gui/OnePanelAtTimeWidget.cpp
trojita-0.4.1/src/Gui/OnePanelAtTimeWidget.h
trojita-0.4.1/src/Gui/OverlayWidget.cpp
trojita-0.4.1/src/Gui/OverlayWidget.h
trojita-0.4.1/src/Gui/PartWidget.cpp
trojita-0.4.1/src/Gui/PartWidget.h
trojita-0.4.1/src/Gui/PartWidgetFactory.cpp
trojita-0.4.1/src/Gui/PartWidgetFactory.h
trojita-0.4.1/src/Gui/PasswordDialog.cpp
trojita-0.4.1/src/Gui/PasswordDialog.h
trojita-0.4.1/src/Gui/ProgressPopUp.cpp
trojita-0.4.1/src/Gui/ProgressPopUp.h
trojita-0.4.1/src/Gui/ProtocolLoggerWidget.cpp
trojita-0.4.1/src/Gui/ProtocolLoggerWidget.h
trojita-0.4.1/src/Gui/ReplaceCharValidator.cpp
trojita-0.4.1/src/Gui/ReplaceCharValidator.h
trojita-0.4.1/src/Gui/SettingsDialog.cpp
trojita-0.4.1/src/Gui/SettingsDialog.h
trojita-0.4.1/src/Gui/ShortcutHandler/ShortcutConfigDialog.cpp
trojita-0.4.1/src/Gui/ShortcutHandler/ShortcutConfigDialog.h
trojita-0.4.1/src/Gui/ShortcutHandler/ShortcutConfigWidget.cpp
trojita-0.4.1/src/Gui/ShortcutHandler/ShortcutConfigWidget.h
trojita-0.4.1/src/Gui/ShortcutHandler/ShortcutHandler.cpp
trojita-0.4.1/src/Gui/ShortcutHandler/ShortcutHandler.h
trojita-0.4.1/src/Gui/SimplePartWidget.cpp
trojita-0.4.1/src/Gui/SimplePartWidget.h
trojita-0.4.1/src/Gui/Spinner.cpp
trojita-0.4.1/src/Gui/Spinner.h
trojita-0.4.1/src/Gui/TaskProgressIndicator.cpp
trojita-0.4.1/src/Gui/TaskProgressIndicator.h
trojita-0.4.1/src/Gui/UserAgentWebPage.cpp
trojita-0.4.1/src/Gui/UserAgentWebPage.h
trojita-0.4.1/src/Gui/Util.cpp
trojita-0.4.1/src/Gui/Util.h
trojita-0.4.1/src/Gui/Window.cpp
trojita-0.4.1/src/Gui/Window.h
trojita-0.4.1/src/Gui/main.cpp
trojita-0.4.1/src/Harmattan/main.cpp
trojita-0.4.1/src/Imap/ConnectionState.cpp
trojita-0.4.1/src/Imap/ConnectionState.h
trojita-0.4.1/src/Imap/Encoders.cpp
trojita-0.4.1/src/Imap/Encoders.h
trojita-0.4.1/src/Imap/Exceptions.cpp
trojita-0.4.1/src/Imap/Exceptions.h
trojita-0.4.1/src/Imap/Model/Cache.cpp
trojita-0.4.1/src/Imap/Model/Cache.h
trojita-0.4.1/src/Imap/Model/CacheLoadingMode.h
trojita-0.4.1/src/Imap/Model/CatenateData.h
trojita-0.4.1/src/Imap/Model/CombinedCache.cpp
trojita-0.4.1/src/Imap/Model/CombinedCache.h
trojita-0.4.1/src/Imap/Model/CopyMoveOperation.h
trojita-0.4.1/src/Imap/Model/DiskPartCache.cpp
trojita-0.4.1/src/Imap/Model/DiskPartCache.h
trojita-0.4.1/src/Imap/Model/DragAndDrop.cpp
trojita-0.4.1/src/Imap/Model/DragAndDrop.h
trojita-0.4.1/src/Imap/Model/FlagsOperation.cpp
trojita-0.4.1/src/Imap/Model/FlagsOperation.h
trojita-0.4.1/src/Imap/Model/FullMessageCombiner.cpp
trojita-0.4.1/src/Imap/Model/FullMessageCombiner.h
trojita-0.4.1/src/Imap/Model/ImapAccess.cpp
trojita-0.4.1/src/Imap/Model/ImapAccess.h
trojita-0.4.1/src/Imap/Model/ItemRoles.h
trojita-0.4.1/src/Imap/Model/MailboxMetadata.cpp
trojita-0.4.1/src/Imap/Model/MailboxMetadata.h
trojita-0.4.1/src/Imap/Model/MailboxModel.cpp
trojita-0.4.1/src/Imap/Model/MailboxModel.h
trojita-0.4.1/src/Imap/Model/MailboxTree.cpp
trojita-0.4.1/src/Imap/Model/MailboxTree.h
trojita-0.4.1/src/Imap/Model/MailboxTreeFwd.h
trojita-0.4.1/src/Imap/Model/MemoryCache.cpp
trojita-0.4.1/src/Imap/Model/MemoryCache.h
trojita-0.4.1/src/Imap/Model/Model.cpp
trojita-0.4.1/src/Imap/Model/Model.h
trojita-0.4.1/src/Imap/Model/ModelWatcher.cpp
trojita-0.4.1/src/Imap/Model/ModelWatcher.h
trojita-0.4.1/src/Imap/Model/MsgListModel.cpp
trojita-0.4.1/src/Imap/Model/MsgListModel.h
trojita-0.4.1/src/Imap/Model/NetworkPolicy.h
trojita-0.4.1/src/Imap/Model/NetworkWatcher.cpp
trojita-0.4.1/src/Imap/Model/NetworkWatcher.h
trojita-0.4.1/src/Imap/Model/OneMessageModel.cpp
trojita-0.4.1/src/Imap/Model/OneMessageModel.h
trojita-0.4.1/src/Imap/Model/ParserState.cpp
trojita-0.4.1/src/Imap/Model/ParserState.h
trojita-0.4.1/src/Imap/Model/PrettyMailboxModel.cpp
trojita-0.4.1/src/Imap/Model/PrettyMailboxModel.h
trojita-0.4.1/src/Imap/Model/PrettyMsgListModel.cpp
trojita-0.4.1/src/Imap/Model/PrettyMsgListModel.h
trojita-0.4.1/src/Imap/Model/QAIM_reset.h
trojita-0.4.1/src/Imap/Model/SQLCache.cpp
trojita-0.4.1/src/Imap/Model/SQLCache.h
trojita-0.4.1/src/Imap/Model/SpecialFlagNames.cpp
trojita-0.4.1/src/Imap/Model/SpecialFlagNames.h
trojita-0.4.1/src/Imap/Model/SubscribeUnSubscribeOperation.h
trojita-0.4.1/src/Imap/Model/SubtreeModel.cpp
trojita-0.4.1/src/Imap/Model/SubtreeModel.h
trojita-0.4.1/src/Imap/Model/TaskFactory.cpp
trojita-0.4.1/src/Imap/Model/TaskFactory.h
trojita-0.4.1/src/Imap/Model/TaskPresentationModel.cpp
trojita-0.4.1/src/Imap/Model/TaskPresentationModel.h
trojita-0.4.1/src/Imap/Model/ThreadingMsgListModel.cpp
trojita-0.4.1/src/Imap/Model/ThreadingMsgListModel.h
trojita-0.4.1/src/Imap/Model/UidSubmitData.h
trojita-0.4.1/src/Imap/Model/Utils.cpp
trojita-0.4.1/src/Imap/Model/Utils.h
trojita-0.4.1/src/Imap/Model/VisibleTasksModel.cpp
trojita-0.4.1/src/Imap/Model/VisibleTasksModel.h
trojita-0.4.1/src/Imap/Network/FileDownloadManager.cpp
trojita-0.4.1/src/Imap/Network/FileDownloadManager.h
trojita-0.4.1/src/Imap/Network/ForbiddenReply.cpp
trojita-0.4.1/src/Imap/Network/ForbiddenReply.h
trojita-0.4.1/src/Imap/Network/MsgPartNetAccessManager.h
trojita-0.4.1/src/Imap/Network/MsgPartNetworkReply.cpp
trojita-0.4.1/src/Imap/Network/MsgPartNetworkReply.h
trojita-0.4.1/src/Imap/Parser/Command.cpp
trojita-0.4.1/src/Imap/Parser/Command.h
trojita-0.4.1/src/Imap/Parser/Data.cpp
trojita-0.4.1/src/Imap/Parser/Data.h
trojita-0.4.1/src/Imap/Parser/LowLevelParser.cpp
trojita-0.4.1/src/Imap/Parser/LowLevelParser.h
trojita-0.4.1/src/Imap/Parser/MailAddress.cpp
trojita-0.4.1/src/Imap/Parser/MailAddress.h
trojita-0.4.1/src/Imap/Parser/Message.cpp
trojita-0.4.1/src/Imap/Parser/Message.h
trojita-0.4.1/src/Imap/Parser/Parser.cpp
trojita-0.4.1/src/Imap/Parser/Parser.h
trojita-0.4.1/src/Imap/Parser/Response.cpp
trojita-0.4.1/src/Imap/Parser/Response.h
trojita-0.4.1/src/Imap/Parser/Rfc5322HeaderParser.cpp
trojita-0.4.1/src/Imap/Parser/Rfc5322HeaderParser.generated.cpp
trojita-0.4.1/src/Imap/Parser/Rfc5322HeaderParser.h
trojita-0.4.1/src/Imap/Parser/Sequence.cpp
trojita-0.4.1/src/Imap/Parser/Sequence.h
trojita-0.4.1/src/Imap/Parser/ThreadingNode.cpp
trojita-0.4.1/src/Imap/Parser/ThreadingNode.h
trojita-0.4.1/src/Imap/Tasks/AppendTask.cpp
trojita-0.4.1/src/Imap/Tasks/AppendTask.h
trojita-0.4.1/src/Imap/Tasks/CopyMoveMessagesTask.cpp
trojita-0.4.1/src/Imap/Tasks/CopyMoveMessagesTask.h
trojita-0.4.1/src/Imap/Tasks/CreateMailboxTask.cpp
trojita-0.4.1/src/Imap/Tasks/CreateMailboxTask.h
trojita-0.4.1/src/Imap/Tasks/DeleteMailboxTask.cpp
trojita-0.4.1/src/Imap/Tasks/DeleteMailboxTask.h
trojita-0.4.1/src/Imap/Tasks/EnableTask.cpp
trojita-0.4.1/src/Imap/Tasks/EnableTask.h
trojita-0.4.1/src/Imap/Tasks/ExpungeMailboxTask.cpp
trojita-0.4.1/src/Imap/Tasks/ExpungeMailboxTask.h
trojita-0.4.1/src/Imap/Tasks/ExpungeMessagesTask.cpp
trojita-0.4.1/src/Imap/Tasks/ExpungeMessagesTask.h
trojita-0.4.1/src/Imap/Tasks/Fake_ListChildMailboxesTask.cpp
trojita-0.4.1/src/Imap/Tasks/Fake_ListChildMailboxesTask.h
trojita-0.4.1/src/Imap/Tasks/Fake_OpenConnectionTask.cpp
trojita-0.4.1/src/Imap/Tasks/Fake_OpenConnectionTask.h
trojita-0.4.1/src/Imap/Tasks/FetchMsgMetadataTask.cpp
trojita-0.4.1/src/Imap/Tasks/FetchMsgMetadataTask.h
trojita-0.4.1/src/Imap/Tasks/FetchMsgPartTask.cpp
trojita-0.4.1/src/Imap/Tasks/FetchMsgPartTask.h
trojita-0.4.1/src/Imap/Tasks/GenUrlAuthTask.cpp
trojita-0.4.1/src/Imap/Tasks/GenUrlAuthTask.h
trojita-0.4.1/src/Imap/Tasks/GetAnyConnectionTask.cpp
trojita-0.4.1/src/Imap/Tasks/GetAnyConnectionTask.h
trojita-0.4.1/src/Imap/Tasks/IdTask.cpp
trojita-0.4.1/src/Imap/Tasks/IdTask.h
trojita-0.4.1/src/Imap/Tasks/IdleLauncher.cpp
trojita-0.4.1/src/Imap/Tasks/IdleLauncher.h
trojita-0.4.1/src/Imap/Tasks/ImapTask.cpp
trojita-0.4.1/src/Imap/Tasks/ImapTask.h
trojita-0.4.1/src/Imap/Tasks/KeepMailboxOpenTask.cpp
trojita-0.4.1/src/Imap/Tasks/KeepMailboxOpenTask.h
trojita-0.4.1/src/Imap/Tasks/ListChildMailboxesTask.cpp
trojita-0.4.1/src/Imap/Tasks/ListChildMailboxesTask.h
trojita-0.4.1/src/Imap/Tasks/NoopTask.cpp
trojita-0.4.1/src/Imap/Tasks/NoopTask.h
trojita-0.4.1/src/Imap/Tasks/NumberOfMessagesTask.cpp
trojita-0.4.1/src/Imap/Tasks/NumberOfMessagesTask.h
trojita-0.4.1/src/Imap/Tasks/ObtainSynchronizedMailboxTask.cpp
trojita-0.4.1/src/Imap/Tasks/ObtainSynchronizedMailboxTask.h
trojita-0.4.1/src/Imap/Tasks/OfflineConnectionTask.cpp
trojita-0.4.1/src/Imap/Tasks/OfflineConnectionTask.h
trojita-0.4.1/src/Imap/Tasks/OpenConnectionTask.cpp
trojita-0.4.1/src/Imap/Tasks/OpenConnectionTask.h
trojita-0.4.1/src/Imap/Tasks/SortTask.cpp
trojita-0.4.1/src/Imap/Tasks/SortTask.h
trojita-0.4.1/src/Imap/Tasks/SubscribeUnsubscribeTask.cpp
trojita-0.4.1/src/Imap/Tasks/SubscribeUnsubscribeTask.h
trojita-0.4.1/src/Imap/Tasks/ThreadTask.cpp
trojita-0.4.1/src/Imap/Tasks/ThreadTask.h
trojita-0.4.1/src/Imap/Tasks/UidSubmitTask.cpp
trojita-0.4.1/src/Imap/Tasks/UidSubmitTask.h
trojita-0.4.1/src/Imap/Tasks/UnSelectTask.cpp
trojita-0.4.1/src/Imap/Tasks/UnSelectTask.h
trojita-0.4.1/src/Imap/Tasks/UpdateFlagsOfAllMessagesTask.cpp
trojita-0.4.1/src/Imap/Tasks/UpdateFlagsOfAllMessagesTask.h
trojita-0.4.1/src/Imap/Tasks/UpdateFlagsTask.cpp
trojita-0.4.1/src/Imap/Tasks/UpdateFlagsTask.h
trojita-0.4.1/src/MSA/AbstractMSA.cpp
trojita-0.4.1/src/MSA/AbstractMSA.h
trojita-0.4.1/src/MSA/FakeMSA.cpp
trojita-0.4.1/src/MSA/FakeMSA.h
trojita-0.4.1/src/MSA/ImapSubmit.cpp
trojita-0.4.1/src/MSA/ImapSubmit.h
trojita-0.4.1/src/MSA/SMTP.cpp
trojita-0.4.1/src/MSA/SMTP.h
trojita-0.4.1/src/MSA/Sendmail.cpp
trojita-0.4.1/src/MSA/Sendmail.h
trojita-0.4.1/src/Plugins/AddressbookPlugin.cpp
trojita-0.4.1/src/Plugins/AddressbookPlugin.h
trojita-0.4.1/src/Plugins/PasswordPlugin.cpp
trojita-0.4.1/src/Plugins/PasswordPlugin.h
trojita-0.4.1/src/Plugins/PluginInterface.h
trojita-0.4.1/src/Plugins/PluginJob.cpp
trojita-0.4.1/src/Plugins/PluginJob.h
trojita-0.4.1/src/Plugins/PluginManager.cpp
trojita-0.4.1/src/Plugins/PluginManager.h
trojita-0.4.1/src/Streams/DeletionWatcher.cpp
trojita-0.4.1/src/Streams/DeletionWatcher.h
trojita-0.4.1/src/Streams/FakeSocket.cpp
trojita-0.4.1/src/Streams/FakeSocket.h
trojita-0.4.1/src/Streams/IODeviceSocket.cpp
trojita-0.4.1/src/Streams/IODeviceSocket.h
trojita-0.4.1/src/Streams/Socket.cpp
trojita-0.4.1/src/Streams/Socket.h
trojita-0.4.1/src/Streams/SocketFactory.cpp
trojita-0.4.1/src/Streams/SocketFactory.h
trojita-0.4.1/src/Streams/TrojitaZlibStatus.h
trojita-0.4.1/src/XtConnect/XtCache.cpp
trojita-0.4.1/src/XtConnect/XtCache.h
trojita-0.4.1/src/be.contacts/main.cpp
trojita-0.4.1/tests/Composer/test_Composer_Submission.cpp
trojita-0.4.1/tests/Composer/test_Composer_Submission.h
trojita-0.4.1/tests/Composer/test_Composer_responses.cpp
trojita-0.4.1/tests/Composer/test_Composer_responses.h
trojita-0.4.1/tests/Composer/test_Html_formatting.cpp
trojita-0.4.1/tests/Composer/test_Html_formatting.h
trojita-0.4.1/tests/Imap/test_Imap_BodyParts.cpp
trojita-0.4.1/tests/Imap/test_Imap_BodyParts.h
trojita-0.4.1/tests/Imap/test_Imap_CopyAndFlagOperations.cpp
trojita-0.4.1/tests/Imap/test_Imap_CopyAndFlagOperations.h
trojita-0.4.1/tests/Imap/test_Imap_DisappearingMailboxes.cpp
trojita-0.4.1/tests/Imap/test_Imap_DisappearingMailboxes.h
trojita-0.4.1/tests/Imap/test_Imap_Idle.cpp
trojita-0.4.1/tests/Imap/test_Imap_Idle.h
trojita-0.4.1/tests/Imap/test_Imap_LowLevelParser.cpp
trojita-0.4.1/tests/Imap/test_Imap_LowLevelParser.h
trojita-0.4.1/tests/Imap/test_Imap_Message.cpp
trojita-0.4.1/tests/Imap/test_Imap_Message.h
trojita-0.4.1/tests/Imap/test_Imap_Model.cpp
trojita-0.4.1/tests/Imap/test_Imap_Model.h
trojita-0.4.1/tests/Imap/test_Imap_Offline.cpp
trojita-0.4.1/tests/Imap/test_Imap_Offline.h
trojita-0.4.1/tests/Imap/test_Imap_Parser_parse.cpp
trojita-0.4.1/tests/Imap/test_Imap_Parser_parse.h
trojita-0.4.1/tests/Imap/test_Imap_Responses.cpp
trojita-0.4.1/tests/Imap/test_Imap_Responses.h
trojita-0.4.1/tests/Imap/test_Imap_SelectedMailboxUpdates.cpp
trojita-0.4.1/tests/Imap/test_Imap_SelectedMailboxUpdates.h
trojita-0.4.1/tests/Imap/test_Imap_Tasks_CreateMailbox.cpp
trojita-0.4.1/tests/Imap/test_Imap_Tasks_CreateMailbox.h
trojita-0.4.1/tests/Imap/test_Imap_Tasks_DeleteMailbox.cpp
trojita-0.4.1/tests/Imap/test_Imap_Tasks_DeleteMailbox.h
trojita-0.4.1/tests/Imap/test_Imap_Tasks_ListChildMailboxes.cpp
trojita-0.4.1/tests/Imap/test_Imap_Tasks_ListChildMailboxes.h
trojita-0.4.1/tests/Imap/test_Imap_Tasks_ObtainSynchronizedMailbox.cpp
trojita-0.4.1/tests/Imap/test_Imap_Tasks_ObtainSynchronizedMailbox.h
trojita-0.4.1/tests/Imap/test_Imap_Tasks_OpenConnection.cpp
trojita-0.4.1/tests/Imap/test_Imap_Tasks_OpenConnection.h
trojita-0.4.1/tests/Imap/test_Imap_Threading.cpp
trojita-0.4.1/tests/Imap/test_Imap_Threading.h
trojita-0.4.1/tests/Misc/test_Rfc5322.cpp
trojita-0.4.1/tests/Misc/test_Rfc5322.h
trojita-0.4.1/tests/Misc/test_RingBuffer.cpp
trojita-0.4.1/tests/Misc/test_RingBuffer.h
trojita-0.4.1/tests/Misc/test_SenderIdentitiesModel.cpp
trojita-0.4.1/tests/Misc/test_SenderIdentitiesModel.h
trojita-0.4.1/tests/Misc/test_SqlCache.cpp
trojita-0.4.1/tests/Misc/test_SqlCache.h
trojita-0.4.1/tests/Misc/test_algorithms.cpp
trojita-0.4.1/tests/Misc/test_algorithms.h
trojita-0.4.1/tests/Utils/FakeCapabilitiesInjector.h
trojita-0.4.1/tests/Utils/LibMailboxSync.cpp
trojita-0.4.1/tests/Utils/LibMailboxSync.h
trojita-0.4.1/tests/Utils/ModelEvents.cpp
trojita-0.4.1/tests/Utils/ModelEvents.h
trojita-0.4.1/tests/Utils/TagGenerator.h
trojita-0.4.1/tests/Utils/headless_test.h

LGPL (v2 or later)
------------------
trojita-0.4.1/src/Imap/Model/kdeui-itemviews/kbihash_p.h
trojita-0.4.1/src/Imap/Model/kdeui-itemviews/kdescendantsproxymodel.cpp
trojita-0.4.1/src/Imap/Model/kdeui-itemviews/kdescendantsproxymodel.h
trojita-0.4.1/src/Imap/Parser/3rdparty/rfccodecs.cpp
trojita-0.4.1/src/Imap/Parser/3rdparty/rfccodecs.h
trojita-0.4.1/src/QmlSupport/QNAMWebView/plugin.cpp
trojita-0.4.1/src/QmlSupport/QNAMWebView/plugin.h
trojita-0.4.1/src/QmlSupport/QNAMWebView/qdeclarativewebview.cpp
trojita-0.4.1/src/QmlSupport/QNAMWebView/qdeclarativewebview_p.h
trojita-0.4.1/tests/Misc/test_rfccodecs.h

LGPL (v2)
---------
trojita-0.4.1/src/Imap/Parser/3rdparty/kcodecs.cpp
trojita-0.4.1/src/Imap/Parser/3rdparty/kcodecs.h
trojita-0.4.1/tests/Misc/test_rfccodecs.cpp

LGPL (v2.1 or later) (with incorrect FSF address)
-------------------------------------------------
trojita-0.4.1/src/XtConnect/xsqlquery.cpp
trojita-0.4.1/src/XtConnect/xsqlquery.h

Unknown or generated
--------------------
trojita-0.4.1/cmake/FindCXXFeatures/cxx11-test-alignof.cxx
trojita-0.4.1/cmake/FindCXXFeatures/cxx11-test-auto.cxx
trojita-0.4.1/cmake/FindCXXFeatures/cxx11-test-auto_fail_compile.cxx
trojita-0.4.1/cmake/FindCXXFeatures/cxx11-test-class_override_final.cxx
trojita-0.4.1/cmake/FindCXXFeatures/cxx11-test-class_override_final_fail_compile.cxx
trojita-0.4.1/cmake/FindCXXFeatures/cxx11-test-constexpr.cxx
trojita-0.4.1/cmake/FindCXXFeatures/cxx11-test-cstdint_header.cxx
trojita-0.4.1/cmake/FindCXXFeatures/cxx11-test-decltype.cxx
trojita-0.4.1/cmake/FindCXXFeatures/cxx11-test-defaulted_functions.cxx
trojita-0.4.1/cmake/FindCXXFeatures/cxx11-test-deleted_functions.cxx
trojita-0.4.1/cmake/FindCXXFeatures/cxx11-test-deleted_functions_fail_compile.cxx
trojita-0.4.1/cmake/FindCXXFeatures/cxx11-test-func_identifier.cxx
trojita-0.4.1/cmake/FindCXXFeatures/cxx11-test-initializer_list.cxx
trojita-0.4.1/cmake/FindCXXFeatures/cxx11-test-lambda.cxx
trojita-0.4.1/cmake/FindCXXFeatures/cxx11-test-long_long.cxx
trojita-0.4.1/cmake/FindCXXFeatures/cxx11-test-nullptr.cxx
trojita-0.4.1/cmake/FindCXXFeatures/cxx11-test-nullptr_fail_compile.cxx
trojita-0.4.1/cmake/FindCXXFeatures/cxx11-test-rvalue_references.cxx
trojita-0.4.1/cmake/FindCXXFeatures/cxx11-test-sizeof_member.cxx
trojita-0.4.1/cmake/FindCXXFeatures/cxx11-test-static_assert.cxx
trojita-0.4.1/cmake/FindCXXFeatures/cxx11-test-static_assert_fail_compile.cxx
trojita-0.4.1/cmake/FindCXXFeatures/cxx11-test-variadic_templates.cxx
trojita-0.4.1/src/Gui/FlowLayout.cpp
trojita-0.4.1/src/Gui/FlowLayout.h
trojita-0.4.1/src/Gui/LineEdit.cpp
trojita-0.4.1/src/Gui/LineEdit.h
trojita-0.4.1/src/Gui/TagListWidget.cpp
trojita-0.4.1/src/Gui/TagListWidget.h
trojita-0.4.1/src/Gui/TagWidget.cpp
trojita-0.4.1/src/Gui/TagWidget.h
trojita-0.4.1/src/Harmattan/qmlapplicationviewer/qmlapplicationviewer.cpp
trojita-0.4.1/src/Harmattan/qmlapplicationviewer/qmlapplicationviewer.h
trojita-0.4.1/src/Imap/Model/ModelTest/modeltest.cpp
trojita-0.4.1/src/Imap/Model/ModelTest/modeltest.h
trojita-0.4.1/src/Imap/Network/MsgPartNetAccessManager.cpp
trojita-0.4.1/src/Imap/Parser/regenerate-ragel.sh
trojita-0.4.1/src/Streams/3rdparty/rfc1951.cpp
trojita-0.4.1/src/Streams/3rdparty/rfc1951.h
trojita-0.4.1/src/mimetypes-qt4/io/qstandardpaths.cpp
trojita-0.4.1/src/mimetypes-qt4/io/qstandardpaths.h
trojita-0.4.1/src/mimetypes-qt4/io/qstandardpaths_mac.cpp
trojita-0.4.1/src/mimetypes-qt4/io/qstandardpaths_os2.cpp
trojita-0.4.1/src/mimetypes-qt4/io/qstandardpaths_unix.cpp
trojita-0.4.1/src/mimetypes-qt4/io/qstandardpaths_win.cpp
trojita-0.4.1/src/mimetypes-qt4/io/qsystemlibrary_p.h
trojita-0.4.1/src/mimetypes-qt4/mimetypes/qmimedatabase.cpp
trojita-0.4.1/src/mimetypes-qt4/mimetypes/qmimedatabase.h
trojita-0.4.1/src/mimetypes-qt4/mimetypes/qmimedatabase_p.h
trojita-0.4.1/src/mimetypes-qt4/mimetypes/qmimeglobpattern.cpp
trojita-0.4.1/src/mimetypes-qt4/mimetypes/qmimeglobpattern_p.h
trojita-0.4.1/src/mimetypes-qt4/mimetypes/qmimemagicrule.cpp
trojita-0.4.1/src/mimetypes-qt4/mimetypes/qmimemagicrule_p.h
trojita-0.4.1/src/mimetypes-qt4/mimetypes/qmimemagicrulematcher.cpp
trojita-0.4.1/src/mimetypes-qt4/mimetypes/qmimemagicrulematcher_p.h
trojita-0.4.1/src/mimetypes-qt4/mimetypes/qmimeprovider.cpp
trojita-0.4.1/src/mimetypes-qt4/mimetypes/qmimeprovider_p.h
trojita-0.4.1/src/mimetypes-qt4/mimetypes/qmimetype.cpp
trojita-0.4.1/src/mimetypes-qt4/mimetypes/qmimetype.h
trojita-0.4.1/src/mimetypes-qt4/mimetypes/qmimetype_p.h
trojita-0.4.1/src/mimetypes-qt4/mimetypes/qmimetypeparser.cpp
trojita-0.4.1/src/mimetypes-qt4/mimetypes/qmimetypeparser_p.h
trojita-0.4.1/src/qwwsmtpclient/qwwsmtpclient.cpp
trojita-0.4.1/src/qwwsmtpclient/qwwsmtpclient.h
trojita-0.4.1/tests/imap-folder-sync/1.sh
trojita-0.4.1/tests/imap-folder-sync/2.sh

[x]: If the package is under multiple licenses, the licensing breakdown must
     be documented in the spec.
[!]: Package does not own files or directories owned by other packages.
     Note: Dirs in package are owned also by:
     /usr/share/icons/hicolor/32x32/apps(hicolor-icon-theme, fedora-logos,
     eom), /usr/share/icons/hicolor/scalable/apps(hicolor-icon-theme, fedora-
     logos, eom, hexchat), /usr/share/icons/hicolor/32x32(hicolor-icon-theme,
     fedora-logos, eom), /usr/share/icons/hicolor(hicolor-icon-theme, fedora-
     logos), /usr/share/icons/hicolor/scalable(hicolor-icon-theme, fedora-
     logos, eom, hexchat)
[x]: %build honors applicable compiler flags or justifies otherwise.
[x]: Package contains no bundled libraries without FPC exception.
[x]: Changelog in prescribed format.
[x]: Sources contain only permissible code or content.
[-]: Development files must be in a -devel package
[x]: Package uses nothing in %doc for runtime.
[x]: Package consistently uses macros (instead of hard-coded directory names).
[x]: Package is named according to the Package Naming Guidelines.
[x]: Package does not generate any conflict.
[x]: Package obeys FHS, except libexecdir and /usr/target.
[-]: If the package is a rename of another package, proper Obsoletes and
     Provides are present.
[x]: Requires correct, justified where necessary.
[x]: Spec file is legible and written in American English.
[-]: Package contains systemd file(s) if in need.
[x]: gtk-update-icon-cache is invoked in %postun and %posttrans if package
     contains icons.
     Note: icons in trojita
[x]: Useful -debuginfo package or justification otherwise.
[x]: Package is not known to require an ExcludeArch tag.
[x]: Large documentation must go in a -doc subpackage. Large could be size
     (~1MB) or number of files.
     Note: Documentation size is 10240 bytes in 2 files.
[x]: Package complies to the Packaging Guidelines
[x]: Package successfully compiles and builds into binary rpms on at least one
     supported primary architecture.
[x]: Package installs properly.
[x]: Rpmlint is run on all rpms the build produces.
     Note: There are rpmlint messages (see attachment).
[x]: 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 is included in %doc.
[x]: Package requires other packages for directories it uses.
[x]: Package must own all directories that it creates.
[x]: All build dependencies are listed in BuildRequires, except for any that
     are listed in the exceptions section of Packaging Guidelines.
[x]: Package uses either %{buildroot} or $RPM_BUILD_ROOT
[x]: Package does not run rm -rf %{buildroot} (or $RPM_BUILD_ROOT) at the
     beginning of %install.
[x]: Macros in Summary, %description expandable at SRPM build time.
[x]: Package contains desktop file if it is a GUI application.
[x]: Package does not contain duplicates in %files.
[x]: Permissions on files are set properly.
[x]: Package use %makeinstall only when make install' ' DESTDIR=... doesn't
     work.
[x]: Package is named using only allowed ASCII characters.
[x]: Package do not use a name that already exist
[x]: Package is not relocatable.
[x]: Sources used to build the package match the upstream source, as provided
     in the spec URL.
[x]: Spec file name must match the spec package %{name}, in the format
     %{name}.spec.
[x]: File names are valid UTF-8.
[x]: Packages must not store files under /srv, /opt or /usr/local

===== SHOULD items =====

Generic:
[x]: If the source package does not include license text(s) as a separate file
     from upstream, the packager SHOULD query upstream to include it.
[x]: Final provides and requires are sane (see attachments).
[x]: Package functions as described.
[x]: Latest version is packaged.
[x]: Package does not include license text files separate from upstream.
[x]: Description and summary sections in the package spec file contains
     translations for supported Non-English languages, if available.
[x]: Package should compile and build into binary rpms on all supported
     architectures.
[x]: %check is present and all tests pass.
[x]: Packages should try to preserve timestamps of original installed files.
[x]: Packager, Vendor, PreReq, Copyright tags should not be in spec file
[x]: Sources can be downloaded from URI in Source: tag
[x]: Reviewer should test that the package builds in mock.
[x]: Buildroot is not present
[x]: Package has no %clean section with rm -rf %{buildroot} (or
     $RPM_BUILD_ROOT)
[x]: Dist tag is present (not strictly required in GL).
[x]: No file requires outside of /etc, /bin, /sbin, /usr/bin, /usr/sbin.
[x]: Uses parallel make %{?_smp_mflags} macro.
[x]: SourceX is a working URL.
[x]: Spec use %global instead of %define unless justified.

===== EXTRA items =====

Generic:
[ ]: Large data in /usr/share should live in a noarch subpackage if package is
     arched.
     Note: Arch-ed rpms have a total of 2181120 bytes in /usr/share
[x]: Rpmlint is run on all installed packages.
     Note: There are rpmlint messages (see attachment).


Rpmlint
-------
Checking: trojita-0.4.1-2.fc21.i686.rpm
          trojita-0.4.1-2.fc21.src.rpm
trojita.i686: W: spelling-error %description -l en_US Trojitá -> Trojan
trojita.i686: W: spelling-error %description -l en_US interoperable -> inter operable, inter-operable, inoperable
trojita.i686: W: no-manual-page-for-binary be.contacts
trojita.i686: W: no-manual-page-for-binary trojita
trojita.src: W: spelling-error %description -l en_US Trojitá -> Trojan
trojita.src: W: spelling-error %description -l en_US interoperable -> inter operable, inter-operable, inoperable
2 packages and 0 specfiles checked; 0 errors, 6 warnings.




Rpmlint (installed packages)
----------------------------
# rpmlint trojita
trojita.i686: W: spelling-error %description -l en_US Trojitá -> Trojan
trojita.i686: W: spelling-error %description -l en_US interoperable -> inter operable, inter-operable, inoperable
trojita.i686: W: no-manual-page-for-binary be.contacts
trojita.i686: W: no-manual-page-for-binary trojita
1 packages and 0 specfiles checked; 0 errors, 4 warnings.
# echo 'rpmlint-done:'



Requires
--------
trojita (rpmlib, GLIBC filtered):
    /bin/sh
    libQtCore.so.4
    libQtGui.so.4
    libQtNetwork.so.4
    libQtSql.so.4
    libQtWebKit.so.4
    libc.so.6
    libgcc_s.so.1
    libgcc_s.so.1(GCC_3.0)
    libm.so.6
    libstdc++.so.6
    libstdc++.so.6(CXXABI_1.3)
    libtrojita_plugins.so
    libz.so.1
    rtld(GNU_HASH)



Provides
--------
trojita:
    application()
    application(trojita.desktop)
    libtrojita_plugins.so
    trojita
    trojita(x86-32)



Unversioned so-files
--------------------
trojita: /usr/lib/trojita/libtrojita_plugins.so

Source checksums
----------------
http://downloads.sourceforge.net/trojita/trojita-0.4.1.tar.bz2 :
  CHECKSUM(SHA256) this package     : 68a17498e70fd66966917fe4ecb90e6fe6f36f439c714552b8a97c004fe687de
  CHECKSUM(SHA256) upstream package : 68a17498e70fd66966917fe4ecb90e6fe6f36f439c714552b8a97c004fe687de


Generated by fedora-review 0.5.1 (bb9bf27) last change: 2013-12-13
Command line :/bin/fedora-review -rvn trojita-0.4.1-2.fc20.src.rpm
Buildroot used: fedora-rawhide-i386
Active plugins: Generic, Shell-api, C/C++
Disabled plugins: Java, Python, fonts, SugarActivity, Ocaml, Perl, Haskell, R, PHP, Ruby
Disabled flags: EXARCH, EPEL5, BATCH, DISTTAG

--------------------------------------------
Besides above issues, you have:

1. From the koji build log:

-- The following features have been disabled:
 * WITH_HARMATTAN , Build MeeGo Harmattan version
 * WITH_QT5 , Build with Qt5 library
 * DEV_FATAL_WARNINGS , Turn build warnings into errors (developers only)
 * WITH_RAGEL , Build with Ragel library

WITH_RAGEL option is needed for building the parser from source, right?

ragel is in Fedora repo, you should use that one as BR.

2. %check section, since upstream has stated:

$ ctest -j 4 --output-on-failure

So I think you can use smp flags here(you can have a try)

3. Appdata file should be created.

Comment 10 Jan Kundrát 2014-04-25 09:37:10 UTC
> ragel is in Fedora repo, you should use that one as BR.

There's a small problem with that -- Ragel uses host's type sizes and signedness when generating the .cpp file, which breaks the build when cross-compiling on amd64 for arm because amd64's "char" can store 0-255, while the ARM's one is -128-127. I reported this to Ragel developers [1], but the fix is still not integrated AFAIK. I don't think that would affect native builds, though, so perhaps it's OK to use this in Fedora.

> $ ctest -j 4 --output-on-failure
>
> So I think you can use smp flags here(you can have a try)

Note that it uses a different syntax from make -- "-j 4" vs make's "-j4".

Also be careful and do not activate parallel tests on build environments where the system is under heavy load. Some of these tests operate on QTimers with a deadline on the order of 20ms. I've seen problems with Ubuntu's build farm which was fixed by switching to serial invocation of these tests.

> Bug 332578 - superfluous x-test language
> [https://bugs.kde.org/show_bug.cgi?id=332578]

Fixed now, will be fixed in the next release.

> Bug 332579 - unversioned plugins library (rpmlint invalid-soname issue)
> [https://bugs.kde.org/show_bug.cgi?id=332579]

Patches for this are welcome; I'm not that much familiar with cmake to know what a perfect fix is.

[1] http://thread.gmane.org/gmane.comp.parsers.ragel.user/933

Comment 11 Karel Volný 2014-05-05 20:38:51 UTC
thanks Jan for the update

sorry, I'm overloaded now, there was vacation on May 1st and there will be on May 8th, things should settle after the next RHSCL release, dont't expect me to get back to this earlier than second half of May :-(

Comment 12 Kevin Kofler 2014-05-29 23:17:24 UTC
We indeed do not care about cross builds for Fedora packages.

Comment 13 Christopher Meng 2014-07-29 03:49:55 UTC
Needinfo on me when you ready.

Comment 14 Karel Volný 2014-10-27 14:59:39 UTC
oops, this took longer than expected :-(

here's the new version:

Spec URL: http://kvolny.fedorapeople.org/trojita.spec
SRPM URL: http://kvolny.fedorapeople.org/trojita-0.4.1-3.fc20.src.rpm

it only adds ragel dependency ...

0) "above issues" - I see just

[!]: Package does not own files or directories owned by other packages.

- anything else?

as for the icon dirs ownership, I've already responded in comment #4 and after re-reading http://fedoraproject.org/wiki/Packaging:Guidelines#File_and_Directory_Ownership I believe not requiring otherwise unneeded package is the correct solution

1) ragel is now used

2) following the discussion in comment #10, I believe it is better not to mess with it; when I've done my testbuild, tests took just 11 seconds so there's not much to gain here

3) appdata got added upstream:

http://quickgit.kde.org/?p=trojita.git&a=commit&h=66cf5af897741d9655c2836ce1e5db2c22c8636d

so I'd prefer to just wait for the next version and pick it up from the upstream tarball rather than to add own copy now

Comment 15 Kevin Kofler 2014-10-27 17:48:51 UTC
I still disagree about your handling of the hicolor icon theme.

The hicolor-icon-theme package is a "*filesystem"-type package. Therefore, this section of the guidelines applies:
> An exception
> Sometimes, it may be preferable for such directories to be owned by an
> "artificial filesystem" package, such as mozilla-filesystem. These packages are
> designed to be explicitly required when other packages store files in their
> directories, thus, in such situations, these packages should explicitly Require
> the artificial filesystem package and not multiply own those directories.
> Packagers should consider the number of affected directories and packages when
> determining whether to create artificial filesystem packages, and use their own
> best judgement to determine if this is necessary or not.

Comment 16 Karel Volný 2014-10-29 13:39:31 UTC
(In reply to Kevin Kofler from comment #15)
> The hicolor-icon-theme package is a "*filesystem"-type package.

the catch is that it is "*filesystem"-type but not "*-filesystem"

it carries non-empty payload (I mean actual files of nonzero size, not just the directory structure)

this is Qt application - it doesn't need 100+ MB GTK icon cache, and more generally the post scriptlets are even allowed to ignore if gtk-update-icon-cache is missing

if something like "icons-filesystem" is going to be created, I'll gladly add a dependency on it, but the current implementation of "hicolor-icon-theme" doesn't match what I think the abovequoted exception refers to, despite it is very close ... if it'd be added to the guidelines along the reference to the "man" package, there would be no space for doubt of course :-)

Comment 17 Kevin Kofler 2014-10-29 23:32:25 UTC
The icon-theme.cache file is actually ghosted, which means it is NOT part of the installed size of the hicolor-icon-theme package. The file is NOT created by installing the hicolor-icon-theme package, but it is created on your system by gtk-update-icon-cache, if (and only if) gtk-update-icon-cache is installed. And gtk-update-icon-cache will create that file whether you have the hicolor-icon-theme package installed or not.

The actual size of hicolor-icon-theme is only these files:
-rw-r--r--   1 root root     27095 27. Feb 2014  /usr/share/icons/hicolor/index.theme
required by the freedesktop.org icon theme spec. Strictly speaking, installing an icon to hicolor without that file being present is meaningless.

-rw-r--r--   1 root root      2688 17. Dez 2013  /usr/share/doc/hicolor-icon-theme-0.13/ChangeLog
-rw-r--r--   1 root root     17992 17. Dez 2013  /usr/share/doc/hicolor-icon-theme-0.13/COPYING
-rw-r--r--   1 root root       433 17. Dez 2013  /usr/share/doc/hicolor-icon-theme-0.13/README
Documentation and license files, as per the packaging guidelines.

The total installed size of hicolor-icon-theme is a whopping 48208 bytes. I would understand your complaint if we were still shipping the original hicolor-icon-theme from KDE 2, which contained actual icons (that's where the "hicolor" name historically comes from), but as it stands, you are just splitting hairs (or not understanding the meaning of %ghost in RPM).

Comment 18 Karel Volný 2014-11-03 16:47:59 UTC
(In reply to Kevin Kofler from comment #17)
> The icon-theme.cache file is actually ghosted, which means it is NOT part of
> the installed size of the hicolor-icon-theme package.

okay, sorry, I've used improper logical shortcut no file installed = no space eaten

> And gtk-update-icon-cache will create that file whether you have the
> hicolor-icon-theme package installed or not.

well, in that case, wouldn't that be better if the file is owned by gtk2, which provides gtk-update-icon-cache?

> -rw-r--r--   1 root root     27095 27. Feb 2014  /usr/share/icons/hicolor/index.theme
> required by the freedesktop.org icon theme spec. Strictly speaking, installing
> an icon to hicolor without that file being present is meaningless.

strictly speaking yes, but in case you're not interested in icons, it's still a little bit better to just install the unwanted icon (when it is not in separate package) rather than to install icon+theme

> The total installed size of hicolor-icon-theme is a whopping 48208 bytes. I
> would understand your complaint if we were still shipping the original
> hicolor-icon-theme from KDE 2, which contained actual icons (that's where
> the "hicolor" name historically comes from), but as it stands, you are just
> splitting hairs (or not understanding the meaning of %ghost in RPM).

I don't think the approach "it's just X bytes, next to nothing, let's waste it" is the best ...

but that would be a different point

I'm not quite sure about the interpretation of the packaging guidelines ... if you say depending on hicolor-icon-theme is the best thing to do (and I don't say it isn't, just that in my POV it's not that clear), please file a request to change the guidelines to mandate hicolor-icon-theme dependency for packages installing icons, and once it gets changed, we are over with this discussion - and as a bonus, bugs for other packages owning those directories could be filed then so that the mess gets cleaned up

wouldn't it be better to make it absolutely clear for all the packagers rather than arguing here?

Comment 19 Rex Dieter 2014-12-31 21:58:34 UTC
Ping, Christopher, can you continue with the review?  it's been a couple of months since comment #14 requesting feedback.

Comment 20 Björn 'besser82' Esser 2015-02-06 17:32:25 UTC
Taking over here…

Comment 21 Mario Blättermann 2015-02-07 16:44:09 UTC
%doc LICENSE README

Please move the license text to %license:
https://fedoraproject.org/wiki/Packaging:LicensingGuidelines?rd=Packaging/LicensingGuidelines#License_Text

Comment 22 Raphael Groner 2015-02-07 20:13:21 UTC
(In reply to Mario Blättermann from comment #21)
> %doc LICENSE README
> 
> Please move the license text to %license:
> https://fedoraproject.org/wiki/Packaging:LicensingGuidelines?rd=Packaging/
> LicensingGuidelines#License_Text

This won't work properly when a package for f20 is needed. 

Karel, do you plan to package also for f20? If yes, you have to use a %if conditional to exclude %license and keep %doc.

Comment 23 Zbigniew Jędrzejewski-Szmek 2015-02-08 00:28:01 UTC
(In reply to Raphael Groner from comment #22)
> Karel, do you plan to package also for f20? If yes, you have to use a %if
> conditional to exclude %license and keep %doc.
No. See https://fedorahosted.org/fpc/ticket/411#comment:11 for a better solution.

Comment 24 Karel Volný 2015-02-09 12:32:37 UTC
(In reply to Raphael Groner from comment #22)
> (In reply to Mario Blättermann from comment #21)
> > %doc LICENSE README
> > 
> > Please move the license text to %license:
> > https://fedoraproject.org/wiki/Packaging:LicensingGuidelines?rd=Packaging/
> > LicensingGuidelines#License_Text

thanks for heads up

> This won't work properly when a package for f20 is needed. 
> 
> Karel, do you plan to package also for f20? If yes, you have to use a %if
> conditional to exclude %license and keep %doc.

no, I do not plan to get it into any older releases


btw, has anyone taken the hicolor-icon-theme issue anywhere, have I missed something?

Comment 25 Raphael Groner 2015-02-09 13:31:02 UTC
(In reply to Karel Volný from comment #24)
…
> btw, has anyone taken the hicolor-icon-theme issue anywhere, have I missed
> something?

From your spec file:
%dir %{_datadir}/icons/hicolor
%dir %{_datadir}/icons/hicolor/*
%dir %{_datadir}/icons/hicolor/*/apps

Remove these lines and put "Requires: hicolor-icon-theme". The guideline says to not own folders from a filesystem package, hicolor-icon-theme owns those folders already. This is the common way to do it.

Further, insert the ScriptletSnippets from your comment #5, for proper handling of icon cache as needed in several desktops.
https://fedoraproject.org/wiki/Packaging:ScriptletSnippets#Icon_Cache

Comment 26 Karel Volný 2015-02-09 14:09:59 UTC
(In reply to Raphael Groner from comment #25)
> Remove these lines and put "Requires: hicolor-icon-theme". The guideline
> says to not own folders from a filesystem package, hicolor-icon-theme owns
> those folders already. This is the common way to do it.

please re-read comments 16-18

the fact that a package owns directories doesn't automatically make it "a filesystem package" - in fact the guidelines[*] give an example where a package (gtk-doc) owns a directory (/usr/share/gtk-doc/) and yet the second package (evolution) _should own_ that directory

[*] https://fedoraproject.org/wiki/Packaging:Guidelines#The_directory_is_owned_by_a_package_which_is_not_required_for_your_package_to_function

give me some official statement that hicolor-icon-theme is an exception both to naming scheme (it's not *-filesystem) and both that it can include not just (empty) directories

e.g., the easiest, have this bullet:

"any directories owned by the filesystem, man, or other explicitly created -filesystem packages"

changed to

"any directories owned by the filesystem, man, hicolor-icon-theme, or other explicitly created -filesystem packages"

otherwise, formally, I cannot agree with your interpretation of the guidelines, and personally, I do not like pulling in unnecessary dependencies

Comment 27 Michael Schwendt 2015-02-09 17:52:15 UTC
Please don't be so stubborn.

There is general agreement about explicitly requiring hicolor-icon-theme package instead of _trying_ to "own" all used directories. See e.g.
  https://lists.fedoraproject.org/pipermail/devel/2012-January/161098.html

One(/the?) reason why it's still not in the guidelines could be that the FPC often expects a ticket to be opened and a guidelines change draft to be attached before anything would happen at all. 
  https://lists.fedoraproject.org/pipermail/devel/2012-January/161101.html
And when that doesn't happen, an issue is forgotten, and nobody from the FPC drives it forward "automatically" either.

Comment 28 Kevin Kofler 2015-02-25 18:02:20 UTC
As I already said in comment #15 and explained in comment #17, I also agree that you MUST require hicolor-icon-theme instead of owning the same directories.

Comment 29 Raphael Groner 2015-02-28 21:42:37 UTC
SPEC: https://raphgro.fedorapeople.org/review/qt/trojita/trojita.spec
SRPM: https://raphgro.fedorapeople.org/review/qt/trojita/trojita-0.5-1.fc21.src.rpm

rawhide scratch: http://koji.fedoraproject.org/koji/taskinfo?taskID=9102479

* Sat Feb 28 2015 Raphael Groner <projects.rg (AT) smart.ms> - 0.5-1
- clean files section and R: hicolor-icon-theme
- introduce license macro
- use name macro generally
- new upstream version 0.5
- distribute doxygen files

Comment 30 Raphael Groner 2015-02-28 22:12:02 UTC
Fixed help2man. New rawhide scratch: http://koji.fedoraproject.org/koji/taskinfo?taskID=9102581

Comment 31 Raphael Groner 2015-03-30 13:59:39 UTC
any news here?

Comment 32 Raphael Groner 2015-03-31 23:07:02 UTC
HTML formatting seems to fail with Qt5, see upstream bug 345739.

Release #2 with enabled Qt5.

SPEC: https://raphgro.fedorapeople.org/review/qt/trojita/trojita.spec
SRPM: https://raphgro.fedorapeople.org/review/qt/trojita/trojita-0.5-2.fc21.src.rpm

rawhide scratch: http://koji.fedoraproject.org/koji/taskinfo?taskID=9386480

Comment 33 Christopher Meng 2015-04-01 04:39:52 UTC
Taking back.


So, who is gonna submit the final package?

Comment 34 Raphael Groner 2015-04-01 09:26:34 UTC
Not sure how long to wait for Karel as the original requester. I could take this package and open a new bug for the request.

Comment 35 Christian Dersch 2015-04-01 14:38:43 UTC
(In reply to Raphael Groner from comment #29)
> SPEC: https://raphgro.fedorapeople.org/review/qt/trojita/trojita.spec
> SRPM:
> https://raphgro.fedorapeople.org/review/qt/trojita/trojita-0.5-1.fc21.src.rpm
> 
> rawhide scratch: http://koji.fedoraproject.org/koji/taskinfo?taskID=9102479
> 
> * Sat Feb 28 2015 Raphael Groner <projects.rg (AT) smart.ms> - 0.5-1
> - clean files section and R: hicolor-icon-theme
> - introduce license macro
> - use name macro generally
> - new upstream version 0.5
> - distribute doxygen files

Any need for the doxygen stuff (I get a -doc package with >300mb size)? It generates the developer documentation, no user documentation. As trojita is a simple GUI application and no library for development I would remove it.

Greetings,
Christian

Comment 36 Raphael Groner 2015-04-01 17:12:10 UTC
* Wed Apr 01 2015 Raphael Groner <> - 0.5-3
- ease switching build with qt4 or qt5
- disable doxygen
- remove toolkit from summary
- use build subfolder
- improve tests execution

SPEC: https://raphgro.fedorapeople.org/review/qt/trojita/trojita.spec
SRPM: https://raphgro.fedorapeople.org/review/qt/trojita/trojita-0.5-3.fc21.src.rpm

rawhide scratch: http://koji.fedoraproject.org/koji/taskinfo?taskID=9393885

Comment 37 Jan Kundrát 2015-04-01 17:26:37 UTC
I got curious what's in the generated manpage. It says "QXcbConnection: Could not connect to display". Does it try to e.g. parse output of `trojita --help`? That requires X11.

With my upstream hat on, I strongly prefer to always run the whole test suite when doing builds. If a test fails, that's a bug which should be fixed and not papered over. That's what I am not thrilled by disabling the test_Html_formatting test, but maybe it's just a temporary thing. I believe that the bug is in the interaction of Fedora's Qt packaging and Fedora's Xvfb, because the tests work on CentOS 7 (Trojita's CI) and some ancient Ubuntu (KDE's CI). My suggestion here is to ask Fedora Qt5 packagers for help.

Comment 38 Rex Dieter 2015-04-01 17:30:07 UTC
Re: test suite

We can/will certainly investigate further, but it's not worth blocking the pkg review for.  Once imported, testing will be much easier (and collaborative).

Comment 39 Raphael Groner 2015-04-01 17:48:58 UTC
It is really strange with the html test case. I tried now to only execute this one but it works as alone!??

http://koji.fedoraproject.org/koji/watchlogs?taskID=9394112

Maybe it happens only cause of running out of memory, e.g. when doxygen is enabled what we do not need.

Comment 40 Jan Kundrát 2015-04-01 18:00:16 UTC
@Rex, OK, sorry for noise.

@Raphael, I'm a bit confused -- the log you pointed at says that you asked ctest to skip that test, so it isn't laucnhed at all. Ctest reports 26 tests in total, while we've 27 tests -- as expected, given the -E option.

Comment 41 Kevin Kofler 2015-04-01 18:06:50 UTC
Many Fedora packages don't run any test suite at all, or ignore failures. It's quite common that tests don't pass in Koji for whatever reason.

Comment 42 Raphael Groner 2015-04-01 18:07:07 UTC
Created attachment 1009812 [details]
build log from koji with failed test of html formatting

Comment 44 Raphael Groner 2015-04-02 15:05:47 UTC
Closing here cause the original requester is missed since weeks (its last comment #26 in February).

Comment 45 Raphael Groner 2015-04-02 15:19:32 UTC
Can give a really last chance, to comply fully with the guideline.

Requester, please answer in one week to not loose this review. If not, I can maintain the package instead.

https://fedoraproject.org/wiki/Policy_for_stalled_package_reviews#Submitter_not_responding

Comment 46 Raphael Groner 2015-05-08 21:10:13 UTC
Closing here.

Comment 48 Raphael Groner 2015-05-09 09:34:41 UTC
Please look at bug #1208582 for the new review.


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