One small change and we can merge.
- Feed Queries
- All Stories
- Search
- Feed Search
- Transactions
- Transaction Logs
All Stories
May 8 2025
May 6 2025
May 5 2025
You're correct. It should have been done when we implemented DAV support in calendar, kolab_addressbook and tasklist plugins. Thanks.
thanks, superfast fix!
- Fix CS
May 3 2025
- Merge branch 'master' into dev/delegation
- Merge branch 'master' into dev/delegation
- Fix phpstan issues
- CS fixes
May 2 2025
- Merge branch 'master' into dev/kolab4
- Kolab4: Global Addressbook
Just check if there is anything in the contact, it shouldn't matter what.
The empty string works and is rendered as "Name is unavailable" in Outlook.
May 1 2025
FN property is required, but can be empty.
In D5223#66996, @machniak wrote:Wouldn't it be easier to remember which folder is missing in Sync/Ping (e.g. using cache) and then in FolderSync treat it as deleted?
In D5226#66984, @machniak wrote:Maybe setting it to an empty string would work, but we're ignoring such values on our side (AXMLEntry::appendXML()), so we'd have to change how we handle empty strings. Maybe it was a problem for the original Syncroton authors implementation, but I think this change should be safe for us. So, I'd propose to try this first.
In D5229#66975, @machniak wrote:The Kolab3 XML objects are read like this:
$emails = $this->obj->emailAddresses(); if ($emails instanceof vectoremail) { $emailtypes = array_flip($this->emailtypes); for ($i = 0; $i < $emails->size(); $i++) { $email = $emails->get($i); $object['email'][] = ['address' => $email->address(), 'type' => $emailtypes[$email->types()]]; } } else { $object['email'] = self::vector2array($emails); }but Kolab4 vCards are read using rcube_vcard::get_assoc(), so the output is different. We have to support both. And looking at the code it seems that writing is also broken. I can work on this.
Wouldn't it be easier to remember which folder is missing in Sync/Ping (e.g. using cache) and then in FolderSync treat it as deleted?
Maybe setting it to an empty string would work, but we're ignoring such values on our side (AXMLEntry::appendXML()), so we'd have to change how we handle empty strings. Maybe it was a problem for the original Syncroton authors implementation, but I think this change should be safe for us. So, I'd propose to try this first.
The Kolab3 XML objects are read like this:
$emails = $this->obj->emailAddresses(); if ($emails instanceof vectoremail) { $emailtypes = array_flip($this->emailtypes); for ($i = 0; $i < $emails->size(); $i++) { $email = $emails->get($i); $object['email'][] = ['address' => $email->address(), 'type' => $emailtypes[$email->types()]]; } } else { $object['email'] = self::vector2array($emails); }
but Kolab4 vCards are read using rcube_vcard::get_assoc(), so the output is different. We have to support both. And looking at the code it seems that writing is also broken. I can work on this.
The writing side currently crashes for similar reasons I think (we insert an array where a string would be expected).
I think on the reading side the problem is that we get:
Apr 30 2025
I'm aware that we're not actually taking the is_deleted flag into account anywhere, but I haven't found a place where it matters yet.
- Fix merge regression, cleanup, skip some more tests on 'kolab' storage
- Merge branch 'master' into dev/kolab-subscriptions
- Move DB migration file forward
- Cleanup
- Fix merge regressions
- Remove redundant queries
- CS fixes
Apr 29 2025
- Merge branch 'master' into dev/kolab-subscriptions
- Comment out the Sender/X-Sender header addition to a sent mail
Apr 28 2025
- Merge branch 'master' into dev/delegation
Apr 25 2025
- Remove redundant @group markers
- App\Policy\Greylist\Request.php -> App\Policy\Greylist.php - improved tests
- Extract SPF policy code from the controller into App\Policy namespace, improve tests
- app/Policy/Mailfilter/RequestHandler.php -> app/Policy/Mailfilter.php
- Cleanup
- Move RateLimitWhitelist class into app/Policy/RateLimit dir
Apr 24 2025
- Merge branch 'master' into dev/delegation
- Fix regression
- Tests
Apr 23 2025
Apr 22 2025
- Remove redundant print()
- Add TODO
- Submission policy implementation