Development notes...
As some of you are aware, our QA department is always complaining about
poor performance moving messages in or out of very large folders (mainly
because our QA department treats his Trash folder as "an archive of every
message I've ever received" -- but he provides good feedback so we keep
him around). This is why my last few SVN commits have involved the
creation of bulk API's for moving, copying, and deleting messages. When
we want to move/copy/delete a group of messages all at once, these API's
will come in handy because all of the overhead involved (fetching room
records, processing the list of existing messages, etc.) can now be done
"once per operation" instead of "once for every message involved in the
operation".
These API's are in SVN now and will be part of Citadel 6.83. Please let
me know if you need info to make use of them.
Obviously the bulk of this work is for the purpose of making IMAP run
faster, but I've also exposed it to Citadel clients. The MOVE command can
now handle a list of message numbers instead of just a single one. This
will be used to improve the performance of move and delete operations in
WebCit when multi-select is used.