# Eclipse API Tools Build Notes

## Summary of API changes

None.

## July 23, 2008 (maintenance build)

### Problem Reports Fixed

Bug 236876: [api tooling] Should modify code to compile in 1.6 mode
Bug 236687: NPE opening the errors / warnings property page

## May 27, 2008

### Problem Reports Fixed

Bug 234488: Deleting equals()/hashCode() results in API error

## May 27, 2008

### Problem Reports Fixed

Bug 234014: Externalized string has a typo
Bug 233978: Grid data are never used for the combos
Bug 233731: Project API descriptions retain all members
Bug 234015: Some compatibility options should be removed
Bug 233996: binary compatible instance field addition should not be flagged as binary incompatible

## May 26, 2008

### Problem Reports Fixed

Bug 233731: Project API descriptions retain all members
Bug 233616: API Verification Report: List of all non API bundles misleading

## May 22, 2008

### Problem Reports Fixed

Bug 233392: IOExceptions if baseline name is invalid file name
Bug 233426: Lots of new API errors after switching to I20080521-2000
Bug 233398: API Verification Report does not honor API Problem filters
Bug 233473: Scan for unsupported tags creates duplicate problems
Bug 233445: Reports wrong error on correct @since 3.4 tag
Bug 233441: Importing binary project is broken in I20080521-2000

## May 21, 2008

### Problem Reports Fixed

Bug 232524: TVT34:TCT302: TVT FR - Sentence in English + layout
Bug 233060: Quick fix message is awkward
Bug 232787: [api tooling] NPE in API Analysis Builder on tm.discovery.model.edit project
Bug 232408: Message improvements on Compatibility problems tab
Bug 232536: Eclipse build Ant task should allow removed bundles to be filtered out
Bug 232570: API builder seems slower in I20080515-2000
Bug 233280: Unused NLS strings should be cleaned up
Bug 233042: Type or members with increased access can return inconsistent delta
Bug 233209: Naming of the column in the api verification report should be improved
Bug 233283: search engine returns emtpy search results
Bug 232958: The same API Problem is reported several in Problem View

## May 20, 2008

### Problem Reports Fixed

Bug 232514: @noreference changes should not be reported when the baseline doesn't have any api description
Bug 232538: Scanning 'project' message is not descriptive
Bug 232068: API Tools not finding @since tag when there is a comment in the javadoc after the tag.
Bug 233034: Error message missing arguments
Bug 232601: SWT bundle is poorly handled by API tools
Bug 232732: Preference page does not use dialog font

## May 15, 2008

### Problem Reports Fixed

Bug 232176: bundle version error disappears on incremental build
Bug 232217: Cannot add back a baseline with same name
Bug 231955: API tooling wizard: adding baseline should select it
Bug 231953: API tooling wizard: "Use Reset..." error in banner shouldn't be
Bug 232249: "Tag '@noinstantiate' is unsupported on a class" should say "abstract class"
Bug 221923: [api tooling] Add @noreference support for delta creation
Bug 229462: Progress reaches 100% before done

## May 14, 2008

### Problem Reports Fixed

Bug 231957: API Baselines pref page - should be "Remove" (no ellipsis)
Bug 231889: Convert xml reports from Bundle verification ant task into html
Bug 232139: Create correct references for fields
Bug 231866: Split bundle version management preference to distinguish minor and major version errors

## May 13, 2008

### Problem Reports Fixed

Bug 231688: Cannot filter error inside MANIFEST.MF
Bug 231390: quickfix for bundle version replaces .qualifier with explicit build ID
Bug 231860: Changing pde.core major version to 4.0.0.qualifier is not detected as an error
Bug 231652: NPE building a fragment
Bug 231412: Minor and major version change should be detected after API freeze
Bug 226254: API tools use too much memory

## May 12, 2008

### Problem Reports Fixed

Bug 231409: Conversion of org.eclipse.update.core is causing weird results
Bug 231170: No delta returned for adding or removing volatile modifiers from a field
Bug 231027: Changing non-final to final class should be a compatible change for @noextend class
Bug 231409: Conversion of org.eclipse.update.core is causing weird results

## May 9, 2008

### Problem Reports Fixed

Bug 230947: Similar problems are being dropped from analyzer
Bug 229824: quickfix: Add @noreference tag for leaking parameters
Bug 230976: Filter quick-fix should use filter icon
Bug 231184: Bundle verification ant task should report non-api bundles
Bug 230945: Removing api filters file doesn't trigger a rebuild
Bug 231298: org.eclipse.ui complaint about API
Bug 231382: Remove javadoc resolution should use the remove icon

## May 8, 2008

### Problem Reports Fixed

