sugarlabs / write-activity

A simple word processor for the Sugar learning environment
GNU General Public License v2.0
2 stars 25 forks source link

No collaboration seen #40

Open Saumya-Mishra9129 opened 4 years ago

Saumya-Mishra9129 commented 4 years ago

Tested on 2 VMs with Sugar Live Build. After joining to a friend , activity doesn't share state with other one. It can caused by incomplete port or not tested collaboration properly in https://github.com/sugarlabs/write-activity/pull/25

shaansubbaiah commented 4 years ago

@Saumya-Mishra9129 Does the collaboration work in other activities in the 2 VM's you were testing?

Have also been testing collaboration recently, had some questions, did you clone the first VM or install sugar twice? I have tried cloning the first VM but have had issues during collaboration between 2 users.

Saumya-Mishra9129 commented 4 years ago

@Saumya-Mishra9129 Does the collaboration work in other activities in the 2 VM's you were testing?

Have also been testing collaboration recently, had some questions, did you clone the first VM or install sugar twice? I have tried cloning the first VM but have had issues during collaboration between 2 users.

I tested with 2 VMs and with Live build of sugar, I am testing all the fructose activities, I have done with chat , pippy and write. Chat and pippy works fine. Just chat activities take some extra time in connecting. Also I have done with one clone and one without clone sugar, there also I found same issues. What Activities you tested?

shaansubbaiah commented 4 years ago

I'm also trying the fructose activities. Using clones temporarily due to connection issues. Tried the Write, Chat and Calculator activities.

No successful results. Was not even able to add the other user as a friend.

If this did not happen to you while trying with a clone, it has to be an issue in the Debian packages, might be worth opening separately.

Saumya-Mishra9129 commented 4 years ago

I'm also trying the fructose activities. Using clones temporarily due to connection issues. Tried the Write, Chat and Calculator activities.

No successful results. Was not even able to add the other user as a friend.

If this did not happen to you while trying with a clone, it has to be an issue in the Debian packages, might be worth opening separately.

I haven't checked with calculator, but chat works fine. Can you see what errors you get in shell.log while testing chat?

shaansubbaiah commented 4 years ago

Chat works to an extent, gets stuck while attempting to connect to a previously joined shared chat session. Works fine the first time. Nothing in the logs, have to investigate further.

Edit: Collaboration doesn't work on the Write Activity.

shaansubbaiah commented 4 years ago

Also, Nimbus Roman font is set as default when a user joins a public/collaborative Write Activity session. It is seen only in the guest user, not in the shared activity's host.

12June-nimbusroman

@Saumya-Mishra9129 can you check if this issue occurs on your setup as well?

I'll open an issue if it is not specific to Debian Buster.

Saumya-Mishra9129 commented 4 years ago

@Saumya-Mishra9129 can you check if this issue occurs on your setup as well?

I'll open an issue if it is not specific to Debian Buster.

I am able to reproduce but different fonts are present here. In host it is Sans set by default and in guest user it is Serif.

shaansubbaiah commented 4 years ago

I am able to reproduce but different fonts are present here. In host it is Sans set by default and in guest user it is Serif.

Are you using Sugar Live Build or the Ubuntu packages?

Saumya-Mishra9129 commented 4 years ago

I am able to reproduce but different fonts are present here. In host it is Sans set by default and in guest user it is Serif.

Are you using Sugar Live Build or the Ubuntu packages?

I am using packaged sugar with Ubuntu 20.04

quozl commented 4 years ago

Clones will not work. The Sugar user cryptographic key is identical, so the users are not separate. Workaround is to create a different account or delete the account and recreate it again. Correct procedure is to snapshot your VM before logging in to Sugar for the first time, when the key is created.

quozl commented 4 years ago

Please assess if anything is left in this issue after avoiding cloning. Chat activity is our usual activity for testing collaboration briefly; if Chat collaborates, but Write does not in the same circumstance, then that deserves more attention. Write uses AbiWord to collaborate, via the same underlying Telepathy layer.

shaansubbaiah commented 4 years ago

Tested again, without using clones.

Chat activity

Write activity


