On Tue, 3 Feb 2009 05:22:01 -0800 (PST), Mr SZ wrote: > > I was looking at the thread functionality of IMAP4rev1 servers with the > threading extension. Here is my output with debug=8 : > > > > 02:23.02 > GDJB3 UID THREAD references UTF-8 (SEEN) > 02:23.02 < * THREAD (3)(2)(4)(1) > 02:23.02 matched r'\* (?P<type>[A-Z-]+)( (?P<data>.*))?' => ('THREAD', ' (3)(2)(4)(1)', '(3)(2)(4)(1)') > 02:23.03 untagged_responses[THREAD] 0 += ["(3)(2)(4)(1)"] > 02:23.03 < GDJB3 OK Thread completed. > 02:23.03 matched r'(?P<tag>GDJB\d+) (?P<type>[A-Z]+) (?P<data>.*)' => ('GDJB3', 'OK', 'Thread completed.') > [None] > > ... > > > 02:59.22 > CNCF3 THREAD references UTF-8 (SEEN) > 02:59.23 < * THREAD (3)(2)(4)(1) > 02:59.23 matched r'\* (?P<type>[A-Z-]+)( (?P<data>.*))?' => ('THREAD', ' (3)(2)(4)(1)', '(3)(2)(4)(1)') > 02:59.23 untagged_responses[THREAD] 0 += ["(3)(2)(4)(1)"] > 02:59.23 < CNCF3 OK Thread completed. > 02:59.23 matched r'(?P<tag>CNCF\d+) (?P<type>[A-Z]+) (?P<data>.*)' => ('CNCF3', 'OK', 'Thread completed.') > 02:59.23 untagged_responses[THREAD] => ['(3)(2)(4)(1)'] > ['(3)(2)(4)(1)'] > > > As you can see, the first is a UID command and the second is calling the > thread method. Also, the server responses are the same for both. So why is > one returning None and the other returning the correct response? I'm using > python2.4 and I'm stuck with it as I'm using it in a zope environment.
In one of life's weird coincidences - someone else just created bugs.python.org issue5146 on this. The fix is a change in the method 'uid' to read: ... if command in ('SEARCH', 'SORT', 'THREAD'): name = command else: name = 'FETCH' ... (Thanks to <abhis...@synovel.com>) Piers Lauder -- http://mail.python.org/mailman/listinfo/python-list