Bug 230020: Search engine doesn't support a system bundle component
Bug 231028: adding method to @noimplement interface flagged as error
Bug 230965: detect unrequired change to plug-in minor version
Bug 230362: [Metadata] update version of org.eclipse.ui.navigator
Bug 230200: API Tools doc issues
Bug 230993: Accurately catching constructor problems inside constructors
Bug 231202: NPE creating @since tag problem

## May 7, 2008

### Problem Reports Fixed

Bug 230409: final @noreference method should not be flagged with an error when having API leaks problem
Bug 230205: method with @noreference and @nooverride flagged as having "non-API parameter"
Bug 230199: Content assist for @no* tags should show boilerplate as additional info
Bug 230081: IAE while using quick fix
Bug 230209: [api tooling] "Illegally instantiates" should not be flagged when extending an @noinstantiate class
Bug 230271: Addition of an ant task to run the API tools verification during Eclipse build
Bug 230411: Api filter format could list the message arguments instead of concatenating them

## May 5, 2008

### Problem Reports Fixed

Bug 229971: Usage problem messages should be more descriptive
Bug 229834: ICompilationUnit.findPrimaryType called for no reason
Bug 230281: Callers of org.eclipse.pde.api.tools.internal.util.Util.getInputStreamAsCharArray(InputStream, int, String) must close the input stream
Bug 230252: 'Set all to:...' preference action does not set all
Bug 229824: quickfix: Add @noreference tag for leaking parameters
Bug 230021: Missing error message for api usage
Bug 228499: [api tooling] @since tags should not be limited to two fragments only
Bug 229814: Incremental build performance improvement

## 3.4 M7 - May 2, 2008

### Problem Reports Fixed

Bug 225181: Not possible to have two API problems with the same ids on the same resource
Bug 227368: Make exact specification of @no* tags available in the SDK
Bug 225176: Hookup context help for API tooling
Bug 224983: After fixing breaking API changes, error about bundle version still there
Bug 225133: Could not locate IMember for the constructor of a type member
Bug 228263: Error message is confusing for removed types
Bug 228348: Undo 'Add missing @since tag' quick fix is not atomic
Bug 229051: API breakage reported against private class
Bug 228726: Don't require bundles to be in "plugins" directory
Bug 228460: Analyzer should work in OSGi-less mode
Bug 226951: Builder should use analyser, and create its own markers
Bug 226398: Problem filter quickfix should be more descriptive
Bug 225461: No rebuild is requested when the location of the baseline is modified
Bug 228446: External class file folders break bundle API components
Bug 228510: URL[] urls = PluginPathFinder.getPluginPaths(location); doesn't return the list of bundles at location anymore
Bug 228424: 'restrictions have changed' errors abound
Bug 228371: Occasional "Missing @since tag" error on internal class
Bug 228075: final keyword addition for a method should not be flagged as a breakage if the enclosing type is tagged with @noextend
Bug 228925: error claims API type was removed, but it was internal
Bug 228898: Timing issue on removing filters
Bug 227332: Addition or removal of filter should trigger an incremental build of the applicable type
Bug 227706: API parameter" breaks after rebuild
Bug 229460: Not prompted to build after changing baseline
Bug 225961: Warn when tag not supported on member
Bug 227803: Add messages for compatible deltas
Bug 229420: Incremental build does not flag addition of invalid tags
Bug 229311: Participate with the Java problem type marker grouping
Bug 215074: time constant does not work
Bug 220373: [api tooling] check for new apis after a build freeze
Bug 220374: [api tooling] Increment minor/major version error should have a detailed message
Bug 222905: [api tooling] Deleted compile-time constant interface field not flagged as a problem
Bug 225112: leaking types: don't warn when API is non referencable
Bug 228209: Overriden method defined in java.lang.Object should not be reported as a method addition
Bug 223845: Duplicate error for missing API baseline
Bug 224448: Removed constructor reported as breaking change for @noextend @noinstantiate class
Bug 223946: [api tooling] Removing all profiles doesn't trigger a rebuild
Bug 224719: NPE during API usage scanning
Bug 224972: API leak detection does not respect @noreference for public field
Bug 225039: NumberFormatException after adding nature
Bug 225113: CCE during problem creation
Bug 225144: API tooling project property page: wording
Bug 225141: wording in 'invalid @since tag' problem
Bug 225135: Wording in the build progress monitor
Bug 225475: no need to build API description for non-API enabled source projects
Bug 225529: what does @noextend mean on methods
Bug 226979: Add version to the .api description file
Bug 225989: API Analysis builder is not cancelable
Bug 227762: remove @nooverride support for constructors
Bug 227740: Constructor with API parameter type should not be flagged for @noreference constructor
Bug 229626: changing unsupported API tag severity does not update problems
Bug 224456: Bundle versioning scheme should be based on problem filtering and project preferences
Bug 229750: Project specific errors/warnings doesn't work anymore
Bug 225374: Report missing @since tags even if the corresponding member has a non-javadoc comment
Bug 226559: Ant task to generate .api_description file should not do anything for projects without the api tools nature
Bug 227147: Remove uneeded parameter for API usage scanning
Bug 227370: builder progress messages don't appear
Bug 225595: no need to persist methods/fields without restrictions in description
Bug 226499: NPE in ApiProblemReporter.isProblemFiltered(...)
Bug 226403: AssertionFailedException: "null argument" thrown from Util.getBuildJob
Bug 225473: removing API not recognizes as breaking change
Bug 214620: [api tooling] comments from Eugene
Bug 228311: exceptions from builder state
Bug 229705: Filtered problems reappear sometimes
Bug 228365: NPE in ApiFilterStore.resourceChanged
Bug 227611: Execution Environment deltas should consider "compatible" EE
Bug 226400: Could not locate member when it is a constructor when the error is "Member visibility reduced"
Bug 226140: @nooverride and @noreference do not work for constructors
Bug 225622: Versions seem to be reversed in error message for major version update
Bug 225433: Cannot ignore "the final keyword has been added"
Bug 225463: @since tags should be checked for breaking api compatibility error only if they are additions

