Bug 386547

Summary: Aqubanking credit transfer and translation not working with 4.8.1
Product: [Applications] kmymoney Reporter: Andreas Mayer <andreas.mayer>
Component: generalAssignee: KMyMoney Devel Mailing List <kmymoney-devel>
Status: RESOLVED FIXED    
Severity: normal CC: ralf.habacker, wbauer1
Priority: NOR Flags: ralf.habacker: Version_5-
Version: 4.8.1   
Target Milestone: ---   
Platform: Arch Linux   
OS: Linux   
Latest Commit: Version Fixed In: 4.8.2
Bug Depends on:    
Bug Blocks: 387280    
Attachments: Shows outbox messages, that the responsible plugin for credit transfers can't be loaded

Description Andreas Mayer 2017-11-05 11:28:47 UTC
Created attachment 108713 [details]
Shows outbox messages, that the responsible plugin for credit transfers can't be loaded

With the upgrade to 4.8.1 SEPA credit transfers aren't working any more with kmymoney. The Translation switched to standard english with the upgrade.

Downgrading to 4.8.0 is fixing this for me. 

Could this be distribution specific? (Archlinux)



The startup log reads as follows:
kmymoney(25281)/kdecore (KPluginInfo) KPluginInfo::kcmServices: found 0 offers for "csvexport"
kmymoney(25281)/kdecore (KPluginInfo) KPluginInfo::kcmServices: found 1 offers for "Print check"
kmymoney(25281)/kdecore (KPluginInfo) KPluginInfo::kcmServices: found 0 offers for "KMyMoney OFX"
kmymoney(25281)/kdecore (KPluginInfo) KPluginInfo::kcmServices: found 1 offers for "iCalendar"
kmymoney(25281)/kdecore (KPluginInfo) KPluginInfo::kcmServices: found 0 offers for "SEPA orders for online banking"
kmymoney(25281)/kdecore (KPluginInfo) KPluginInfo::kcmServices: found 0 offers for "csvimport"
kmymoney(25281)/kdecore (KPluginInfo) KPluginInfo::kcmServices: found 0 offers for "KBanking"
kmymoney(25281)/kdecore (KPluginInfo) KPluginInfo::kcmServices: found 0 offers for "Reconciliation report"
kmymoney(25281)/kdecore (KPluginInfo) KPluginInfo::kcmServices: found 0 offers for "Weboob"
KMyMoney csvexport plugin loaded
KMyMoney printcheck plugin loaded
kmymoney(25281)/kdecore (KConfigSkeleton) KCoreConfigSkeleton::writeConfig:
QFSFileEngine::open: No file name specified
KMyMoney ofximport plugin loaded
KMyMoney iCalendar plugin loaded
KMyMoneyPlugin::PluginLoader:: createInstanceFromService returned 0 for SEPA orders with error Could not find plugin 'SEPA orders' for application 'kmymoney'
KMyMoney csvimport plugin loaded
KMyMoney kbanking plugin loaded
KMyMoney reconciliation report plugin loaded
reading file
start parsing file
startDocument
reading accounts
reading transactions
reading securities
reading currencies
reading prices
reading reports
In the file is a onlineTask for which I could not find the plugin ('org.kmymoney.creditTransfer.sepa')
In the file is a onlineTask for which I could not find the plugin ('org.kmymoney.creditTransfer.sepa')
In the file is a onlineTask for which I could not find the plugin ('org.kmymoney.creditTransfer.sepa')
In the file is a onlineTask for which I could not find the plugin ('org.kmymoney.creditTransfer.sepa')
In the file is a onlineTask for which I could not find the plugin ('org.kmymoney.creditTransfer.sepa')
In the file is a onlineTask for which I could not find the plugin ('org.kmymoney.creditTransfer.sepa')
In the file is a onlineTask for which I could not find the plugin ('org.kmymoney.creditTransfer.sepa')
endDocument
QPainter::begin: Widget painting can only begin as a result of a paintEvent
QPainter::translate: Painter not active
QPainter::setClipRect: Painter not active
Comment 1 Wolfgang Bauer 2017-12-28 20:51:04 UTC
Same problem in openSUSE, so it's not distribution specific.

The problem seems to be caused by a mismatch of the installed plugin filename and what's specified in the corresponding .desktop file.

I.e. kmymoney-sepaorders.desktop contains the line "X-KDE-Library=konlinetasks_sepa" but the plugin is actually installed as libkonlinetasks_sepa.so .
Renaming the plugin to konlinetasks_sepa.so (without lib), or adjusting the line in the .desktop file, should fix it. (I'm unable to test the actual functionality though)

PS: the translations were missing completely in 4.8.1, should be fixed in 4.8.1.1 released a few days ago.
Comment 3 Ralf Habacker 2017-12-29 19:54:08 UTC
Review request has been opened at https://phabricator.kde.org/D9545
Comment 4 Ralf Habacker 2017-12-29 20:10:56 UTC
Git commit 8a4292268c2d88cdf757b4c162315360901139c5 by Ralf Habacker, on behalf of Andreas Mayer.
Committed on 29/12/2017 at 20:10.
Pushed by habacker into branch '4.8'.

Fix SEPA plugin installation

Summary:
add_library() may add a "lib" prefix to the plugin's filename, which causes it not to be found.
Using kde4_add_plugin() instead again fixes that.

This change to add_library() was (accidentally?) backported from the KF5 version in commit c78183f18201 .
FIXED-IN: 4.8.2

Intended for the 4.8 branch only, of course.

Test Plan:
The plugin is again installed as konlinetasks_sepa.so here (like in 4.8.0, and also the KF5 port).
The error message that the plugin could not be found does not occur anymore, kmymoney prints

> onlineTask available "org.kmymoney.creditTransfer.sepa"

 to stdout now.

Haven't tested the actual functionality though.

Reviewers: #kmymoney, habacker

Reviewed By: #kmymoney, habacker

Subscribers: tbaumgart

Tags: #kmymoney

Differential Revision: https://phabricator.kde.org/D9545

M  +1    -1    kmymoney/plugins/onlinetasks/sepa/CMakeLists.txt

https://commits.kde.org/kmymoney/8a4292268c2d88cdf757b4c162315360901139c5
Comment 5 Ralf Habacker 2018-01-01 21:36:58 UTC
Git commit 94cfceb7bf3944e8ee5cc08670c9ace93f687971 by Ralf Habacker, on behalf of Wolfgang Bauer.
Committed on 01/01/2018 at 21:36.
Pushed by habacker into branch '4.8'.

Fix SEPA plugin installation

Applied with correct author.
FIXED-IN: 4.8.2

M  +1    -1    kmymoney/plugins/onlinetasks/sepa/CMakeLists.txt

https://commits.kde.org/kmymoney/94cfceb7bf3944e8ee5cc08670c9ace93f687971
Comment 6 Andreas Mayer 2018-01-16 11:13:31 UTC
I just built kmymoney from source and can confirm that the fix is working. Thanks a lot for fixing it.