2011/4/22 Adam Tauno Williams <awill...@opengroupware.us> > On Fri, 2011-04-22 at 15:38 +0200, Julien Coloos wrote: > > However we think that a better way would be to split at attachment > > level instead of body level, it could be possible to save base64 > > overhead, permit de-duping and do data compression (i.e on PDF or > > Office). May be it would be nice to add an http/webdav daemon to Cyrus > > to give direct access to the attachments... > > Pretty wild, and very cool. I know one of the challenges I see is > integrating with mail to the same level one can with proprietary > packages like Exchange, Google, etc... While at the same time being > 'standard'. [And I've developed a WebDAV server, so always interested > in WebDAV stuff] > > > - RFC 5423 - Internet Message Store Events is mostly implemented to > > send external notifications. We add an activemq plugin to notifyd to > > send JMS notifications. > > Really?! We are a Cyrus shop and make use of AMQP. I'd love to see > this patch [for my own selfish uses]. > > > > Hi,
below a first list of patch already published in the Cyrus's bugzilla or discussed in the devel mailing list. I don't list those already applied in cyrus stream. - PATCH_COPYFILE_TIMES See http://bugzilla.cyrusimap.org/show_bug.cgi?id=3216 - PATCH_DISPLAYNAME Implements RFC 5957. See http://bugzilla.cyrusimap.org/show_bug.cgi?id=3273 - PATCH_DUMMY Adds dummy backend to disable some table. See this thread: http://asg.andrew.cmu.edu/archive/message.php?mailbox=archive.info-cyrus&searchterm=dummy&msg=49946 - PATCH_ENHANCEDDUMP_LOGS See http://bugzilla.cyrusimap.org/show_bug.cgi?id=3214 - PATCH_ENHANCEDDUMP_PROT See http://bugzilla.cyrusimap.org/show_bug.cgi?id=3215 - PATCH_LMTP_PROXY See http://bugzilla.cyrusimap.org/show_bug.cgi?id=3372 - PATCH_OUTLOOK_IDLE Workaround for Outlook that doesn't handle timeout on IDLE. See http://bugzilla.cyrusimap.org/show_bug.cgi?id=3396 ) - PATCH_RANDOMPARTITION Creates mailbox on most fitting partition. See http://bugzilla.cyrusimap.org/bugzilla3/show_bug.cgi?id=3374 ) - PATCH_RECONSTRUCT_RECURSIVE_AROBASE See http://bugzilla.cyrusimap.org/show_bug.cgi?id=3227 - PATCH_SRS Implements Sender Rewrite Scheme (proof of concept, we never deployed this patch) See http://bugzilla.cyrusimap.org/show_bug.cgi?id=3238 - PATCH_TIMEOUTFIX_IDLE See http://bugzilla.cyrusimap.org/show_bug.cgi?id=3187 a second list of patches that may interest some people. - PATCH_ACTIVEMQ Adds activemq connector to notifyd - PATCH_COMPILE_SIEVES Compile sieve on mailbox access or lmtp delivery when upgrading from 2.2 or earlier (avoid use of masssievec) - PATCH_EVENT Enables notification on mailbox event (subpart of event defined in RFC 5423 - Internet Message Store Events) - PATCH_IPURGE Adds command line options to ipurge - PATCH_MURDER Adds some security controls to Cyrus proxy : IP concurrency limit, IP blacklist, ... - PATCH_POOLSQL SQL connection pool inspired by Postfix's proxymap - PATCH_QUOTAMESSAGE Limits the number of emails per folder. Should be better to implement the whole QUOTA standard (RFC 2087) - PATCH_SERVICENAME Logs warning when administrator defines a service in cyrus.conf that contains '_' in its name. Should be better to fix the issue - PATCH_SOFTSHUTDOWN Graceful shutdown on SIGUSR1 - PATCH_SOLR Full text search with Solr (is still in development) - PATCH_STAGEFILENAME Makes file names in .stage directory unique over NFS - PATCH_MYSQL_PROXY Enables murderless Cyrus proxy with the addition of plugins to mysql backend 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 : - PATCH_ADVANCED_SHAREDSEEN Allows the administrator to see \Seen flags of the mailbox's owner (useful with STATUS command) - PATCH_ALWAYSIGNOREQUOTA Always Ignore quota on LMTP delivery - PATCH_APPENDSIZE Limits the size of mail delivered by IMAP APPEND - PATCH_BACKTRACE Logs backtrace on abnormal exit when system core dump is not enabled - PATCH_DISABLEADMINONMBOX Remove RFC 2086 compliance : user is not admin on their own mailbox namespace - PATCH_EXTENDEDSIEVE Adds some non standard variable and keywords to sieve: DateinInterval, DateInPeriodicity, GMTDateInPeriodicity et GMTDateInInterval. UpdateHeader, AddHeader et RemoveFromHeader. etc - PATCH_EXTERNSTORAGE 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 - PATCH_EXTERNSTORAGE_FILESYSTEM Store body on local filesystem - PATCH_EXTERNSTORAGE_WEBDAV Store body on webdav server - PATCH_FOOLSTUPIDCLIENTS Extends foolstupidclients - PATCH_HIDE_CAPA Adds option to hide IMAP capabilities - PATCH_LIMIT_NAME_SIZE Fix a size limit to folder name (255 characters) - PATCH_QUOTADEFAULT Allows logical quota in quota management (breaks QUOTA extension) - PATCH_SOCKET_TIMEOUT Allows POP and IMAP timeout shorter than defined in RFC - PATCH_SPAM Don't send MessageNew notification for SPAM - PATCH_UNDERSCOREDOMAINBUGFIX Allows underscore in the domain part of From/To/Cc/Bcc 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't use all Cyrus's features. 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: https://github.com/worldline-messaging/cyrus-imapd.). We will probably ask for some suggestion or advice to redesign some patches the better possible. Feel free to indicate which patch may interest any of you. We will start with PATCH_EVENT and PATCH_MYSQL_PROXY. Do you think if this list of patches can interest people of the cyrus-user's ML ? Regards, Sébastien