Aaron Stone wrote:
On Mon, Jan 24, 2005, ""Leif Jackson"" <[EMAIL PROTECTED]> said:
I would say that as the _ic_sort was mostly just a stop gap untill we had
header caching available, that it is obvious the whole sort part of dbmail
should be reworked, however the current implementation is near optimal for
at least the sort needed for squirrelmail, as you mentioned before I never
intended this to be anything but for SM. If anyone has time to work on
code I would urge we focus on header caching so as to be able to make the
sort and other items work well for 2.1 and leave the sort code that was
merged into 2.0 as is and make a not that it is intened for SM only, or
add a option to enable the sort code and runtime...etc.
Header caching isn't an option for 2.0, so we need to make it work
reliably and as fast as possible within its database schema. I do know
that SquirrelMail is more common than TWIG, but more importantly,
SquirrelMail has its own IMAP client library written in PHP whereas TWIG
uses PHP's copy of the c-client library. It would not surprise me if many
more PHP email programs are not working with 2.0.3, either, though I
haven't looked into it.
I was pleasantly surprised by your command trace yesterday. Apparently c-client
is smart. Smart enough to hide server-errors from the client. The fact that
A01 SORT (REVERSE ARRIVAL) US-ASCII ALL
failed is very important in this respect. The build_imap_search function is full
of TODO statements for search keys that are silently ignored whereas US-ASCII
and UTF-8 which are both explicitely required by the specs were/are totally
absent and therefor trigger an error.
What specifically makes the _ic_sort code work for SquirrelMail that can't
be extended for other clients and/or for a more general case?
Probably nothing for specific cases, but making it work for the general case is
beyond me given the 2.0 code for reasons I outlined yesterday.
And, more broadly, if _ic_sort is really _ic_sort_smhack, what can we do
so that the hack is only used if we've really got SquirrelMail on the
line?
We haven't had many complaints so far, so perhaps do it right in 2.1 should
indeed take priority. The correct way to solve this for now in 2.0 would be some
switch in dbmail.conf. But that would open an other can of worms we've been
talking about: capabilities.
So to paraphrase: if no-one cares it's broken, don't fix it. Twig works (sort
of) thanks to c-client, SM works thanks to _ic_sort,...
--
________________________________________________________________
Paul Stevens [EMAIL PROTECTED]
NET FACILITIES GROUP GPG/PGP: 1024D/11F8CD31
The Netherlands_______________________________________www.nfg.nl