Login | Register
My pages Projects Community openCollabNet
Project highlights:

30 April 2008: Release 0.98.3 is now available at the download page.

31 March 2008: Release 0.98 is now available at the download page.

Release Roadmap

Current Releases

The current stable release is 0.98.3, released 30 April 2008.

The latest release is 0.98.3, released 30 April 2008.

Upcoming Releases

SCons is putting in place a new release team of interested developers. Expect this section to be updated once that team has hammered out a release schedule.
Release Est. Date? Goals
1.0 ??? First official, stable release. No 1.x release will (knowingly) break compatibility or cause a rebuild on upgrade. The following features have been suggested as prerequisites for a fully-feature 1.0 release:
  • C/C++ dependency scanning that acts like a real C preprocessor (computed file names, #ifdef analysis, #include_next support)
2.0 ??? First release that will break backwards compatibility with Python 1.5.2.

Release Planning

Why has 1.0 still not been released?

As seems so common these days, SCons has had an extremely lengthy "beta" period. The primary goal has been to arrive at something by 1.0 that we feel is absolutely rock-solid-stable and which people can download and use without fear of broken builds or unnecessary rebuilds. To get some idea of how we do this, see our testing philosophy page.

Release numbering

Our release numbers are of the form major.minor.revision.

  • Major release (1.0, 2.0, 3.0, etc.)

    The major number increments when one of two things happens:

    • The release knowingly breaks backwards compatibility in some way.
    • The release knowingly causes a rebuild when you upgrade.
    Our goal is that as a user of SCons, you should always be able to upgrade to a later revision of the same major number with complete confidence that your build will not break.

  • Minor release (1.1, 1.2, 1.3, etc.)

    Minor numbers increment for release that adds new functionality and/or bug fixes to an existing major release branch. All new functionality will be added so as to never knowingly break backwards compatibility with any previous minor releases from the same branch. We expect that our major release branches will be long-lived platforms for delivering many minor releases to add functionality and fix bugs.

  • Bug-fix revisions (1.1.1, 1.1.2, 1.1.3, etc.)

    Revision numbers are appended and/or incremented whenever a critical bug fix is necessary for a major or minor release. Bedause most new functionality and bug fixes will be delivered in minor releases, we expect that there will be few of these--at most one per minor release.

  • Testing pre-release (1.1.90, 1.1.91, 1.1.92, etc.)

    A revision number of 90 or greater indicates the release is intended for testing a set of new features intended for wider distribution in the next major or minor release. There may be many of these leading up to a release with a lot of significant internal changes (*cough* 0.97 *cough*...).