[Sugar-devel] Current status of collaboration work
Tony Anderson
tony_anderson at usa.net
Sat Dec 26 01:44:44 EST 2015
Hi Sam,
I am still not clear on the status. I have a long-dormant activity
'bingo' which depends on the caller sending 'bingo cards', receiving a
'bingo call', and being able to check the card via collaboration. In
developing those features, should I use the collab wrapper? Is it
available for 0.106? Where can I find the version of
chat that uses it as an example to follow? The version installed on
0.106 (13.2.5) does not seem to use it.
Tony
On 12/26/2015 01:55 AM, Gonzalo Odiard wrote:
> Hi Martin,
> I like your proposal of use the wrapper in the activities by at least
> one cycle, before include it in the toolkit.
> In our experience, once the code is included in the toolkit, is
> difficult make changes without breaking activities in
> unexpected ways.
> I didn't have time to make tests with the wrapper, and is really
> difficult do tests for collaboration. We have seen
> bugs that appear only when you have many computers, or using jabber
> but not when using the mesh, etc.
> I think the wrapper is a very, very good start (Thanks Sam and Walter)
> and even they provided patches for some activities.
> Sadly, some of the activities are on my hands, but I didn't have time
> the last months to do the proper testing
> and integration of the patches.
> About the wrapper API, just looking at the code, I think would be
> better add a callback parameter to the setup() method
> because the initialization is async and then is the only way to
> execute your activity code when the initialization
> has finished. Issues like this are difficult to get right at the first
> time.
> I know I am not doing almost any work in sugar these months, don't
> take these comments as a critic,
> just as a way to try to help, and avoid problems in the future.
> Regards,
>
> Gonzalo
>
>
> On Wed, Dec 23, 2015 at 4:52 PM, Martin Abente
> <martin.abente.lahaye at gmail.com
> <mailto:martin.abente.lahaye at gmail.com>> wrote:
>
> Hello everyone,
>
> I have been reviewing the current state of the collaboration
> proposals and I am afraid it is still too early for merging it. We
> need to explore more use cases, and this will only happens when we
> start porting more Activities that actually use TUBES. Therefore,
> i want to share some thoughts on this.
>
> *Opinions:*
>
> 1. There haven't been enough changes in the Activities regarding
> Tubes deprecation.
> 2. Dropping the Tubes support from Sugar without changing all the
> activities that depend on Tubes means that we will break
> collaboration for those activities anyway, and there wont be
> much gain by just doing that.
> 3. Making changes in the Sugar API without proper testing with
> more activities (and scenarios) is simply not a good idea.
> 4. But, making changes in the Activities can be easily handled
> since they are self contained.
> 5. Most of our users still use Fedora 18 through OLPC
> deployments, where Tubes is available.
>
> *Suggestions:*
>
> 1. Lets make Sugar handle the Tubes deprecation better so it
> doesn't break, but lets not remove the support for TUBES yet.
> 2. Instead, we can start changing the activities using the
> Wrapper that Walter and Sam prepared, but using it locally on
> each Activity for now.
> 3. Once and if, we have most of our activities ported to the new
> telepathy API (which will be based on the Wrapper), then we
> can include the Wrapper into sugar-toolkit-gtk3, in a next
> release and remove it from Activities.
>
> *Pros:*
>
> 1. We avoid breaking collaboration for *(a)* Activities that use
> TUBES and run on older systems where TUBES is available, and
> *(b)* Activities that does not use TUBES on newer systems
> where TUBES is no longer available. This _is_ an improvement
> versus the current situation where is completely broken on
> newer systems.
> 2. We do this whole re-work incrementally, without having to
> change the API (sort of) blindly.
> 3. There will be more flexibility to explore ideas in Activities
> land.
>
> *Cons:*
>
> 1. There will be repeated code in Activities, but that can be
> changed easily later.
>
>
> *What would be needed:*
>
> 1. To detect if there is TUBES support, as Sam mentioned in his
> first PR [1]. *Can someone look into this?*
> 2. Do not create TUBES channel when there is not support. This
> [2] is just a hack and the logic works fine, but it depends on
> whether or not we can detect support.
> 3. Cleanup the Wrapper and make sure that it is possible to use
> it locally in activities.
>
> *Other improvements that we could land now:*
>
> 1. Give more flexibility to activities to use file transfer
> channels without having the shell messing with them. [3]
>
> *Conclusions:*
>
> If we don't do something about this, next Sugar releases will
> still be broken for collaboration, for more scenarios than necessary.
>
>
> Let me know what you guys think,
> Martin.
>
> *Refs:*
> [1] https://github.com/sugarlabs/sugar-toolkit-gtk3/pull/270
> [2]
> https://github.com/tchx84/sugar-toolkit-gtk3/commit/bed0ac5f4259ff1669323db26acb27f5d9c8ed1f
> [3] https://github.com/sugarlabs/sugar/pull/621
>
>
>
>
> --
> Gonzalo Odiard
>
> SugarLabs - Software [for | by] children learning
>
>
> _______________________________________________
> Sugar-devel mailing list
> Sugar-devel at lists.sugarlabs.org
> http://lists.sugarlabs.org/listinfo/sugar-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sugarlabs.org/archive/sugar-devel/attachments/20151226/ef2223e9/attachment.html>
More information about the Sugar-devel
mailing list