cmollekopf (Christian Mollekopf)
User

Projects (12)

Today

  • Clear sailing ahead.

Tomorrow

  • Clear sailing ahead.

Friday

  • Clear sailing ahead.

User Details

User Since
Apr 12 2015, 7:57 AM (250 w, 2 d)
Availability
Available

Recent Activity

Yesterday

cmollekopf committed R162:0b3c1393adb5: Only use the QT_SCALE_FACTOR if we don't already have a devicePixelRatio >= 2 (authored by cmollekopf).
Only use the QT_SCALE_FACTOR if we don't already have a devicePixelRatio >= 2
Tue, Jan 28, 11:41 AM
cmollekopf committed R162:35381503a9e3: Configurable exec line in desktopfile (authored by cmollekopf).
Configurable exec line in desktopfile
Tue, Jan 28, 11:41 AM

Mon, Jan 27

cmollekopf committed R162:4597db3ccaff: Always test the high dpi scenario (authored by cmollekopf).
Always test the high dpi scenario
Mon, Jan 27, 10:28 PM
cmollekopf committed R162:df704737f2db: Ensure we pick the right size even if larger ones are available (authored by cmollekopf).
Ensure we pick the right size even if larger ones are available
Mon, Jan 27, 10:28 PM
cmollekopf committed R162:c8d7c22ed3e9: view.sh (authored by cmollekopf).
view.sh
Mon, Jan 27, 10:28 PM
cmollekopf committed R162:61dd455e32d5: Continue copying even if a dark version of the icon does not exist. (authored by cmollekopf).
Continue copying even if a dark version of the icon does not exist.
Mon, Jan 27, 10:28 PM
cmollekopf committed R162:01df849b9655: Can't assign null to date (authored by cmollekopf).
Can't assign null to date
Mon, Jan 27, 10:28 PM
cmollekopf committed R162:0582ad9da798: Set the devicePixelRatio on the pixmap (authored by cmollekopf).
Set the devicePixelRatio on the pixmap
Mon, Jan 27, 10:28 PM
cmollekopf committed R162:2c83834939a7: Image.qml cleanup (authored by cmollekopf).
Image.qml cleanup
Mon, Jan 27, 10:28 PM
cmollekopf committed R162:41ecf6c50cdd: Factor out size selection into a separate function (authored by cmollekopf).
Factor out size selection into a separate function
Mon, Jan 27, 10:28 PM
cmollekopf committed R162:289719859407: Apply device pixel ratio when requesting the pixmap (authored by cmollekopf).
Apply device pixel ratio when requesting the pixmap
Mon, Jan 27, 10:28 PM
cmollekopf committed R162:4b4927f8bd03: Python2 is history (authored by cmollekopf).
Python2 is history
Mon, Jan 27, 10:28 PM
cmollekopf committed R162:5a4cc2203bf2: Icon loading test (authored by cmollekopf).
Icon loading test
Mon, Jan 27, 10:28 PM
cmollekopf committed R162:e5153bc88315: Make sure we can access all files in the container (authored by cmollekopf).
Make sure we can access all files in the container
Mon, Jan 27, 10:28 PM
cmollekopf committed R162:423f50f3d291: Use the same testrunner everywhere (authored by cmollekopf).
Use the same testrunner everywhere
Mon, Jan 27, 10:28 PM

Sun, Jan 19

cmollekopf committed R9:aba3ae3fe579: Cleanup (authored by cmollekopf).
Cleanup
Sun, Jan 19, 9:31 PM
cmollekopf committed R9:f757c6d6d5a4: Avoid off by one on uidnext and fixed sync tests (authored by cmollekopf).
Avoid off by one on uidnext and fixed sync tests
Sun, Jan 19, 9:31 PM
cmollekopf committed R9:9602348171cc: Added folder to log context (authored by cmollekopf).
Added folder to log context
Sun, Jan 19, 9:31 PM
cmollekopf committed R9:ad38eec33796: Fixed header resync after new message (authored by cmollekopf).
Fixed header resync after new message
Sun, Jan 19, 9:31 PM
cmollekopf committed R9:005d61c5e52d: Synchronizerstore contains (authored by cmollekopf).
Synchronizerstore contains
Sun, Jan 19, 9:31 PM
cmollekopf committed R9:884bacaeff65: Declare static method static (authored by cmollekopf).
Declare static method static
Sun, Jan 19, 9:31 PM
cmollekopf committed R9:a8840d9c6e28: Use initializer list (authored by cmollekopf).
Use initializer list
Sun, Jan 19, 9:31 PM
cmollekopf committed R9:a1d8e5e8993e: synchronizeMails -> createOrModifyMail (authored by cmollekopf).
synchronizeMails -> createOrModifyMail
Sun, Jan 19, 9:31 PM
cmollekopf committed R9:27dd2e2fad1a: Limit progress reporting if there is lot's of progress (authored by cmollekopf).
Limit progress reporting if there is lot's of progress
Sun, Jan 19, 9:31 PM
cmollekopf committed R9:a2feb1cb81ce: Imap sync cleanup (authored by cmollekopf).
Imap sync cleanup
Sun, Jan 19, 9:31 PM

