I was hoping to be releasing ErlMail-0.0.5 today, but I’ve been obsessed with re-factoring the IMAP client finite state machine (FSM) and I haven’t even started on the SMTP client yet.

I found a few errors in the LEEX and YECC scripts that I had built for the IMAP client and I was in the process of moving the TCP communication inside the FSM instead of in it’s own files when I started to see some better ways of handing the processing. I’m making the error reporting much more robust and I’m fixing some small glitches in the FSM on the way. I’m also adding in more code to make sure you cannot perform commands when you are no in the proper state to perform them, along with error message that tell you that you can’t do that and why.

The great news about re-factoring both the IMAP and SMTP client is that if you have been using the function calls from the main modules (IMAPC or SMTPC) and not the FSM (not IMAPC_FSM or SMPTC_FSM) then you will not have to change your code for anything except perhaps better error message.

I’m about half way done with the IMAP client and the SMTP client is much simpler; plus I already know how I want to change it. The SMTP server and the DETS message store are working well and stable enough for an initial release. If things work out well ErlMail-0.05 will be release early next week.

Technorati Tags: , , ,

Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • del.icio.us
  • Netvouz
  • DZone
  • ThisNext
  • MisterWong
  • Wists