===============================================================================

RELEASE NOTES - HEADERANALYSER v1.6.6
RELEASED 23rd June 2010

===============================================================================

Product Description:
====================
The purpose of the HeaderAnalyser tool is to compare a set of modified header
files to those in a baseline and report any changes that may affect binary
compatibility. HeaderAnalyser has a command line interface and can read its
parameters from a configuration file. The tool produces an XML file which lists
all such changes. Usually the baseline is an SDK and the modified header files
are the header files found in the product's epoc32\include directory and its
subdirectories.

Main Features:
==============
- Read different versions of header files and check binary compatibility
  issues between them
- Compare two header files
- Compare two directories
- Compare two file sets
- Compare renamed files
- Generate an XML report file

===============================================================================

What's New in v1.6.6
====================
- forced_shai.h updated with one macro definition
- For CI setup, makefile required for static analysis is added. And makefile from src folder is deleted which is of no use.
- Test bench updated for taking the space in path
- Change: In HA:- SHAI-API support done. If the component specific header is forced_shai.h, 
          then the default forced headers will be ignored in order to solve compilation issues of SHAI headers.
- Change: In HA:- forced_10.1.h and forced_9.4v2.h are updated with symbian split macro definition
- Change: In HA:- Unit test bench updated with Symbian^4 headers. This change is basically for EPL license.
- All Distribution policy files are deleted.

===============================================================================

Installation Notes:
===================
HeaderAnalyser is part of Compatibility Analyser tool suite. Please refer to
Compatibility Analyser documentation for details.

===============================================================================

System Requirements:
====================
Basic Requirements:
- Windows 2000 or XP with 256MB RAM

===============================================================================

Compatibility Issues:
=====================
N/A

===============================================================================

Known Issues:
=============
- HeaderAnalyser is used for compliling header files, not actual sources of
  components. Therefore compilation errors may happen easily due to missing
  includes or wrong system include paths. Please refer to Compatibility
  Analyser documentation for how to overcome this problem.
  
===============================================================================

Version History:
================
Version 1.6.5 - 30th April 2010
--------------------------------
- Change: In HA:- forced header for 10.1 or Symbian^4 is added having extra one macro for header split.
- Change: In HA:- forced_9.4v2.h modified to solve compilation issues for TB9.2 wk08 onwards sdks.
- Change: In HA:- typedef and macro related missing feature implementation
                  - macro moved to other included file should not be reported as removed
                  - proper Typedef node check implementation done
- Fix: In HA:- Resource file analysis has one fix for any included file removal.
- Fix: In HA:- Overloaded function related fix done.First time overloading of function is SC break.

Version 1.6.4 - 15th February 2010
--------------------------------
- Change: In HA:- CA:Re-write the HandleExports() logic in HA to support both S60 and QT exported logic
- Change: In HA:- QT: Rules implementation
                      1) default arguement value change
                      2) exported function analysis irrespective of its accessibility
                      3)first time over loaded function
- Change: In HA:- Symbian_os.hrh should be included for all round of compilation. Investigated and solved the issue.
- Fix: In HA:- Symian Headers split issue : LineNumber Changes with issue file loc done.

Version 1.6.3 - 1st December 2009
--------------------------------
- Change: In HA:- Multiple threading logic is made configurable. By default it is disabled. 
  "-usethread" is the param. If not mentioned in HA command option, threading logic will be disabled.
- Fix: In HA:- For overloaded functions, the mangled attribute wil also be checked with functiion name present in gccxml output.
- Fix: In HA:- For GCC XML compilation, __GNUC__ macro should be enabled instead of __GCCE__.
- Fix: In HA:- The CA core toolset throws error when executed from desktop
- Fix: In HA:- When issue reported as "file cannot be analysed", set the line No to 0 in report.

Version 1.6.2 - 18th September 2009
--------------------------------
- Change: In HA:- HeaderAnalyser should report the line number for each break in a file
  This will give line number for each file where any break related to macros,struct,enums etc occured.
  
