JSON property "X-KDevelop-Interfaces" messages

Kevin Funk kfunk at kde.org
Thu Apr 7 18:30:06 UTC 2016


On Thursday, April 7, 2016 8:04:52 PM CEST René J.V. Bertin wrote:
> On Thursday April 07 2016 17:36:47 Milian Wolff wrote:
> > Or just "break qt_message_output", or QT_FATAL_WARNINGS=1 if it's a
> > warning.
> That one is useful ... except of course one has to remember running KDevelop
> without it before trying with it again, otherwise the abort happens on the
> "cache maybe corrupted" warning :)
> 
> Anyway, I found the warning message, and it's caused by a call to
> KPluginMetaData::readStringList() in
> PluginControllerPrivate::foreachEnabledPlugin(). I've added some debug
> output in both functions; fortunately Qt knows how to print QJsonObject
> instances. Apparently the Plasma Project Manager is to blame (and correctly
> so, IIUC):
> 
> void KDevelop::PluginControllerPrivate::foreachEnabledPlugin(F, const
> QString &, const QVariantMap &, const QString &) [F = (lambda at
> /Volumes/Debian/MP9/var/macports/build/_Volumes_Debian_MP9_site-ports_kf5_k
> devplatform5/kf5-kdevplatform-devel/work/kf5-kdevplatform-5/shell/plugincont
> roller.cpp:637:29)] pluginName "" | "KDevPlasmaManager" extension= "IStatus"
> key= "X-KDevelop-Interfaces" static QStringList
> KPluginMetaData::readStringList(const QJsonObject &, const QString &)
> Expected JSON property "X-KDevelop-Interfaces" to be a string list.
> Treating it as a list with a single entry:
> "org.kdevelop.IProjectFileManager" QJson=
> QJsonObject({"GenericName":"Plasma Project
> Manager","GenericName[ast]":"Xestor de proyeutos de
> plasma","GenericName[ca at valencia]":"Gestor de projectes
> Plasma","GenericName[ca]":"Gestor de projectes
> Plasma","GenericName[de]":"Plasma-Projektverwaltung","GenericName[en_GB]":"
> Plasma Project Manager","GenericName[es]":"Gestor de proyectos de
> Plasma","GenericName[et]":"Plasma
> projektihaldur","GenericName[fi]":"Plasma-projektinhallinta","GenericName[g
> l]":"Xestor de proxectos de Plasma","GenericName[it]":"Gestore progetto
> Plasma","GenericName[ko]":"Plasma 프로젝트 관리자","GenericName[nl]":"Plasma
> projectbeheerder","GenericName[nn]":"Plasma
> prosjekthandsamar","GenericName[pl]":"Zarządzanie projektami
> Plazmy","GenericName[pt]":"Gestor de Projectos do
> Plasma","GenericName[pt_BR]":"Gerenciador de Projetos do
> Plasma","GenericName[sk]":"Správca projektov
> Plasma","GenericName[sl]":"Upravljalnik projektov za
> Plasmo","GenericName[sr at ijekavian]":"Менаџер плазма
> пројеката","GenericName[sr at ijekavianlatin]":"Menadžer plasma
> projekata","GenericName[sr at latin]":"Menadžer plasma
> projekata","GenericName[sr]":"Менаџер плазма
> пројеката","GenericName[sv]":"Plasma-projekthanterare","GenericName[uk]":"К
> ерування проектами Плазми","GenericName[x-test]":"xxPlasma Project
> Managerxx","GenericName[zh_CN]":"Plasma
> 工程管理器","KPlugin":{"Authors":[{"Name":"Giorgos
> Tsiapaliokas"}],"Category":"Project Management","Description":"Allow
> KDevPlatform to manage plasma projects","Description[ast]":"Permite a
> KDevPlatform xestionar los proyeutos de
> plasma","Description[ca at valencia]":"Permet al KDevPlatform gestionar els
> projectes de plasma","Description[ca]":"Permet al KDevPlatform gestionar
> els projectes de plasma","Description[de]":"Verwaltung von Plasma-Projekten
> mit KDevPlatform","Description[en_GB]":"Allow KDevPlatform to manage plasma
> projects","Description[es]":"Permite a KDevPlatform gestionar proyectos de
> Plasma","Description[et]":"Võimaldab KDevPlatformil hallata Plasma
> projekte","Description[fi]":"Mahdollistaa KDevPlatformin hallitsemaan
> Plasma-projekteja","Description[gl]":"Permitir que KDevPlatform xestione
> proxectos de Plasma.","Description[it]":"Permette a KDevPlatform di gestire
> i progetti di plasma","Description[ko]":"KDevPlatform으로 Plasma 프로젝트 관리
> 허용","Description[nl]":"KDevPlatform toestaan plasma-projecten te
> beheren","Description[nn]":"Tillet KDevPlatform å handtera
> Plasma-prosjekt","Description[pl]":"Zezwól KDevPlatform na zarządzanie
> projektami plazmy","Description[pt]":"Permite ao KDevPlatform gerir
> projectos do Plasma","Description[pt_BR]":"Permite ao KDevPlatform
> gerenciar projetos do Plasma","Description[sk]":"Umožniť KDevPlatform
> spracovať projekty plasma","Description[sl]":"Omogoči, da KDevPlatform
> upravlja s projekti Plasme","Description[sr at ijekavian]":"Дозволите
> К‑девелопу да управља плазма
> пројектима","Description[sr at ijekavianlatin]":"Dozvolite KDevelopu da
> upravlja plasma projektima","Description[sr at latin]":"Dozvolite KDevelopu da
> upravlja plasma projektima","Description[sr]":"Дозволите К‑девелопу да
> управља плазма пројектима","Description[sv]":"Tillåter att KDevelop
> hanterar Plasma-projekt","Description[uk]":"Дозволяє KDevPlatform керувати
> проектами Плазми","Description[x-test]":"xxAllow KDevPlatform to manage
> plasma projectsxx","Description[zh_CN]":"允许 KDevPlatform 管理 plasma
> 项目","Icon":"plasmagik","Id":"KDevPlasmaManager","Name":"Plasma Project
> Manager","Name[ast]":"Xestor de proyeutos de
> plasma","Name[ca at valencia]":"Gestor de projectes Plasma","Name[ca]":"Gestor
> de projectes
> Plasma","Name[de]":"Plasma-Projektverwaltung","Name[en_GB]":"Plasma Project
> Manager","Name[es]":"Gestor de proyectos de Plasma","Name[et]":"Plasma
> projektihaldur","Name[fi]":"Plasma-projektinhallinta","Name[gl]":"Xestor de
> proxectos de Plasma","Name[it]":"Gestore progetto
> Plasma","Name[ko]":"Plasma 프로젝트 관리자","Name[nl]":"Plasma
> projectbeheerder","Name[nn]":"Plasma
> prosjekthandsamar","Name[pl]":"Zarządzanie projektami
> Plazmy","Name[pt]":"Gestor de Projectos do
> Plasma","Name[pt_BR]":"Gerenciador de Projetos do
> Plasma","Name[sk]":"Správca projektov Plasma","Name[sl]":"Upravljalnik
> projektov za Plasmo","Name[sr at ijekavian]":"Менаџер плазма
> пројеката","Name[sr at ijekavianlatin]":"Menadžer plasma
> projekata","Name[sr at latin]":"Menadžer plasma projekata","Name[sr]":"Менаџер
> плазма
> пројеката","Name[sv]":"Plasma-projekthanterare","Name[uk]":"Керування
> проектами Плазми","Name[x-test]":"xxPlasma Project
> Managerxx","Name[zh_CN]":"Plasma
> 工程管理器","ServiceTypes":["KDevelop/Plugin"]},"X-KDevelop-Category":"Project",
> "X-KDevelop-FileManager":"None","X-KDevelop-Interfaces":"org.kdevelop.IProje
> ctFileManager","X-KDevelop-Mode":"GUI","X-KDevelop-Version":"25"}) void
> KDevelop::PluginControllerPrivate::foreachEnabledPlugin(F, const QString &,
> const QVariantMap &, const QString &) [F = (lambda at
> /Volumes/Debian/MP9/var/macports/build/_Volumes_Debian_MP9_site-ports_kf5_k
> devplatform5/kf5-kdevplatform-devel/work/kf5-kdevplatform-5/shell/plugincont
> roller.cpp:579:33)] pluginName "" | "KDevPlasmaManager" extension= "" key=
> "X-KDevelop-Interfaces" static QStringList
> KPluginMetaData::readStringList(const QJsonObject &, const QString &)
> Expected JSON property "X-KDevelop-Interfaces" to be a string list.
> Treating it as a list with a single entry:
> "org.kdevelop.IProjectFileManager" QJson=
> QJsonObject({"GenericName":"Plasma Project
> Manager","GenericName[ast]":"Xestor de proyeutos de
> plasma","GenericName[ca at valencia]":"Gestor de projectes
> Plasma","GenericName[ca]":"Gestor de projectes
> Plasma","GenericName[de]":"Plasma-Projektverwaltung","GenericName[en_GB]":"
> Plasma Project Manager","GenericName[es]":"Gestor de proyectos de
> Plasma","GenericName[et]":"Plasma
> projektihaldur","GenericName[fi]":"Plasma-projektinhallinta","GenericName[g
> l]":"Xestor de proxectos de Plasma","GenericName[it]":"Gestore progetto
> Plasma","GenericName[ko]":"Plasma 프로젝트 관리자","GenericName[nl]":"Plasma
> projectbeheerder","GenericName[nn]":"Plasma
> prosjekthandsamar","GenericName[pl]":"Zarządzanie projektami
> Plazmy","GenericName[pt]":"Gestor de Projectos do
> Plasma","GenericName[pt_BR]":"Gerenciador de Projetos do
> Plasma","GenericName[sk]":"Správca projektov
> Plasma","GenericName[sl]":"Upravljalnik projektov za
> Plasmo","GenericName[sr at ijekavian]":"Менаџер плазма
> пројеката","GenericName[sr at ijekavianlatin]":"Menadžer plasma
> projekata","GenericName[sr at latin]":"Menadžer plasma
> projekata","GenericName[sr]":"Менаџер плазма
> пројеката","GenericName[sv]":"Plasma-projekthanterare","GenericName[uk]":"К
> ерування проектами Плазми","GenericName[x-test]":"xxPlasma Project
> Managerxx","GenericName[zh_CN]":"Plasma
> 工程管理器","KPlugin":{"Authors":[{"Name":"Giorgos
> Tsiapaliokas"}],"Category":"Project Management","Description":"Allow
> KDevPlatform to manage plasma projects","Description[ast]":"Permite a
> KDevPlatform xestionar los proyeutos de
> plasma","Description[ca at valencia]":"Permet al KDevPlatform gestionar els
> projectes de plasma","Description[ca]":"Permet al KDevPlatform gestionar
> els projectes de plasma","Description[de]":"Verwaltung von Plasma-Projekten
> mit KDevPlatform","Description[en_GB]":"Allow KDevPlatform to manage plasma
> projects","Description[es]":"Permite a KDevPlatform gestionar proyectos de
> Plasma","Description[et]":"Võimaldab KDevPlatformil hallata Plasma
> projekte","Description[fi]":"Mahdollistaa KDevPlatformin hallitsemaan
> Plasma-projekteja","Description[gl]":"Permitir que KDevPlatform xestione
> proxectos de Plasma.","Description[it]":"Permette a KDevPlatform di gestire
> i progetti di plasma","Description[ko]":"KDevPlatform으로 Plasma 프로젝트 관리
> 허용","Description[nl]":"KDevPlatform toestaan plasma-projecten te
> beheren","Description[nn]":"Tillet KDevPlatform å handtera
> Plasma-prosjekt","Description[pl]":"Zezwól KDevPlatform na zarządzanie
> projektami plazmy","Description[pt]":"Permite ao KDevPlatform gerir
> projectos do Plasma","Description[pt_BR]":"Permite ao KDevPlatform
> gerenciar projetos do Plasma","Description[sk]":"Umožniť KDevPlatform
> spracovať projekty plasma","Description[sl]":"Omogoči, da KDevPlatform
> upravlja s projekti Plasme","Description[sr at ijekavian]":"Дозволите
> К‑девелопу да управља плазма
> пројектима","Description[sr at ijekavianlatin]":"Dozvolite KDevelopu da
> upravlja plasma projektima","Description[sr at latin]":"Dozvolite KDevelopu da
> upravlja plasma projektima","Description[sr]":"Дозволите К‑девелопу да
> управља плазма пројектима","Description[sv]":"Tillåter att KDevelop
> hanterar Plasma-projekt","Description[uk]":"Дозволяє KDevPlatform керувати
> проектами Плазми","Description[x-test]":"xxAllow KDevPlatform to manage
> plasma projectsxx","Description[zh_CN]":"允许 KDevPlatform 管理 plasma
> 项目","Icon":"plasmagik","Id":"KDevPlasmaManager","Name":"Plasma Project
> Manager","Name[ast]":"Xestor de proyeutos de
> plasma","Name[ca at valencia]":"Gestor de projectes Plasma","Name[ca]":"Gestor
> de projectes
> Plasma","Name[de]":"Plasma-Projektverwaltung","Name[en_GB]":"Plasma Project
> Manager","Name[es]":"Gestor de proyectos de Plasma","Name[et]":"Plasma
> projektihaldur","Name[fi]":"Plasma-projektinhallinta","Name[gl]":"Xestor de
> proxectos de Plasma","Name[it]":"Gestore progetto
> Plasma","Name[ko]":"Plasma 프로젝트 관리자","Name[nl]":"Plasma
> projectbeheerder","Name[nn]":"Plasma
> prosjekthandsamar","Name[pl]":"Zarządzanie projektami
> Plazmy","Name[pt]":"Gestor de Projectos do
> Plasma","Name[pt_BR]":"Gerenciador de Projetos do
> Plasma","Name[sk]":"Správca projektov Plasma","Name[sl]":"Upravljalnik
> projektov za Plasmo","Name[sr at ijekavian]":"Менаџер плазма
> пројеката","Name[sr at ijekavianlatin]":"Menadžer plasma
> projekata","Name[sr at latin]":"Menadžer plasma projekata","Name[sr]":"Менаџер
> плазма
> пројеката","Name[sv]":"Plasma-projekthanterare","Name[uk]":"Керування
> проектами Плазми","Name[x-test]":"xxPlasma Project
> Managerxx","Name[zh_CN]":"Plasma
> 工程管理器","ServiceTypes":["KDevelop/Plugin"]},"X-KDevelop-Category":"Project",
> "X-KDevelop-FileManager":"None","X-KDevelop-Interfaces":"org.kdevelop.IProje
> ctFileManager","X-KDevelop-Mode":"GUI","X-KDevelop-Version":"25"})
> 
> Rejoice, it looks like the bug is not in KDevelop but in the Plasma SDK! :)
> OTOH, kdevplasmamanager.json is generated from a .desktop file, and it's
> unclear to me how to declare a single-item stringlist in that format.

https://phabricator.kde.org/D1349
 
> R.


-- 
Kevin Funk | kfunk at kde.org | http://kfunk.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20160407/d238e5a3/attachment-0001.sig>


More information about the KDevelop-devel mailing list