Helios/Summary of Helios Projects
We asked each of the projects participating in Helios to provide us with a short description of their contribution to the simultaneous release.
- 1 Accessibility Tools Framework (ACTF)
- 2 Amalgamation
- 3 BIRT
- 4 BPMN Modeler
- 5 Buckminster
- 6 CDT
- 7 The Data Tools Platform (DTP)
- 8 DLTK
- 9 ECF
- 10 EclipseLink
- 11 EGit/JGit
- 12 EMF CDO
- 13 EMF Compare
- 14 EMF EMF
- 15 EMF Net4j
- 16 EMF Query
- 17 EMF Teneo
- 18 EMF Transaction
- 19 EMF Validation
- 20 EMFT Ecore Tools
- 21 EMFT EEF
- 22 EMFT Mint
- 23 EMFT MWE
- 24 EPP (Packaging)
- 25 Equinox / p2
- 26 GEF
- 27 GMP GMF Notation
- 28 GMP GMF Runtime
- 29 GMP GMF Tooling
- 30 GMT MoDisco
- 31 Java Workflow Tooling
- 32 Jetty
- 33 Linux Tools
- 34 M2M ATL
- 35 M2M QVT OML
- 36 M2T Acceleo
- 37 M2T Jet
- 38 M2T Xpand
- 39 MDT OCL
- 40 MDT UML2
- 41 MDT XSD
- 42 Memory Analyzer
- 43 Marketplace Client
- 44 Mobile Tools for Java
- 45 Mylyn
- 46 Parallel Tools Platform / Photran
- 47 PHP Development Tools (PDT)
- 48 Platform / JDT / PDE
- 49 RAP
- 50 Riena
- 51 SCA Tools
- 52 Sequoyah
- 53 Subversive
- 54 Swordfish
- 55 Target Management 3.2
- 56 Xtext
- 57 Test and Performance Tools Platform
- 58 Web Tools Platform (WTP) 3.2
ACTF aims at providing an extensible and comprehensive framework for accessibility tools. This release includes
- Visualization SDK
- Visualization Extension for WST
- Visualization Extension for PDT
- WCAG 2.0 support (experimental)
- Performance improvement
- Provide comprehensive and unified access mechanisms for the user interfaces of applications and for the object models of various kinds of content.
- Provide middleware to manage components and dataflow in the framework on top of the Eclipse platform.
- Provide reusable view components for creating accessibility evaluation tools.
- Provide visual representations of the content and applications as perceived by People with Disabilities (PwD).
- Provide extension features for WST/PDT.
- Enable use of the accessibility visualization functions of ACTF from the perspectives of the Web, J2EE, and PHP.
The amalgamation project is focused on providing a consumable and integrated modeling platform through an Eclipse Package (hosted in the EPP project) and complementary integration code.
With the Helios release a new team has gathered around these goals, the modeling package has been slimmed down to a reasonable size while providing a new user interface to discover and install complementary modeling projects;
The BIRT project provides business intelligence, charting, reporting and data visualization capabilities for web applications, especially those based on Java.
The BIRT 2.6 release is an integrated component of the Helios release and adds new capabilities in response to community feedback. Specific additional features can be grouped into broad categories:
- Charts (e.g. new Polar/Radar chart, pie chart rotation, palette hashing, sort locale and strength, more flexibility in using chart background images)
- Libraries (e.g. notification when library properties are changed within a BIRT design)
- Data Access (e.g. ODA context sensitive help)
- Bidirectional enhancements (e.g. enhanced BIDI support in BIRT emitters)
- Performance improvements (e.g. improved PDF image inclusion performance, improved performance of large datasets)
- Usability improvements (e.g. support multiple resource files, accessibility improvements to the Dataset editor)
The BPMN modeler is a graphical editor to model processes using the Business Progress Modeling Notation (BPMN). This release brings compatibility with the latest of EMF and GMF frameworks.
The Helios release of Buckminster has the following new and noteworthy features available in 3.6M7:
- Support for Git - uses, updates, or clones git repository as needed
- Headless JUnit and EclEmma (code coverage) support
- Comprehensive documentation available - introduction, examples, and reference. Download PDF, 250 pages, includes descriptions of the new features described here.
- Graphical dependency visualizer - resolutions can be viewed and navigated/filtered with a Zest based viewer
- Much improved target platform support - using new features in PDE to automatically manage/materialize target platform config
- Provisioning and management of API baseline
- New EMF based editors for MSPEC and RMAP - much easier to use than editing XML
- Reader type for Project Set (.psf) files - makes it easy to integrate or migrate projects that are using .psf files to describe where the source is
- p2 repository size reduction to 1/3 using improved pack200 support
- OmniVersion support - the support for non OSGi version has been changed to use the p2 OmniVersion implementation for increased flexibility - backwards compatible with *Buckminster version-type, version scheme used in earlier versions.
- Qualifier generator using Build Identifier - use a property to control the content of a version qualifier
- LDAP style filters on RMAP providers, CQUERY advisors, and MSPEC nodes - makes it possible to parameterize more things, reduces the need for multiple slightly different copies of these files.
- Smart version range generation for feature 'includes' - heuristics result in natural choices
- Support for category.xml files - the new PDE mechanism for categorizing result in p2 repository is supported
- Headless 'install JRE' support
- Better defaults often renders the MSEPC unnecessary - automatic materialization to Target Platform for binaries often removes the need to use a MSPEC.
- Using new p2 API, p2 'pure' reader, and using separate p2 agent - reduces risk of contamination of the running instance's p2 data.
CDT 7.0 Highlights:
- DSF/GDB debug interface reached sufficient parity with existing CDI/GDB interface to warrant switch in default launch configuration type.
- New Eclipse C/C++ Debugger (EDC) introduced as optional component provides direct debugger interface to OS APIs for Windows and Linux and communication back to CDT using the Target Communication Framework (TCF).
- New Codan static analysis framework as optional component to provide semantic error reports ahead of compile time.
The Data Tools Platform (DTP) project provides a framework and exemplary tooling for accessing database data in Eclipse. The DTP 1.8 release, which is part of the "Helios" (Eclipse 3.6) release train, focused on quality improvements and small enhancements to ensure stability for our adopters in the community. See DTP 1.8 project page for more information: http://www.eclipse.org/projects/project-plan.php?projectid=datatools.
As for performance improvements, new indexing and search framework was introduced, which resulted in some operations to be performed 10x times faster comparing to previous DLTK 1.0 release.
Development of full-featured refactoring framework also started in 2.0, and planned to be available in the next major DLTK release.
ECF 3.3 Highlights
- OSGi 4.2 Remote Services Standard Implementation
- Asynchronous Remote Services
- Apache Zookeeper Discovery Provider
- Distributed EventAdmin Message Bus
- REST/SOAP Remote Services
- Remote Services Examples and Documentation
What's new in EclipseLink Helios since EclipseLink Galileo:
- JPA 2.0 and extensions to JPA Functionality, including JPQL extensions
- SDO 2.1.1 Compliance, JAXB 2.1 and 2.2 Compliance
- Dynamic Persistence (mapping without static classes)
- Maintain Backward compatible compliance to previous versions of the specifications.
JGit is an EDL (BSD) licensed, lightweight, pure Java library implementing Git.
EGit is an Eclipse Team provider for Git. Git is a distributed SCM, which means every developer has a full copy of all history of every revision of the code, making queries against the history very fast and versatile. The EGit project is implementing Eclipse tooling for the JGit Java implementation of Git.
The CDO (Connected Data Objects) Model Repository is a distributed shared model framework for EMF models and meta models. CDO is also a model runtime environment with a focus on orthogonal aspects like model scalability, transactionality, persistence, distribution, queries and more.
CDO has a 3-tier architecture supporting EMF-based client applications, featuring a central model repository server and leveraging different types of pluggable data storage back-ends like relational databases, object databases and file systems. The default client/server communication protocol is implemented with the Net4j Signalling Platform.
EMF Compare provides a generic framework to compare, merge any model with any source control management system supported by Eclipse. The 1.1.0 (Helios) release is focused on stability both from an implementation and an API perspective and on efficiency. More complex use cases with fragmented or external referenced models are now supported.
The EMF project is a modeling framework and code generation facility for building tools and other applications based on a structured data model. From a model specification described in XMI, EMF provides tools and runtime support to produce a set of Java classes for the model, along with a set of adapter classes that enable viewing and command-based editing of the model, and a basic editor.
The Helios release was primarily maintenance but a significant number of interesting aspects were added, including support reflective operation invocation, extensible operation, feature and constraint behavior, runtime and generator support for Google Widget Toolkit, improved RAP integration, and property-based data binding.
The Net4j Signalling platform is an extensible client/server communications framework. Net4j eases the development of fast and maintainable application protocols that are independent of the physical transport medium. Transport protocols are pluggable and Net4j ships with support for TCP, HTTP and in-memory transport. The core of Net4j is a fast, asynchronous and non-blocking buffer multiplexing kernel, based on OSGi but also executable stand-alone.
The query component facilitates the process of search and retrieval of model elements of interest in a flexible yet controlled and structured manner. Provides API support for the basic EObject based Condition objects that are used to formulate queries for EMF models.
The query component provides the following classes/interfaces to support queries.
- The IEObjectSource interface provides the search scope elements to be used in a query.
- The SELECT class implements a template-function that does the iteration over model elements and applies the search condition on each; it collects the resulting elements into a QueryResultSet object and returns it to the caller.
- The FROM class represents the elements to search. It is responsible of providing an appropriate iterator for the elements in the search space.
- The WHERE class applies the search conditions over the elements in the search set.
- The UPDATE class passes the elements who satisfy the search condition to a caller-supplied modification function. It collects the modified elements into a QueryResultSet object and returns it to the caller.
- The QueryResultSet class represents the set of elements returned by a given query.
- The EObjectCondition class is the abstract parent of all conditions that deal with model-elements (i.e., EObjects). It incorporates the services of a PruneHandler in order to answers whether or not to prune the element tree at a specific element and thus ignore its children.
- The ConditionPolicy class is used to allow the user to decide how to apply a given condition on a collection of a model-element EAttributes or EReferences values. Supports both the: exists (ANY) and for-all (ALL) semantics.
- The EObjectStructuralFeatureValueCondition class is the parent class for conditions that are responsible for checking the values held in model-elements attributes or references.
Teneo is a database persistency solution for EMF using Eclipselink or Hibernate. It supports automatic creation of EMF to Relational Mappings and the related database schemas. The solution contains a runtime layer to support specific EMF features. EMF Objects can be stored and retrieved using advanced queries (HQL or EJB-QL). The persistence logic and mapping can be controlled using EJB3/JPA-like annotations. Most of the EJB3/JPA mapping standard is supported. In the 1.2.0 release Teneo adds support for EAV mapping, several new annotations and almost 70 bugfixes.
The transaction component provides the following capabilities.
- Multi-threading - Supports a protocol for clients to read and write EMF models on multiple threads.
- Model Integrity - Semantic integrity is ensured by automatic validation to detect invalid changes and semantic procedures to proactively maintain correctness of semantic dependencies.
- Batched Events - Clients are notified of groups of related changes in batches, rather than as a stream of EMF notifications. In particular, this allows applications to analyze change sets in their entirety.
- Undo/Redo - For a simplified programming model, the API automatically tracks changes applied to models without the need for client code to use EMF edit Commands. These changes are encapsulated in transactions/operations that can undo and redo themselves.
- Editing Domain - Support cooperative editing of models by multiple editors/applications. EMF resources can be shared amongst different editing domains.
- Eclipse Workspace - The API provides traceability between EMF resources and workspace resources. Multi-threaded access is coordinated via the Eclipse jobs API and its integration with the workspace.
- Eclipse Operations - The API supports the Eclipse operation history as an undo stack for undo/redo of resource changes. The API provides a framework for undoable operations that automatically capture undo/redo information, which can be interleaved on the same history with dependent operations that do not modify the EMF model.
The validation component provides the following capabilities.
- Constraint Definition - Provides API for defining constraints for any EMF meta-model (batch and live constraints).
- Customizable model traversal algorithms - Extensibility API to support meta-models that require custom strategies for model traversal.
- Constraint parsing for languages - Provides support for parsing the content of constraint elements defined in specific languages. The validation framework provides support for two languages: Java and OCL.
- Configurable constraint bindings to application contexts - API support to define "client contexts" that describe the objects that need to be validated and to bind them to constraints that need to be enforced on these objects.
- Validation listeners - Support for listening to validation events.
EMFT Ecore Tools
Ecore Tools provides a complete environment to create, edit and maintain Ecore models. This component eases handling of Ecore models with a Graphical Ecore Editor and bridges to other existing Ecore tools, e.g., Validation, Search, Compare, and so on. The Graphical Ecore Editor implements multi-diagram support, a custom tabbed properties view, validation feedbacks, refactoring capabilities. This was a maintenance only release.
EEF is a generative framework under the EMFT project that helps users in creating editors, views and wizards to edit EMF models.
EEF provides both a runtime and a development environment to generate advanced edition UI for EMF model.
The 0.8 release of EEF brings the first version of the runtime, the metamodels and the acceleo code generator.
Mint provides a framework and tools for enhancing the interaction between JDT and EMF while developing model-driven software.
The 0.9.0 (Helios) release delivers new features, notably a wizard for cleaning artifacts generated from a model and a view of artifacts linked to a model. Existing functionality has also been improved; e.g., the ability to distinguish between generated types that are themselves customized vs. types that contain generated members that are individually customized.
The Modeling Workflow Engine 2 (MWE2) is a rewritten backwards compatible implementation of the Modeling Workflow Engine (MWE). It is a declarative, externally configurable generator engine. Users can describe arbitrary objects compositions by means of a simple, concise syntax that allows to declare instances of Java classes, Java attribute values and references. It is tightly integrated with JDT.
Eclipse Packaging Project (EPP), Version 1.3.0, Helios
- EPP Package build
- Running on Hudson: Buckminster repository build job + p2 director package build job
- Updates and bugfixes, minor enhancements
- EPP Packages
- Additional packages
- Additional platform
- Windows 64-bit
- Mac OS-X Cocoa 64-bit
- Common EPP feature included in all packages
- Eclipse Usage Data Collector
- Eclipse Marketplace Client (MPC) included in all packages (new)
- Additional packages
- EPP Usage Data Collector (UDC)
- Jump from version 1.1.x to version 1.3.0 to sync with other EPP components
- Minor bug fixes
Equinox / p2
- The goal of the Equinox project is to be a first class OSGi community and foster the vision of Eclipse as a landscape of bundles. As part of this, it is responsible for developing and delivering the OSGi framework implementation used for all of Eclipse.
- Equinox provides an implementation of the OSGi R4.2 core framework specification, a set of bundles that implement various optional OSGi services and other infrastructure for running OSGi-based systems.
- 3.6 new features:
- Introduction of p2 API
- Multiple instances of p2 in one VM
- New Discovery UI
- Multi-locale support in extension registry
- Added support to send arguments to a running instance of Eclipse
- API quality:
- High. No breaking changes to Equinox API
- Binary compatible for compliant plug-ins
- 24 new p2 API/SPI packages
- In addition to the new p2 API 26 other classes or interfaces have new API (either new types, or existing types with new members)
- IP Clearance and Licenses:
- All licenses and about files are in place as per the Eclipse Development Process, the Due Diligence Process was followed for all contributions
- Community and Committer Diversity:
- 41 committers, 21 active in past 9 months
- Organizations: IBM, EclipseSource, Cloudsmith, Individuals, Prosyst, Sonatype, compeople AG, WeigleWilczek GmbH, Tasktop
- Geographies: Canada (9), USA (6), Germany (3), Bulgaria (1), Sweden (1), France (1)
- Commits: IBM (52.0%), Sonatype (27.0%), Cloudsmith (10.1%), EclipseSource (5.9%), Individuals (1.9%), Prosyst (1.4%), Tasktop (1.2%)
- Consumed by all other Eclipse projects
The Graphical Editing Framework (GEF) project allows developers to take an existing application model and quickly create a rich graphical editor. The GEF project includes the GEF, Draw2D and Zest sub-components.
GMP GMF Notation
The GMF Notation Project provides a standard EMF notational meta model. The notational meta model is a standard means for persisting diagram information separately from the domain model. It can also be used as a basis for diagram interchange and was based on the principles in the OMG Diagram Interchange Specification
GMP GMF Runtime
The GMF Runtime is an industry proven application framework for creating graphical editors using EMF and GEF. The GMF Runtime provides many features that one would have to code by hand if using EMF and GMF directly. A set of reusable components for graphical editors, such as printing, image export, actions and toolbars and much more. A standardized model to describe diagram elements, which separates between the semantic (domain) and notation (diagram) elements. A command infrastructure that bridges the different command frameworks used by EMF and GEF. An extensible framework that allows graphical editors to be open and extendible.
GMP GMF Tooling
The GMF Tooling project provides a model-driven approach to generating graphical editors in Eclipse. By defining a tooling, graphical and mapping model definition, one can generate a fully functional graphical editor based on the GMF Runtime.
MoDisco is a generic and extensible MDE framework to support different reverse engineering scenarios such as modernization, quality assurance, retro-documentation, architecture improvement, etc.
Fully integrated in Eclipse, MoDisco provides an efficient environment for building Model Driven Reverse Engineering solutions.
The MoDisco 0.8.0 release brings many useful components among these:
- Reference implementations of the Knowledge Discovery Metamodel (KDM) and Software Metrics Metamodel (SMM) metamodels from the OMG ADM Task Force;
- Customizable Model Browser, generic Query & Facet mechanisms, Discovery Manager & Workflow, etc for more easily dealing with large and complex models of legacy applications;
- Full metamodel, corresponding discoverer and generator for the Java language + specific Model Browser customization;
- Full metamodel and corresponding discoverer for XML + specific Model Browser customization.
Java Workflow Tooling
Java Workflow Tooling (JWT) - Helios Release
The Helios contribution of JWT consists of a feature that contains:
- The GEF-based Workflow Editor which allows to create process models
- Several transformations: JWT <-> BPMN, XPDL, STP-IM (now Mangrove)
- The aspect extension mechanism which allows to customize the JWT meta model
- Additional views: UML Activity Diagram and Event-Process Chains (EPC)
The Helios contribution is based on JWT's 0.7.0 release
- Jetty provides an HTTP server, HTTP client, and javax.servlet container. These components are open source and available for commercial use and distribution.
- Jetty is used in a wide variety of projects and products. Jetty can be embedded in devices, tools, frameworks, application servers, and clusters.
- Added JSP 2.1 support
- Increased OSGI support with jetty-osgi module
- Updated many core components to support servlet api 3.0 like features
- Basis for Jetty8 (in milestones) which supports servlet-api 3.0
The Linux Tools project is pleased to contribute the following to the Eclipse Helios Simultaneous Release:
- a framework for integrating native profiling tools with the CDT
- GNU Autotools integration with the CDT
- integration between the CDT and native Linux tools such as GCov, GProf, OProfile, and Valgrind
- visualization and analysis tools for Linux tracing tools LTTng and SystemTap
- an RPM .spec editor with rpmlint integration
- plugins bridging the CDT's hover help functionality with various open source API documentation formats; called libhover
ATL is a model transformation language and toolkit which provides ways to produce a set of target models from a set of source models.
Developed on top of the Eclipse platform, the ATL Integrated Environnement (IDE) provides a number of standard development tools that aims to ease development of ATL transformations.
The ATL 3.1 release brings a lot of improvements:
- advanced editor features: code completion, open declaration, hover, code folding
- new ATL plugin wizard making easier to call ATL programmatically
- debugger & profiler on both ATL virtual machines
M2M QVT OML
QVT Operational is an implementation of Operational Mapping Language part of the OMG Meta Object Facility (MOF) 2.0 Query/View/Transformation Specification.
This release introduces QVT debugger, improvements in Java black-box library support, standalone QVT transformation execution (outside Eclipse) and enhancements in QVT editor.
Acceleo is a model-to-text (M2T) generator implementing the Object Management Group (OMG) MOF Model to text Transformation Language (MTL) specification.
The 3.0 release packs a great deal of improvements that range all the way from editing experience to language simplification; all of that along with a significant boost to overall performances.
First things first, the module editor has been greatly improved, in particular through the addition of new actions: refactoring capabilities, quick fixes, occurrence highlighting are all part of the train. Along with new actions specific to the bottom-up definition of generation modules, these actions make for really easy module creations. Likewise, the overall tooling provided along with Acceleo has seen many improvements and additions. In no particular order, three views corresponding to three different aspects of generation module specification have been added, a built-in profiler now allows you to locate generation bottlenecks, Acceleo evaluations can now be debugged with the Eclipse integrated debugger, evaluation exceptions now hold meaningful "Acceleo" traces instead of the old "Java" traces...
Acceleo is meant to be a pragmatic implementation of the MTL specification; we mainly try our utmost to simplify the language for end-users through the advanced tooling we provide.
As a side note, this version includes automated migration facilities for users of the Acceleo 2.x stream that would like to give a try to the improved 3.0 release.
M2T-JET is a code generation engine for the Eclipse environment inspired by JSP. The 1.1.0 (Helios) release is a minor release focusing primarily on stability and bug fixes.
Xpand is a modern template language specific for code generation. It supports features like multi methods, a pluggable type system and is statically typed. It comes with the functional sub language Xtend, which allows to add behavior to existing classes in a non-invasive manner. In the Helios release it got a couple of new features, like a profile, support for incremental generation and a new alternative execution engine.
OCL is an implementation of the Object Constraint Language (OCL) OMG standard for EMF-based models.
This release fixes some deviations from the OMG OCL standard, adds early access OCL editor support, introduces OCL annotations in Ecore models and updates the LPG parser dependency.
UML2 is an EMF-based implementation of the Unified Modeling Language (UML) 2.x OMG metamodel for the Eclipse platform. The 3.1 (Helios) release is maintenance only and includes nothing significantly new or noteworthy.
XSD is a library that provides an API for manipulating the components of an XML Schema as described by the W3C XML Schema specifications, as well as an API for manipulating the DOM-accessible representation of XML Schema as a series of XML documents, and for keeping these representations in agreement as schemas are modified.
The 2.6 (Helios) release is maintenance only and includes nothing significantly new or noteworthy.
The Memory Analyzer provides a general purpose toolkit to analyze Java heap dumps. The tool reports leak suspects and memory consumption anti-patterns, quickly calculates retained sizes, and provides various possibilities to explore in detail the heap and threads. The main areas of application are OutOfMemoryErrors and analyzing high memory consumption.
Eclipse Marketplace Client (MPC) provides an Eclipse-based rich client for installing solutions listed in the Eclipse Marketplace. It makes it easy for Eclipse users to find and install Eclipse solutions into their Eclipse installation. This is the 1.0 release of MPC.
Mobile Tools for Java
- MTJ 1.0.X was a big success
- Almost 100K download with Eclipse Pulsar
- MTJ1.0.X Runtime & SDK (22K downloads –April 22nd)
- MTJ is done in terms of features
- Current focus is mainly bug fixes
- MTJ 1.1 plan available
- Requirements and system test cases
- Requirements document
- Manual System test cases document
- All documents reviewed with the community
- ISV documentation
- Includes Javadoc and a developer documentation
- Automatically updated from nightly builds
- MTJ Webinar
- MTJ Video
- Working Example Code
- All extension points have sample code that shows how to use them
- Conference talks as part of DSDP
- EclipseCon 2010
- There is a lack of contributions after 1.0.1 release
- Currently the work is being handled by individuals
- There is also contributions from Research In Motion and Nokia, but the project misses a stronger leadership
- MTJ 1.0.X is part of Eclipse Pulsar
- Other vendors are working on their extensions
- A good number of download both from MTJ itself and Eclipse Pulsar
- Extensive discussions on the user’s forum
- Future of MTJ now is unclear since there is not a strong leadership from any company
- It has a large user base and maybe it will continue as it is until there is market for MIDP/JavaME development
- Other option is to establish MTJ as the Eclipse mobile IDE environment
- Add other mobile platforms support (CLDC, eRCP, Android, etc.)
- MTJ Team needs to work with the community to show the features that are currently available on MTJ 1.0
Mylyn is the task and application lifecycle management (ALM) framework for Eclipse. It provides the revolutionary task-focused interface, a task management tool for developers and a broad ecosystem of Agile and ALM integrations. For Helios the Mylyn project is continuing to evolve its APIs and framework to keep up with its rate of adoption. Major improvements in the Helios release:
- The scheduled Task List presentation now displays incoming and outgoing tasks providing a streamlined view for planning and scheduling.
- WikiText generates integrated Eclipse Help from a set of MediaWiki pages, enabling a crowdsourcing approach to documenting Eclipse features.
- The CDT bridge has been updated, improved and moved from initial prototype in the CDT project to be the second reference implementation for focus in the Mylyn project.
- The Bugzilla connector now supports up to Bugzilla 3.6.
The Parallel Tools Platform (PTP) enables the Eclipse platform to be used for the development of parallel applications using a variety of parallel programming models. Key features include the ability to launch and monitor programs on a range of different architectures and systems, static analysis tools for identifying common programming errors in parallel programs, a parallel debugger, and an extensible framework to simplify the integration of additional tools with Eclipse. Two example uses of the extension framework are also included: Graphical Explorer for MPI programs (GEM), and the Parallel Performance Wizard (PPW). In addition to these features, PTP adds support for the development of applications remotely, including remote indexing, remote build, and remote managed build services.
This release also includes Photran 6.0, which provides an integrated development environment for Fortran programs. Photran 6 adds two major features (Fortran 2008 support and C preprocessor support) and three new refactorings to Photran 5. It also includes several more minor improvements, including a Fortran Analysis/Refactoring Problems view, documentation in the online help system, syntax error recovery in the parser, an improved New Fortran Project dialog, Unicode support, configurable fixed-form line length, per-project source form settings, outlining of declarations in interface blocks, more robust content assist facilities, the ability to jump to external program definitions using Open Declaration, better editor responsiveness when working on large projects, indexer/database crash recovery... and, of course, some bug fixes.
PHP Development Tools (PDT)
- The PDT project provides a PHP Development Tools framework for the Eclipse platform. This project encompasses all development components necessary to develop PHP and facilitate extensibility. It leverages the existing Web Tools Project (WTP) and Dynamic Languages Toolkit (DLTK) in providing developers with PHP capabilities.
- Intuitive and easy to learn
- Seamless integration with other Eclipse projects
- Adherence to Eclipse standards
- Continuous support of PHP development
- 448 bugs fixed
- 49 features
- New templated'Content Assist‘
- New advanced editor syntax coloring scheme
- New show inherited members in quick outline view
- New decorated information box
- New powerful PHP search dialog
Platform / JDT / PDE
The Eclipse Project's tenth consecutive annual release delivered on time.
Helios (3.6) release highlights:
- New platforms: PPC-64, Ubuntu LTS, Windows 7
- Major new features: Flexible resources, open file from command line, WebKitGTK+ browser, help extensibility, new accessibility API, native task bar integration, Java formatter improvements, import plugin from CVS, API usage reporting, JUnit 4 support in test framework
The project continues to have an active contributor base, with 55 active committers from nine companies in at least nine countries. There were also over 275 patches accepted from the community this release.
RAP implements a subset of the SWT API. And, the larger this subset , the easier it becomes to develop applications for RCP and RAP from a single code base. In this release, we've extended the RAP API to cover close to 100% of SWT.
Improved and customizable Look and Feel: Following the latest trends in today's Web2.0 user interfaces, we added RAP support for features such as rounded borders, gradients, and animations. We updated the default look and feels provided by RAP to include extensions implementing these features. See the online demos for a look at the changes.
Here are the latest examples of how other Eclipse projects are integrating with RAP:
- EMF provides RAP support for Helios
- Riena's ridgets run on RAP
- The MAT and RAP teams work together on a single sourced version of the Memory Analyzer
- BIRT continues to be a popular choice for integrating reporting into RAP applications
Riena 2.0 had a big focus on making it easier for new users to use Riena for the first time. At the same time we wanted to clean the API of all the pieces that had code "smell" or didn't look right. So we had a number of breaking changes if it helped to have a clean, easy to use API or sometimes improve performance.
- we refactored a number of APIs where it was necessary
- we worked through the whole Riena API, added Javadoc where it was missing, incomplete or ambigous. That included interfaces but also extension point schemes
- we added tests for Riena functionality where it was missing
- we added the feature controller testing, so that application developers can test their UI Controller and the logic within them using JUnit without actually bringing up UI Widgets
- we added the Riena Toolbox, Riena's first tooling support which contains an Assembly Editor for the Navigation Model of Riena and a number of wizards for generating Riena Clients and Servers
- we also did extensive performance testing for the Riena clients so that switching views, navigating in the tree is noticable faster
We worked on a number of new UI features:
- many more delegate hooks for MasterDetails functionality
- Error markers as borders
- Image Buttons
- Jump and JumpBack between NavigationNodes
and many more...
Details can be found in the Riena Wiki.
API Breaking changes and how to migrate is described in the Riena Wiki.
SCA Tools is a set of tools to help developers of SCA applications. The project focuses on:
- SCA ecore meta models corresponding to the XSD scheme proposed by the Open SOA consortium and by OASIS
- Ecore meta models of additional implementations, interfaces, and bindings defined by the SCA runtime implementations Tuscany, Frascati, and Fabric3
- Editors (XML, form, graphical) that help developers to construct SCA assembly files
- Introspective tools that analyze existing code to complete the SCA model according to SCA annotations found in the code
The main improvements brought by the SCA Tools 2.1.0 release are:
- The support of the OSOA specifications and the OASIS specifications.
- The support of Tuscany 2.X and Fabric3 extensions.
What is new in Sequoyah 1.0.0:
- Components inherited from TmL
- Device framework, VNC Protocol, VNC Viewer, Localization
- Component inherited from Pulsar
- SDK Discovery
- Improvements and updates
- Localization editor improvements (see bug 300351)
- Backward compatibility with old TmL projects (see bug 301872)
- Localization help update (see bug 303354)
- Device management view improvements (see bug 303646)
- Device instance launcher compatibility issue (see bug 304665)
- Localization editor improvements (see bug 308897)
- Implementation of capabilities (see bug 311557)
Subversive main Helios features:
- Simplify the process of finding and installing SVN Connectors
- Use Equinox Secure Storage
- Display Revision Graph for resource
- List all locked files in a project
The Swordfish project provides an extensible SOA runtime framework based on the proven Eclipse Equinox runtime technology. The Swordfish project includes a distributed Enterprise Service Bus (ESB) that developers can extend and customize. To help users do this, Swordfish provides an easily extensible message interceptor framework that allows to intercept the message flow. Also Enterprise-grade plug-ins are part of the framework. The Service Registry provides a comprehensive overview of the services that exist and in cooperation with the Service Resolver component within the ESB allows to bind service consumers and providers dynamically only at runtime and to have a policy based matching process. Last but not least Swordfish includes tooling to generate Swordfish providers and consumers and to manage the service descriptions in the registry.
In this release, Swordfish enables users to deploy Swordfish participants into a Swordfish OSGi enabled server. Swordfish Tooling has been improved and enhanced with a deployer component that supports developers in the process of adding, updating, and removing Swordfish participants from a remote server. This OSGi based server includes Swordfish Runtime as well as a P2 based provisioning component. This component is responsible for processing all client requests.
Target Management 3.2
While the Remote System Explorer (RSE) continues bringing its steady value to the Community with only small incremental improvements, the TCF component has seen a strong Community uptake and important innovations in the 3.2 Release. New TCF features include a fast Streams service with zero copy data transfer; a dynamic plug-in system for the plain C agent; and the Eclipse Debugger (EDC) based on TCF.
- RSE 3.2 is mostly a maintenance release (stability, performance, usability)
- RSE FTP connection has been made robust
- Terminal now also for Local connections on Linux, Solaris, Mac (incubating)
- TCF new features: Streams service, Zero Copy binary transfer, Debug Server as Value-add, new targets (Symbian, Mac, x86_64), dynamic agent plugin system, Eclipse Debugger (EDC) as part of CDT.
Xtext is a language development framework that allows to easily develop your own domain-specific or fully-fledged programming languages and corresponding Eclipse-based IDE support. Based on a grammar language and a set of modern APIs one can describe the syntax and semantics of the language. Xtext provides a rich-featured and highly configurable IDE including validation, code completion, an outline, formatting, syntax coloring, code generation stubs etc.
The Helios release got over 80 new features and several hundreds of bug fixes. Most notably is the new workspace wide index, which captures information about any elements specified in any Xtext-based languages in the Eclipse workspace. Based on that many advanced features known from modern Java IDEs have been implemented. Most of them are available for any Xtext language out-of-the box. In addition, Xtext 1.0 got a special focus on performance and general scalability issues. The developers were able to vastly improve linking time and the index provides lightweight in-memory information about the most important aspects. Today, Xtext is used in large scale projects and all kinds of languages have been implemented, being it simple domain-specific languages or fully-fledged programming languages.
For more information please see the new & noteworthy page.
Test and Performance Tools Platform
- Test and Performance Tools Platform (TPTP) was created as an Eclipse top-level project in August of 2004
- TPTP is a continuation of Hyades project (created in December 2002) with expanded scope
- Offers a generic, extensible, standards-based tool platform for test and performance tracing tools
- Aims to bring software test and performance tools into the Eclipse environment in a consistent way that maximizes integration with tools used in the other processes of the software lifecycle
- Reduce the cost and complexity of implementing effective automated software quality control processes
- TPTP contributors: Intel®, IBM®, OCSystems
Functionality offered by TPTP
- Testing tools and framework
- TPTP JUnit & JUnit Plugin tests, URL test, remote test execution and test log/report
- Profiling using JVMPI and JVMTI
- Memory analysis
- Execution analysis
- Thread analysis
- Method code coverage
- Static and Dynamic Instrumentation using Probekit
What’s new in TPTP 4.7
- Building all projects with Java 5.0.
- Drastically improve performance of memory analysis when profiling.
- Significantly reduced defect backlog.
- Termination of the Monitoring sub-project.
Web Tools Platform (WTP) 3.2
Previously most of it was a component in the Source Editing project, but it was broken out this year to add to it visibility and independence.
Noteworthy Features added for this release We document all our new and noteworthy items for each milestone, for every release. The following summarizes the new functionality provided by each sub-project this release.
- Common Tools
- Several enhancements and improvements to existing functionality.
- Server Tools
- Several enhancements and improvements to existing functionality.
- Improved editing, navigation, and introduced a debug framework.
- Source Editing
- Several enhancements and improvements to existing functionality.
Web Service Tools
- Several enhancements and improvements to existing functionality. New this year is the addition of JAX-WS specific function, which has been incubating in previous years, but it graduated into Web Services project earlier this year. Also added JAX-RS support.
- Java EE Tools
- Java EE 6 support, including Servlet 3.0 support.
- EJB Tools
- EJB 3.1 support
- JSF 2.0 support
- Extensive JPA 2.0 support
- EclipseLink 2.x support
Our overall bug rate is approximately 70 resolutions per week, on average. Our backlog decreased by around 339 bugs (approximately), which is a decrease of 9% (approximately). The statistics in the following table reflect activity since the previous release (for the period May 29th, 2009 to May 25, 2010)
- Bugs opened 3434
- Bugs resolved 3668
- Fixed 2529
- Invalid 145
- Wontfix 244
- Duplicate 377
- Worksforme 344
- Not Eclipse 29
Communities of Committers and Contributors
We have a very diverse group of committers, from many companies, that sees a moderate amount of change from year to year, (some people leaving, new people come on board).
There are many, known adopters, both commercial, other Eclipse Projects, and other open source projects: IBM – Rational Application Developer, Oracle Corporation - Oracle Enterprise Pack For Eclipse (OEPE), Eteration – Lomboz, Genuitec – MyEclipse, JBoss – JBoss IDE, SAP – NetWeaver Studio, Zend Technologies Ltd. – Zend Studio, PHP Development Tools, etc.
This page is moderated by the EMO and the Eclipse Planning Council.