Progress updates
March 2026 - Bad memory, Betas and Hard Writing

Back in January, I apologised that I had been irregular in my updates,
despite my best intentions, and explained that I had been working almost
to the exclusion of all else trying to track a memory leak in Mercury.


First up in this post, the Mercury memory leak.


Despite spending another two months trying to work out what is
happening, I haven't really made much progress on this... Now, that
simple sentence can't even begin to express the frustration this is
causing me. Using sophisticated tools, I can see the leak, can watch
it grow, but cannot work out exactly where it is happening. I have
strong suspicions about what's going on, but the only way I can follow
those suspicions is by moving to a current build of OpenSSL, which is
undoubtedly a good idea, but is complicated because current OpenSSL
builds cannot be created using my standard programming environment.


This means I am having to migrate a lot of my code to use a much
newer compiler so I can host the more modern OpenSSL builds; once
again, there is no doubt at all that this is a good idea, and is
something I would have had to do at some point anyway, but it takes
time, and as a solo developer with few resources trying to deal with
multiple disparate tasks all at once, time is a luxury commodity. I
have, however, begun the process, and will be attempting to complete
it as quickly as I can.


That brings me to the second point in this post - a Mercury Beta.


I am painfully aware that the memory leak issue has held up the release
of a version of Mercury containing features that many users are hanging
out for - in particular, support for DKIM. I really do not believe that
I can do an unrestricted release of Mercury in its current state: the
memory leak will probably only affect a relatively small number of
very busy sites, but even so, it is a serious issue that people need
to be aware of before taking the plunge.


With this in mind, I have decided to release Mercury v4.92 as a public
beta - complete in every way, but a beta because of the memory leak.
Doing this means that people can get access to the new capabilities
with proper awareness of the fact that there is a problem that may
require them to restart Mercury every couple of months (typically).


My aim is to get this beta out around the middle of March - it will
need to go through one final verification run with the beta test team,
after which I will make it publicly available.


Finally, on the subject of regular updates...


I appreciate that I have been a bit irregular in my updates postings
in the last few months. A lot of that is due to the fact that I really
haven't had a lot to report, the memory leak being almost the only
substantive thing on which I've been working: it can be quite hard to
come up with an interesting update under such circumstances.


Having said that, though, I really do want to keep people informed,
and I know that it's important for me to do so: I definitely wouldn't
want anyone to read any lack of commitment to the programs into my
rather variable performance in producing regular updates. So, if
from time to time I'm a little quiet, as I have been recently, I
apologize for that and hope you don't mind too much.


That will do for now... I'm conscious that I haven't even mentioned
Pegasus Mail in this update, but that doesn't mean that there aren't
things bubbling away under the surface: once the Mercury beta is out,
I will pick up the pace on WinPMail and promise to tell you more about
the plans I have for it in the next update.


All the best to you all,


-- David --


Back in January, I apologised that I had been irregular in my updates, despite my best intentions, and explained that I had been working almost to the exclusion of all else trying to track a memory leak in Mercury. First up in this post, the Mercury memory leak. Despite spending another two months trying to work out what is happening, I haven't really made much progress on this... Now, that simple sentence can't even begin to express the frustration this is causing me. Using sophisticated tools, I can see the leak, can watch it grow, but cannot work out exactly where it is happening. I have strong suspicions about what's going on, but the only way I can follow those suspicions is by moving to a current build of OpenSSL, which is undoubtedly a good idea, but is complicated because current OpenSSL builds cannot be created using my standard programming environment. This means I am having to migrate a lot of my code to use a much newer compiler so I can host the more modern OpenSSL builds; once again, there is no doubt at all that this is a good idea, and is something I would have had to do at some point anyway, but it takes time, and as a solo developer with few resources trying to deal with multiple disparate tasks all at once, time is a luxury commodity. I have, however, begun the process, and will be attempting to complete it as quickly as I can. That brings me to the second point in this post - a Mercury Beta. I am painfully aware that the memory leak issue has held up the release of a version of Mercury containing features that many users are hanging out for - in particular, support for DKIM. I really do not believe that I can do an unrestricted release of Mercury in its current state: the memory leak will probably only affect a relatively small number of very busy sites, but even so, it is a serious issue that people need to be aware of before taking the plunge. With this in mind, I have decided to release Mercury v4.92 as a public beta - complete in every way, but a beta because of the memory leak. Doing this means that people can get access to the new capabilities with proper awareness of the fact that there is a problem that may require them to restart Mercury every couple of months (typically). My aim is to get this beta out around the middle of March - it will need to go through one final verification run with the beta test team, after which I will make it publicly available. Finally, on the subject of regular updates... I appreciate that I have been a bit irregular in my updates postings in the last few months. A lot of that is due to the fact that I really haven't had a lot to report, the memory leak being almost the only substantive thing on which I've been working: it can be quite hard to come up with an interesting update under such circumstances. Having said that, though, I really do want to keep people informed, and I know that it's important for me to do so: I definitely wouldn't want anyone to read any lack of commitment to the programs into my rather variable performance in producing regular updates. So, if from time to time I'm a little quiet, as I have been recently, I apologize for that and hope you don't mind too much. That will do for now... I'm conscious that I haven't even mentioned Pegasus Mail in this update, but that doesn't mean that there aren't things bubbling away under the surface: once the Mercury beta is out, I will pick up the pace on WinPMail and promise to tell you more about the plans I have for it in the next update. All the best to you all, -- David --
live preview
enter atleast 10 characters
WARNING: You mentioned %MENTIONS%, but they cannot see this message and will not be notified
Saving...
Saved
With selected deselect posts show selected posts
All posts under this topic will be deleted ?
Pending draft ... Click to resume editing
Discard draft