Skip to Main Content
The Apache Software Foundation
Apache 20th Anniversary Logo

This was extracted (@ 2025-02-19 17:10) from a list of minutes which have been approved by the Board.
Please Note The Board typically approves the minutes of the previous meeting at the beginning of every Board meeting; therefore, the list below does not normally contain details from the minutes of the most recent Board meeting.

WARNING: these pages may omit some original contents of the minutes.
This is due to changes in the layout of the source minutes over the years. Fixes are being worked on.

Meeting times vary, the exact schedule is available to ASF Members and Officers, search for "calendar" in the Foundation's private index page (svn:foundation/private-index.html).

Supporting commentary for creating Apache JAMES

22 Jan 2003

The following text was received by the Board, in support of creating
the Apache James PMC.

Jakarta-James Proposal for adoption as an Apache top-level project
----------------------------------------------------------------------

----------------------------------------------------------------------
Preamble:
----------------------------------------------------------------------

To the Board of the Apache Software Foundation.

We, the committers of the Jakarta sub-project jakarta-james have held a
vote and agreed to apply to you for elevation of our sub-project to
the status of a top-level Apache project.

This document outlines details of our project, our community, and our
reasons for wanting to take this step.

----------------------------------------------------------------------
Introduction to James:
----------------------------------------------------------------------

James is a 100% Java mail and news server, evolving into a complete
electronic messaging solution that integrates the range of IETF
protocols, such as SMTP, POP3, IMAP, NNTP, and XXMP with unified user
account management and open storage mechanisms.

James provides highly configurable SMTP mail transport and local
delivery into POP3 or IMAP accounts, utilizing file system or database
storage configurable on a per-repository basis.

The jakarta-james sub-project hosts the Apache Mailet API specification
The Mailet API is a Java API providing a framework for the conditional
processing of electronic messages.

James implements the Mailet API, and as such is itself a platform for
Mailet applications.  Mailet applications include providing custom mail
processing, such as list servers, or providing gateways into other
systems, messaging systems such as NNTP, SMS or proprietary messaging,
or insertion into non-standard storage media.

James itself provides a number of mailets performing configurable
standard MTA services, such as aliasing and forwarding.

----------------------------------------------------------------------
Reasons for our application:
----------------------------------------------------------------------
       General:
----------------------------------------------------------------------

James is a mature, self-determining project that is able to govern
itself under the auspices of the ASF Board in accordance with ASF
bylaws and guidelines.

As James consists primarily of the server which is an end-user product
we feel that top level project status, emphasizng its function rather
than its platform, would suit James well.  Top level project status
would also facilitate the ability to offer the Mailet API as a
separate specification, of which James would represent only a
reference implementation.

James would continue to work closely with the Avalon Project, and is
establishing ties with the Cocoon and BSF projects to integrate some
of their technologies within James.

----------------------------------------------------------------------
       Project Management:
----------------------------------------------------------------------

James has a small yet mature self-sustaining community.  We seldom seek
recourse to the Jakarta PMC, and equally seldom are we scrutinized by
them. We are perhaps not the most active project, and some of us may
feel that this sometimes causes James to be disregarded. Likewise,
apart from Avalon, we have few direct ties with other jakarta projects.

We believe that normalizing our relationship with the ASF Board
by reporting directly rather than through the Jakarta PMC, and
taking official control of all the issues we currently inherit and
"interpret" from Jakarta, would benefit James.

----------------------------------------------------------------------
       Profile:
----------------------------------------------------------------------
As outline above James is composed of three main areas.

       JAMES server
       Sub-Projects:
               Mailet API
               Mailet Applications


----------------------------------------------------------------------
       History:
----------------------------------------------------------------------
JAMES was originally envisioned and placed as a holding page on
java.apache.org, before Jakarta was organized.  Individuals
(unfortunately names forgotten at this point) had submitted a proposal
to the (HTTP) servlets group at Sun to provide mail handling.  They
rejected the proposal for technical reasons.

Serge Knystautas later donated a Java SMTP server implementation that
became the original code base for JAMES.  The mailet API was heavily
discussed and finalized, the original code was massively re-factored
and improved, and a POP3 implementation was added.

JAMES was later re-factored to use the new Avalon code base.  JAMES also
received a donation of an NNTP implementation.  JAMES has slowly added
new mailets, improved reliability and scalability, SMTP AUTH,
FetchPOP, and other feature enhancements since then.

----------------------------------------------------------------------
       Future:
----------------------------------------------------------------------
Our vision of the future for James contains five main foci,

1/ To continually improve the performance and functionality of the
core messaging services. Currently focusing on making IMAP stable and
increasing fault tolerance across the board.

2/ To promote the Mailet API as a standard API (providing portability
to mail-specific code) to all Java projects involved with processing
email both OS and commercial, this will involve further isolating the
Mailet API from any dependence on James or James' dependencies, and to
continually support, refine and enhance the Mailet API in response to
feedback from Mailet API users and Mailet developers, for example to
cover message domains other than e-mail.

3/ To build on James' Mailet packages in order to provide more, and
more sophisticated, behaviors which would be available to any
application implementing the Mailet API.

4/ Provide a common message repository abstraction to all of James'
protocol servers (e.g, SMTP, POP3, NNTP and IMAP) and support standard
repository data formats like maildir and mbox to ease migration to
James.

5/ Provide a common user repository abstraction to all of James'
protocol servers.

These plans include:
- Providing functionality capable of reproducing services provided by
commercial and open source competitors such as Microsoft Exchange, or
ezmlm.
- Implementing a number of related services defined by RFC's, such as
the email aspects of iCalendar and vCard to name but two.
- And offering greater interoperability with other mail applications,
such as sendmail.

----------------------------------------------------------------------
Our Community:
----------------------------------------------------------------------
The James community is small, but focused and self-sustaining,
comprised of six active committers, and six currently inactive.
Only one of the active committers, Serge Knystautas, has been
associated with the project since it started, and the continued
success of James is no longer dependent on his continued
participation.

Our developer community includes a number of Avalon contributors and
committers, and a number of people who are working with or on James in
a commercial setting.

Our user base is hard to quantify, but includes a wide cross-section
of different classes of users, from individuals through small
enterprises looking for big enterprise mail functionality, commercial
users adapting James or using James to provide bespoke services
through to students using James in their course work.

We believe that this represents a healthy interest in James, and the
fact that James continues to be of interest to so many groups in spite
of the existence of email server software with much higher profiles,
sendmail, Microsoft Exchange, etc., is perhaps better proof of its worth
than is its market share in comparison with those goliaths.


----------------------------------------------------------------------
Conclusion
----------------------------------------------------------------------
We believe, as we hope we have shown, that James is a mature and
worthwhile candidate for inclusion as a top level Apache project, and
hereby take the opportunity of presenting our proposal for
consideration by the Board of Directors.

On behalf of The James committers,

 Danny Angus
 Charles Bennet
 Noel Bergman
 Peter Goldstein
 Serge Knystautas