blob: 7abc90943007abb9917e6c8207090756692e26f0 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Project Plan - modeling.tmf.xtext</title><meta name="author" content="Bjorn Freeman-Benson" />
<meta name="keywords" content="" />
<meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
<link rel="stylesheet" type="text/css" href="/eclipse.org-common/yui/2.6.0/build/reset-fonts-grids/reset-fonts-grids.css" media="screen" />
<link rel="stylesheet" type="text/css" href="/eclipse.org-common/yui/2.6.0/build/menu/assets/skins/sam/menu.css" media="screen" />
<link rel="stylesheet" type="text/css" href="/eclipse.org-common/themes/Nova/css/reset.css" media="screen"/>
<link rel="stylesheet" type="text/css" href="/eclipse.org-common/themes/Nova/css/layout.css" media="screen" />
<link rel="stylesheet" type="text/css" href="/eclipse.org-common/themes/Nova/css/header.css" media="screen" />
<link rel="stylesheet" type="text/css" href="/eclipse.org-common/themes/Nova/css/footer.css" media="screen" />
<link rel="stylesheet" type="text/css" href="/eclipse.org-common/themes/Nova/css/visual.css" media="screen" />
<link rel="stylesheet" type="text/css" href="/eclipse.org-common/themes/Nova/css/print.css" media="print" />
<!--[if lte IE 7]> <link rel="stylesheet" type="text/css" href="/eclipse.org-common/themes/Nova/css/ie_style.css" media="screen"/> <![endif]-->
<!--[if IE 6]> <link rel="stylesheet" type="text/css" href="/eclipse.org-common/themes/Nova/css/ie6_style.css" media="screen"/> <![endif]-->
<!-- Dependencies -->
<!-- Source File -->
</head>
<body>
<div id="novaWrapper"> <div id="clearHeader">
<div id="logo">
<img src="/eclipse.org-common/themes/Nova/images/eclipse.png" alt="Eclipse.org"/>
</div>
<div id="otherSites">
<div id="sites">
<ul id="sitesUL">
<li><a href='http://marketplace.eclipse.org'><img alt="Eclipse Marketplace" src="http://dev.eclipse.org/custom_icons/marketplace.png"/>&nbsp;<span>Eclipse Marketplace</span></a></li>
<li><a href='http://www.youtube.com/user/EclipseFdn' target="_blank"><img alt="Eclipse YouTube Channel" src="http://dev.eclipse.org/custom_icons/audio-input-microphone-bw.png"/>&nbsp;<span>Eclipse YouTube Channel</span></a></li>
<li><a href='https://bugs.eclipse.org/bugs/'><img alt="Bugzilla" src="http://dev.eclipse.org/custom_icons/system-search-bw.png"/>&nbsp;<span>Bugzilla</span></a></li>
<li><a href='http://www.eclipse.org/forums/'><img alt="Forums" src="http://dev.eclipse.org/large_icons/apps/internet-group-chat.png"/>&nbsp;<span>Eclipse Forums</span></a></li>
<li><a href='http://www.planeteclipse.org/'><img alt="Planet Eclipse" src="http://dev.eclipse.org/large_icons/devices/audio-card.png"/>&nbsp;<span>Planet Eclipse</span></a></li>
<li><a href='http://wiki.eclipse.org/'><img alt="Eclipse Wiki" src="http://dev.eclipse.org/custom_icons/accessories-text-editor-bw.png"/>&nbsp;<span>Eclipse Wiki</span></a></li>
<li><a href='http://portal.eclipse.org'><img alt="MyFoundation Portal" src="http://dev.eclipse.org/custom_icons/preferences-system-network-proxy-bw.png"/><span>My Foundation Portal</span></a></li>
</ul>
</div>
</div>
</div>
<div id="header">
<div id="menu">
<ul>
<li><a href="/" target="_self">Home</a></li>
<li><a href="/downloads/" target="_self">Downloads</a></li>
<li><a href="/users/" target="_self">Users</a></li>
<li><a href="/membership/" target="_self">Members</a></li>
<li><a href="/committers/" target="_self">Committers</a></li>
<li><a href="/resources/" target="_self">Resources</a></li>
<li><a href="/projects/" target="_self">Projects</a></li>
<li><a href="/org/" target="_self">About Us</a></li>
</ul>
</div>
<div id="search">
<form action="http://www.google.com/cse" id="searchbox_017941334893793413703:sqfrdtd112s">
<input type="hidden" name="cx" value="017941334893793413703:sqfrdtd112s" />
<input id="searchBox" type="text" name="q" size="25" />
<input id="searchButton" type="submit" name="sa" value="Search" />
</form>
<script type="text/javascript" src="http://www.google.com/coop/cse/brand?form=searchbox_017941334893793413703%3Asqfrdtd112s&lang=en"></script>
</div>
</div>
<div id="novaContent" class="faux"> <br style="clear:both;height:1em;"/>
<div id="leftcol">
<ul id="leftnav">
<li class="separator"><a class="separator" href="/projects/">
Projects<img src="/eclipse.org-common/themes/Nova/images/separator.png"/></a></li>
<li><a href="/projects/whatsnew.php" target="_self">What's New?</a></li>
<li><a href="/projects/listofprojects.php" target="_self">List of Projects</a></li>
<li><a href="/projects/searchpage.php" target="_self">Search through Projects...</a></li>
<li><a href="/projects/dev_process/index-quick.php" target="_self">Rules &amp; Processes</a></li>
<li><a href="/projects/dev_process/index.php" target="_self">FAQ</a></li>
<li><a href="/projects/tools" target="_self">Tools for committers</a></li>
</ul>
</div>
<style>
h2 {
border-bottom: 2px solid gray;
}
h3 {
border-bottom: 1px dotted gray;
}
</style>
<div id="fullcolumn">
<div id="midcolumn">
<div xmlns="http://www.w3.org/1999/xhtml" id="rendered-plan">
<div id="maincontent">
<div id="midcolumn">
<h1>
Project Plan For
<a href="http://www.eclipse.org/projects/project_summary.php?projectid=modeling.tmf.xtext">Xtext</a>, version 2.0.0</h1>
<div id="toc">
<p>
<a name="toc">
<strong>Table of Contents</strong>
</a>
</p>
<ul>
<li>
<a href="#introduction">Introduction</a>
</li>
<li>
<a href="#release_deliverables">
Release Deliverables
</a>
</li>
<li>
<a href="#release_milestones">
Release Milestones
</a>
</li>
<li>
<a href="#target_environments">
Target Environments
</a>
</li>
<li>
<a href="#compatibility">
Compatibility with Previous Releases
</a>
</li>
<li>
<a href="#themes_and_priorities">
Themes and Priorities
</a>
</li>
<li>
<a href="#appendix">
Appendix
</a>
</li>
</ul>
</div>
<h2>
<a name="introduction">Introduction</a>
</h2>
<div>
<p>
This document lays out the feature and API set for the Indigo version of the Xtext (version 2.0.0).
</p>
</div>
<h2>
<a name="release_deliverables">Release Deliverables</a>
</h2>
<div>
The release deliverables have the same form as is found in most Eclipse projects, namely:
<p>
<ul>
<li>Xtext SDK (includes runtime and tooling components, with sources, examples, and documentation) (downloadable and update site).</li>
<li>Xtext runtime binary distribution (downloadable and update site).</li>
<li>Xtext tests (downloadable and update site)</li>
<li>Xbase SDK (includes a reusable expression langauge implemented in Xtext, with sources, examples, and documentation) (downloadable and update site).</li>
<li>Xbase runtime binary distribution (downloadable and update site).</li>
<li>Xbase tests (downloadable and update site)</li>
<li>Xtend2 SDK (a domein-specific language for customizing all aspects of Xtext. Built with Xtext and based on Xbase. Includes runtime and tooling components, with sources, examples, and documentation) (downloadable and update site).</li>
<li>Xtend2 runtime binary distribution (downloadable and update site).</li>
<li>Xtend2 tests (downloadable and update site)</li>
</ul>
</p>
</div>
<p>
<a href="#toc">Table of Contents</a>
</p>
<h2>
<a name="release_milestones">Release Milestones</a>
</h2>
<div>
Release milestone occurring at roughly 6 week intervals and follow the Platform milestone releases by approximately 2 weeks;
that is, until the final 3.7 release of the Platform, upon which Xtext and other projects will release simultaneously.
Xtext delivers milestones synchronized with the Indigo release schedule.
</div>
<table border="1" align="center">
<tr>
<td>
<b>M2</b>
</td>
<td>08/17/2010</td>
<td>
<a href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&amp;classification=Modeling&amp;product=TMF&amp;component=Xtext&amp;field0-0-0=flagtypes.name&amp;type0-0-0=substring&amp;value0-0-0=indigo&amp;target_milestone=M2">
bugzillas
</a>
</td>
</tr>
<tr>
<td>
<b>M3</b>
</td>
<td>09/28/2010</td>
<td>
<a href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&amp;classification=Modeling&amp;product=TMF&amp;component=Xtext&amp;field0-0-0=flagtypes.name&amp;type0-0-0=substring&amp;value0-0-0=indigo&amp;target_milestone=M3">
bugzillas
</a>
</td>
</tr>
<tr>
<td>
<b>M4</b>
</td>
<td>12/14/2010</td>
<td>
<a href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&amp;classification=Modeling&amp;product=TMF&amp;component=Xtext&amp;field0-0-0=flagtypes.name&amp;type0-0-0=substring&amp;value0-0-0=indigo&amp;target_milestone=M4">
bugzillas
</a>
</td>
</tr>
<tr>
<td>
<b>M5</b>
</td>
<td>02/08/2011</td>
<td>
<a href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&amp;classification=Modeling&amp;product=TMF&amp;component=Xtext&amp;field0-0-0=flagtypes.name&amp;type0-0-0=substring&amp;value0-0-0=indigo&amp;target_milestone=M5">
bugzillas
</a>
</td>
</tr>
<tr>
<td>
<b>M6</b>
</td>
<td>03/15/2011</td>
<td>
<p>API freeze</p>
<a href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&amp;classification=Modeling&amp;product=TMF&amp;component=Xtext&amp;field0-0-0=flagtypes.name&amp;type0-0-0=substring&amp;value0-0-0=indigo&amp;target_milestone=M6">
bugzillas
</a>
</td>
</tr>
<tr>
<td>
<b>M7</b>
</td>
<td>05/03/2011</td>
<td>
<p>Feature freeze</p>
<a href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&amp;classification=Modeling&amp;product=TMF&amp;component=Xtext&amp;field0-0-0=flagtypes.name&amp;type0-0-0=substring&amp;value0-0-0=indigo&amp;target_milestone=M7">
bugzillas
</a>
</td>
</tr>
<tr>
<td>
<b>RC1</b>
</td>
<td>05/17/2011</td>
<td>
<a href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&amp;classification=Modeling&amp;product=TMF&amp;component=Xtext&amp;field0-0-0=flagtypes.name&amp;type0-0-0=substring&amp;value0-0-0=indigo&amp;target_milestone=RC1">
bugzillas
</a>
</td>
</tr>
<tr>
<td>
<b>RC2</b>
</td>
<td>05/24/2011</td>
<td>
<a href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&amp;classification=Modeling&amp;product=TMF&amp;component=Xtext&amp;field0-0-0=flagtypes.name&amp;type0-0-0=substring&amp;value0-0-0=indigo&amp;target_milestone=RC2">
bugzillas
</a>
</td>
</tr>
<tr>
<td>
<b>RC3</b>
</td>
<td>05/31/2011</td>
<td>
<a href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&amp;classification=Modeling&amp;product=TMF&amp;component=Xtext&amp;field0-0-0=flagtypes.name&amp;type0-0-0=substring&amp;value0-0-0=indigo&amp;target_milestone=RC3">
bugzillas
</a>
</td>
</tr>
<tr>
<td>
<b>RC4</b>
</td>
<td>06/07/2011</td>
<td>
<a href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&amp;classification=Modeling&amp;product=TMF&amp;component=Xtext&amp;field0-0-0=flagtypes.name&amp;type0-0-0=substring&amp;value0-0-0=indigo&amp;target_milestone=RC4">
bugzillas
</a>
</td>
</tr>
<tr>
<td>
<b>2.0.0 Final</b>
</td>
<td>06/22/2010</td>
<td/>
</tr>
</table>
<p>
<a href="#toc">Table of Contents</a>
</p>
<h2>
<a name="target_environments">Target Environments</a>
</h2>
<div>
In order to remain current, each Eclipse release targets reasonably current versions of the underlying operating environments.
The Xtext project depends upon on the 3.5 (Galileo) release of the Eclipse Platform and other projects, and targets to run on
version 1.5 of the Java Runtime Environment, Standard Edition.
</div>
<p>
<a href="#toc">Table of Contents</a>
</p>
<h2>
<a name="compatibility">Compatibility with Previous Releases</a>
</h2>
<div>
Version 2.0 will not be compatible with the Xtext version 1.0.
However there will be a migration guide available by end of June.
</div>
<p>
<a href="#toc">Table of Contents</a>
</p>
<h2>
<a name="themes_and_priorities">Themes and Priorities</a>
</h2>
<div>
A list of project requirements and agreed upon implementation time frames is
found in this document. For the milestones listed in this document, a set of
overall themes is used to indicate what major set of functionalities is to be
concentrated on for each. These themes are presented below, while the
requirements document and associated Bugzilla entries are left to those wanting
more detailed information on each.
</div>
<h3>Reusability</h3>
<div>
Xbase is a sophisticated language library, providing the power of full-blown expressions to any
Xtext-based langauge targeting the Java platform.
Xtext eats its own dog-food and comes with a new compiler language called Xtend2, which is itself implmentd in Xtext
and based on Xbase.
</div>
<h3>Increase Applicability</h3>
<div>
One of our guiding principles is "make common things easier and rare things possible" suggests that we focus on extensibility as well as
on simplicity with regards to all kinds of API. In Helios we want to allow Xtext to be used in more situations by providing an easy to reuse base language.
</div>
<h3>Performance and Scalability</h3>
<div>
Performance and scalability needs to be further enforced.
</div>
<h3>Clean Code</h3>
<div>
Keeping the quality of code high is key for long lasting software systems.
We want to further keep our code clean, which means doing things like removing dead code, cleaning up / rewriting code we do no longer understand,
avoiding redundancy, etc..
</div>
<h3>Eclipse 4.1</h3>
<div>
We do not explicitly test against 4.1.
</div>
<p>
<a href="#toc">Table of Contents</a>
</p>
<h2>
<a name="appendix">Appendix Legal Notices</a>
</h2>
<div>
<ul>
<li>Java is a trademark or a registered trademark of Sun Microsystems, Inc.</li>
<li>All other products or company names are mentioned for identification purposes only, and may be trademarks or service marks of their respective owners.</li>
</ul>
</div>
<p>
<a href="#toc">Table of Contents</a>
</p>
</div>
</div>
</div>
<div style="float: right; text-align: right"><a href="?projectid=modeling.tmf.xtext&raw=1">view raw xml of project plan</a><br>
<a href="/projects/dev_process/project-status-infrastructure.php">from project meta-data key "projectplanurl"</a></div>
</div> <!-- midcolumn -->
</div> <!-- fullcolumn -->
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-910670-2']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
<br style="clear:both;height:1em;"/>&nbsp;
</div>
<div id="clearFooter"></div>
<div id="footer">
<ul id="footernav">
<li><a href="/">Home</a></li>
<li><a href="/legal/privacy.php">Privacy Policy</a></li>
<li><a href="/legal/termsofuse.php">Terms of Use</a></li>
<li><a href="/legal/copyright.php">Copyright Agent</a></li>
<li><a href="/legal/">Legal</a></li>
<li><a href="/org/foundation/contact.php">Contact Us</a></li>
</ul>
<span id="copyright">Copyright &copy; 2011 The Eclipse Foundation. All Rights Reserved.</span>
</div>
</div> </body>
</html>