# Subversion Roadmap

## Upcoming Releases

For a schedule of upcoming releases, please see the project status page.

## How We Plan Releases

Subversion uses a compromise between time-driven and feature-driven release planning. We schedule each release for a certain date, and make sure a release contains one or more new features or other significant differentiators, but we don't say exactly what those new features will be. This is because we're always working on several things at once, and we want to give each new feature time to mature. Especially given the decentralized nature of open-source development, we're wary of forcing technical discussions to premature consensus. At the same time, it's good for the project to have regular releases, so we try to keep to a schedule and to have something ready to roll out when the release date comes along.

In this context, "release" means an increment of the minor release number, which is the middle number in our three-component system. Thus, 1.2.0, 1.3.0, and 1.4.0 are successive minor releases in the "1.x" line, whereas 1.1.1, 1.1.2, and 1.1.3 are successive patch (bugfix) releases in the "1.1.x" line. We don't schedule patch releases far in advance, we just put them out when we feel enough bugfixes have accumulated to warrant it. Major new releases, such as Subversion 2.0, will probably be done much like the minor releases, just with more planning around the exact features. For more information about Subversion's release numbering and compatibility policies, see the section entitled "Release numbering, compatibility, and deprecation" in the Hacker's Guide to Subversion.

## Upcoming Features

We try to have at least one or two new features under active development at any given time, but we generally don't rush a feature to get it into a release. The flexibly time-driven model described above means there's never a long wait between releases, which in turn means less pressure to cram a feature into whatever release happens to be going out the door next. Our main source of ideas is our users: we watch the users@subversion.tigris.org mailing list, the #svn IRC channel, and the issue tracker to see what people are saying, and base our priorities on that, though we may sometimes grab low-hanging fruit along the way.

Below are new features currently under discussion and design, as extracted from the ever-changing consensus of the Subversion developer community. Because this is a volunteer open-source project, it's hard to predict exact dates or timetables for these new features. At most, we can express dependencies and predict the order in which things will be worked on. The best way to track development is to subscribe to the development mailing list, dev@subversion.tigris.org.

- Medium-term Goals:

  - Log message templates (see discussion thread)

  - Repository-defined autoprops (see discussion thread)

  - Inherited properties (see discussion thread)

  - Improved rename support (see issue #898)

  - Merge tracking (see notes)

- Long-term Goals

  - repository-level ACLs

  - SQL repository back-end?

  - rewrite of working-copy library

  - broader WebDAV/deltaV compatibility

  - pluggable client-side diff programs

  - progressive multi-lingual support

## Past Releases

For information about past releases, see the project status page.

To see a summary of the major changes in each Subversion release, read over the CHANGES file.