<div class="gmail_quote">2011/4/22 Adam Tauno Williams <span dir="ltr">&lt;<a href="mailto:awilliam@opengroupware.us">awilliam@opengroupware.us</a>&gt;</span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
On Fri, 2011-04-22 at 15:38 +0200, Julien Coloos wrote:<br>
&gt; However we think that a better way would be to split at attachment<br>
&gt; level instead of body level, it could be possible to save base64<br>
&gt; overhead, permit de-duping and do data compression (i.e on PDF or<br>
&gt; Office). May be it would be nice to add an http/webdav daemon to Cyrus<br>
&gt; to give direct access to the attachments...<br>
<br>
Pretty wild, and very cool.  I know one of the challenges I see is<br>
integrating with mail to the same level one can with proprietary<br>
packages like Exchange, Google, etc...  While at the same time being<br>
&#39;standard&#39;.  [And I&#39;ve developed a WebDAV server, so always interested<br>
in WebDAV stuff]<br>
<br>
&gt; - RFC 5423 - Internet Message Store Events is mostly implemented to<br>
&gt; send external notifications. We add an activemq plugin to notifyd to<br>
&gt; send JMS notifications.<br>
<br>
Really?!  We are a Cyrus shop and make use of AMQP.  I&#39;d love to see<br>
this patch [for my own selfish uses].<br>
<br>
<br>
<br>
</blockquote></div><br>Hi,<br>

<p class="MsoPlainText">below a first list of patch already published in the Cyrus&#39;s
bugzilla or discussed in the devel mailing list. I don&#39;t list those already
applied in cyrus stream. <br></p>

<p class="MsoPlainText">- PATCH_COPYFILE_TIMES<span style="mso-spacerun:yes">               </span><span style="mso-spacerun:yes"></span>See <a href="http://bugzilla.cyrusimap.org/show_bug.cgi?id=3216">http://bugzilla.cyrusimap.org/show_bug.cgi?id=3216</a></p>




<p class="MsoPlainText">- PATCH_DISPLAYNAME<span style="mso-spacerun:yes">                 </span><span style="mso-spacerun:yes"></span>Implements RFC 5957. See <a href="http://bugzilla.cyrusimap.org/show_bug.cgi?id=3273">http://bugzilla.cyrusimap.org/show_bug.cgi?id=3273</a></p>


<p class="MsoPlainText">- PATCH_DUMMY<span style="mso-spacerun:yes">                               
</span>Adds dummy
backend to disable some table. See this thread: <a href="http://asg.andrew.cmu.edu/archive/message.php?mailbox=archive.info-cyrus&amp;searchterm=dummy&amp;msg=49946">http://asg.andrew.cmu.edu/archive/message.php?mailbox=archive.info-cyrus&amp;searchterm=dummy&amp;msg=49946</a></p>




<p class="MsoPlainText">- PATCH_ENHANCEDDUMP_LOGS<span style="mso-spacerun:yes">    See </span><a href="http://bugzilla.cyrusimap.org/show_bug.cgi?id=3214">http://bugzilla.cyrusimap.org/show_bug.cgi?id=3214</a></p>

<p class="MsoPlainText">- PATCH_ENHANCEDDUMP_PROT<span style="mso-spacerun:yes">   </span>See <a href="http://bugzilla.cyrusimap.org/show_bug.cgi?id=3215">http://bugzilla.cyrusimap.org/show_bug.cgi?id=3215</a></p>



<p class="MsoPlainText">- PATCH_LMTP_PROXY<span style="mso-spacerun:yes">                  </span>See <a href="http://bugzilla.cyrusimap.org/show_bug.cgi?id=3372">http://bugzilla.cyrusimap.org/show_bug.cgi?id=3372</a></p>


<p class="MsoPlainText">- PATCH_OUTLOOK_IDLE<span style="mso-spacerun:yes">                 </span>Workaround for
Outlook that doesn&#39;t handle timeout on IDLE. See<span style="mso-spacerun:yes">  </span><a href="http://bugzilla.cyrusimap.org/show_bug.cgi?id=3396">http://bugzilla.cyrusimap.org/show_bug.cgi?id=3396</a><span style="mso-spacerun:yes">  </span>)</p>




<p class="MsoPlainText">- PATCH_RANDOMPARTITION<span style="mso-spacerun:yes">              </span>Creates mailbox on most
fitting partition. See <a href="http://bugzilla.cyrusimap.org/bugzilla3/show_bug.cgi?id=3374">http://bugzilla.cyrusimap.org/bugzilla3/show_bug.cgi?id=3374</a><span style="mso-spacerun:yes">  </span>)</p>

