$Id$

Jakarta Commons Codec  

This document outline the current goals for the next release(s).  
This document defines objectives and action items that should
be met before the next release.  

*** Codec 1.1

	Status: Codec 1.1 released.

*** Codec 1.1.1 Maintenance Release Plan

Objective: 

   The main objective of 1.1.1 release is to fix any bugs identified
   in the 1.1 release of codec.

Changes Made since 1.1:

   - Fix for Bug 19860 - Base64 is not RFC 2045 compliant because it was
     ONLY discarding whitespace.  The RFC requires that all non-base64
     characters be ignored, and Base64 was changed to reflect this.

Changes to be made before release:

   - Still waiting for more bug reports

	Status: Codec 1.1.1 not released.

*** Codec 1.2 Release Candidate

Objective: 

   Identify as *existing* (or set of *existing*) stream Base64 implementation,
   and either integrate or emulate this code.  The community is currently
   in the process of selecting a primary candidate.
   
	Status: Codec 1.2 released.

*** Codec 1.3 Release Plan

   - Fix bugs. 
   - Improve Javadocs.
   - Add DIFFERENCE implementation in language package.

	Status:  Items above done.

*** Codec 2.0 Release Plan

   - Streamable codecs?

	Status: commons-dev discussions, some sandbox work.

