= Linux Tools 0.5 Release Review =
Planned Review Date: 2010-03-17

Communication Channel:  linuxtools-dev@eclipse.org (https://dev.eclipse.org/mailman/listinfo/linuxtools-dev)

Author:  Andrew Overholt <overholt redhat com>

== Introduction ==
* The Linux Tools project is a two-faceted project
# Firstly, it provides tools and frameworks for writing tools relevant to Linux developers.
# Secondly, it provides a place for Linux distributions to collaboratively overcome issues surrounding distribution packaging of Eclipse technology. The project produces both best practices and tools related to packaging.
* Project plan:  http://www.eclipse.org/projects/project-plan.php?projectid=technology.linux-distros

== Features ==
* visualization, fetching, and control of LTTng traces
* GCov code coverage tool integration
* GProf integration including function-based profiling and integration with the CDT
* an RPM .spec editor with rpmlint integration
* plugins integrating the OProfile profiler with the CDT
* a Zest (GEF)-powered C/C++ call graph integrated with the CDT, powered by SystemTap
* GNU Autotools CDT additions
* plugins bridging the CDT's hover help functionality with the
* various open source API documentation formats; called libhover
* Valgrind integration for memcheck, massif, and cachegrind
* a tool to help building and packaging Eclipse plugins as RPMs named RPM Stubby
* ChangeLog management tools
* an editor, launcher, and data visualizer for Systemtap scripts

== New in 0.5 ==
* visualization, fetching, and control of LTTng traces
* GCov code coverage integration
* "eclipse-build" build harness for Eclipse SDK 3.5.2
* More New and Noteworthy for 0.5:
** http://www.eclipse.org/linuxtools/new-0.5/
** (will be moved to http://www.eclipse.org/linuxtools/new after 0.5 is released)

== Non-Code Aspects ==
* 0.5 contains the continued improvements in our "eclipse-build" work which aims to ease the building and packaging of the Eclipse SDK for Linux distributions.  This work is now being consumed by Fedora, Debian, and Ubuntu with other distributions hopefully joining that list in the future.  We now provide a build harness for Eclipse SDK version 3.5.2.
* After our 0.1 release we did a series of screencasts with audio. They are still relevant and are all available via our downloads page:  http://www.eclipse.org/linuxtools/downloads.php

== APIs ==
* Being a pre-1.0 release, our APIs are subject to change.
* We continue to internalize unnecessarily public APIs and have done much work in this area for 0.5.
* We will converge on stability – and document such stability – in our APIs well before our 1.0 release.

== Architectural Issues ==
* As our focus has been to bring Eclipse technology to Linux users who would otherwise be unaware of its power, we have continued to spend less time on extensibility than on user-visible features in our 0.5 release.
* As we work towards our 1.0 release, we will continue to better define our APIs while stabilizing them and documenting them.
* On-going work to integrate with tracing toolkits will enable us to have more extensible frameworks with exemplary implementations.
* Despite being user-focused, we have a few components which provide extension points:
** our profiling tool framework whose use is demonstrated by our OProfile and Valgrind integration plugins
** our ChangeLog plugin which allows for extensible parsers, formatters, and editors. The extensibility of formatters is demonstrated by our RPM .spec editor
** our libhover component. This plugin provides an extension point that defines a common documentation format for C library hover help

== Tool Usability ==
* Our releases thus far have been well-received and at present have satisfied users. This 0.5 release will hopefully grow this base of satisfied users.
* Due to the large number of people packaging software for RPM-based distributions, our .spec editor has become one of our more popular features.
** The in-line warnings and error checking as well as templates and completion are incredibly useful features.
* Our work integrating native profiling tools like LTTng, OProfile, and Valgrind has been introduced to excited audiences. We aim to bring the power of these tools into the IDE while making them trivial to use.  Developers making use of our tools will be able to focus on their own projects and not on setting up the underlying tools.

== End-of-Life ==
* We have no end-of-life issues to discuss at this time.

== Bugzilla ==
* For our 0.5 release we have 0 outstanding release-blocker bugs.
* We have postponed a few enhancement requests until our 0.6 release.
* We closed over 59 bugs during our 0.5 release cycle:
https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&short_desc_type=allwordssubstr&short_desc=&classification=Technology&product=Linux+Tools&target_milestone=0.5&long_desc_type=allwordssubstr&long_desc=&bug_file_loc_type=allwordssubstr&bug_file_loc=&status_whiteboard_type=allwordssubstr&status_whiteboard=&keywords_type=allwords&keywords=&bug_status=RESOLVED&bug_status=VERIFIED&bug_status=CLOSED&emailtype1=substring&email1=&emailtype2=substring&email2=&bugidtype=include&bug_id=&votes=&chfieldfrom=&chfieldto=Now&chfieldvalue=&cmdtype=doit&order=Reuse+same+sort+as+last+time&field0-0-0=noop&type0-0-0=noop&value0-0-0

== Standards ==
* Our project conforms to the following ad-hoc standards:
** Fedora RPM packaging guidelines
*** http://fedoraproject.org/wiki/Packaging/Guidelines
** Informal conventions around use of the GNU Autotools
** GNU ChangeLog formatting
*** http://www.gnu.org/prep/standards/html_node/Style-of-Change-Logs.html#Style-of-Change-Logs
* LTTng trace format
** http://lttng.org

== UI Usability ==
* Our project aims to conform to the Eclipse user interface guidelines.
* All of our user interface components support keyboard navigation.
* We now support interactivity of our Valgrind BIRT-generated charts and intend on further increasing our accessibility.
* All of our strings are externalized but we currently have no language packs
* Our strings are registered in Babel for use by translators

== Schedule ==
* We plan on having our 0.6 release as part of the Helios release train in June 2010
* Our project aims to release minor releases (0.5, 0.6,  etc.) every two to three months
* We are still playing it by ear to decide when our 1.0 release will be but are planning on late 2010 or early 2011

== Communities ==
* Our project has a strong relationship with the various Linux distributions (Fedora, Mandriva, Debian, Ubuntu, etc.)
* The majority of our project's interactions occur on IRC (#eclipse-linux) and our mailing list (linuxtools-dev@eclipse.org)
* We have a centralized update site and use eclipse.org bugzilla for all of our planning and bug tracking
* We make use of our newsgroup for user feedback
* Our project members often speak at conferences
* Our team members maintain the following blogs:
** http://overholt.ca/wp/ (part of Planet Eclipse)
** http://akurtakov.blogspot.com/ (part of Planet Fedora)
** http://picobot.org/wordpress (part of Planet Fedora)
* We interact often with the CDT project and make use of the BIRT, GEF, and CDT projects
* We are growing our community of adopters
* An update on our project's progress was given at EclipseCon 2009:
** http://www.eclipsecon.org/2009/sessions?id=466
* An update on our project's progress was given at the [http://www.grancanariadesktopsummit.org Gran Canaria Desktop Summit] in July 2009:
** http://www.grancanariadesktopsummit.org/node/194
* An update on our project's progress with respect to tracing tools was given at the [http://ltt.polymtl.ca/tracingwiki/index.php/TracingMiniSummit2009 Tracing Mini-Summit] in July 2009.
* Now that we have a standardized release process and plan, we are working to ensure that our three communities are properly nurtured at all times.
* Following our recent releases we have had a number of parties come forward to express interest in using, distributing, helping, and contributing.
* EclipseCon 2010 will feature a number of talks regarding "the Linux IDE" and what our future holds
** [https://www.eclipsecon.org/submissions/2010/view_talk.php?id=1203 "A world-class Linux IDE: how do we get there from here?"]
** [https://www.eclipsecon.org/submissions/2010/view_talk.php?id=1298 "Troubleshooting Linux Systems? Come and learn what the new LTTng Eclipse plug-in can do for you!"]
** [https://www.eclipsecon.org/submissions/2010/view_talk.php?id=1595 a birds-of-a-feather session for those interested in helping shape the future of "the Linux IDE"]

== IP Log ==
* Our IP log including information about all CQs, external contributions, and committers can be found here
** http://www.eclipse.org/projects/ip_log.php?projectid=technology.linux-distros
* A copy of our 0.5 IP log as approved by the Eclipse Legal team is archived here:
** http://www.eclipse.org/linuxtools/doc/0.5-approvedIPLog.pdf