<p class="MsoPlainText">- PATCH_RECONSTRUCT_RECURSIVE_AROBASE<span style="mso-spacerun:yes">        </span>See <a href="http://bugzilla.cyrusimap.org/show_bug.cgi?id=3227">http://bugzilla.cyrusimap.org/show_bug.cgi?id=3227</a></p>


<p class="MsoPlainText">- PATCH_SRS<span style="mso-spacerun:yes">                         </span><span style="mso-spacerun:yes"></span>Implements Sender Rewrite Scheme
(proof of concept, we never deployed this patch) See <a href="http://bugzilla.cyrusimap.org/show_bug.cgi?id=3238">http://bugzilla.cyrusimap.org/show_bug.cgi?id=3238</a></p>

<p class="MsoPlainText">- PATCH_TIMEOUTFIX_IDLE<span style="mso-spacerun:yes">             </span>See <a href="http://bugzilla.cyrusimap.org/show_bug.cgi?id=3187">http://bugzilla.cyrusimap.org/show_bug.cgi?id=3187</a></p>


<p class="MsoPlainText"> </p>



<p class="MsoPlainText">a second list of patches that may interest some people.</p>

<p class="MsoPlainText">- PATCH_ACTIVEMQ<span style="mso-spacerun:yes">            </span>Adds activemq connector to notifyd</p>



<p class="MsoPlainText">- PATCH_COMPILE_SIEVES<span style="mso-spacerun:yes">      </span>Compile sieve on
mailbox access or lmtp delivery when upgrading from 2.2 or earlier (avoid use of masssievec)<br></p>



<p class="MsoPlainText">- PATCH_EVENT<span style="mso-spacerun:yes">                       </span>Enables notification on mailbox event
(subpart of event defined in RFC 5423 - Internet Message Store Events)</p>

<p class="MsoPlainText">- PATCH_IPURGE<span style="mso-spacerun:yes">                      </span><span style="mso-spacerun:yes"></span>Adds command line options to ipurge</p>

<p class="MsoPlainText">- PATCH_MURDER<span style="mso-spacerun:yes">              </span>Adds some security controls to Cyrus proxy
: IP concurrency limit, IP blacklist, ...</p>

<p class="MsoPlainText">- PATCH_POOLSQL<span style="mso-spacerun:yes">              </span>SQL connection pool inspired by
Postfix&#39;s proxymap</p>

<p class="MsoPlainText">- PATCH_QUOTAMESSAGE Limits the number of emails per
folder. Should be better to implement the whole QUOTA standard (RFC 2087)</p>

<p class="MsoPlainText">- PATCH_SERVICENAME<span style="mso-spacerun:yes">          </span>Logs warning when administrator defines
a service in cyrus.conf that contains &#39;_&#39; in its name. Should be better to fix the issue<br>
</p>

<p class="MsoPlainText">- PATCH_SOFTSHUTDOWN      Graceful shutdown on SIGUSR1</p>

<p class="MsoPlainText">- PATCH_SOLR     Full text search with Solr (is still in development)<br></p>

<p class="MsoPlainText">- PATCH_STAGEFILENAME<span style="mso-spacerun:yes"> 
</span><span style="mso-spacerun:yes">     </span><span style="mso-spacerun:yes"></span>Makes file names in .stage directory
unique over NFS</p>

<p class="MsoPlainText">- PATCH_MYSQL_PROXY<span style="mso-spacerun:yes">           </span><span style="mso-spacerun:yes"></span>Enables murderless Cyrus proxy with
the addition of plugins to mysql backend<br></p>

<p class="MsoPlainText"> </p>

<p class="MsoPlainText">A final list which includes bulk patches : some useful
but break RFC or are non standard. Or some just less interesting or need more rewrite to be less specific :</p>

<p class="MsoPlainText">- PATCH_ADVANCED_SHAREDSEEN<span style="mso-spacerun:yes"> </span>Allows the administrator to see \Seen
flags of the mailbox&#39;s owner (useful with STATUS command)</p>

<p class="MsoPlainText">- PATCH_ALWAYSIGNOREQUOTA<span style="mso-spacerun:yes">   </span><span style="mso-spacerun:yes"></span>Always Ignore quota on LMTP delivery</p><p class="MsoPlainText">- PATCH_APPENDSIZE<span style="mso-spacerun:yes">          </span><span style="mso-spacerun:yes"></span>Limits the size of mail delivered by
IMAP APPEND</p>

<p class="MsoPlainText">- PATCH_BACKTRACE<span style="mso-spacerun:yes">                   </span><span style="mso-spacerun:yes"></span>Logs backtrace on abnormal exit when
system core dump is not enabled</p>

<p class="MsoPlainText">- PATCH_DISABLEADMINONMBOX<span style="mso-spacerun:yes">  </span><span style="mso-spacerun:yes"></span>Remove RFC 2086 compliance : user is not
admin on their own mailbox namespace</p>





