Review Request 109315: Automatically put the version number in the plugin's desktop files

Milian Wolff mail at milianw.de
Thu Mar 7 11:08:37 UTC 2013


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/109315/#review28758
-----------------------------------------------------------

Ship it!


I like the idea.

- Milian Wolff


On March 7, 2013, 1:20 a.m., Aleix Pol Gonzalez wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/109315/
> -----------------------------------------------------------
> 
> (Updated March 7, 2013, 1:20 a.m.)
> 
> 
> Review request for KDevelop, Andreas Pakulat and Milian Wolff.
> 
> 
> Description
> -------
> 
> One of the worst things when developing plugins in kdev is that we need to target an ABI version number. It makes sense to have it but it is possible to have an API-compatible plugin that isn't compatible due to the ABI version.
> 
> Also, every time we change kdevplatform version, we have to go through all plugins an change the version number in all projects.
> 
> In this patch, I'm using cmake to configure all the desktop files in runtime. If you guys like the idea, I'll implement it for KDevelop.
> There are other things we could do, since we're generating it, we could set the KDE-PluginInfo-Version to kdevplatform's, I think it would make sense.
> 
> In case somebody wonders, scripty already knows about .desktop.cmake files.
> 
> For reference, I used these bash commands for changing it to the new way:
> 
> find . -name kdev*.desktop | xargs -I @ git mv @ @.cmake
> find . -name *.desktop.cmake | xargs sed -i -e 's/X-KDevelop-Version=16/X-KDevelop-Version=@KDEV_PLUGIN_VERSION@/g'
> find . -name CMakeLists.txt | xargs sed -r -i -e "s/install\( *FILES kdev(.*).desktop/configure_file(kdev\1.desktop.cmake \${CMAKE_CURRENT_BINARY_DIR}\/kdev\1.desktop)\ninstall(FILES \${CMAKE_CURRENT_BINARY_DIR}\/kdev\1.desktop/g"
> 
> 
> Diffs
> -----
> 
>   plugins/codeutils/tests/templates/test_yaml/test_yaml.desktop bd32a9b 
>   plugins/codeutils/tests/templates/test_qtestlib/test_qtestlib.desktop.cmake PRE-CREATION 
>   plugins/codeutils/kdevcodeutils.desktop.cmake PRE-CREATION 
>   plugins/codeutils/tests/templates/test_qtestlib/test_qtestlib.desktop 1bd432e 
>   plugins/codeutils/kdevcodeutils.desktop 70a6b88 
>   plugins/codeutils/CMakeLists.txt 3694060 
>   plugins/classbrowser/kdevclassbrowser.desktop 5983d4b 
>   plugins/classbrowser/kdevclassbrowser.desktop.cmake PRE-CREATION 
>   plugins/classbrowser/CMakeLists.txt bfb1688 
>   plugins/appwizard/kdevappwizard.desktop 2ffcb12 
>   plugins/appwizard/kdevappwizard.desktop.cmake PRE-CREATION 
>   plugins/appwizard/CMakeLists.txt 26b0f4c 
>   interfaces/ipluginversion.h.in PRE-CREATION 
>   interfaces/iplugin.h 3a30eda 
>   interfaces/iplugincontroller.cpp d7e8764 
>   interfaces/CMakeLists.txt 5e83497 
>   CMakeLists.txt d0bcfa7 
>   KDevPlatformConfig.cmake.in afed48f 
>   plugins/codeutils/tests/templates/test_yaml/test_yaml.desktop.cmake PRE-CREATION 
>   plugins/contextbrowser/CMakeLists.txt abf573a 
>   plugins/contextbrowser/kdevcontextbrowser.desktop b8a0386 
>   plugins/contextbrowser/kdevcontextbrowser.desktop.cmake PRE-CREATION 
>   plugins/cvs/CMakeLists.txt 150ff18 
>   plugins/cvs/kdevcvs.desktop dd7939c 
>   plugins/cvs/kdevcvs.desktop.cmake PRE-CREATION 
>   plugins/dashboard/CMakeLists.txt 3ed5574 
>   plugins/dashboard/kdevprojectdashboard.desktop 28bf473 
>   plugins/dashboard/kdevprojectdashboard.desktop.cmake PRE-CREATION 
>   plugins/dashboard/plasmoids/projectfileplasmoid/CMakeLists.txt d3016d7 
>   plugins/dashboard/plasmoids/projectfileplasmoid/kdev-dash-projectfileelement.desktop 4c43d5c 
>   plugins/dashboard/plasmoids/projectfileplasmoid/kdev-dash-projectfileelement.desktop.cmake PRE-CREATION 
>   plugins/documentswitcher/CMakeLists.txt 9312337 
>   plugins/documentswitcher/kdevdocumentswitcher.desktop e45a9ef 
>   plugins/documentswitcher/kdevdocumentswitcher.desktop.cmake PRE-CREATION 
>   plugins/documentview/CMakeLists.txt 30fc272 
>   plugins/documentview/kdevdocumentview.desktop 5187c81 
>   plugins/documentview/kdevdocumentview.desktop.cmake PRE-CREATION 
>   plugins/execute/CMakeLists.txt 6c65936 
>   plugins/execute/kdevexecute.desktop a71f502 
>   plugins/execute/kdevexecute.desktop.cmake PRE-CREATION 
>   plugins/executescript/CMakeLists.txt 2b90327 
>   plugins/executescript/kdevexecutescript.desktop 83fd95d 
>   plugins/executescript/kdevexecutescript.desktop.cmake PRE-CREATION 
>   plugins/externalscript/CMakeLists.txt c8f2f73 
>   plugins/externalscript/kdevexternalscript.desktop cd97a2f 
>   plugins/externalscript/kdevexternalscript.desktop.cmake PRE-CREATION 
>   plugins/filemanager/CMakeLists.txt a6a6a9f 
>   plugins/filemanager/kdevfilemanager.desktop 6b94c5d 
>   plugins/filemanager/kdevfilemanager.desktop.cmake PRE-CREATION 
>   plugins/filetemplates/CMakeLists.txt 77b3be7 
>   plugins/filetemplates/kdevfiletemplates.desktop 7d1434f 
>   plugins/filetemplates/kdevfiletemplates.desktop.cmake PRE-CREATION 
>   plugins/genericprojectmanager/CMakeLists.txt b081a1b 
>   plugins/genericprojectmanager/kdevgenericmanager.desktop 8712aab 
>   plugins/genericprojectmanager/kdevgenericmanager.desktop.cmake PRE-CREATION 
>   plugins/git/CMakeLists.txt f2bf0f1 
>   plugins/git/kdevgit.desktop e1aceff 
>   plugins/git/kdevgit.desktop.cmake PRE-CREATION 
>   plugins/grepview/CMakeLists.txt f9e87af 
>   plugins/grepview/kdevgrepview.desktop ec085ef 
>   plugins/grepview/kdevgrepview.desktop.cmake PRE-CREATION 
>   plugins/konsole/CMakeLists.txt 034b4a2 
>   plugins/konsole/kdevkonsoleview.desktop 1778364 
>   plugins/konsole/kdevkonsoleview.desktop.cmake PRE-CREATION 
>   plugins/openwith/CMakeLists.txt 3217702 
>   plugins/openwith/kdevopenwith.desktop b484570 
>   plugins/openwith/kdevopenwith.desktop.cmake PRE-CREATION 
>   plugins/pastebin/CMakeLists.txt c9fe952 
>   plugins/pastebin/kdevpastebin.desktop a25f638 
>   plugins/pastebin/kdevpastebin.desktop.cmake PRE-CREATION 
>   plugins/patchreview/CMakeLists.txt 8bedb83 
>   plugins/patchreview/kdevpatchreview.desktop 3380d21 
>   plugins/patchreview/kdevpatchreview.desktop.cmake PRE-CREATION 
>   plugins/problemreporter/CMakeLists.txt 89b197d 
>   plugins/problemreporter/kdevproblemreporter.desktop c20f0d2 
>   plugins/problemreporter/kdevproblemreporter.desktop.cmake PRE-CREATION 
>   plugins/projectmanagerview/CMakeLists.txt aec8360 
>   plugins/projectmanagerview/kdevprojectmanagerview.desktop 542e088 
>   plugins/projectmanagerview/kdevprojectmanagerview.desktop.cmake PRE-CREATION 
>   plugins/quickopen/CMakeLists.txt b2b3f30 
>   plugins/quickopen/kdevquickopen.desktop 8a4be70 
>   plugins/quickopen/kdevquickopen.desktop.cmake PRE-CREATION 
>   plugins/reviewboard/CMakeLists.txt 89892f7 
>   plugins/reviewboard/kdevreviewboard.desktop 7a83544 
>   plugins/reviewboard/kdevreviewboard.desktop.cmake PRE-CREATION 
>   plugins/snippet/CMakeLists.txt 04433b5 
>   plugins/snippet/kdevsnippet.desktop 5d2002a 
>   plugins/snippet/kdevsnippet.desktop.cmake PRE-CREATION 
>   plugins/standardoutputview/CMakeLists.txt ba8d434 
>   plugins/standardoutputview/kdevstandardoutputview.desktop 8331422 
>   plugins/standardoutputview/kdevstandardoutputview.desktop.cmake PRE-CREATION 
>   plugins/subversion/CMakeLists.txt f74a45f 
>   plugins/subversion/kdevsubversion.desktop e63068f 
>   plugins/subversion/kdevsubversion.desktop.cmake PRE-CREATION 
>   plugins/switchtobuddy/CMakeLists.txt 795b5ed 
>   plugins/switchtobuddy/kdevswitchtobuddy.desktop 7d5f59f 
>   plugins/switchtobuddy/kdevswitchtobuddy.desktop.cmake PRE-CREATION 
>   plugins/templatemanager/CMakeLists.txt cc3ea92 
>   plugins/templatemanager/kdevtemplatemanager_config.desktop 8d126dc 
>   plugins/templatemanager/kdevtemplatemanager_config.desktop.cmake PRE-CREATION 
>   plugins/testview/CMakeLists.txt 5307d7f 
>   plugins/testview/kdevtestview.desktop 5980536 
>   plugins/testview/kdevtestview.desktop.cmake PRE-CREATION 
>   plugins/vcschangesview/CMakeLists.txt a284b28 
>   plugins/vcschangesview/kdevvcschangesview.desktop 41646c6 
>   plugins/vcschangesview/kdevvcschangesview.desktop.cmake PRE-CREATION 
>   shell/kross/kdevkrossplugin.desktop ddb8e9c 
>   shell/kross/kdevkrossplugin.desktop.cmake PRE-CREATION 
>   shell/plugincontroller.cpp 009228b 
> 
> Diff: http://git.reviewboard.kde.org/r/109315/diff/
> 
> 
> Testing
> -------
> 
> The installed desktop files look the same as they used to.
> 
> 
> Thanks,
> 
> Aleix Pol Gonzalez
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20130307/59897971/attachment-0001.html>


More information about the KDevelop-devel mailing list