Jump to: navigation, search

Difference between revisions of "PDE UI Incubator ApiTools Compare"

(How does the tool work?)
(What’s an API?)
Line 17: Line 17:
 
Good question. For starters here are some links; more information will be added later to this section.
 
Good question. For starters here are some links; more information will be added later to this section.
  
[http://wiki.eclipse.org/index.php/Evolving_Java-based_APIs Evolving Java-based APIs] - What is considered an API in Eclipse.
+
[http://wiki.eclipse.org/index.php/Evolving_Java-based_APIs Evolving Java-based APIs] - What is considered an API in Eclipse
 +
 
 +
[http://www.eclipse.org/articles/Article-API%20use/eclipse-api-usage-rules.html How to Use the Eclipse API] - APIs in Eclipse from consumer's view point
 +
 
 +
[http://java.sun.com/docs/books/jls/third_edition/html/binaryComp.html Binary Compatibility] - The Java Language Specification
 +
 
 +
[http://wiki.eclipse.org/index.php/API_Javadoc_tags API Javadoc tags] - Potential way to work with "soft" rules used in Eclipse
  
 
== How does the tool work? ==
 
== How does the tool work? ==

Revision as of 16:42, 2 February 2007

API Comparison Tool

What is it for?

The tool compares APIs exposed by two versions of your product. It reports changes that might break backward compatibility and provides a list of backward-compatible modifications.

Reports are produced as XML and HTML files. Here is the sample report showing APIs modified in a way that might break backward compatibility:

ApiToolsBreakageReport.JPG

and here is the sample report on backward compatible API changes:

ApiToolsCompatibleReport.JPG

What’s an API?

Good question. For starters here are some links; more information will be added later to this section.

Evolving Java-based APIs - What is considered an API in Eclipse

How to Use the Eclipse API - APIs in Eclipse from consumer's view point

Binary Compatibility - The Java Language Specification

API Javadoc tags - Potential way to work with "soft" rules used in Eclipse

How does the tool work?

The tool contains two operations: create an API snapshot and compare the code against API snapshot.

Both operations can be accessed via menus or run in a batch mode.

The dialog to create API snapshot looks like this:

ApiToolsCollect.JPG

And the dialog to compare code with the API snapshot looks like this:

ApiToolsCompare.JPG

Getting the Pieces

Source code is stored in the PDE incubator (:pserver:anonymous@dev.eclipse.org:/cvsroot/eclipse) in the HEAD/pde-incubator/api-tooling/plugins.

There are two plug-ins:

  • org.eclipse.pde.api.tools
  • org.eclipse.pde.api.tools.ui

The Eclipse 3.3M4 or later should be used to compile those plug-ins.

Resources

Eclipse Bugzilla - Eclipse bug tracking database.

PDE Incubator - New projects that might be incorporated into PDE in future.

PDE UI Home Page - The main PDE UI web site.