<p class="MsoPlainText">- PATCH_EXTENDEDSIEVE<span style="mso-spacerun:yes">                </span><span style="mso-spacerun:yes"></span>Adds some non standard variable and
keywords to sieve: DateinInterval, DateInPeriodicity, GMTDateInPeriodicity et
GMTDateInInterval. UpdateHeader, AddHeader et RemoveFromHeader. etc</p>



<p class="MsoPlainText">- PATCH_EXTERNSTORAGE<span style="mso-spacerun:yes">      </span><span style="mso-spacerun:yes">         </span>Core implementation of our
hierarchical storage that splits in two parts emails (header / body) depending on
their size. Should be better to extract attachments from messages<span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
mso-ascii-theme-font:minor-latin;mso-fareast-font-family:Calibri;mso-fareast-theme-font:
minor-latin;mso-hansi-theme-font:minor-latin;mso-bidi-font-family:&quot;Times New Roman&quot;;
mso-bidi-theme-font:minor-bidi;mso-ansi-language:FR;mso-fareast-language:EN-US;
mso-bidi-language:AR-SA"></span></p>

<p class="MsoPlainText">- PATCH_EXTERNSTORAGE_FILESYSTEM<span style="mso-spacerun:yes">    </span><span style="mso-spacerun:yes"></span>Store body on local filesystem</p>

<p class="MsoPlainText">- PATCH_EXTERNSTORAGE_WEBDAV  
Store
body on webdav server</p>

<p class="MsoPlainText">- PATCH_FOOLSTUPIDCLIENTS<span style="mso-spacerun:yes">           </span>Extends foolstupidclients</p>



<p class="MsoPlainText">- PATCH_HIDE_CAPA<span style="mso-spacerun:yes">                    </span>Adds option to hide
IMAP capabilities</p>

<p class="MsoPlainText">- PATCH_LIMIT_NAME_SIZE<span style="mso-spacerun:yes">             </span>Fix a size limit to folder name
(255 characters)</p>







<p class="MsoPlainText">- PATCH_QUOTADEFAULT<span style="mso-spacerun:yes">         </span><span style="mso-spacerun:yes"></span>Allows logical quota in quota management
(breaks QUOTA extension)</p>



<p class="MsoPlainText">- PATCH_SOCKET_TIMEOUT<span style="mso-spacerun:yes">               </span>Allows
POP and IMAP timeout shorter than defined in RFC</p>

<p class="MsoPlainText">- PATCH_SPAM<span style="mso-spacerun:yes">                        </span><span style="mso-spacerun:yes"> </span>Don&#39;t send MessageNew notification
for SPAM</p>

<p class="MsoPlainText">- PATCH_UNDERSCOREDOMAINBUGFIX<span style="mso-spacerun:yes">      </span>Allows
underscore in the domain part of From/To/Cc/Bcc</p>

Lots of them need to be adapted to run on Cyrus 2.4 or next 2.5 because 
of huge amount of (good) code refactoring by Bron. Some of them need to be
 rewritten and more tested because we don&#39;t use all Cyrus&#39;s features. <br>
<br>
We suggest to select a few patches (2/3) we might rework before submit 
them and continue by iterations (we have a clone of cyrus master on 
github: <span style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;
mso-ascii-theme-font:minor-latin;mso-fareast-font-family:Calibri;mso-fareast-theme-font:
minor-latin;mso-hansi-theme-font:minor-latin;mso-bidi-font-family:&quot;Times New Roman&quot;;
mso-bidi-theme-font:minor-bidi;mso-ansi-language:FR;mso-fareast-language:EN-US;
mso-bidi-language:AR-SA"><a href="https://github.com/worldline-messaging/cyrus-imapd">https://github.com/worldline-messaging/cyrus-imapd</a>.</span>). We will probably ask for some suggestion or advice to redesign 
some patches the better possible.<br>
Feel free to indicate which patch may interest any of you. <br>

We will start with PATCH_EVENT and PATCH_MYSQL_PROXY.<br><br><span id="result_box" class="" lang="en"><span title="Click for alternate translations" class="hps">Do</span> <span title="Click for alternate translations" class="hps">you think</span> if <span title="Click for alternate translations" class="hps">this list</span> <span title="Click for alternate translations" class="hps">of</span> <span title="Click for alternate translations" class="hps">patches</span> <span title="Click for alternate translations" class="hps">can</span> <span title="Click for alternate translations" class="hps">interest people</span> <span title="Click for alternate translations" class="hps">of the</span> <span title="Click for alternate translations" class="hps"></span><span class="" title="Click for alternate translations">cyrus</span>-<span title="Click for alternate translations" class="hps">user</span><span class="" title="Click for alternate translations">&#39;s ML ?<br>
<br></span></span>Regards,<br>Sébastien<br>