May has been a very busy and important month for us. We have finally manged to finalize and release a long awaited version 0.5.0.
Part of the reason that we have finally managed to release 0.5.0 this month was that me and Paul Querna were present at the Apache Retreat in Ireland where we have spent some time hacking on Libcloud and polishing the last few features which were missing for the release.
Overall, Libcloud 0.5.0 is a big step forward and represents a big milestone for the project. It includes many new features, improvements and new compute drivers.
Major changes in Libcloud 0.5.0
New cloud Storage API
Version 0.5.0 includes a new storage API which allows you to manage services such as Amazon S3 and Rackspace CloudFiles. Our main priority for this release was defining a good base API and this is also the reason why this release only includes two provider drivers.
New Load-balancer API
Beside cloud storage we have also added a new API for managing load-balancers (LbaaS). Similar to the storage we were also focusing on defining a good base API so this release only includes Rackspace and GoGrid driver.
Changes in the existing API
To support the new APIs and services we had to refactor the existing API which means that all of the “compute” functionality has been moved to libcloud.compute.
Old module locations (libcloud.deployment, libcloud.providers, libcloud.types, etc.) have been deprecated and will be fully removed in version 0.6.0. At the moment you can still use them, but importing something from the old location will emit a deprecation warning so we encourage our users to update their code to use the new module locations.
New compute drivers
Among other changes and improvements, this release also includes 5 new compute drivers:
- Bluebox (contributed by Christian Paredes)
- Gandi.net (contributed by Aymeric Barantal)
- Nimbus (contributed by David LaBissoniere)
- OpenStack (contributed by Roman Bogorodskiy)
- Opsource.net cloud (contributed by Joe Miller)
Full release announcement can be found on the mailing list.
Graduation to a Top Level Project
Second very important milestone for us this month was graduating from the Apache Incubator to a Top Level Project. This puts us on par with other Apache projects such as Apache Cassandra and Apache Subversion.
Graduation signifies that both the Apache Libcloud product and community have been well-governed under the Foundation’s meritocratic, consensus-driven process and principles.
Graduating to a Top Level Project means that now we have a Project Management Committee (PMC) which will overlook our operations and make sure everything is running smoothly.
To graduate we also had to select a project chair. Other members have proposed me for this role and I have accepted it. My primary role as a project chair will be to communicate with the board (quarterly status reports, etc.) and making sure there aren’t any conflicts and the project is running smoothly.
As part of graduation we also had to move our website and SVN repositories. You can find all the new address in this thread on the mailing list.
Official graduation announcement / press release can be found on the Apache blog - The Apache Software Foundation Announces Apache Libcloud as a Top-Level Project.
Libcloud at EuroPython 2011 in Florence, Italy
I will be at EuroPython in Italy next month where I will give an introductory talk about Libcloud.
Beside giving a talk we will also host a development sprint there. This is a great opportunity for anyone who wants to contribute to the project or learn something new to join us. I will post more details about the sprint in the upcoming weeks on the libcloud mailing list.
So that is it for May. See you next month when I will hopefully be able to report about multiple new storage and compute drivers and other improvements.