| = 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 |