blob: bc3a2ebf85001ca97a31764880d19408a7b590e4 [file] [log] [blame]
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<?xml-stylesheet type="text/xsl" href="http://www.eclipse.org/eclipse/development/project-plan-render.xsl"?>
<p:plan plan-format="1.0" xmlns:p="http://www.eclipse.org/project/plan"
xmlns="http://www.w3.org/1999/xhtml" name="Linux Tools">
<p:release projectid="technology.linux-distros" version="1.0 (Juno)" />
<p:introduction>
<div>
The Linux Tools project is a two-faceted
project. Firstly, it develops tools and frameworks for
writing tools for Linux developers. Secondly, it provides
a place for Linux
distributions to
collaboratively overcome issues surrounding
distribution packaging of
Eclipse technology. The project will
produce both best practices and tools
related to packaging.
</div>
</p:introduction>
<p:release_deliverables>
<div>
The Linux Tools project delivers tools as
Eclipse plugins which are used primarily by Linux developers
and
packagers. The project also aims to deliver various
scripts,
techniques, and tarballs which ease the process of
packaging Eclipse
technology for Linux distributions.
</div>
</p:release_deliverables>
<p:release_milestones>
<p:milestone date="2009-01-16" milestone="0.1">
<div>First release</div>
<div>
Latest ChangeLog and specfile editor releases, first
release of plugin building and packaging
tools (RPM Stubby), resurrected
OProfile plugin, initial eclipse.org release of
autotools, libhover, valgrind, and systemtap
editor plugins.
</div>
</p:milestone>
<p:milestone date="2009-04-01" milestone="0.2RC">
<div>Release candidate build towards 0.2</div>
<div>
initial cachegrind support
improved OProfile privilege-escalation
</div>
</p:milestone>
<p:milestone date="2009-05-11" milestone="0.2">
<div>0.2 release</div>
<div>
initial cachegrind support,
improved OProfile privilege-escalation,
pre- and post-build steps for autotool'd projects,
compare support for RPM .spec files,
mass BIRT chart interactivity,
greatly improved test coverage,
many bugfixes
</div>
</p:milestone>
<p:milestone date="2009-08-19" milestone="0.3">
<div>0.3 release</div>
<div>
wiki-based help documentation,
initial integration of SystemTapGUI contribution,
integration of SystemTap editor and SystemTapGUI,
more robust Valgrind interaction,
manual control of OProfile daemon,
3.5 SDK packaging tools (eclipse-build)
</div>
</p:milestone>
<p:milestone date="2009-11-23" milestone="0.4">
<div>0.4 release</div>
<div>
integration of GProf contribution,
3.5.1 SDK packaging tools (eclipse-build),
plugin building scripts (package-build),
SDK test running scripts,
Systemtap-backed call graph functionality,
</div>
</p:milestone>
<p:milestone date="2009-12-21" milestone="0.4.1">
<div>0.4.1 bug-fix release</div>
<div>
Bug fixes for 0.4.0: https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&amp;target_milestone=0.4.1&amp;product=Linux Tools&amp;classification=Technology
</div>
</p:milestone>
<p:milestone date="2010-03-18" milestone="0.5">
<div>0.5 release</div>
<div>
integration of LTTng contribution,
further improvements to ease distro consumption of eclipse-build,
integration of GCov contribution,
initial release of man page viewer,
initial release of SystemTap GUI dashboard
</div>
</p:milestone>
<p:milestone date="2010-05-12" milestone="0.5.1">
<div>0.5.1 release</div>
<div>
bug fixes for 0.5
</div>
</p:milestone>
<p:milestone date="2010-06-18" milestone="0.6">
<div>0.6 release</div>
<div>
SDK packaging tools: 3.5.x/3.6.x eclipse-build, SDK tests, plugin building scripts, testing scripts, scripts for running SDK tests against distro packages;
Native development tools: SystemTap integration, Autotools, libhover, ChangeLog, OProfile, Valgrind, GProf, LTTng
</div>
</p:milestone>
<p:milestone date="2010-08-27" milestone="0.6.1">
<div>0.6 release</div>
<div>
Bug-fix release for 0.6.1.
Updated eclipse-build for Eclipse 3.6.
</div>
</p:milestone>
<p:milestone date="2011-02-16" milestone="0.7">
<div>0.7 release</div>
<div>
Valgrind plugins available for Mac OS X.
Bug fixes and features in RPM .spec editor.
Many fixes and improvements in tracing framework and LTTng visualization.
Possibility to use OProfile plugin without native component.
Improvements to running of SDK tests.
Updated eclipse-build for Eclipse 3.6.1.
</div>
</p:milestone>
<p:milestone date="2011-06-22" milestone="0.8">
<div>0.8 release</div>
<div>
Enhanced tracing and monitoring framework.
Improved LTTng tooling.
Updated eclipse-build for Eclipse 3.7.
</div>
</p:milestone>
<p:milestone date="2011-09-23" milestone="0.8.1">
<div>Indigo SR1 release</div>
<div>
Bugfixes for the Indigo SR1 release.
</div>
</p:milestone>
<p:milestone date="2011-11-05" milestone="0.9.0">
<div>0.9 release</div>
<div>
RPM flat layout support.
LTTng Sequence Diagram Framework,
trace streaming support,
and CNF integration.
</div>
</p:milestone>
<p:milestone date="2012-01-20" milestone="0.9.1">
<div>Indigo SR2 release</div>
<div>
Bugfixes for the Indigo SR2 release.
</div>
</p:milestone>
<p:milestone date="2012-02-16" milestone="0.9.2">
<div>Indigo SR2 release</div>
<div>
Bugfixes for the Indigo SR2 release.
</div>
</p:milestone>
<p:milestone date="2012-03-23" milestone="0.10.0">
<div>0.10 release</div>
<div>
RDT Proxy plugin and
BIRT replaced by org.swtchart in valgrind plugins
</div>
</p:milestone>
<p:milestone date="2012-06-27" milestone="1.0">
<div>1.0 release</div>
<div>SDK packaging tools: 4.2 eclipse-build, plugin building scripts, testing scripts, scripts for running SDK tests against distro packages;
Native development tools: SystemTap integration, Autotools, libhover, ChangeLog, OProfile, Valgrind (memcheck, massif, cachegrind, and Helgrind), GProf, LTTng, GCov, perf</div>
</p:milestone>
<p:milestone date="2012-07-25" milestone="1.1">
<div>1.1 release</div>
<div>Remote execution implementation for Valgrind, Oprofile, Perf. Remote implementation improvement for SystemTap. Bug fixes for SystemTap.</div>
</p:milestone>
<p:milestone date="2012-09-28" milestone="1.1.1">
<div>Juno SR1 release</div>
<div>
Bugfixes for the Juno SR1 release.
</div>
</p:milestone>
<p:milestone date="2012-11-20" milestone="1.2">
<div>1.2 release</div>
<div>Unification of profiling framework tools</div>
</p:milestone>
<p:postamble />
</p:release_milestones>
<p:target_environments>
<div>
For release 1.0, the tools run with Eclipse 4.2 (Juno) and related dependencies (CDT, etc.).
Our plug-ins require Java &gt;= 6.0.
Some of our plug-ins interact with underlying profiling, etc. tools which means that
those underlying tools must be present for functionality. This sometimes makes them
only available on Linux. All plug-ins and features have proper operating system
restrictions so end-users should not notice issues here.
</div>
<div>
The packaging tools not delivered as Eclipse plugins have
varying requirements but generally require basic tools such
as ant, bash, sh, sed, awk, grep, etc.
</div>
<internationalization>
<div>
The tools aim to have all strings externalized so as to
facilitate internationalization. At present, no
translations are provided. See <a
href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=261255">bug #261255</a> and <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=261256">bug #261256</a>.
</div>
</internationalization>
</p:target_environments>
<p:compatibility_with_previous_releases>
<div>
<p><strong>API Compatibility:</strong>
For 1.0, we will attempt to maintain as much API compatibility with our 0.9.0 release from November 2011 as possible. We will likely be removing some API that should not have been public and cleaning up accidental exposure of non-API classes.
</p>
<p><strong>Binary (plug-in) Compatibility:</strong>
We have no binary compatibility issues to discuss for 1.0.
</p>
<p><strong>Source Compatibility:</strong>
We have no source compatibility issues to discuss for 1.0. C/C++ projects should consult with the CDT regarding its source project compatibility (believed to be quite strong).
</p>
</div>
</p:compatibility_with_previous_releases>
<p:themes_and_priorities>
<p:preamble>
<div>
The Linux Tools project differs in aims
from
many Eclipse projects. It enables adopters of
Eclipse technology but
often through help with
consumption and not always through APIs. It also
aims to be a
place for collaboration among Linux distributions.
The project also aims to bring Eclipse technology to
Linux
developers by providing tools targetted at Linux
developers --
specifically those programming in C and
C++.
</div>
</p:preamble>
<p:theme name="Getting the Eclipse SDK into Linux distributions">
<p:description>
<div>
Most Linux distributions require all packages
included
therein to be built directly from source
code. This p:theme
encompasses the project goal of
assisting distributions in their
building and
packaging of the Eclipse SDK as well as
standardizing
practices and any patches needed. It
also aims to encourage and aid
distributions in
their attempts to drive unit test results down to
zero.
</div>
</p:description>
<p:committed
bugzilla="https://bugs.eclipse.org/bugs/buglist.cgi?classification=Technology&amp;query_format=advanced&amp;bug_status=RESOLVED&amp;bug_status=VERIFIED&amp;bug_status=CLOSED&amp;component=eclipse-build&amp;product=Linux%20Tools&amp;target_milestone=1.0&amp;target_milestone=0.8.1&amp;target_milestone=0.8.2">
</p:committed>
<p:proposed
bugzilla="https://bugs.eclipse.org/bugs/buglist.cgi?classification=Technology&amp;query_format=advanced&amp;bug_status=UNCONFIRMED&amp;bug_status=NEW&amp;bug_status=ASSIGNED&amp;bug_status=REOPENED&amp;component=eclipse-build&amp;product=Linux%20Tools&amp;target_milestone=1.0&amp;target_milestone=0.8.1&amp;target_milestone=0.8.2">
</p:proposed>
</p:theme>
<p:theme name="Getting plugins into Linux distributions">
<p:description>
<div>Getting plugins into Linux distributions relates to the project's goal of making it easier to build and package Eclipse plugins for Linux distributions. At present it includes shell scripts and best practice documentation. In the future, we aim to provide Eclipse plugins to help packagers.</div>
</p:description>
<p:committed
bugzilla="https://bugs.eclipse.org/bugs/buglist.cgi?classification=Technology&amp;query_format=advanced&amp;bug_status=RESOLVED&amp;bug_status=VERIFIED&amp;bug_status=CLOSED&amp;component=PackagingTools&amp;product=Linux%20Tools&amp;target_milestone=1.0&amp;target_milestone=0.8.1&amp;target_milestone=0.8.2">
</p:committed>
<p:proposed
bugzilla="https://bugs.eclipse.org/bugs/buglist.cgi?classification=Technology&amp;query_format=advanced&amp;bug_status=UNCONFIRMED&amp;bug_status=NEW&amp;bug_status=ASSIGNED&amp;bug_status=REOPENED&amp;component=PackagingTools&amp;product=Linux%20Tools&amp;target_milestone=1.0&amp;target_milestone=0.8.1&amp;target_milestone=0.8.2">
</p:proposed>
</p:theme>
<p:theme name="Improve RPM specfile editor and related plugins">
<p:description>
<div>We should continue to add features to and improve the robustness of the RPM specfile editor and its related plugins.</div>
</p:description>
<p:committed
bugzilla="https://bugs.eclipse.org/bugs/buglist.cgi?classification=Technology&amp;query_format=advanced&amp;bug_status=RESOLVED&amp;bug_status=VERIFIED&amp;bug_status=CLOSED&amp;product=Linux%20Tools&amp;target_milestone=1.0&amp;target_milestone=0.8.1&amp;target_milestone=0.8.2&amp;component=RPM">
</p:committed>
<p:proposed
bugzilla="https://bugs.eclipse.org/bugs/buglist.cgi?classification=Technology&amp;query_format=advanced&amp;bug_status=UNCONFIRMED&amp;bug_status=NEW&amp;bug_status=ASSIGNED&amp;bug_status=REOPENED&amp;product=Linux%20Tools&amp;target_milestone=1.0&amp;target_milestone=0.8.1&amp;target_milestone=0.8.2&amp;component=RPM">
</p:proposed>
</p:theme>
<p:theme name="Integrate Linux tracing functionality within Eclipse">
<p:description>
<div>
Tracing frameworks such as SystemTap and LTTng enable
users to solve complex problems through data analysis.
We aim to provide a framework for working with tracing toolkits
and provide an exemplary implementation for LTTng.
</div>
</p:description>
<p:committed
bugzilla="https://bugs.eclipse.org/bugs/buglist.cgi?classification=Technology&amp;query_format=advanced&amp;bug_status=RESOLVED&amp;bug_status=VERIFIED&amp;bug_status=CLOSED&amp;product=Linux%20Tools&amp;target_milestone=1.0&amp;target_milestone=0.8.1&amp;target_milestone=0.8.2&amp;component=LTTng&amp;">
</p:committed>
<p:proposed
bugzilla="https://bugs.eclipse.org/bugs/buglist.cgi?classification=Technology&amp;query_format=advanced&amp;bug_status=UNCONFIRMED&amp;bug_status=NEW&amp;bug_status=ASSIGNED&amp;bug_status=REOPENED&amp;product=Linux%20Tools&amp;target_milestone=1.0&amp;component=LTTng">
</p:proposed>
</p:theme>
<p:theme name="Unify and expand upon existing profiling UIs">
<p:description>
<div>At present we have integration plugins for OProfile, GProf, and Valgrind. Our GCov plugin UI is quite similar to our GProf UI. We aim to unify the user interaction with these underlying profiling tools and provide a consistent way visualizing the data they provide and its integration views and source code editors in Eclipse.</div>
</p:description>
<p:committed
bugzilla="https://bugs.eclipse.org/bugs/buglist.cgi?classification=Technology&amp;query_format=advanced&amp;bug_status=RESOLVED&amp;bug_status=VERIFIED&amp;bug_status=CLOSED&amp;product=Linux%20Tools&amp;target_milestone=1.0&amp;target_milestone=0.8.1&amp;target_milestone=0.8.2&amp;short_desc=[unifyprofiling]&amp;short_desc_type=allwordssubstr">
</p:committed>
<p:proposed
bugzilla="https://bugs.eclipse.org/bugs/buglist.cgi?classification=Technology&amp;query_format=advanced&amp;bug_status=UNCONFIRMED&amp;bug_status=NEW&amp;bug_status=ASSIGNED&amp;bug_status=REOPENED&amp;product=Linux%20Tools&amp;target_milestone=1.0&amp;target_milestone=0.8.1&amp;target_milestone=0.8.2&amp;short_desc=[unifyprofiling]&amp;short_desc_type=allwordssubstr">
</p:proposed>
</p:theme>
<p:theme name="Integrate with PackageKit">
<p:description>
<div>The PackageKit project provides a method for interacting the various Linux package managers. By providing plugins that with PackageKit, we can do interesting things prompting for missing build requirements in a C/C++ extend p2 metadata to prompt for installing non-OSGi bundles, and more.</div>
</p:description>
<p:committed
bugzilla="https://bugs.eclipse.org/bugs/buglist.cgi?classification=Technology&amp;query_format=advanced&amp;bug_status=RESOLVED&amp;bug_status=VERIFIED&amp;bug_status=CLOSED&amp;product=Linux%20Tools&amp;target_milestone=1.0&amp;target_milestone=0.8.1&amp;target_milestone=0.8.2&amp;short_desc=[PackageKit]&amp;short_desc_type=allwordssubstr">
</p:committed>
<p:proposed
bugzilla="https://bugs.eclipse.org/bugs/buglist.cgi?classification=Technology&amp;query_format=advanced&amp;bug_status=UNCONFIRMED&amp;bug_status=NEW&amp;bug_status=ASSIGNED&amp;bug_status=REOPENED&amp;product=Linux%20Tools&amp;target_milestone=1.0&amp;target_milestone=0.8.1&amp;target_milestone=0.8.2&amp;short_desc=[PackageKit]&amp;short_desc_type=allwordssubstr">
</p:proposed>
</p:theme>
<p:theme name="Interact with remote systems">
<p:description>
<div>The present state of our profiling tools integration C/C++ Eclipse users to easily profile their code. The output of the underlying tools are integrated into the workbench through views and editors that users would expect to see. One feature we hope to offer is to be able profile projects in your local workspace on remote machines.</div>
</p:description>
<p:committed
bugzilla="https://bugs.eclipse.org/bugs/buglist.cgi?classification=Technology&amp;query_format=advanced&amp;bug_status=RESOLVED&amp;bug_status=VERIFIED&amp;bug_status=CLOSED&amp;product=Linux%20Tools&amp;target_milestone=1.0&amp;target_milestone=0.8.1&amp;target_milestone=0.8.2&amp;short_desc=[remote]&amp;short_desc_type=allwordssubstr">
</p:committed>
<p:proposed
bugzilla="https://bugs.eclipse.org/bugs/buglist.cgi?classification=Technology&amp;query_format=advanced&amp;bug_status=UNCONFIRMED&amp;bug_status=NEW&amp;bug_status=ASSIGNED&amp;bug_status=REOPENED&amp;product=Linux%20Tools&amp;target_milestone=1.0&amp;target_milestone=0.8.1&amp;target_milestone=0.8.2&amp;short_desc=[remote]&amp;short_desc_type=allwordssubstr">
</p:proposed>
</p:theme>
<p:theme name="Improve consumability">
<p:description>
<div>
In order to ease the lives of our consumer community, we will work towards a more stable API. As part of this effort, we will track our usage of the internal APIs of our dependencies. We will also attempt to regularly run the PDE API Tools on our code base to ensure we don't break our own API.
</div>
</p:description>
<p:committed
bugzilla="https://bugs.eclipse.org/bugs/buglist.cgi?classification=Technology&amp;query_format=advanced&amp;bug_status=RESOLVED&amp;bug_status=VERIFIED&amp;bug_status=CLOSED&amp;product=Linux%20Tools&amp;target_milestone=1.0&amp;target_milestone=0.8.1&amp;target_milestone=0.8.2&amp;short_desc=[consumability]&amp;short_desc_type=allwordssubstr">
</p:committed>
<p:proposed
bugzilla="https://bugs.eclipse.org/bugs/buglist.cgi?classification=Technology&amp;query_format=advanced&amp;bug_status=UNCONFIRMED&amp;bug_status=NEW&amp;bug_status=ASSIGNED&amp;bug_status=REOPENED&amp;product=Linux%20Tools&amp;target_milestone=1.0&amp;target_milestone=0.8.1&amp;target_milestone=0.8.2&amp;short_desc=[consumability]&amp;short_desc_type=allwordssubstr">
</p:proposed>
</p:theme>
<p:theme name="Support for Eclipse 3.8 workbench">
<p:description>
<div>
Our primary platform for the Juno release will be the same as the rest of the simultaneous release: Eclipse 4.2. We do not anticipate having any 4.2-specific features and will thus likely "Just Work" on a 3.8 base, assuming our dependencies (CDT, BIRT, GEF) function on a 3.8 base. We encourage users and adopters to move to 4.2 but will strive to fix 3.8-specific bugs within reason and with the caveat that we are a small project and our focus is 4.2.
</div>
</p:description>
</p:theme>
<p:theme name="Eclipse 4.2">
<p:description>
<div>
Our 1.0 release as a part of Juno will work on top of Eclipse 4.2. We expect to be using the compatibility layer almost exclusively and have no 4.2-specific API calls or functionality.
</div>
</p:description>
</p:theme>
</p:themes_and_priorities>
<p:appendix />
</p:plan>