<feed xmlns='http://www.w3.org/2005/Atom'>
<title>leap_mail.git/src/leap/mail/imap/tests, branch 0.3.9</title>
<subtitle>[leap_mail] 
</subtitle>
<link rel='alternate' type='text/html' href='https://leap.se/git/leap_mail.git/'/>
<entry>
<title>mail parsing performance improvements</title>
<updated>2014-02-20T20:17:25+00:00</updated>
<author>
<name>Kali Kaneko</name>
<email>kali@leap.se</email>
</author>
<published>2014-02-20T06:52:17+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/leap_mail.git/commit/?id=b2d97c9faef6037a065e2903afe5b0ab2624917e'/>
<id>b2d97c9faef6037a065e2903afe5b0ab2624917e</id>
<content type='text'>
Although the do_parse function is deferred to threads, we were actually
waiting till its return to fire the callback of the deferred, and hence
the "append ok" was being delayed. During massive appends, this was a
tight loop contributing as much as 35 msec, of a total of 100 msec
average.

Several ineficiencies are addressed here:

* use pycryptopp hash functions.
* avoiding function calling overhead.
* avoid duplicate call to message.as_string
* make use of the string size caching capabilities.
* avoiding the mail Parser initialization/method call completely,
  in favor of the module helper to get the object from string.

Overall, these changes cut parsing to 50% of the initial timing by my
measurements with line_profiler, YMMV.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Although the do_parse function is deferred to threads, we were actually
waiting till its return to fire the callback of the deferred, and hence
the "append ok" was being delayed. During massive appends, this was a
tight loop contributing as much as 35 msec, of a total of 100 msec
average.

Several ineficiencies are addressed here:

* use pycryptopp hash functions.
* avoiding function calling overhead.
* avoid duplicate call to message.as_string
* make use of the string size caching capabilities.
* avoiding the mail Parser initialization/method call completely,
  in favor of the module helper to get the object from string.

Overall, these changes cut parsing to 50% of the initial timing by my
measurements with line_profiler, YMMV.
</pre>
</div>
</content>
</entry>
<entry>
<title>select instead of examine</title>
<updated>2014-02-17T15:39:50+00:00</updated>
<author>
<name>Kali Kaneko</name>
<email>kali@leap.se</email>
</author>
<published>2014-02-12T16:44:18+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/leap_mail.git/commit/?id=3490773898c0b1af76ff18b088b099b7cde677e7'/>
<id>3490773898c0b1af76ff18b088b099b7cde677e7</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>long-due update to unittests!</title>
<updated>2014-02-17T15:37:04+00:00</updated>
<author>
<name>Kali Kaneko</name>
<email>kali@leap.se</email>
</author>
<published>2014-02-06T22:11:20+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/leap_mail.git/commit/?id=ee0786c57d72aa8b8da76533f33c3dd65253a878'/>
<id>ee0786c57d72aa8b8da76533f33c3dd65253a878</id>
<content type='text'>
So we're safe under the green lights before further rewriting.
:)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
So we're safe under the green lights before further rewriting.
:)
</pre>
</div>
</content>
</entry>
<entry>
<title>minimal regression tests</title>
<updated>2014-02-05T18:01:29+00:00</updated>
<author>
<name>Kali Kaneko</name>
<email>kali@leap.se</email>
</author>
<published>2014-02-05T15:47:43+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/leap_mail.git/commit/?id=3511f7992e67bc49e9fc4771f4b2c0d9199822d7'/>
<id>3511f7992e67bc49e9fc4771f4b2c0d9199822d7</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>allow to pass file as argument</title>
<updated>2014-01-30T18:20:56+00:00</updated>
<author>
<name>Kali Kaneko</name>
<email>kali@leap.se</email>
</author>
<published>2014-01-29T20:18:27+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/leap_mail.git/commit/?id=37090301e633cdf9aa0c924ea3899d4c5d4fcdb9'/>
<id>37090301e633cdf9aa0c924ea3899d4c5d4fcdb9</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>docstring fixes</title>
<updated>2014-01-30T18:20:44+00:00</updated>
<author>
<name>Kali Kaneko</name>
<email>kali@leap.se</email>
</author>
<published>2014-01-28T22:39:59+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/leap_mail.git/commit/?id=a7e0054b595822325f749b0b1df7d25cab4e6486'/>
<id>a7e0054b595822325f749b0b1df7d25cab4e6486</id>
<content type='text'>
Also some fixes for None comparisons.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Also some fixes for None comparisons.
</pre>
</div>
</content>
</entry>
<entry>
<title>handle last_uid property in memory store</title>
<updated>2014-01-28T23:38:46+00:00</updated>
<author>
<name>Kali Kaneko</name>
<email>kali@leap.se</email>
</author>
<published>2014-01-27T20:11:53+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/leap_mail.git/commit/?id=f5365ae0c2edb8b3e879f876f2f7e42b25f4616a'/>
<id>f5365ae0c2edb8b3e879f876f2f7e42b25f4616a</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Allow passing user and mbox as parameters</title>
<updated>2014-01-27T00:27:53+00:00</updated>
<author>
<name>Kali Kaneko</name>
<email>kali@leap.se</email>
</author>
<published>2014-01-27T00:27:53+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/leap_mail.git/commit/?id=36baa3a0e93df779145515f879ed3efdab014bea'/>
<id>36baa3a0e93df779145515f879ed3efdab014bea</id>
<content type='text'>
Increase default testing duration to 200 secs.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Increase default testing duration to 200 secs.
</pre>
</div>
</content>
</entry>
<entry>
<title>Script for reproducible imaptest runs.</title>
<updated>2014-01-26T23:07:05+00:00</updated>
<author>
<name>Kali Kaneko</name>
<email>kali@leap.se</email>
</author>
<published>2014-01-26T22:09:51+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/leap_mail.git/commit/?id=05c51ee2af6af6025b01831fd3b395cad80fe9f1'/>
<id>05c51ee2af6af6025b01831fd3b395cad80fe9f1</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>add a quick message fetching utility for tests</title>
<updated>2014-01-09T02:32:34+00:00</updated>
<author>
<name>Kali Kaneko</name>
<email>kali@leap.se</email>
</author>
<published>2014-01-09T02:24:46+00:00</published>
<link rel='alternate' type='text/html' href='https://leap.se/git/leap_mail.git/commit/?id=28236ecdf46360acd09a53130646e2a082583de6'/>
<id>28236ecdf46360acd09a53130646e2a082583de6</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
