> On Aug. 3, 2011, 8:13 a.m., Aaron J. Seigo wrote:
> > plasma/dataenginemanager.cpp, line 134
> > <http://git.reviewboard.kde.org/r/102175/diff/2/?file=30633#file30633line134>
> >
> >     this failure case is going to be trickier to address than the 
> > scriptengine failure case below. one possibility would be to have a 
> > "delayed load" DataEngine that is returned which waits on the return from 
> > the ComponentInstaller.
> >     
> >     it could cache all requests made until the ComponentInstaller returns. 
> > on success, it would then load the actual DataEngine and forward all calls 
> > made thus far to it (object connection requests, etc; basically replaying 
> > its internal state). on failure, it would flush all of these cached 
> > requests and behave just like the NullEngine.

A way to make things actually work without restarting everything would 
definitely help indeed. But it's not going to be easy to get working indeed. 
I'll see if I can improve this in a followup patch.


- Kevin


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


On Aug. 2, 2011, 3:49 p.m., Kevin Kofler wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/102175/
> -----------------------------------------------------------
> 
> (Updated Aug. 2, 2011, 3:49 p.m.)
> 
> 
> Review request for Plasma.
> 
> 
> Summary
> -------
> 
> This is part of my GSoC 2011 work. Expect more Plasma patches related to this 
> in the next few days.
> 
> In particular, the currently unused "force" feature of the new API is 
> intended to be used if the user just installed a widget which explicitly 
> requires a given engine. (By default, prompts are not repeated within a 
> session to prevent flooding the user.)
> 
> The implementation is based on PackageKit. It requires PackageKit >= 0.6.16 
> and either Apper trunk or the backported patch from 
> http://pkgs.fedoraproject.org/gitweb/?p=kpackagekit.git;a=blob;f=kpackagekit06-plasma.patch;h=208427aa6cc072164b6a9ba48a30a954657ef892;hb=HEAD
>  to have any effect. If the requirements are not met, no change will be 
> noticeable at all, because the asynchronous call will simply fail and any 
> errors are (intentionally) discarded. (We don't want to annoy the user with a 
> pointless error dialog if he/she doesn't have PackageKit installed or his/her 
> version is too old.)
> 
> PackageKit will also only actually find the relevant packages if the 
> distribution is using RPM and yum (at this time) and if the RPMs in the 
> repository have been built with my Provides generator. But that shouldn't be 
> Plasma's problem. Any work in that area needs to happen on the PackageKit or 
> distro side. Support for GStreamer plugins has been implemented in other 
> PackageKit backends too, so it should also be doable for Plasma engines. And 
> if a distro wants to use something entirely different from PackageKit, that's 
> also possible, this is what the abstract EngineInstaller API is for.
> 
> The API is public because it might be useful outside of libplasma, and it is 
> quite simple and generic, thus keeping BC should not be a problem.
> 
> 
> Diffs
> -----
> 
>   plasma/CMakeLists.txt ef411df 
>   plasma/dataenginemanager.cpp 988fe76 
>   plasma/private/componentinstaller.cpp PRE-CREATION 
>   plasma/private/componentinstaller_p.h PRE-CREATION 
>   plasma/scripting/scriptengine.cpp fb8cd1a 
> 
> Diff: http://git.reviewboard.kde.org/r/102175/diff
> 
> 
> Testing
> -------
> 
> Verified that it compiles without errors and that it successfully prompts for 
> a missing Python script engine on Fedora 15. (The patch is against master 
> (4.8), but applies without changes to the kdelibs 4.6.5 in Fedora 15, which 
> is how I tested it.)
> 
> 
> Thanks,
> 
> Kevin
> 
>

_______________________________________________
Plasma-devel mailing list
Plasma-devel@kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel

Reply via email to