Version 1.6.1 - 17th August 2009
--------------------------------
- Fix: In HA:- files having dupliacted guards in the same bundle of files will be considered invalid and will be compiled individually.
  this solved the problem during both compilation and macro analysis. no need need to compile the headers again during macro analysis.  
- Fix: In HA:- fix for the template class related issue 
- Enhancement: API related info obtained from platform data file, will be added in report file for each header .


Version 1.6.0 - 19th june 2009
--------------------------------
- Feature: Added support to verify .rh files
- Feature: Added support to verify QT headers
- Change: Analysis time reduced by 25%-30%, using multiple threads
- Fix: Program terminated unexpectedly when checking for include guard


Version 1.5.0 - 7th April 2009
--------------------------------
- Feature: Component speicific forced headers introduced through platform data
- Feature: HeaderAlanyser now works in Linux environment
- Fix: Bug in multiple input directories to HeaderAnalyser

Version 1.4.0 - 17th February 2009
--------------------------------
- Feature: Added support to verify source compatibility breaks
- Feature: Added support to display compilation error information in report file
- Change: .h;.hrh;.mbg;.rsg;.hpp;.pan are now default file extensions  
- Fix: Compilation error fixes
- Fix: HeaderAnalyser produces empty <filename> tag

Version 1.3.2 - 9th December 2008 
--------------------------------
- Fix: Error was shown when a path contained spaces
- Fix: MergeFiles gives current header file from wrong path
- Fix: Macro analysis did not work correctly if the macro contained ( or )

Version 1.3.1 - 14th November 2008 
--------------------------------
- Fix Removed: Error was shown when a path contained spaces

Version 1.3.0 - 28th October 2008
--------------------------------
- Feature: Do additional compilation rounds if the compilation fails for
  - header file with forced header and only system include from platform data
  - header file without forced header and platform data
- Fix: Forced header files should not be included if not defined via parameters
- Fix: Error was shown when a path contained spaces
- Fix: Macroanalyser did not work correctly if the line contained extra spaces
- Fix: Program terminated unexpectedly if the macro definition contained tabs

Version 1.2.6 - 29th August 2008
--------------------------------
- Fix: Forced headers were not included to macro analysis

Version 1.2.5 - 20th August 2008
--------------------------------
- Feature: Multiple forced header files can now be specified instead of just
  one
- Fix: File name now appears in non-filtered report files correctly
- Fix: Recursive option did not work with multiple header directories
- Fix: Macro analysis did not work correctly in case of multiple files
  contained the same macro
  
Version 1.2.4 - 8th July 2008
-----------------------------
- Feature: Multiple directories can be defined for analysis (baselinedir and
  currentdir parameters)
- Change: .h;.hrh;.mbg;.rsg are now default file extensions   
- Fix: When set parameter was not defined, nothing happened 
- Fix: All system include paths were not included to analysis when getting
  dependency information from platfrom data files
- Fix: Replace option was not case insensitive
- Fix: One character long version strings were not accepted as input

Version 1.2.3 - 29th May 2008
-----------------------------
- Feature: Display progress information
- Change: If header defined by "set" parameter is not found, a warning is
  displayed instead of exiting
- Fix: Strip off whitespaces and tabs from "set" parameter

Version 1.2.2 - 15th May 2008
-----------------------------
- Fix: "File contains nothing to analyse" warning should not be generated for
  files which contains macros only
  
Version 1.2.1 - 14th February 2008
----------------------------------
- Fix: Missing include guards in header files could cause compilation errors

Version 1.2.0 - 8th February 2008
---------------------------------
- Feature: Added support for external platform data which specifies certain
  compile-time dependencies in Symbian component.

===============================================================================

Copyright (c) 2001-2009 Nokia Corporation and/or its subsidiary(-ies). 
All rights reserved.

This component and the accompanying materials are made available
under the terms of "Eclipse Public License v1.0"
which accompanies this distribution, and is available
at the URL "http://www.eclipse.org/legal/epl-v10.html".