Sat, Jan 18

cmollekopf committed R250:c4d0117da626: Removed unused includes (authored by cmollekopf).
Removed unused includes
Sat, Jan 18, 6:13 PM
cmollekopf committed R250:c0cd6f0d0b9d: Do the entire lists and sublists handling in the same place (authored by cmollekopf).
Do the entire lists and sublists handling in the same place
Sat, Jan 18, 6:13 PM
cmollekopf committed R250:08345ce38776: Separate function for separate meaning (authored by cmollekopf).
Separate function for separate meaning
Sat, Jan 18, 6:13 PM
cmollekopf committed R250:835707492197: Test recursive streamparser invocation (authored by cmollekopf).
Test recursive streamparser invocation
Sat, Jan 18, 6:13 PM
cmollekopf committed R250:a1fb16cf343f: Avoid making calculations with the invalid variant of the value (authored by cmollekopf).
Avoid making calculations with the invalid variant of the value
Sat, Jan 18, 6:13 PM
cmollekopf committed R250:8b8f24004f5b: Assert internal state (authored by cmollekopf).
Assert internal state
Sat, Jan 18, 6:13 PM
cmollekopf committed R250:71b54ea1b3cc: Failing to read anything from the socket is always an error (authored by cmollekopf).
Failing to read anything from the socket is always an error
Sat, Jan 18, 6:13 PM
cmollekopf committed R250:8b5df65713e4: Guard against recursive processing (authored by cmollekopf).
Guard against recursive processing
Sat, Jan 18, 6:13 PM

Sat, Jan 11

cmollekopf committed R9:844e4cfc2381: QTime cleanup and avoid crashing after the queue has been processed (authored by cmollekopf).
QTime cleanup and avoid crashing after the queue has been processed
Sat, Jan 11, 10:25 AM
cmollekopf committed R9:26ba4b956f56: Return an error on error (authored by cmollekopf).
Return an error on error
Sat, Jan 11, 9:52 AM
cmollekopf committed R9:92d44bd49ac2: Only commit after 100 messages instead of 10 (authored by cmollekopf).
Only commit after 100 messages instead of 10
Sat, Jan 11, 9:52 AM
cmollekopf committed R9:745b52c9df40: Avoid blocking the eventloop for too long. (authored by cmollekopf).
Avoid blocking the eventloop for too long.
Sat, Jan 11, 9:52 AM
cmollekopf committed R9:801b3bcc3317: Time synchronizations (authored by cmollekopf).
Time synchronizations
Sat, Jan 11, 9:52 AM
cmollekopf committed R9:d2ca441aa642: Detect if we block the eventloop for a while in the synchronizer (authored by cmollekopf).
Detect if we block the eventloop for a while in the synchronizer
Sat, Jan 11, 9:52 AM
cmollekopf committed R9:6f76df4b6fab: ImapMailSyncResponsivenessTest (authored by cmollekopf).
ImapMailSyncResponsivenessTest
Sat, Jan 11, 9:52 AM
cmollekopf committed R9:807067337694: Create the user at the start of populatemailbox.sh (authored by cmollekopf).
Create the user at the start of populatemailbox.sh
Sat, Jan 11, 9:52 AM
cmollekopf committed R9:8d1abfb25f8e: Made the queue name accessible. (authored by cmollekopf).
Made the queue name accessible.
Sat, Jan 11, 9:52 AM
cmollekopf committed R9:6ae78ca4626b: Don't attempt to recover from something where we clearly can't (authored by cmollekopf).
Don't attempt to recover from something where we clearly can't
Sat, Jan 11, 8:50 AM
cmollekopf committed R9:6f5c28f1322f: another processEvents call for the pipeline (the other thing that can block)… (authored by cmollekopf).
another processEvents call for the pipeline (the other thing that can block)…
Sat, Jan 11, 8:50 AM

