tag:blogger.com,1999:blog-1267458971896358542.post-90749835420907209432007-12-19T12:31:00.000-08:002007-12-19T15:26:07.293-08:00The future of Twisted releasesEarly in 2007 the other Twisted developers in <a href="http://maps.google.com/maps?q=Cambridge,+MA">Cambridge</a> and I had a meeting about what we should do about Twisted releases. <a href="http://radix.twistedmatrix.com/2005_03_01_archive.html">Things had been a bit chaotic</a> since the <a href="http://twistedmatrix.com/projects/core/documentation/upgrades/2.0/split.html">split of Twisted into multiple components</a>, and releases were still done on an irrelegular basis.<br /><br />At the meeting we decided that a time-based release would be ideal. Given that, we would move to a time-based versioning scheme somewhat similar to <a href="http://ubuntu.com/">Ubuntu's</a>; the next release will be Twisted 8.0, which is the first release in 2008. That is, the version numbers will be (year - 2000) point (incremental per-year number starting at 0) point (patch level, if any, starting at 0).<br /><br />We also discussed our deprecation policy, <a href="http://twistedmatrix.com/trac/ticket/1216">which we still haven't finished documenting</a>, and decided to make it explicitly time-based as well. An API that is to be deprecated will be marked as such and will be supported for N months or years before being a candidate for deletion. We still need to come up with a convention for how the deprecation is presented to the user, and what information the deprecation message will contain, not to mention the value of N.<br /><br />But none of these changes were possible; releasing was too tedious a process, fraught with numerous hiccups and changes to the procedure on every release. It would be extremely stressful to try to do this with any rapid regularity, leaving the release manager an insane fool constantly muttering about tarballs and web servers.<br /><br />So while we knew we needed to switch to a more automated release system, the project had stalled before it even got on its feet. Fortunately, <a href="http://mumak.net/">Jonathan Lange</a> visited last month and "inspired" us to organize this project. We sat in the board room with a whiteboard and listed <a href="http://twistedmatrix.com/trac/query?milestone=twisted-8.0">everything that needed done in order for regular releases to be possible</a>. Since then, progress has been slow but steady; at least once a week someone is committing changes towards these goals (thank you, therve).<br /><br />But we need some more help. If you know <a href="http://en.wikipedia.org/wiki/Test-driven_development">how to write software test-first</a>, then please help out. Come join #twisted or contact me to see how you can help. Hopefully 2008 will see many Twisted releases.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1267458971896358542-9074983542090720943?l=labs.twistedmatrix.com'/></div>Christopher Armstronghttp://www.blogger.com/profile/11041638059246049826noreply@blogger.com8