Review Request 122970: Move added setError method to new JobViewV3 interface

David Faure faure at kde.org
Wed Mar 18 12:46:32 UTC 2015



On March 18, 2015, 11:26 a.m., David Rosca wrote:
> > Ah  see, it's the problem with the client-side installing the XML file, rather than the server-side. It means any new method will initially trigger "not implemented" compilation error in the server. Kills extensibility. But not really a choice here, the client-side being in a framework.
> > 
> > Maybe this is one case where the server should have its own copy of the xml file, instead of using the one from the framework.
> > Duplication, but this V2 / V3 thing is duplication is well, and actually more complex to maintain.
> > 
> > This change is still necessary for the existing plasma 5.2 to compile, but I would also change plasma in master to use its own copy of the xml file, so that the two xml files can be "upgraded" at different times, and without the need to define a new interface every time.
> 
> David Rosca wrote:
>     V2 is there intentionally for compatibility, because with V3 plasma5.2 would compile, but stop to work - kuiserver from plasma5.2 would export V2 interface but kjobwidgets would create invalid V3 interface and calls would fail.
> 
> David Faure wrote:
>     I think the way V1 vs V2 is handled is that kjobwidgets checks which interface the server (plasma) exports, to avoid the issue you mention?
>     
>     I foresee much confusion if V2 vs V3 is handled differently from V1 vs V2...
> 
> David Rosca wrote:
>     Actually it seems that it doesn't handle V1 at all.
>     But maybe it should be renamed to org.kde.JobViewV2_1.xml or something like that, as it is not really a V3 indeed.

I see.

Well since org.kde.JobView.xml isn't used anywhere, I would reuse that filename, to get rid of the V2 nonsense...

http://lxr.kde.org/search?_filestring=&_string=%22org.kde.JobView.xml%22

(the dbus interface would still be called V2 for historical reasons, of course)

The framework would install org.kde.JobView.xml (for apps), org.kde.JobViewV2.xml (for compat), and plasma would be changed to have a copy of org.kde.JobView.xml and generate the server from that.
And Plasma 5.2 still implements V2 based on the file installed by the framework.


- David


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/122970/#review77675
-----------------------------------------------------------


On March 18, 2015, 11:09 a.m., David Rosca wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/122970/
> -----------------------------------------------------------
> 
> (Updated March 18, 2015, 11:09 a.m.)
> 
> 
> Review request for KDE Frameworks and David Faure.
> 
> 
> Repository: kjobwidgets
> 
> 
> Description
> -------
> 
> This fixes source compatibility from https://git.reviewboard.kde.org/r/122926/
> 
> It adds a new org.kde.JobViewV3.xml file. The DBus interface name is still JobViewV2 to keep compatibility with apps still using org.kde.JobViewV2.xml.
> It also removes generating code from old org.kde.JobView.xml as it is not used anywhere.
> 
> 
> Diffs
> -----
> 
>   src/CMakeLists.txt c539bdc 
>   src/kuiserverjobtracker.cpp 7f13a4d 
>   src/kuiserverjobtracker_p.h daf3902 
>   src/org.kde.JobViewV2.xml 245a5f0 
>   src/org.kde.JobViewV3.xml PRE-CREATION 
> 
> Diff: https://git.reviewboard.kde.org/r/122970/diff/
> 
> 
> Testing
> -------
> 
> plasma-workspace stable now builds fine
> changing V2 -> V3 in CMakeFiles.txt in master branch enable the new setError method.
> 
> 
> Thanks,
> 
> David Rosca
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20150318/78083ca6/attachment.html>


More information about the Kde-frameworks-devel mailing list