Fri, Jan 10

cmollekopf committed R9:af4e143c4c90: tmp (authored by cmollekopf).
tmp
Fri, Jan 10, 9:17 PM

Thu, Jan 9

cmollekopf committed R9:55a8b08aa5d6: tmp (authored by cmollekopf).
tmp
Thu, Jan 9, 11:35 AM
cmollekopf committed R9:977ef7d9fe60: Made the queue name accessible. (authored by cmollekopf).
Made the queue name accessible.
Thu, Jan 9, 11:35 AM

Tue, Jan 7

cmollekopf committed R162:5697ca66a4e4: Attempt to fix permissions for the local imap server certificate (authored by cmollekopf).
Attempt to fix permissions for the local imap server certificate
Tue, Jan 7, 10:17 AM
cmollekopf committed R162:dd6794352116: Docker makefile (authored by cmollekopf).
Docker makefile
Tue, Jan 7, 10:17 AM
cmollekopf committed R162:29b660681933: Performancetest setup script (authored by cmollekopf).
Performancetest setup script
Tue, Jan 7, 10:17 AM

Sun, Jan 5

cmollekopf assigned T12493: serialEach broken in current master to dvratil.
Sun, Jan 5, 2:34 PM · KASync
cmollekopf triaged T12493: serialEach broken in current master as Normal priority.
Sun, Jan 5, 2:34 PM · KASync

Dec 28 2019

cmollekopf committed R9:3500343f486e: testDateFilterAfterInitialSync test and fix (authored by cmollekopf).
testDateFilterAfterInitialSync test and fix
Dec 28 2019, 10:08 PM
cmollekopf committed R9:8b298d083c60: Cleanup (authored by cmollekopf).
Cleanup
Dec 28 2019, 10:08 PM
cmollekopf committed R9:15c3df6e1115: Fixed imapsynctest (authored by cmollekopf).
Fixed imapsynctest
Dec 28 2019, 10:08 PM

Dec 26 2019

cmollekopf committed R9:fce4e6a7c9bb: Create the testuser when resetting the environment (authored by cmollekopf).
Create the testuser when resetting the environment
Dec 26 2019, 6:56 PM
cmollekopf committed R162:7243aa5d90b6: Move to fedora 31 for the test-container (authored by cmollekopf).
Move to fedora 31 for the test-container
Dec 26 2019, 4:35 PM
cmollekopf committed R162:80c82409aa11: Stop creating the test user in the dockerfile (authored by cmollekopf).
Stop creating the test user in the dockerfile
Dec 26 2019, 4:35 PM
cmollekopf added a comment to T12398: API v2.

A simple example without a value would be:

Dec 26 2019, 11:36 AM · KASync
cmollekopf added a comment to T12398: API v2.

I think we may even be able to used std::future and std::packaged_task directly, which I would prefer to another custom future/promise.

std::future does not have any state signalling, since it's all, so that might be a bit tricky. We still probably need a Qt-friendly wrapper to implement on top of std::future to provide some signal-slot interface and a FutureWatcher. std::packaged_task is an interesting idea, I will certainly look into it.

The error handler must forward/create the result matching what TASK3 expects.

You cannot create a result out of thin air. If the execution has failed, you simply do not have a result of the previous task.

Dec 26 2019, 11:26 AM · KASync
cmollekopf added a comment to T12398: API v2.

My idea is following:

  1. Introduce Promise and Future template classes, modeled after C++'s std::promise and std::future: The Promise is constructed first by the (a)synchronous task. It only has setter for result value (or error) and a getter to obtain a Future, which can the be returned from the task implementation back to KAsync to wait for a result/error. The Future and the Promise have a shared state (basically a shared pointer to a common private class that holds the result/error. It's possible to have multiple Futures created from the same Promise.

    The benefit is that it completely separates the lifetime of the Promise/Future from the Execution and rest of KAsync. This means that we no longer need to pass Future<T> & into every single task that should be asynchronous, cluttering the function's signature. Instead, the function indicates it is an asynchronous task by simply returning Future<T> instead of just T. Another benefit is that this Promise/Future API is more common in modern asynchronous frameworks.
Dec 26 2019, 10:26 AM · KASync

Dec 20 2019

cmollekopf closed T12315: Crash with latest kasync master as Resolved.

Thanks that did the trick.

Dec 20 2019, 6:10 PM · KASync, Kube
cmollekopf triaged T12398: API v2 as Normal priority.
Dec 20 2019, 6:07 PM · KASync

