Apache Commons logo Commons IO

Proposal for IO Package

(0) Rationale

Many software projects have a need to perform I/O in various ways, and the JDK class libraries provide a lot of functionality, but sometimes you need just a little bit more. The io package seeks to encapsulate some of the most popular i/o base classes into one easy to use package.

(1) Scope of the Package

This proposal is to create a package of Java utility classes for various types of i/o related activity.

(1.5) Interaction With Other Packages

IO relies only on standard JDK 1.2 (or later) APIs for production deployment. It utilizes the JUnit unit testing framework for developing and executing unit tests, but this is of interest only to developers of the component. IO will be a dependency for several existing components in the open source world.

No external configuration files are utilized.

(2) Initial Source of the Package

The original Java classes are splashed around various Apache subprojects. We intend to seek them out and integrate them.

The proposed package name for the new component is org.apache.commons.io.

(3) Required Jakarta-Commons Resources

  • CVS Repository - New directory io in the jakarta-commons CVS repository.
  • Mailing List - Discussions will take place on the general dev@commons.apache.org mailing list. To help list subscribers identify messages of interest, it is suggested that the message subject of messages about this component be prefixed with [IO].
  • Bugzilla - New component "IO" under the "Commons" product category, with appropriate version identifiers as needed.
  • Jyve FAQ - New category "commons-io" (when available).

(4) Initial Committers

The initial committers on the IO component shall be Scott Sanders and Nicola Ken Barozzi and Henri Yandell