Tuesday, 2021-09-28

chriadamhi dcaliste, how are you today?06:59
dcalisteHello Chris, I'm ok. I hope you're well too.07:03
chriadamyep, not too bad, thanks07:04
chriadamunfortunately I didn't get a chance to follow up on your PRs from last week, yet07:04
dcalisteNo problem, don't worry.07:05
chriadamhave been busy this last week with another project, unfortunately.  This week I have more availability, fortunately.07:05
dcalisteI created some new ones. We can review them.07:05
dcalistehttps://github.com/sailfishos/buteo-syncfw/pull/5 about a minor error code in Buteo to say that sync was successful but some items may have failed.07:06
dcalisteI added simply a new value in the enum. But if you see the comment, I'm actually wondering about the "SUCCESSFUL" one.07:07
chriadamdoes that syncAgentConsts.h have any documentation about that SYNC_FINISHED case?07:09
dcalisteI tried to find this file without any success. I even checkout the repo to the moment the line was added, but I didn't find it there neither.07:10
chriadamI think SYNC_FINISHED does indeed suggest that the sync completed, and that since it's different to NO_ERROR that it suggests that some (per item) errors occurred07:11
chriadambut I haven't thought about it much yet, nor do I remember what that code has been used for in the past.  I might grep the syncml plugin to see if it is used currently...07:11
chriadamah!  that syncAgentConsts.h exists in the buteo-syncml plugin btw07:12
dcalisteIndeed, that's my opinion also. But would "major: SUCCESS, minor: FINISHED" would suggest that there are some non fatal issues with some items ?07:12
dcalisteAh, ok. Great, looking at it.07:13
chriadamit looks like from the SyncML plugin, SYNC_FINISHED is a "pure success" state, so I would tend to lean toward adding a new error code for this case07:14
chriadambut maybe I'm wrong07:14
dcalisteWould you in that case agree with the name of the new value ?07:15
chriadamnaming is hard07:16
chriadamI have no concerns with that name, honestly07:16
chriadamit's explicit.07:17
chriadamand descriptive.07:17
dcalisteI see in SyncAgentConsts.h. It's to map values. But it's a bit strange since the two enums seem not to be used in the same context.07:17
chriadamyeah.  buteo things.07:17
dcalisteAnyway, I'll update slightly the PR to mentioned in the comment where to find the SyncAgentConsts.h file.07:18
chriadamwere there any other new PRs?  from last week's PRs, I don't think either pvuorela or flypig have had a chance to look at the caldav#4 or caldav#5 PRs yet, but they LGTM.07:20
dcalisteWhen looking into issues on importing ics data, I found this one : https://github.com/sailfishos/mkcal/pull/707:21
dcalisteIt's not an issue at the moment, since the code-path to get it is not taken. But it may be in the future.07:22
dcalisteI'm commenting there on two ways to solve it.07:22
dcalisteThe problem is the following scheme:07:22
dcaliste- delete entry with UID = foo,07:22
dcaliste- add a new incidence with UID = foo.07:22
dcalisteIn that case, it's failing because deletion is done after addition.07:23
chriadamadded a couple of comments07:31
chriadamI'm a bit worried that the second solution you mention could break the "second" ordering in transactions (i.e. add+delete)07:32
dcalisteIndeed, good point. It invalidation the reordering.07:33
dcalisteSo the porposed way to convert DEL+ADD into UPDATE is a better way.07:33
chriadamI think so, yes07:33
chriadambut not 100% sure if the (add+delete) case even makes sense (within a single transaction)07:34
chriadamso I might be wrong07:34
dcalisteSure, but in case, we could keep it possible.07:36
dcalisteAnd a last new PR : https://github.com/sailfishos/contactsd/pull/107:37
dcalisteMostly targetting flypig, but mentioning i today in case you're interested.07:38
dcalisteIt seems from forum report that Google still has some issues with disabled calendars being reenable after sync.07:38
dcalisteI cannot reproduce at the moment (didn't try hard neither).07:38
dcalisteBut the only possibility I can imagine of, is the contactsd plugin that flip the visibility of notebooks, depending on enabled status of the account.07:39
dcalisteIf I'm not mistaken, the callback can be called even when the enable status is not changed because of internal implementation of libaccount.07:40
dcalisteIf that's true, we cannot trust in the callback that the enabled status actually changed.07:40
dcalisteWe try to mitigate this earlier by trying hard not to save account if there is no change, but if there are changes actually, we cannot avoid it.07:41
dcalisteSo I'm proposing to try to patch this by saving notebook visibility status and reset it properly in the enabled status callback.07:41
dcalisteIt's not perfect, but it should solve the problem in most cases, as far as I can see.07:42
chriadamso the issue is that a (Google) notebook can have its visibility flipped to false (or vice versa) due to an account save?07:43
dcalisteYes, particularly to visible, while the user hide it, during a sync.07:44
dcalisteI think we can have the same issue with caldav when we change something to the account. I'm going to try to demonstrate it during this week.07:44
dcalisteMaybe it will help to reproduce the forum reports.07:45
flypigSorry for not already having looked at your PR dcaliste. I didn't notice it until chriadam just prodded me now.07:46
dcalisteDon't worry flypig. No problem.07:46
dcalisteI created it lately last week anyway. It's not in a hurry.07:47
flypigI recall the problem, but haven't yet digested your fix.07:47
flypigOr why it's different for Google accounts specifically.07:48
dcalisteThat's what I cannot understand. The only syncAndBlock I can see in the Google plugin is when there is a need to upsdate credentials.07:48
dcalisteWhich cannot happen at each sync…07:49
dcalisteThat's why I have trouble to reproduce the forum reports.07:49
dcalisteBefore accepting the PR, it's definitely important to demonstrate which situation could lead to the issue the PR tries to address.07:50
chriadamthis might be completely unrelated, but the contactsd plugin thing might be triggered directly by jolla-calendar07:50
chriadam(although I might be crossing wires here)07:50
flypigIt'd certainly be good to understand what's going on. I'll take a look and also try to reproduce it this week.07:51
dcalisteWhat makes me think the culprit is around there is when you grep for setIsVisible in the code : there is no match in the google sync plugin.07:51
dcalisteThe only place where you have it is nemo-qml-plugin-calendar, but it's not supposed to be used during a sync.07:51
dcalisteAnd the other place I know about is the contactsd plugin…07:52
flypigSo you think the only possibility is a syncAndBlock call.07:52
dcalisteIf it's the contactsd plugin, then it's because of a enabled status changed signal from the AccountManager.07:52
dcalisteAnd a possible way to trigger it (if I'm not wrong, not 100% sure), is a syncAndBlock().07:53
flypigOkay, that makes sense.07:53
dcaliste(a sync() also, but it seems that it's not used, but more difficult to grep for)07:53
flypigThere's probably some messy stuff going on in the Settings, but I didn't check the forum post; could that be causing problems?07:55
flypig"reappear again randomly or after sync". Randomly suggests it's on a timed sync.07:56
dcalisteThe reproducing procedure is not clear from the posters ;) But at least two people seem to see the problem. I'm not sure it implies the setting application though.07:56
chriadamI have another meeting in a couple of minutes, so we might need to wrap this one up, unfortunately07:57
dcalisteYes, I'm more incline to think about something triggered during the buteo sync. But the only syncAndBlock calls are for credentials need update, which is not coherent with posters situation…07:57
chriadamquick summary: I will merge those two caldav PRs this week, unless pvuorela  or flypig  have some comments on those07:57
dcalisteNo problem chriadam, sure. Just a word to say that I finally updated the DST jolla-calendar MR.07:58
chriadamI have poked Pekka again about the buteo-syncfw one, let's see if that one progresses07:58
chriadamah!  should I poke MartinS about that one again?07:58
chriadamI mentioned it to him and Joona internally.  thanks for that!07:59
dcalisteYes, I still have no clue on how to make the reminder work, but at least for the UI design in the month view, it's updated.07:59
chriadamgreat, thanks very much07:59
chriadamI have to run - have a great week!07:59
* chriadam -> away, gnight :-)07:59
dcalistethank you chriadam, see you.07:59
flypigI have the same meeting, so will also dash, but thank you again for your great work on the buteo article dcaliste. It seemed to go down well :)08:00
dcalisteYeh, it was interesting to write it.08:00
dcalisteHave a nice meeting flypig.08:01
flypigThanks, and have a nice day yourself!08:01
Chat-ron hi ! I'm trying to sync my contacts from my SFOS phone to my radicale server, but it doesn't seem to work : my SFOS phone can connect to my carddav srv, but doesn't seem to send any contact08:44
Chat-ronis it possible to sync local contacts to a carddav server ?08:44
dcalisteChat-ron, I'm not sure, but I think that you can not sync "local" contacts to a server. You need to export your local contacts into one vcard file and then upload this file to your radical server. After that, you can create a CardDAV account on the phone and sync with your radical server.10:04
Chat-ronI see, thanks dcaliste11:05
Chat-ronbut in this case, should I also remove the local contacts in order to have no duplicates or will it be handle by SFOS ?11:06
dcalisteI guess you will have duplicates…11:07
Chat-ronhum, and does the nextcloud account handle the contact sync ?11:10
dcalisteYes, Nextcloud has a possibility to sync contacts. But it will be the same issue than with your Radical server : the contact are local and not associated to an online service.11:35

Generated by irclog2html.py 2.17.1 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!