Aside, @Saumya-Mishra9129 on packaged Sugar in Ubuntu, do you have any errors when adding and removing another user as a friend?

quozl commented 4 years ago

Thanks. It is not working then. Can anyone else reproduce? What version of AbiWord?

shaansubbaiah commented 4 years ago

Debian 10.4, Sugar 0.117-3: Write activity v101 gir1.2-abi-3.0 v3.0.2-10

Saumya-Mishra9129 commented 4 years ago

Aside, @Saumya-Mishra9129 on packaged Sugar in Ubuntu, do you have any errors when adding and removing another user as a friend?

Yeah I got 3 errors.

Ubuntu 20.04 - Sugar 0.117, Write activity v101

shaansubbaiah commented 4 years ago

These match what I had reported in the mailing list earlier (for Debian 10.4), so these must be Python 3 porting regressions as they're not present in OLPC OS 18.04

Saumya-Mishra9129 commented 4 years ago

These match what I had reported in the mailing list earlier (for Debian 10.4), so these must be Python 3 porting regressions as they're not present in OLPC OS 18.04

I agree with you. We probably lack in testing changes before making a commit :(

quozl commented 4 years ago

Debian 10.4, Sugar 117-3: Write activity v101 gir1.2-abi-3.0 v3.0.2-10

Thanks. Checking what's available, I think you mean Debian 10.4 + unstable

My tests were with Ubuntu 20.04 + OLPC OS 20.04

A critical difference between Sugar Labs release of Sugar and the OLPC OS release of Sugar is this configuration setting made by /usr/bin/sugar (generated from bin/sugar.in);

gsettings set im.telepathy.MissionControl.FromEmpathy use-conn false

Please try that at the Terminal bash prompt inside Sugar, then restart Sugar and try the collaboration test again. I doubt if it will change the problem, because you're not likely to be using link-local IP addressing on your virtual network, but you haven't said how your virtual machines are networked, so it's anyone's guess.

quozl commented 4 years ago

I'm not testing using add friend or invites. I'm testing by sharing the Write activity using the activity toolbar, and then joining it from the other machine using the Neighbourhood View. Let's agree on which type of collaboration we are testing?

Thanks. It is not working then. Can anyone else reproduce? What version of AbiWord?

Ubuntu 20.04 - Sugar 0.117, Write activity v101

What version of Sugar packaging? Check the sucrose package.

What version of AbiWord? Check the libabiword-3.0 package which contains most of the AbiWord compiled C++ code. It is probably version 3.0.2-10.

(Checking installed package version can be done quickly with dpkg-query -W NAME where NAME is the package name. Incidentally, you can capture a complete list of packages and versions installed with dpkg-query -W and redirect it to a a file for reference later. This only handles the native packages; ignores any Sugar activities installed by Browse, and ignores any changes you may have made to the installed files.)

Saumya-Mishra9129 commented 4 years ago

A critical difference between Sugar Labs release of Sugar and the OLPC OS release of Sugar is this configuration setting made by /usr/bin/sugar (generated from bin/sugar.in);

gsettings set im.telepathy.MissionControl.FromEmpathy use-conn false Please try that at the Terminal bash prompt inside Sugar, then restart Sugar and try the collaboration test again. I doubt if it will change the problem, because you're not likely to be using link-local IP addressing on your virtual network, but you haven't said how your virtual machines are networked, so it's anyone's guess.

I tried this. It doesn't work. Getting above mentioned errors again.

I'm not testing using add friend or invites. I'm testing by sharing the Write activity using the activity toolbar, and then joining it from the other machine using the Neighbourhood View. Let's agree on which type of collaboration we are testing?

Yeah sure. I did testing with adding friends . While testing without adding friends, I am getting following errors only in shell.log

  • Second one when I click on neighbourhood icon in write activity , Same as mentioned in sugarlabs/sugar#924
    • Third one when I exit after joining a share activity on guest as well as on host.
      File "/usr/lib/python3/dist-packages/jarabe/desktop/meshbox.py" , line 409, in _buddy_removed_cb
      self._remove_buddy(buddy_model)
      File "/usr/lib/python3/dist-packages/jarabe/desktop/meshbox.py" , line435, in _remove_buddy
      icon = self._buddies[buddy_model.props.key]
      KeyError: dbus.ByteArray(b'AAAAB3NzaC1kc3....=' ,variant_level=1)

However I tried little debugging today. props.key should return a bytes i.e. b'...' . But as mentioned in above error how this key buddy_model.props.key is returning dbus.ByteArray instance.

Saumya-Mishra9129 commented 4 years ago

What version of Sugar packaging? Check the sucrose package.

What version of AbiWord? Check the libabiword-3.0 package which contains most of the AbiWord compiled C++ code. It is probably version 3.0.2-10.

(Checking installed package version can be done quickly with dpkg-query -W NAME where NAME is the package name. Incidentally, you can capture a complete list of packages and versions installed with dpkg-query -W and redirect it to a a file for reference later. This only handles the native packages; ignores any Sugar activities installed by Browse, and ignores any changes you may have made to the installed files.)

Thanks. I tried above mentioned command. I am testing with Ubuntu 20.04

quozl commented 4 years ago

A critical difference between Sugar Labs release of Sugar and the OLPC OS release of Sugar is this configuration setting made by /usr/bin/sugar (generated from bin/sugar.in); gsettings set im.telepathy.MissionControl.FromEmpathy use-conn false Please try that at the Terminal bash prompt inside Sugar, then restart Sugar and try the collaboration test again. I doubt if it will change the problem, because you're not likely to be using link-local IP addressing on your virtual network, but you haven't said how your virtual machines are networked, so it's anyone's guess.

I tried this. It doesn't work. Getting above mentioned errors again.

Thanks. It's not the errors that matter, it is that the document is not shared, and there are no errors to explain why.

I'm not testing using add friend or invites. I'm testing by sharing the Write activity using the activity toolbar, and then joining it from the other machine using the Neighbourhood View. Let's agree on which type of collaboration we are testing?

Yeah sure. I did testing with adding friends . While testing without adding friends, I am getting following errors only in shell.log

  • Second one when I click on neighbourhood icon in write activity , Same as mentioned in sugarlabs/sugar#924

As this only affects the Neighbourhood View and doesn't stop you from joining the shared activity, it should not affect testing of collaboration. It can be fixed in parallel.

  • Third one when I exit after joining a share activity on guest as well as on host.
File "/usr/lib/python3/dist-packages/jarabe/desktop/meshbox.py" , line 409, in _buddy_removed_cb
   self._remove_buddy(buddy_model)
File "/usr/lib/python3/dist-packages/jarabe/desktop/meshbox.py" , line 435, in _remove_buddy
   icon = self._buddies[buddy_model.props.key]
KeyError: dbus.ByteArray(b'AAAAB3NzaC1kc3....=' ,variant_level=1)

However I tried little debugging today. props.key should return a bytes i.e. b'...' . But as mentioned in above error how this key buddy_model.props.key is returning dbus.ByteArray instance.

A dbus.ByteArray is a bytes. Isn't it more likely that the key is not in the dictionary because of some other reason? What keys are in the dictionary?

Saumya-Mishra9129 commented 4 years ago

A dbus.ByteArray is a bytes. Isn't it more likely that the key is not in the dictionary because of some other reason? What keys are in the dictionary?

Yeah I tried logging the values in dictionary, but log shows nothing. Maybe key is deleted before. Also I tried with Browse getting same two errors while collaboration. But I am little worried , maybe because of these errors , collaboration is not possible in Browse and write.

quozl commented 4 years ago

Tested. Collaboration for Chat works for me with two laptops using an iPhone in personal hotspot mode. It did not work with hotel WiFi, because of client isolation enabled. It did previously work with my WiFi at home. Test method;

Collaboration for Browse works for me. When joined the shared instance does share the bookmarks. (That's the limit of sharing in Browse).

Collaboration for Write does not work; the shared activity icon is shown, but when joined the shared instance does not share the same document. No correlating warnings or errors in log.

Needs debugging inside AbiWord. Urgent, because this is a Fructose demonstration activity.