Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

New versions

When is the next version of SpamAssassin going to be released?

...

Short answer: When it's ready.

Longer answer: Probably sooner if you help.

Because of the way SpamAssassin's default scores are determined, it generally takes a lot longer to release major versions (i.e. x.x.0 or x.x0) than we'd like. Here are the major steps we take before a release.

  1. Wiki Markup
    All the bugs that we agree need to be done for the next release need to be fixed. (For 3.0.0, you can look at \[http://bugzilla.spamassassin.org/show_bug.cgi?id=3208 bug 3208\], you can also query for bugs where the target milestone is 3.0.0) 2. We need to enter a rule freeze and run 3 mass-checks (MassCheck) and perceptron runs to optimize the rule scores. Since these mass-checks require volunteers from around the world to run [SpamAssassin] over very large volumes of mail, these generally take about a week each. 3. We need roughly two weeks of testing to eradicate any major bugs that creep in. (It's difficult to test [SpamAssassin] before the mass-checks are done because the scores are generally quite poor, making it relatively unusable on real mail.) During this time we will generally distribute release-candidate (RC) releases for wider testing. Test these! 4. If all goes well, we release.
    \\

Minor releases tend to have a lot shorter release schedule as only important bug fixes happen and the scores (usually) stay the same.

 The exact schedule depends on a number of factors and is hard to predict. If you are keen to see pre-release versions, keep in mind that WeLoveVolunteers, and there's lots of DevelopmentStuff.

The news page contains the list of release dates nowadays.

ReleaseGoals lists the times releases are intended to be started.

How are versions numbered?

Versions are denoted using a standard triplet of integers: MAJOR.MINOR.PATCH. The basic intent is that MAJOR versions are incompatible, large-scale upgrades of the API. MINOR versions retain source and binary compatibility with older minor versions, and changes in the PATCH level are perfectly compatible, forwards and backwards.

  • The major version number increments upon significant architectural changes or the achievement of important milestones in capabilities. The minor/mode version number increments as progress is made within a major version.
  • The patchlevel number increments for small sets of changes, providing the most fine-grain timeline of software evolution. Patchlevels increment regularly for internal/development(odd minor level) work, but only increment for external releases when an official update to the previous release version has been tested and packaged.

When a version is almost ready to be released, it is called a "release candidate," (RC), so the version will be numbered something like, "3.0.0-rc3." Generally a final version is released within a few weeks of the RC versions.

...

Keywords: Latest Version Upgrade New Version New Release New Features Wiki MarkupHow can you help? Simple. Fix bugs. Log into \[http://bugzilla.spamassassin.org Bugzilla\] and browse through the bugs that are holding up the release. Fix them and attach patches to the bugs. (You may need to also fill out and send in a \[http://www.apache.org/licenses/#clas Contributor License Agreement\] before we can use your patch.) Also, [WeLoveVolunteers].