LamsonProject: Lamson 0.9.5, The Push To 1.0

#

# Lamson 0.9.5, The Push To 1.0

I just released Lamson 0.9.5 with all the major Unicode refactoring done and working. This is an important release because 0.9.5 is where I declare that I’m pushing to a 1.0 release and the base Lamson APIs won’t change under penalty of death. In fact they can’t change because I’m using them myself in a few applications.

From now on, if an API has to change, then I’ll keep the old one around and attach a deprecation warning, and then provide a new one. You’ll then have by 1.0 to stop using it and start using the new one. Except for a situations where a bug must be fixed, I can’t see the actual Lamson API needing such a drastic change by 1.0.

What will happen between now and 1.0 is bug fixing, and adding any nice additional features people need within the current API to help build applications. This would be things like more connectors to other mail protocols (LMTP, QPMP), commands for deployment features, and possibly a way to write your own command.

So, if you’ve been waiting for the API to stabilize then 0.9.5 is the release to grab and start using. I’m currently using it on about 6 little projects and it’s working great so far, but I need more people to try it out and send me feedback on how well it works for them.

## Getting This Release

As usual, you can read the download documentation to learn how to grab it.

After you grab it, go read these documents:

- Getting Started With Lamson
- A Painless Introduction To Finite State Machines
- Deploying Lamson And OneShotBlog

Then you should hit the API documentation and start writing your application. Keep your first one small and try deploying it in different ways.

## Simple Virtualhost Deployment Instructions Coming Soon

The oneshotblog.com sample application is now deployed in a new virtualhost configuration on a new VPS I purchased this week. This configuration is different from the ones given in the documentation above because it allows you to run mulitple applications for multiple domains on a single machine.

I’ll be writing up how to build your own version of this configuration today, but the quick description is this:

1. I have postfix running on port 25 now in front of Lamson.
2. Postfix is configured to take all mail for each domain and dump it into a maildir queue for each one.
3. The Lamson applications are then reconfigured in their `config/boot.py` to use a QueueReceiver to feed itself messages from its maildir.
4. Lamson then just uses the same postfix server as its relay host like before.

The advantage of this configuration, apart from being able to easily host multiple domains, is that you can shutdown your Lamson application and when you start it back up it will catch up on the mail in the maildir. People will probably never know you did maintenance or stopped the server temporarily.

The disadvantage of this configuration is that it’s a royal pain to make postfix do this. The instructions will show you step-by-step how to pull it off, so hopefully it’ll make it easier on people who need it. However, I’m gonna tell people to start small and just use the simpler configuration “Lamson in front” configuration and leave this for the big times.

## Mailing List Will Go Down

Finally, I’ll be moving the mailing list shortly, so if you send a message and don’t receive a reply then that’s why.