[Development] Q_EXPORT_PLUGIN_2 breaks source compat

David Faure faure at kde.org
Sun Jun 10 20:44:05 CEST 2012


commit 7443895857fdaee132c8efc643e471f02b3d0fa4
Author: Lars Knoll <lars.knoll at nokia.com>
Date:   Sat Jun 2 05:42:13 2012 +0200

    Remove support for Qt 4 style plugins
    
    The new plugin format allows us to avoid loading the plugins in
    all cases. Remove the old format, as we could get bad behavior
    with the old format if Qt would try to dlopen a Qt 4.x plugin.
    
    Change-Id: I2193e6874d6cca3c0b12298c2b9beb4105a42fd5
    Reviewed-by: Thiago Macieira <thiago.macieira at intel.com>
    Reviewed-by: Lars Knoll <lars.knoll at nokia.com>


This commit breaks source compat for all other kinds of plugins too, not only style plugins,
because it turns the Q_EXPORT_PLUGIN_2 macro into a "failing static assert".

Case at hand:
kdelibs/tier2/kauth/src/backends/polkit-1/Polkit1Backend.cpp:227:1: error: invalid application of 'sizeof' to incomplete type 'QStaticAssertFailure<false>' 

Is it really desired to break source compat so much, after making the promise of
"almost no porting required"? Porting to a different plugin framework doesn't sound trivial.
Well, maybe it is, who knows -- there is no entry in dist/changes-5.0.0 about this!

-- 
David Faure, faure at kde.org, http://www.davidfaure.fr
Sponsored by Nokia to work on KDE, incl. KDE Frameworks 5




More information about the Development mailing list