## April 22, 2008

### Problem Reports Fixed

Bug 227129: API tag code assist proposals should only be available if project is under pde tooling control
Bug 225521: code assist after prefix doesn't work
Bug 227340: .api_filters could not be removed
Bug 227361: 'Api Errors/Warnings > Configure Workspace Settings...' leaves wrong shell active
Bug 227124: Failing tests in N20080414-2000
Bug 226917: Add @nooverride as a javadoc tag for javadoc generation
Bug 227381: @nooverride vs. @noextend for methods
Bug 227815: NPE while debugging API tools
Bug 227694: NPE, possibly related to missing @since tag error
Bug 227612: Remove inheritDoc support
Bug 226969: [api tooling] Missing @since tags are not flagged for newly added types

## April 15, 2008

### Problem Reports Fixed

Bug 217706: [api tools] project settings update for org.eclipse.pde.api.tools
Bug 226745: Problem reporter cannot filter problems outside of the workspace
Bug 226004: Translation Clarification - string concatenation problems in org.eclipse.pde.api.tools
Bug 225910: Compiler warnings in N20080404-2000
Bug 225146: CCE when restoring an ApiDescription
Bug 225142: NPE during ApiDescription.resolveAnnotations(...)
Bug 225108: @noreference: distinguish between method and constructor
Bug 223663: 293 compile warnings in org.eclipse.pde.api.tools.tests
Bug 226128: More specific implementation of a super method should not be considered as an addition
Bug 226472: 'API Problem Filters' properties page: Remove ellipsis from Remove...
Bug 225163: IllegalArgumentException when @since tags has the wrong format
Bug 224375: Confusing error message in "New API Profile" dialog
Bug 224648: [api tooling] @since tag quickfix should use the version from the Manifest, and not what it thinks is right

## April 8, 2008

### Problem Reports Fixed

Bug 225886: NPE in API Analysis Builder after crash
Bug 225164: Should not report @since tag errors for protected members inside a class tagged as @noextend
Bug 225181: Not possible to have two API problems with the same ids on the same resource
Bug 225141: wording in 'invalid @since tag' problem
Bug 225144: API tooling project property page: wording
Bug 225131: Wording in the API Tooling setup wizard
Bug 225133: Could not locate IMember for the constructor of a type member
Bug 225113: CCE during problem creation
Bug 225833: component.xml file of non-api projects is being over-written
Bug 226174: remove export from API component API

## April 1st, 2008

### Problem Reports Fixed

Bug 225131: Wording in the API Tooling setup wizard
Bug 224969: Got "The super interfaces set has been reduced" but I didn't

## March 31, 2008

### Problem Reports Fixed

Bug 224969: Got "The super interfaces set has been reduced" but I didn't
Bug 224904: [AAP001] The source issue

## March 30, 2008

### Problem Reports Fixed

Bug 224716: [api tooling] The IMember is not properly located when it is a constructor
Bug 224713: [api tooling] The enclosing type should not be returned as a default member

## March 28, 2008 (3.4M6)

### Problem Reports Fixed

Bug 224636: [api tooling] Change of interface method signature is not recognized as API breakage
Bug 224448: Removed constructor reported as breaking change for @noextend @noinstantiate class
Bug 222905: [api tooling] Deleted compile-time constant interface field not flagged as a problem

