Update request: https://obs.kolabsys.com/request/show/3299
- Feed Queries
- All Stories
- Search
- Feed Search
- Transactions
- Transaction Logs
All Stories
Jul 15 2024
Jul 14 2024
Jul 12 2024
Jul 9 2024
Jul 8 2024
Jul 7 2024
Looks good to me.
In D4845: IMAP data migrator and other improvements I took this differential of yours, but I re-implemented some things differently. I think it's cleaner. Still a lot of TODO lines there. So, we might improve while writing tests. I have also an idea to try to do mail streaming for best performance.
Jul 5 2024
This can be submitted once it is clear that it has the desired effect.
It seems to me we should:
- Adjust the catch in https://git.kolab.org/diffusion/RPK/browse/master/plugins/libcalendaring/lib/libcalendaring_vcalendar.php (to specifically just ignore a broken itip).
- Adjust all the catches in Sync.php to also catch Throwable
- Add a test that triggers this error to the syncroton testsuite
- Remove the catch in this patch again, so we don't end up with 3 layers potentially catching.
..
Throwable catches that fatal error. Now looking at this I found that we could change the catch in https://git.kolab.org/diffusion/RPK/browse/master/plugins/libcalendaring/lib/libcalendaring_vcalendar.php$158
- It's a debug not a warning
- Move sorting to later place
In D4839#59874, @machniak wrote:Indeed. I just noticed that the actual error wasn't an exception. It was PHP Fatal error: Uncaught Error: __clone method called on non-object in /usr/share/roundcubemail/plugins/libcalendaring/lib/libcalendaring_vcalendar.php:633, so to catch it we'd have to catch Throwable, I suppose, I'm not sure.
Still, it makes sense to not skip the entire message, but sync it as it was a normal message, ignoring the fact it has an invitation.
Jul 4 2024
Indeed. I just noticed that the actual error wasn't an exception. It was PHP Fatal error: Uncaught Error: __clone method called on non-object in /usr/share/roundcubemail/plugins/libcalendaring/lib/libcalendaring_vcalendar.php:633, so to catch it we'd have to catch Throwable, I suppose, I'm not sure.
I suppose it would be better to just make sure that the logic in Sync.php works instead of ignoring ical errors specifically.
What I find a bit odd is that we already try to catch exceptions in Command/Sync.php on all getEntry calls, so that should already take care of it, no?
- phpdoc
- Missing DAV/Search
You can just push it once you looked over the migration change.
Looks good apart from the migration change (which might be fine but doesn't relate to the diff).
nice cleanup
In D4827#59694, @machniak wrote:Good progress, but I was about to work on DAV, and I already have some conflicting code. Please, don't work on DAV at this moment.
Small imap fixup, let the exporter implement the migration strategy
Jul 3 2024
Good progress, but I was about to work on DAV, and I already have some conflicting code. Please, don't work on DAV at this moment.
dav migration, separate migrators for imap/dav
Short term, we should update the php-http-request2 package. 2.6.0 supports PHP >= 5.6 still, so there's no issue with that.
Jul 2 2024
Jul 1 2024
This only implements migrating imap messages but highlights how the current framework doesn't cleanly facilitate not using the job per item strategy.
I think there's a cleaner approach to implementing the two strategies than what I did above, e.g. by moving the processFolder logic entirely to the exporter.
I think we can merge it and take it from there.