<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<?xml-stylesheet type="text/xsl" href="http://www.eclipse.org/projects/project-plan.xsl"?>

<!--  Use this to test local rendering in firefox -->
<!-- <?xml-stylesheet type="text/xsl" href="project-plan-render.xsl"?> -->
<plan plan-format="1.0" xmlns="http://www.eclipse.org/project/plan"
  xmlns:html="http://www.w3.org/1999/xhtml" name="Jetty">
  <release projectid="rt.jetty" version="7.x.y.z" />
  <introduction>
    <html:p> Jetty provides server and clients for HTTP and Websocket
      plus a javax.servlet container. The Jetty 7 version targets the
      2.5 servlet specification and the 1.5 JVM. The Jetty 8 version
      targets the 3.0 servlet specification and the 1.6 JVM.</html:p>
    <html:p> The plan deals with the important matters of release
      deliverables, release milestones, target operating environments,
      and release-to-release compatibility. These are all things that
      need to be clear for any release, even if no features were to
      change.</html:p>
  </introduction>
  <release_deliverables>
    <html:p> We will continue to publish artifacts into the central
      maven repository as we have done all along for our other user
      bases. Primary download bundles will be determined as well but we
      intend to retain our traditional jetty download bundle in addition
      to other eclipse oriented packaging. An update site is available
      and will be provided for all eclipse releases.</html:p>
  </release_deliverables>
  <release_milestones>
    <preamble>
      <html:p> Point release milestones will be occurring in roughly 6-8 week
        intervals.</html:p>
        <html:p> Minor release milestones will be occurring in roughly 2-3 month
        intervals.</html:p>
    </preamble>
    <milestone date="03/04/2009" milestone="M0">
      <html:div>7.0.0.M0 - published</html:div>
    </milestone>
    <milestone date="21/04/2009" milestone="M1">
      <html:div>7.0.0.M1 - published</html:div>
    </milestone>
    <milestone date="18/05/2009" milestone="M2">
      <html:div>7.0.0.M2 - published</html:div>
    </milestone>
    <milestone date="22/06/2009" milestone="M3">
      <html:div>7.0.0.M3 - published</html:div>
    </milestone>
    <milestone date="01/07/2009" milestone="M4">
      <html:div>7.0.0.M4 - published</html:div>
    </milestone>
    <milestone date="09/07/2009" milestone="RC0">
      <html:div>7.0.0.RC0 - published</html:div>
    </milestone>
    <milestone date="15/07/2009" milestone="RC1">
      <html:div>7.0.0.RC1 - published</html:div>
    </milestone>
    <milestone date="22/07/2009" milestone="RC2">
      <html:div>7.0.0.RC2 - published</html:div>
    </milestone>
    <milestone date="29/07/2009" milestone="RC3">
      <html:div>7.0.0.RC3 - published</html:div>
    </milestone>
    <milestone date="18/08/2009" milestone="RC4">
      <html:div>7.0.0.RC4 - published</html:div>
    </milestone>
    <milestone date="27/08/2009" milestone="RC5">
      <html:div>7.0.0.RC5 - published</html:div>
    </milestone>
    <milestone date="05/10/2009" milestone="7.0.0.v20091005">
      <html:div>7.0.0.v20091005 - published</html:div>
    </milestone>
    <milestone date="25/11/2009" milestone="7.0.1.v20091125">
      <html:div>7.0.1.v20091125 - published</html:div>
    </milestone>
    <milestone date="07/03/2010" milestone="7.0.2.RC0">
      <html:div>7.0.2.RC0 - published</html:div>
    </milestone>
    <milestone date="01/04/2010" milestone="7.0.2.v20100331">
      <html:div>7.0.2.v20100331 - published</html:div>
    </milestone>
    <milestone date="05/05/2010" milestone="7.1.0.v20100505">
      <html:div>7.1.0.v20100505 - published</html:div>
    </milestone>
    <milestone date="17/05/2010" milestone="7.1.1.v20100517">
      <html:div>7.1.1.v20100517 - published</html:div>
    </milestone>
    <milestone date="23/05/2010" milestone="7.1.2.v20100523">
      <html:div>7.1.2.v20100523 - published</html:div>
    </milestone>
    <milestone date="26/05/2010" milestone="7.1.2.v20100526">
      <html:div>7.1.3.v20100526 - published</html:div>
    </milestone>
    <milestone date="10/06/2010" milestone="7.1.4.v20100610">
      <html:div>7.1.4.v20100610 - published</html:div>
    </milestone>
    <milestone date="05/07/2010" milestone="7.1.5.v20100705">
      <html:div>7.1.5.v20100705 - published</html:div>
    </milestone>
    <milestone date="15/07/2010" milestone="7.1.5.v20100715">
      <html:div>7.1.6.v20100715 - published</html:div>
    </milestone>
    <milestone date="20/10/2010" milestone="7.2.0.v20101020">
      <html:div>7.2.0.v20101020 - published</html:div>
    </milestone>
    <milestone date="11/11/2010" milestone="7.2.1.v20101111">
      <html:div>7.2.1.v20101111 - published</html:div>
    </milestone>
    <milestone date="20/11/2010" milestone="7.2.1.v2010XXXX">
      <html:div>7.2.1.v2010XXXX</html:div>
    </milestone>
    <milestone date="05/12/2010" milestone="7.2.2.v20101205">
      <html:div>7.2.2.v20101205 - published</html:div>
    </milestone>
    <milestone date="03/02/2011" milestone="7.3.0.v20110203">
      <html:div>7.3.0.v20110203 - published</html:div>
    </milestone>
    <milestone date="04/03/2011" milestone="7.3.1.v20110304">
      <html:div>7.3.1.v20110304 - published</html:div>
    </milestone>
    <milestone date="14/04/2011" milestone="7.4.0.v20110414">
      <html:div>7.4.0.v20110414 - published</html:div>
    </milestone>
    <milestone date="13/05/2011" milestone="7.4.1.v20110513">
      <html:div>7.4.1.v20110513 - published</html:div>
    </milestone>
    <milestone date="26/05/2011" milestone="7.4.2.v20110526">
      <html:div>7.4.2.v20110526 - published</html:div>
    </milestone>
    <milestone date="01/07/2011" milestone="7.4.3.v20110701">
      <html:div>7.4.3.v20110701 - published</html:div>
    </milestone>
    <milestone date="07/07/2011" milestone="7.4.4.v20110707">
      <html:div>7.4.4.v20110707 - published</html:div>
    </milestone>
    <milestone date="25/07/2011" milestone="7.4.5.v20110725">
      <html:div>7.4.5.v20110725 - published</html:div>
    </milestone>
    <milestone date="01/09/2011" milestone="7.5.0.v20110901">
      <html:div>7.5.0.v2010901 - published</html:div>
    </milestone>
    <milestone date="08/09/2011" milestone="7.5.1.v20110908">
      <html:div>7.5.1.v20110908 - published</html:div>
    </milestone>
    <milestone date="06/10/2011" milestone="7.5.2.v20111006">
      <html:div>7.5.2.v20111006 - publish</html:div>
    </milestone>
    <milestone date="01/12/2011" milestone="7.6.0.v20111201">
      <html:div>7.6.0.v20111201 - planned</html:div>
    </milestone>
    
    <milestone date="02/28/2010" milestone="8.0.0.M0">
      <html:div>8.0.0.M0 - published</html:div>
    </milestone>
    <milestone date="01/04/2010" milestone="8.0.0.M1">
      <html:div>8.0.0.M1 - published</html:div>
    </milestone>
    <milestone date="22/11/2010" milestone="8.0.0.M2">
      <html:div>8.0.0.M2 - published</html:div>
    </milestone>
    <milestone date="27/05/2010" milestone="8.0.0.M2">
      <html:div>8.0.0.M3 - published</html:div>
    </milestone>
    <milestone date="01/09/2011" milestone="8.0.0.v20110901">
      <html:div>8.0.0.v20110901 - published</html:div>
    </milestone>
    <milestone date="08/09/2011" milestone="8.0.1.v20110908">
      <html:div>8.0.1.v20110908 - published</html:div>
    </milestone>
    <milestone date="06/10/2011" milestone="8.0.2.v20111006">
      <html:div>8.0.2.v20111006 - published</html:div>
    </milestone>
    <milestone date="01/12/2011" milestone="8.1.0.v20111201">
      <html:div>8.1.0.v20111201 - planned</html:div>
    </milestone>

    <postamble>
      <html:div>
        <html:p>
          Individual, milestone level plans for the components that make
          up the Eclipse Project can be found on the
          <html:a href="http://wiki.eclipse.org/Jetty/ProjectPlan">Jetty Project Plan page</html:a>
          on the Eclipse wiki.
        </html:p>
        <html:p> Our target is to maintain and innovate with 7.x.y.z
          releases based on the servlet api version 2.5. We also intend
          to release a version 8.x.y.z of jetty based on the servlet api
          version 3.0 once that is available and maintain parallel
          development on these two codebases, exactly how jetty
          development has proceeded historically.</html:p>
      </html:div>
    </postamble>
  </release_milestones>
  <target_environments>
    <html:p> Jetty closely follows the requirements of the servlet-api
      version that it implements and works with. As such JDK/JRE
      versions and other dependency versions are dictated to us by the
      spec in question.</html:p>
    <html:p> Starting with the Jetty 7.1.x releases we will have JSP
      support once more only using eclipse IP approved dependencies.
      Starting with the Jetty 7.2.x releases, we include support for the latest WebSockets
      specification.</html:p>
    <html:p>
      The Jetty project will support:
      <html:ul>
        <html:li>Jetty 7/(Servlet Api 2.5) - JDK/JRE 1.5.x and up
        </html:li>
        <html:li>Jetty 8/(Servlet Api 3.0) - JDK/JRE 1.6.x and up
        </html:li>
      </html:ul>
    </html:p>
    <internationalization>
      <html:p> Jetty does not currently ship with internationalized
        exceptions or documentation.</html:p>
    </internationalization>
  </target_environments>
  <compatibility_with_previous_releases>
    <html:p>Within eclipse releases of Jetty from version 7.x onwards we
      will maintain backward compatibility</html:p>
    <html:p>Packaging changes (org.mortbay.jetty -> org.eclipse.jetty)
      have broken the seamless transition from previous versions of
      jetty.</html:p>
  </compatibility_with_previous_releases>
  <themes_and_priorities>
    <preamble>
      <html:p> The project several stated major areas of work that will
        be the priorities for this and future development cycle.
      </html:p>
    </preamble>
    <theme name="Eclipse Migration">
      <description>
        <html:p> Continue to move appropriate modules (eg JSP,
          jetty-maven-plugin) to the eclipse project as the required
          dependencies are CQ'd and become available.</html:p>
      </description>
    </theme>
    <theme name="OSGi Integration">
      <description>
        <html:p> Continue to improve the integration of jetty with OSGi
          frameworks and tooling including: continuing work on eclispe
          IDE integration; supporting efforts of the Gemini and Virgo
          projects; improving the bundling and feature breakdown of
          jetty; support and maintenance of the OSGi HttpService and
          RFC66 webapplication deployment.</html:p>
      </description>
    </theme>
    <theme name="Component Oriented Design">
      <description>
        <html:p> At its core, Jetty is a simply a set of components that
          fufill the role of a web server and adding on additional
          functionalities are a matter of adding additional components
          to the system. JMX, JNDI, Servlets, an asynchronous http
          client, are all components that can be added to an application
          with a minimal amount of effort. This is a overridding goal
          and design philosophy behind Jetty. We strive to make it as
          easy to deploy your application by copying a war file as it is
          to embed jetty directly into your application and in many
          cases you can add webserver functionality to your application
          in less then 5 or 6 lines of code.</html:p>
      </description>
    </theme>
    <theme name="Light-weight Web Server and Servlet Engine">
      <description>
        <html:p> The internals of jetty are designed around efficient
          use of the available resources and jetty works extremely well
          in many different environments. Since jetty 6 the internals
          have made extensive use of NIO and the scaling benefits that
          such technology provides. With the Continuations concept in
          place, jetty is able to allow modern 2.5 servlets to scale to
          previously unattainable hieghts as it provides a mechanism by
          which the servlet connection can be suspended out of the stack
          and reused for other incoming connections. This technique is
          what has allowed jetty to scale to 20k simulatious connections
          for a servlet application.</html:p>
      </description>
    </theme>
    <theme name="Embedded Use">
      <description>
        <html:p> Jetty runs on a variety of platforms including Android
          and other cell phone platforms. This has been effort for the
          jetty team for many years and jetty has run on a large variety
          of devices as a result. Phones, switches and other network
          applicances can be found with jetty running on them.</html:p>
        <html:p> This is not to say that jetty can only be embedded on
          devices, it is also key for being deployed inside of various
          applications and containers. Jetty maintains an integration
          with jboss and is increasingly working with OSGI for servicing
          the HTTPService community at large. This is in fact a large
          reason that jetty decided to work with the eclipse community
          at a greater level to facilitate this sort of usage scenario.
        </html:p>
      </description>
    </theme>
    <theme name="Tooling and IDE Integration">
      <description>
        <html:p> Jetty also intends to support and work with other
          maintainers of IDE integrations as well as increase the native
          support of servlet and application development with jetty
          plugins and tooling options.</html:p>
      </description>
    </theme>
    <theme name="Emerging protocol support">
      <description>
        <html:p> Protocols such as Websocket, SPDY and BWTP have been
          proposed as ways to improve bidirectional web applications
          (aka comet). The Jetty project will implement, evaluate,
          improve and assist the standardization of these emerging
          protocols.</html:p>
      </description>
    </theme>
    <theme name="Eclipse 4.1">
      <description>
        <html:p> We will contribute to Indigo</html:p>
      </description>
    </theme>
    <theme name="Eclipse 4.2">
      <description>
        <html:p> We will contribute to Juno</html:p>
      </description>
    </theme>
  </themes_and_priorities>
</plan>