## March 27, 2008

### Problem Reports Fixed

Bug 224284: avoid "finding" types when building API description nodes
Bug 214620: [api tooling] comments from Eugene
Bug 223674: NPE opening filter property page on pde.ui
Bug 223673: Filters show outgoing change but did not modify them
Bug 220902: Create Profile: forced to use highest execution environment
Bug 220567: listen for changes to .api_filters

## March 25, 2008

### Problem Reports Fixed

Bug 220819: [api tooling] Improve changes in EE
Bug 223946: [api tooling] Removing all profiles doesn't trigger a rebuild
Bug 223845: Duplicate error for missing API baseline
Bug 220819: [api tooling] Improve changes in EE
Bug 223439: Progress message during build

## March 19, 2008

### Problem Reports Fixed

Bug 223093: failing tests in Build N20080317-2000

## March 17, 2008

### Problem Reports Fixed

Bug 222800: [api tooling] When fixing invalid @since tags, the quickfix should say "update" and not "add"
Bug 222641: [api tooling] NPE when performing finish in the profile setup page
Bug 221866: API profiles pref page polish
Bug 222625: [api tooling] NPE trying to create the problem that corresponds to the missing default profile
Bug 222441: [api tooling] Add global switch to change binary compatibility options
Bug 221819: Improve labels on Binary Incompatibility tab
Bug 222508: problem reporter should not clean problems

## March 12, 2008

### Problem Reports Fixed

Bug 222277: [api tooling] VersionNumberingResolution and DefaultApiProfileResolution need their own icons
Bug 221920: [api tooling] "Unable to resolve method signature" when adding @noreference in a method on the next build

## March 11, 2008

### Problem Reports Fixed

Bug 221810: Wording and casing in wizards
Bug 221817: Improve labels on Usage Restriction tab
Bug 221813: Adding new profile blocks UI
Bug 222066: [api tooling] Failures in N20080310-0010
Bug 221911: [api tooling] @reference null is inserted for some internal classes inside API packages

## March 3, 2008

### Problem Reports Fixed

Bug 220803: Should have error marker in manifest.mf for bundle version errors
Bug 220636: creating a no-op change causes API builder to run for 20 seconds
Bug 221209: [api tooling] Setting a default api profile should only rebuild the projects that have the api tooling nature
Bug 220221: add version numbers to our external files
Bug 220730: No way to get rid of api tooling errors
Bug 220828: [api tooling] Wrong @since version not detected
Bug 219535: [api tools] Missing @since tag version should be based on the right bundle version
Bug 220798: [api tooling] Quickfix for missing @since tag should not add the tag twice
Bug 220806: [api tooling] addition of a protected field inside a class that can be extended should not be flagged as an error
Bug 220750: [api tooling] Addition of a type member inside an interface should not be a binary breakage
Bug 220762: [api tooling] Should not report a binary breakage on a private method
Bug 219535: [api tools] Missing @since tag version should be based on the right bundle version
Bug 220463: workspace profile loaded when it doesn't need to be
Bug 220574: api filters file should be written immediately when changes are made
Bug 220447: namespace problems with api profiles
Bug 220621: polish progress messages for API builder

## February 25, 2008

### Problem Reports Fixed

Bug 220114: .api_filters not updated when it becomes empty
Bug 220017: IReference should keep unresolved and resolved target locations
Bug 219870: only write filter file if the project has API nature
Bug 218208: markers not cleaned up after replace
Bug 219451: illegal implementor error disappears after clean/build
Bug 219662: [api tooling] generate a fake ee file for testing purpose

## February 19, 2008

### Problem Reports Fixed

Bug 219514: more efficient scoped class file container
Bug 218715: persist project API descriptions
Bug 214382: [api tooling] tag scanner silently fails without class files
Bug 218073: [api tooling] @since tag checker should handle inherited doc
Bug 218585: [api tooling] Got "@noinstantiate null" while converting org.eclipse.update.configurator.IPlatformConfigurationFactory
Bug 218976: [api tooling] No binary breakage should be reported for a protected field change in a final class
Bug 218983: Save cycle causes out of sync resources

## February 12, 2008

### Problem Reports Fixed

Bug 213019: [api tooling] plug-in version number validation
Link: in from CVS broke workspace profile
Bug 218217: "Failed to open archive" adding/deleting projects
Bug 212014: [api tooling] extending @noextend method not detected
Bug 215089: [api tooling] @noreference not working on inherited interface method
Bug 217171: [api tooling] Workspace profile needs to update after resource changes
Link: in project API description and API component
Bug 218166: NPE when compatibility error is on compilation unit
Bug 218213: "Resource does not exist" deleting project
Bug 218220: NPE saving filters