<?xml version='1.0' encoding='utf-8' ?><!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><meta http-equiv="Content-Type" content="text/html; charset=utf-8"/></head><body><h1 id="Linux_Tools_0.10_Release_Review">Linux Tools 0.10 Release Review</h1><p>Planned Review Date: 2012-03-23</p><p>Communication Channel:  linuxtools-dev@eclipse.org (<a href="https://dev.eclipse.org/mailman/listinfo/linuxtools-dev">https://dev.eclipse.org/mailman/listinfo/linuxtools-dev</a>)</p><p>Authors: Andrew Overholt &lt;overholt redhat com&gt;, Francois Chouinard &lt;fchouinard at gmail.com&gt;, Otavio Pontes &lt;obusatto@linux.vnet.ibm.com&gt;</p><h2 id="Introduction">Introduction</h2><ul><li>The Linux Tools project is a two-faceted project</li></ul><ol><li>Firstly, it provides tools and frameworks for writing tools relevant to Linux developers.</li><li>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.</li></ol><ul><li>Project plan:  <a href="http://www.eclipse.org/projects/project-plan.php?projectid=technology.linux-distros">http://www.eclipse.org/projects/project-plan.php?projectid=technology.linux-distros</a></li></ul><h2 id="Features">Features</h2><ul><li>a framework for integrating native profiling tools with the CDT</li><li>visualization, fetching, and control of LTTng traces</li><li>GCov code coverage tool integration</li><li>GProf integration including function-based profiling and integration with the CDT</li><li>an RPM .spec editor with rpmlint integration</li><li>plugins integrating the OProfile profiler with the CDT</li><li>a Zest (GEF)-powered C/C++ call graph integrated with the CDT, powered by SystemTap</li><li>GNU Autotools CDT additions</li><li>plugins bridging the CDT's hover help functionality with the various open source API documentation formats and tools; called libhover</li><li>Valgrind integration for memcheck, massif, cachegrind and helgrind</li><li>a tool to help building and packaging Eclipse plugins as RPMs named RPM Stubby</li><li>change log management tools</li><li>an editor, launcher, and data visualizer for SystemTap scripts</li></ul><h2 id="New_in_0.10">New in 0.10</h2><ul><li>RTD Proxy plugin used to implement a remove version of the local plugins</li><li>BIRT chart api replaced by SWTChart in BIRT plugin</li><li>More New and Noteworthy for 0.10<ul><li><a href="http://www.eclipse.org/linuxtools/new-0.10/">http://www.eclipse.org/linuxtools/new-0.10/</a></li><li>(will be moved to <a href="http://www.eclipse.org/linuxtools/new">http://www.eclipse.org/linuxtools/new</a> after 0.10 is released)</li></ul></li></ul><h2 id="Non-Code_Aspects">Non-Code Aspects</h2><ul><li>Linux Tools has moved to Git:  <a href="http://git.eclipse.org/c/linuxtools/org.eclipse.linuxtools.git/">http://git.eclipse.org/c/linuxtools/org.eclipse.linuxtools.git/</a></li><li>Linux Tools now uses Tycho for builds:  <a href="http://git.eclipse.org/c/linuxtools/org.eclipse.linuxtools.git/tree/pom.xml">http://git.eclipse.org/c/linuxtools/org.eclipse.linuxtools.git/tree/pom.xml</a></li><li>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:  <a href="http://www.eclipse.org/linuxtools/downloads.php">http://www.eclipse.org/linuxtools/downloads.php</a></li></ul><h2 id="APIs">APIs</h2><ul><li>Being a pre-1.0 release, our APIs are subject to change.</li><li>We continue to internalize unnecessarily public APIs and have done much work in this area for 0.8 and 0.9.  We have also worked to further reduce usage of internal APIs from underlying projects.</li><li>We will converge on stability – and document such stability – in our APIs well before our 1.0 release.</li><li>Post-0.10, we will be tightening our APIs to aid our growing community of adopters.</li></ul><h2 id="Architectural_Issues">Architectural Issues</h2><ul><li>Ongoing work to integrate with tracing and profiling toolkits will enable us to have more extensible frameworks with exemplary implementations.  Integration for the profiling tool 'perf' has recently been done by a community member using our profiling framework.</li><li>Despite being user-focused, we have a few components which provide extension points:<ul><li>our profiling tool framework whose use is demonstrated by our OProfile and Valgrind integration plugins</li><li>our ChangeLog plugin which allows for extensible parsers, formatters, and editors. The extensibility of formatters is demonstrated by our RPM .spec editor</li><li>our libhover component. This plugin provides an extension point that defines a common documentation format for C library hover help</li><li>our LTTng component. This plugin provides an extension point to integrate any type of trace and an extension point for producing UML2 sequence diagrams from traces</li></ul></li></ul><h2 id="Tool_Usability">Tool Usability</h2><ul><li>Our releases thus far have been well-received and at present have satisfied users.  This 0.10 release will hopefully grow our base of satisfied users.  In addition to improved quality through bug fixes, we hope that the increased exposure of being a part of Indigo will garner more happy users. </li><li>Due to the large number of people packaging software for RPM-based distributions, our .spec editor has become one of our more popular features.<ul><li>The in-line warnings and error checking as well as templates and completion are incredibly useful features.</li></ul></li><li>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.</li></ul><h2 id="End-of-Life">End-of-Life</h2><ul><li>We have no end-of-life issues to discuss at this time.</li></ul><h2 id="Bugzilla">Bugzilla</h2><ul><li>For our 0.10 release we will have 0 outstanding release-blocker bugs.</li><li>We closed or resolved over 38 bugs during our 0.10 release cycle:</li></ul><p><a href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&amp;short_desc_type=allwordssubstr&amp;short_desc=&amp;classification=Technology&amp;product=Linux+Tools&amp;target_milestone=0.10.0&amp;long_desc_type=allwordssubstr&amp;long_desc=&amp;bug_file_loc_type=allwordssubstr&amp;bug_file_loc=&amp;status_whiteboard_type=allwordssubstr&amp;status_whiteboard=&amp;keywords_type=allwords&amp;keywords=&amp;bug_status=RESOLVED&amp;bug_status=VERIFIED&amp;bug_status=CLOSED&amp;emailtype1=substring&amp;email1=&amp;emailtype2=substring&amp;email2=&amp;bugidtype=include&amp;bug_id=&amp;votes=&amp;chfieldfrom=&amp;chfieldto=Now&amp;chfieldvalue=&amp;cmdtype=doit&amp;order=Reuse+same+sort+as+last+time&amp;field0-0-0=noop&amp;type0-0-0=noop&amp;value0-0-0">https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced&amp;short_desc_type=allwordssubstr&amp;short_desc=&amp;classification=Technology&amp;product=Linux+Tools&amp;target_milestone=0.10.0&amp;long_desc_type=allwordssubstr&amp;long_desc=&amp;bug_file_loc_type=allwordssubstr&amp;bug_file_loc=&amp;status_whiteboard_type=allwordssubstr&amp;status_whiteboard=&amp;keywords_type=allwords&amp;keywords=&amp;bug_status=RESOLVED&amp;bug_status=VERIFIED&amp;bug_status=CLOSED&amp;emailtype1=substring&amp;email1=&amp;emailtype2=substring&amp;email2=&amp;bugidtype=include&amp;bug_id=&amp;votes=&amp;chfieldfrom=&amp;chfieldto=Now&amp;chfieldvalue=&amp;cmdtype=doit&amp;order=Reuse+same+sort+as+last+time&amp;field0-0-0=noop&amp;type0-0-0=noop&amp;value0-0-0</a></p><h2 id="Standards">Standards</h2><ul><li>Our project conforms to the following standards, some of which are ad-hoc and some which are more well-defined:<ul><li>Fedora RPM packaging guidelines<ul><li><a href="http://fedoraproject.org/wiki/Packaging/Guidelines">http://fedoraproject.org/wiki/Packaging/Guidelines</a></li></ul></li><li>Informal conventions around use of the GNU Autotools</li><li>GNU ChangeLog formatting<ul><li><a href="http://www.gnu.org/prep/standards/html_node/Style-of-Change-Logs.html#Style-of-Change-Logs">http://www.gnu.org/prep/standards/html_node/Style-of-Change-Logs.html#Style-of-Change-Logs</a></li></ul></li></ul></li><li>LTTng trace format<ul><li><a href="http://lttng.org">http://lttng.org</a></li></ul></li></ul><h2 id="UI_Usability">UI Usability</h2><ul><li>Our project aims to conform to the Eclipse user interface guidelines.</li><li>All of our user interface components support keyboard navigation.</li><li>We now support interactivity of our Valgrind BIRT-generated charts and intend on further increasing our accessibility.</li><li>All of our strings are externalized but we currently have no language packs</li><li>Our strings are registered in Babel for use by translators</li></ul><h2 id="Schedule">Schedule</h2><ul><li>We plan on having our 0.10 release as an intermediate step before Juno</li><li>Our project aims to release minor releases (0.6, 0.6.1, 0.7, 0.8, etc.) every two to three months</li><li>We plan to spend a lot of time over the next year standardizing our APIs and getting ready for a 1.0 as part of Juno</li></ul><h2 id="Communities">Communities</h2><ul><li>Our project has a strong relationship with the various Linux distributions (Fedora, Mandriva, Debian, Ubuntu, etc.) with many using our eclipse-build project's output for their Eclipse SDK packages</li><li>The majority of our project's interactions occur on IRC (#eclipse-linux) and our mailing list (linuxtools-dev@eclipse.org)</li><li>We have a centralized update site and use eclipse.org bugzilla for all of our planning and bug tracking</li><li>We make use of our newsgroup for user feedback</li><li>Our project members often speak at conferences such as EclipseCon, the Red Hat Summit, etc.</li><li>Our team members maintain the following blogs:<ul><li><a href="http://overholt.ca/wp/">http://overholt.ca/wp/</a> (part of Planet Eclipse)</li><li><a href="http://akurtakov.blogspot.com/">http://akurtakov.blogspot.com/</a> (part of Planet Eclipse)</li></ul></li><li>We interact often with the CDT project and make use of the BIRT, GEF, and CDT projects</li><li>We are growing our community of adopters</li></ul><h2 id="IP_Log">IP Log</h2><ul><li>Our IP log including information about all CQs, external contributions, and committers can be found here<ul><li><a href="http://www.eclipse.org/projects/ip_log.php?projectid=technology.linux-distros">http://www.eclipse.org/projects/ip_log.php?projectid=technology.linux-distros</a></li></ul></li><li>A copy of our 0.10 IP log, once approved by the Eclipse Legal team, will be archived here:<ul><li><a href="http://www.eclipse.org/linuxtools/doc/0.10.0-approvedIPLog.html">http://www.eclipse.org/linuxtools/doc/0.10.0-approvedIPLog.html</a></li></ul></li></ul></body></html>