Tuesday, 2019-10-29

*** zbenjamin is now known as Guest1744602:57
*** zbenjamin_ is now known as zbenjamin02:57
dcalisteHello chriadam, how are you ?08:10
chriadamhi dcaliste, I'm well, thanks.  I hope you had a great vacation08:10
dcalisteYep, it was really nice, thanks.08:11
chriadamthat's good!08:12
chriadamI haven't had a chance to re-test the caldav sync direction PR yet unfortunately08:12
dcalisteNo problem, I guess ironing out the latest version took its time !08:13
chriadambut I saw that pvuorela merged the mkcal custom properties for notebook PR08:13
chriadamyes, still ongoing with fixing bugs and whatnot for release.  that never ends I guess ;-)08:13
dcalisteDid he ? I was thinking he was about to do it… Checking.08:14
dcalisteOh indeed, I missed it.08:14
chriadamwe still need to take that into use in various places, but at least that's possible now :-)08:15
dcalisteI will use it in CalDAV plugin and webcal one. Good, good.08:15
dcalisteI've looked again at mkcal!17, without happy ending :/ Still creating issues with existing behaviour when trying to clean up all day handling.08:16
chriadamwhat sort of issues?  if some change fixes various issues but causes a behaviour break for some edge case, it may be fine (e.g. we pay that cost, for the overall improvement) but depends on the issues I guess08:17
dcalisteSomething that was detected as a all day recurring rule is not detected anymore as one, or things like that. I still need to work on this with the target to have a saner handling of all day (using the incidence or rule allDay() instead of KDateTime one) but keeping the old behaviour as much as possible.08:20
dcalisteThis will become mandatory when moving from KDateTime to QDateTime.08:20
dcalisteHopefully, I should end up with some backward compatibility code only in the "read" part and well confined in the code. But not yet there…08:21
dcalisteAn example of what is breaking currently is:08:22
dcalistea incidence (or recurrence rule) was defined with the old scheme (thinking of the recurrence exception date time provided by nemo-qml-plugin-calendar when defining an exception) but is stored with the proper new way.08:23
dcalisteMeaning it is defined with time = (0:0) in ClockTime time spec.08:24
dcalisteBut new scheme stores it with DATE_ONLY timezone special flag.08:24
dcalisteWhen restored, it is saved as KDateTime date only and thus the operator()== is failing.08:25
dcalisteWhich makes the calculation of repeated incidences to display in the calendar with the exception to fail.08:25
dcalisteBecause the exception is not == to the generated recurring ocurrences…08:26
dcalisteThat kind of issues.08:26
chriadamwhat do you mean by "when restored"?08:27
dcalisteWhen reread from storage.08:29
chriadamok.  so, basically, it's not fully round-trip stable, because it is "given" as clocktime 00:00, but returned in slightly different format (due to DATE_ONLY with QDateTime, vs KDateTime with clocktime spec difference?)08:30
chriadamcan we "reliably" migrate existing rrules in the database, and update nemo-qml-plugin-calendar to fix its assumptions?08:31
chriadamand then just transition to the new format, altogether?  or am I misunderstanding08:31
dcalisteYou understand properly I think. I'm not sure yet that migrating the existing databases is the right solution. I need to investigate more the calculation of ocurrences and handling of exceptions to see if we can patch there instead.08:32
dcalisteAll this to conclude that mkcal!17 still requires further work ;)08:33
chriadamyep :-)  all good, thank you very much for your work there08:34
chriadamregarding the j-s-a PR for email folder selection, I think that one has just been approved internally for more work, so I think that you should see that one progress faster on our side (reviews/design/testing/etc) shortly.08:34
dcalisteOk nice. pvuorela commented also on the webcal MR and I still need to address his remarks.08:35
dcalisteAnd move the current proposed code from calendar app to account settings.08:35
chriadamah was that the decision there?08:36
chriadamok cool08:36
dcalisteI think the consensus is to put the subscription handling under the account pages (even if under the hood we're not creating any account, just a sync profile).08:37
chriadamfair enough.  seems a bit strange to me, but the designers know what they're doing :-)08:38
dcalisteI've been also looking at making ExtendedCalendar from mKCal to inherit MemoryCalendar from KCalCore. I've noticed that they are sharing a lot of code (almost 1000 lines). It's a WIP and I need to move some lines into KCalCore.08:38
dcalisteIt would reduce the maintainance burden of mKCal a bit and move this burden upstream to KDE since KCalCore is now part of Framework5 stuff.08:40
chriadamah great!08:40
chriadamdid that one change much in upstream kcalore?08:40
dcalisteNo, it's almost as is as far as I've seen.08:40
dcalisteTotal guess here, but I think it's not much used at all by calendar projects in KDE. I guess they are inheriting from Calendar class directly.08:41
dcalisteAs I see it, MemoryCalendar is a slight simplification of ExtendedCalendar when Core and mobile were separated.08:42
chriadamdefinitely good to remove code duplication where possible, thanks08:42
dcalisteBut since MemoryCalendar is in KCalCore, it's interesting to use it, I think.08:42
dcalisteThe only drawback that may have importance is that internal QMaps are not accessible anymore directly, and thus we're creating copies a lot by using .values().08:44
dcalisteAnd iterating over .values().08:44
chriadamconst copies?  if so, cost is negligible due to implicit sharing08:44
dcalisteAt the same time, it's only QSharedPointers, so copies should be lightweight.08:44
dcalisteYeh, I tried to use const whereever I can and use std:: functions like copy_if() and firends instead of looping by hand.08:45
chriadamgreat - I'd guess that the quality of code you are writing is higher than the rest of kcalcore anyway, due to its age anyway08:46
chriadamso it may be that there are massive perf bottlenecks unrelated to this08:47
chriadami.e. I wouldn't worry about it too much unless benchmarks show that it is causing some actual problem08:47
dcalisteThe new upstream is much cleaner to that respect. Many parts have been cleaned or rewritten.08:47
chriadamthat's good08:47
dcalisteYeh, but the jump will cost a lot in SailfishOS…08:48
chriadamlet's cross that bridge when we get there :-D08:48
dcalisteWhen you have time, can you review caldav!51 ?08:48
dcalisteYou already looked at it. It's to report the number of added/modified/deleted entries in the logs.08:49
dcalisteIt's not yet exposing the error string to the user or even in the log, but it's also cleaning some places where these strings are reported.08:49
chriadamah, yes08:50
chriadamI will do so this week08:51
chriadamand follow up on the sync direction one also08:51
chriadamI didn't have anything else to discuss - was there anything else you wanted to discuss?08:52
chriadamblog post - I haven't heard anything more from Jaymzz yet.  I guess making TJC post might be best after all :-/08:52
dcalisteFinally, for the caldav plugin, I've also a WIP branch where I've changed the Q_FOREACH() loops by c++11 for(x:y) ones. Trying to respect the const this to avoid copies.08:52
chriadamah cool.  without the qAsConst() macro from more recent Qt, are you doign something similar, or?08:53
dcalisteI've used a const_cast<Foo>() when needed.08:54
chriadamcool, cheers08:54
dcalisteJaymzz mailed me to explained to me the reason why it's lagging.08:54
chriadamah great08:55
chriadamhopefully it is resolved soon then08:55
dcalisteSome political implications that he has no traction on ;)08:55
dcalisteHe told me it should ease after the blog post for 3.2.0 is out. Let's wait.08:56
Nico[m]I think there is also a stf::add_const, that doesn't require you to specify thr type08:56
chriadamnice one08:57
dcalisteNico[m] the documention mentioned something about std::const I think or sometiing similar, but it's c++14.08:57
Nico[m]No idea if the sailfish gcc supports that thouvh08:57
Nico[m]Ah, yeah, that could be an issue08:57
dcalisteI tried, but it complained. I didn't dig further to see if it's because I didn't mention c++14 in the makefile, or if it's due to gcc 4.9. It was working with const_cast<>() so I staied on that.08:58
Nico[m]Sure, in that case const_cast is good enough08:59
dcalistechriadam, I think time is running late for you. Have a nice week and see you later.08:59
chriadamdcaliste: thanks very much for your hard work as always09:00
chriadamdcaliste: have a great week!09:00
dcalisteNo problem, still fun ! Thanks.09:00
*** vilpan is now known as Guest7195409:20
*** Guest71954 is now known as vilpan09:22
*** frinring_ is now known as frinring10:08
*** vilpan1 is now known as vilpan13:35
*** Renault_ is now known as Renault13:58
*** vilpan1 is now known as vilpan14:21
adantesWhy is it that sysmon accuses some cpu activity, battery drain activity, during the night, when al the comms are off, android procceses stoped18:43
adantesxa2 ultra, sailfish 3.118:43
adantesis it going the Android18:44
adantes/ ios path?18:44
adanteswhere turned off is just a way of saying..18:44
maladantes: can you show some more information, any indication what is using cpu?18:46
adantesmal: thanks for the repy.. nope, i jus wake in the morning, look at the latest 8h activity, and some 4% of battery draining18:49
adantesdoes anyone suggest a way of monitor this?18:49
adantestoday Ill try put in flight mode18:50
attahWhoa.. that gave me a good scare. For whatever reason trhe GUI didn't load completely on first boot after upgrade... and obviously this was the first time in years i hadn't done a backup18:57
r0kk3rzoh update, cool22:13

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