Dec 19 2019

cmollekopf added a comment to T12315: Crash with latest kasync master.

To be honest I think it makes most sense to revert back to default constructing T for the time being.

Dec 19 2019, 9:30 AM · KASync, Kube

Dec 17 2019

cmollekopf added a comment to T12315: Crash with latest kasync master.

Generally, I'm wondering if I should deprecate this API and introduce a promise-future based API, where, instead of being passed a future from KAsync, the continuation would construct a Promise object internally a return a Future that KAsync would wait for....internally the continuation would own the Promise - it's closer to the common promise-future pattern and solves the lifetime issue, since the Promise is owned by the continuation, rather than by KAsync (which only holds the Future).

Dec 17 2019, 3:48 PM · KASync, Kube
cmollekopf added a comment to T12315: Crash with latest kasync master.

Hmm, I believe the bug might be in the Sink code. Here specifically, it's ResourceControl::flush():

The function registers two callbacks, both operating on the future reference. When the resource crashes (happens to me, I don't know if it's part of th etest), then sendFlushCommand fails, so future.setError is called (line 111). However, around the same time a notification is received with information about the crashed resource, invoking the lambda passed to registerHandler function, which then also calls future.setError() (line 98) - depending on which happens first, the future is finished at that point and completes the execution, which may delete the Future object, leaving the other lambda with a dangling reference....

Dec 17 2019, 3:42 PM · KASync, Kube

Dec 15 2019

cmollekopf added a comment to T12315: Crash with latest kasync master.

tests/notificationtest in sink will produce a similar crash.

Dec 15 2019, 4:23 PM · KASync, Kube

Dec 13 2019

cmollekopf added a comment to T12315: Crash with latest kasync master.

I have rebuilt the flatpak completely and can reproduce the crash. Also, I can reproduce the crash outside of the flatpak again, not sure what I did above.

Dec 13 2019, 1:16 PM · KASync, Kube

Dec 9 2019

cmollekopf added a comment to T12315: Crash with latest kasync master.

Ever since I have rebuilt a with -fsanitize=address I can no longer reproduce outside of the flatpak, so there's a chance that the fault is with flatpaks internal build chaching that somehow results in something that crashes (I can't think of a reasonable scenario, but who knows).
I'll try to completely rebuild the flatpak as well and see if this fixes the issue.

Dec 9 2019, 9:27 AM · KASync, Kube

Dec 6 2019

cmollekopf added a comment to T12315: Crash with latest kasync master.

Nothing very obvious from the address sanitizer so far, but I also haven't managed to run kube with it yet (only sinksh).

Dec 6 2019, 8:17 PM · KASync, Kube
cmollekopf added a comment to T12315: Crash with latest kasync master.

I'll try that. Next week is fine, no hurry.

Dec 6 2019, 12:29 PM · KASync, Kube

Dec 4 2019

cmollekopf added a comment to T12315: Crash with latest kasync master.

FWIW; I have attempted but failed to reproduce this in a kasync testcase. I can reproduce it by starting latest kube with latest sink and latest kasync, and I can reproduce the crash in both flatpak (which I have now reverted to kasync 0.3.0), and a locally built kube.

Dec 4 2019, 9:25 AM · KASync, Kube

Dec 3 2019

cmollekopf created T12315: Crash with latest kasync master.
Dec 3 2019, 2:36 PM · KASync, Kube
cmollekopf committed R9:fd259e11fb92: Avoid setting the error twice (authored by cmollekopf).
Avoid setting the error twice
Dec 3 2019, 12:25 PM
cmollekopf committed R9:2281a449d6f4: Fixup (authored by cmollekopf).
Fixup
Dec 3 2019, 11:39 AM
cmollekopf committed R9:b9e182c4b0d9: Avoid overflows (authored by cmollekopf).
Avoid overflows
Dec 3 2019, 11:39 AM
cmollekopf committed R9:4efe31b81590: Extra debug output (authored by cmollekopf).
Extra debug output
Dec 3 2019, 11:39 AM

Nov 30 2019

cmollekopf triaged T12300: Copying text from mails results in no linebreaks for paragraphs as Normal priority.
Nov 30 2019, 10:03 PM · Kube: Bugs
cmollekopf committed R162:c721e2207514: Ensure attachments are also visible in sent messages (authored by cmollekopf).
Ensure attachments are also visible in sent messages
Nov 30 2019, 8:42 PM
cmollekopf triaged T12292: No *Sent' folder as Normal priority.
Nov 30 2019, 8:29 PM · Kube: Bugs
cmollekopf added a comment to T12292: No *Sent' folder.

