Squid 3 Roadmap

Roadmap rules

To minimize noise and the number of half-baked abandoned features, two Feature sets are established for Squid3 development projects: The TODO List and The Wish List.

TODO list
TODO list features determine the release focus and timeline. Each feature must document their desired effect and estimated development time. Each feature must have at least one known active developer behind it willing to prioritize the feature and be ready to spend the time to fully develop the proposed feature (i.e., write, test, document, commit, and provide initial support).
Priorities
Each developer needs to prioritize the features they are dedicated to completing with a rating estimating on the order they will complete the feature. This makes the priority public, so another developer may join and push the feature faster if needed.
Wish List
The Wish List accumulates features that do not meet the strict TODO List criteria. Many of these features can be implemented if there is enough demand or a sponsor. Some may get implemented outside of the official process, submitted as patches, and accepted into the release.

There are no longer any freezing points in the 3.x Roadmap. Instead, Point Releases are now made at regular intervals as determined by; a reasonable time since last point release, or a large number of features being added.

All features must pass an auditing process for commit to HEAD, and any feature which has passed that process at time of release will be included in that release.

Features which have not reached completion or have failed the audit, are automatically delayed to the next Squid release. Which should not be an unreasonable delay given the new fast-track release plan.

Squid 3.1

Now in RELEASE CANDIDATE cycle. The features have been set and large code changes are reserved for later versions.

Additions are limited to:

  • Security fixes
  • Stability fixes
  • small optimizations

Basic new features in 3.1

Packages of squid 3.1 source code are available at http://www.squid-cache.org/Versions/v3/3.1/

Remaining 3.1 TODO

Squid 3.2 (HEAD)

Now in DEVELOPMENT cycle. The set of new Squid 3.2 features and release timeline is determined by submissions and available developer time. New features may be completed and added at any time until the branching of 3.2 which will probably not happen sooner than June 2009 or February 2010, depending on who you ask.

The intention is to remove the backlog of feature parity between 2.7 and 3.2 (listed as regressions in 3.1 http://www.squid-cache.org/Versions/v3/3.1/RELEASENOTES.html#s7) and concentrate on further performance and HTTP/1.1 improvements.

Done

Development snapshots of Squid source code are available at http://www.squid-cache.org/Versions/v3/HEAD/

TODO

These are the feature we are trying to work on at present. New features may be requested, suggested, or added to the plan at any time. Those which are completed and merged will be in the next formal branch after their merge date.

Features under development:

Features considered high-priority for including with 3.2, but not yet with a dedicated developer to achieve that goal. Incomplete items will be bumped to 3.3 if not completed by initial 3.2 release:

(Priority 1)

(Priority 2)

  • Variant Invalidation

(Priority 3)

(Others)

  • There is also a list of Tasks which anyone can help with.

Wish List

Wishlist consists of features which have been suggested or requested but do not yet have a developer or any contributor willing to see the feature completed and support it.

Please contact squid-dev and discuss these if you with to take on development of one.

More ideas are available elsewhere.

Schedule for Future Removals

Certain features are no longer relevant as the code improves and are planned for removal. Due to the possibility they are being used we list them here along with the release version they are expected to disappear.

Version

Feature

Why

3.1

error_directory files with named languages

Superseded by ISO-639 translations in langpack

3.2

Multiple languages per error page.

Superseded by auto-negotiation in 3.1+

3.3

TPROXYv2 Support

TPROXYv4 available from 3.1 and native Linux kernels

RoadMap/Squid3 (last edited 2009-06-13 00:58:10 by Amos Jeffries)