The sent mail folder is nothing special, it's just a folder that is synchronized over IMAP as all others. Do you see one in webmail, and does it have a name other than "sent"?
The only "magic" that happens is that a sent mail folder is recognized as such via it's name (which will currently fall apart with other languages), and that information is then used to store sent messages in that folder. You should be able to see it in any case though.

Nov 30 2019, 8:28 PM · Kube: Bugs
cmollekopf closed T12291: Can't see (and save) attachments in folder "Sent" as Resolved.

Fixed in c721e2207514bb91b15eaf9f93aeb61be1e50948

Nov 30 2019, 8:21 PM · Kube: Bugs
cmollekopf closed T10045: Show relative times in message list as Resolved.

What we meanwhile have that we use a weekday+time format for the past week, and a time only for the current day. While not exactly what you requested I think it addresses the issue well enough (it makes it easy to spot what's recent and what isn't), so I'll close this issue for now.

Nov 30 2019, 8:18 PM · Kube: Bugs

Nov 29 2019

cmollekopf raised the priority of T12291: Can't see (and save) attachments in folder "Sent" from Wishlist to Normal.

Thanks for the report, I can reproduce the issue.

Nov 29 2019, 10:30 AM · Kube: Bugs
cmollekopf triaged T12291: Can't see (and save) attachments in folder "Sent" as Wishlist priority.
Nov 29 2019, 10:29 AM · Kube: Bugs

Nov 27 2019

cmollekopf committed R162:c462768a9578: Select an identity matching the message we're replying to (authored by cmollekopf).
Select an identity matching the message we're replying to
Nov 27 2019, 9:16 AM

Nov 17 2019

cmollekopf committed R162:6035cc88dc5d: Debug output (authored by cmollekopf).
Debug output
Nov 17 2019, 6:20 PM
cmollekopf committed R162:2f7db5f5ba7e: An error code of 0 is no-error, so don't use that. (authored by cmollekopf).
An error code of 0 is no-error, so don't use that.
Nov 17 2019, 6:20 PM

Nov 10 2019

cmollekopf committed R162:0426855e8839: Test reply to list (authored by cmollekopf).
Test reply to list
Nov 10 2019, 12:07 PM
cmollekopf committed R162:70c0c9d71d61: Fixed reply to own message (authored by cmollekopf).
Fixed reply to own message
Nov 10 2019, 12:07 PM
cmollekopf committed R162:223b7dab3eba: Cleanup (authored by cmollekopf).
Cleanup
Nov 10 2019, 12:07 PM
cmollekopf committed R162:2b872d28bf12: Removed all the reply strategies we're not using anyways (authored by cmollekopf).
Removed all the reply strategies we're not using anyways
Nov 10 2019, 12:07 PM
cmollekopf committed R162:77a338e5a0ec: Avoid retesting the same thing (authored by cmollekopf).
Avoid retesting the same thing
Nov 10 2019, 12:07 PM
cmollekopf committed R162:45ffc8e1e717: Test replies with CC as well (authored by cmollekopf).
Test replies with CC as well
Nov 10 2019, 12:07 PM
cmollekopf committed R9:dc18e578cf8c: onError swallows the error, but we must not. (authored by cmollekopf).
onError swallows the error, but we must not.
Nov 10 2019, 9:05 AM

Nov 9 2019

cmollekopf committed R250:a37536a545b7: We only ever connect once per session (authored by cmollekopf).
We only ever connect once per session
Nov 9 2019, 11:12 PM
cmollekopf committed R250:c4903436b77f: Use QTRY_COMPARE (authored by cmollekopf).
Use QTRY_COMPARE
Nov 9 2019, 11:12 PM
cmollekopf committed R250:bc35131f60a0: SSLv3 is no longer supported in qt 5.13 (authored by cmollekopf).
SSLv3 is no longer supported in qt 5.13
Nov 9 2019, 11:12 PM
cmollekopf committed R250:c4d95da1390d: Ensure we don't end up with jobs in limbo (authored by cmollekopf).
Ensure we don't end up with jobs in limbo
Nov 9 2019, 11:12 PM

Nov 5 2019

cmollekopf committed R162:bbe14d0672c3: Enable exceptions to build with the latest kasync (authored by cmollekopf).
Enable exceptions to build with the latest kasync
Nov 5 2019, 8:00 AM