Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / third_party / lcov / CHANGES
blob18cfcefa8030629254b16a56c0b90800f3521ce3
1 Version 1.10
2 ============
4 All:
5 - Disabled branch coverage processing per default to improve processing
6   performance (can be re-enabled using a config file setting)
7 - Added option --rc to override config file settings from the command line
8 - Added option --config-file to override the config file location
9 - Fixed handling of '<' in filenames
11 genhtml:
12 - Added option --ignore-errors to continue after errors
13 - Added man page note to further explain branch coverage output
14 - Fixed man page description of default coverage rates
15 - Fixed HTML page title for directory pages
16 - Fixed handling of special characters in file and directory names
17 - Fixed directory prefix calculation
18 - Fixed warning when source files are found in root directory
20 geninfo:
21 - Added options --external and --no-external to include/exclude external
22   source files such as standard libary headers
23 - Added option --compat to specify compatibility modes
24 - Added missing man page sections for --derive-func-data and --no-markers
25 - Added support for MinGW output on MSYS. From martin.hopfeld@sse-erfurt.de
26 - Added support for gcc 4.7 .gcno file format.  Based on patch by
27   berrange@redhat.com
28 - Added auto-detection of gcc-4.7 function record format. Includes
29   suggestions by garnold@google.com
30 - Fixed exclusion markers for --derive-func-data.  Reported by bettse@gmail.com
31 - Fixed processing of pre-3.3 gcov files. Reported by georgysebastian@gmail.com
32 - Fixed handling of '<built-in>.gcov' files
33 - Fixed warning about unhandled .gcov files
34 - Improved --debug output
35 - Removed help text for obsolete parameter --function-coverage
37 genpng:
38 - Fixed handling of empty source files. Reported by: sylvestre@debian.org
40 lcov:
41 - Added options --external and --no-external to include/exclude external source
42   files such as standard libary headers
43 - Added option --summary to show summary coverage information
44 - Added option --compat to specify compatibility modes
45 - Fixed missing Perl version dependency in RPM spec file. Reported by
46   Martin Hopfeld <martin.hopfeld@sse-erfurt.de>
47 - Fixed geninfo not recognizing Objective-C functions. Based on patch
48   by abrahamh@web.de
49 - Fixed option --no-recursion not being passed to geninfo
50 - Fixed capitalization of the term 'Perl'
51 - Improved coverage rate calculation to only show 0%/100% when no/full coverage
52   is achieved.  Based on suggestions by Paul.Zimmermann@loria.fr and
53   vincent@vinc17.net
55 lcovrc:
56 - Added description for geninfo_compat setting
57 - Added config file setting 'genhtml_charset' to specify HTML charset
58 - Added config file setting 'geninfo_external' to include/exclude external
59   source files such as standard libary headers
60 - Added config file setting 'geninfo_gcov_all_blocks' to modify lcov's use
61   of gcov's -a option
62 - Added config file setting 'geninfo_compat' to specify compatibility modes
63 - Added config file setting 'geninfo_adjust_src_path' to enabled source path
64   adjustments.  Inspired by patch by ammon.riley@gmail.com
65 - Added config file setting 'geninfo_auto_base' to automatically determine
66   the base directory when collecting coverage data
67 - Added config file setting 'lcov_function_coverage' to enable/disable
68   function coverage processing
69 - Added config file setting 'lcov_branch_coverage' to enable/disable
70   branch coverage processing
73 Version 1.9
74 ===========
76 genhtml:
77 - Improved wording for branch representation tooltip text
78 - Fixed vertical alignment of HTML branch representation
80 geninfo:
81 - Improved warning message about --initial not generating branch coverage data
82 - Debugging messages are now printed to STDERR instead of STDOUT
83 - Fixed problem with some .gcno files. Reported by gui@futarque.com.
84   (file.gcno: reached unexpected end of file)
85 - Fixed problem with relative build paths. Reported by zhanbiao2000@gmail.com.
86   (cannot find an entry for ^#src#test.c.gcov in .gcno file, skipping file!)
87 - Fixed problem where coverage data is missing for some files. Reported by
88   weston_schmidt@open-roadster.com
89 - Fixed problem where exclusion markers are ignored when gathering
90   initial coverage data. Reported by ahmed_osman@mentor.com.
91 - Fixed large execution counts showing as negative numbers in HTML output.
92   Reported by kkyriako@yahoo.com.
93 - Fixed problem that incorrectly associated branches outside of a block with
94   branches inside the first block
96 lcov:
97 - Fixed problem that made lcov ignore --kernel-directory parameters when
98   specifying --initial. Reported by hjia@redhat.com.
99 - Added --list-full-path option to prevent lcov from truncating paths in list
100   output
101 - Added lcov_list_width and lcov_list_truncate_max directives to the
102   lcov configuration file to allow for list output customization
103 - Improved list output
105 COPYING:
106 - Added license text to better comply with GPL recommendations
109 Version 1.8
110 ===========
112 gendesc:
113 - Fixed problem with single word descriptions
115 genhtml:
116 - Added support for branch coverage measurements
117 - Added --demangle-cpp option to convert C++ function names to human readable
118   format. Based on a patch by slava.semushin@gmail.com.
119 - Improved color legend: legend display takes up less space in HTML output
120 - Improved coverage rate limits: all coverage types use the same limits
121   unless specified otherwise
122 - Fixed CRLF line breaks in source code when generating html output. Based
123   on patch by michael.knigge@set-software.de.
124 - Fixed warning when $HOME is not set
125 - Fixed problem with --baseline-file option. Reported by sixarm@gmail.com.
126   (Undefined subroutine &main::add_fnccounts called at genhtml line 4560.)
127 - Fixed problem with --baseline-file option and files without function
128   coverage data (Can't use an undefined value as a HASH reference at genhtml
129   line 4441.)
130 - Fixed short-name option ambiguities
131 - Fixed --highlight option not showing line data from converted test data
132 - Fixed warnings about undefined value used. Reported by nikita@zhuk.fi.
133 - Fixed error when processing tracefiles without function data. Reported
134   by richard.corden@gmail.com (Can't use an undefined value as a HASH
135   reference at genhtml line 1506.)
137 geninfo:
138 - Added support for branch coverage measurements
139 - Added support for exclusion markers: Users can exclude lines of code from
140   coverage reports by adding keywords to the source code.
141 - Added --derive-func-data option
142 - Added --debug option to better debug problems with graph files
143 - Fixed CRLF line breaks in source code when generating tracefiles. Based on
144   patch by michael.knigge@set-software.de.
145 - Fixed problems with unnamed source files
146 - Fixed warning when $HOME is not set. Reported by acalando@free.fr.
147 - Fixed errors when processing unnamed source files
148 - Fixed help text typo
149 - Fixed errors when processing incomplete function names in .bb files
150 - Fixed filename prefix detection
151 - Fixed problem with matching filename
152 - Fixed problem when LANG is set to non-english locale. Reported by
153   benoit_belbezet@yahoo.fr.
154 - Fixed short-name option ambiguities
156 genpng:
157 - Fixed runtime-warning
159 lcov:
160 - Added support for branch coverage measurements
161 - Added support for the linux-2.6.31 upstream gcov kernel support
162 - Added --from-package and --to-package options
163 - Added --derive-func-data option
164 - Added overall coverage result output for more operations
165 - Improved output of lcov --list
166 - Improved gcov-kernel handling
167 - Fixed minor problem with --diff
168 - Fixed double-counting of function data
169 - Fixed warning when $HOME is not set. Reported by acalando@free.fr.
170 - Fixed error when combining tracefiles without function data. Reported by
171   richard.corden@gmail.com. (Can't use an undefined value as a HASH reference
172   at lcov line 1341.)
173 - Fixed help text typo
174 - Fixed filename prefix detection
175 - Fixed lcov ignoring information about converted test data
177 README: 
178 - Added note to mention required -lgcov switch during linking
181 Version 1.7:
182 ============
184 gendesc:
185 - Updated error and warning messages
186 - Updated man page
188 genhtml:
189 - Added function coverage data display patch by tomzo@nefkom.net (default is on)
190 - Added --function-coverage to enable function coverage display
191 - Added --no-function-coverage to disable function coverage display
192 - Added sorting option in HTLM output (default is on)
193 - Added --sort to enable sorting
194 - Added --no-sort to disable sorting
195 - Added --html-gzip to create gzip-compressed HTML output (patch by
196   dnozay@vmware.com)
197 - Fixed problem when using --baseline-file on coverage data files that
198   contain data for files not found in the baseline file
199 - Updated error and warning messages
200 - Updated man page
202 geninfo:
203 - Added function coverage data collection patch by tomzo@nefkom.net
204 - Added more verbose output when a "ERROR: reading string" error occurs
205   (patch by scott.heavner@philips.com)
206 - Fixed geninfo not working with directory names containing spaces (reported
207   by jeffconnelly@users.sourceforge.net)
208 - Fixed "ERROR: reading string" problem with gcc 4.1
209 - Fixed problem with function names that contain non-alphanumerical characters
210 - Fixed problem with gcc versions before 3.3
211 - Updated error and warning messages
212 - Updated man page
214 genpng:
215 - Updated error and warning messages
216 - Updated man page
218 lcov:
219 - Added support for function coverage data for adding/diffing tracefiles
220 - Added --no-recursion option to disable recursion into sub-directories
221   while scanning for gcov data files
222 - Fixed lcov -z not working with directory names containing spaces (reported
223   by Jeff Connelly)
224 - Updated error and warning messages
225 - Updated man page
227 lcov.spec:
228 - Updated of description and title information
230 lcovrc:
231 - Added genhtml_function_hi_limit
232 - Added genhtml_function_med_limit
233 - Added genhtml_function_coverage
234 - Added genhtml_sort
235 - Updated man page
237 Makefile:
238 - Updated info text
241 Version 1.6:
242 ============
244 geninfo:
245 - Added libtool compatibility patch by thomas@apestaart.org (default is on)
246 - Added --compat-libtool option to enable libtool compatibility mode
247 - Added --no-compat-libtool option to disable libtool compatibility mode
248 - Changed default for line checksumming to off
249 - Added --checksum option to enable line checksumming
250 - Added --gcov-tool option
251 - Added --ignore-errors option
252 - Added --initial option to generate zero coverage from graph files
253 - Removed automatic test name modification on s390
254 - Added --checksum option
255 - Updated man page
257 lcov:
258 - Added libtool compatibility patch by thomas@apestaart.org
259 - Added --compat-libtool option to enable libtool compatibility mode
260 - Added --no-compat-libtool option to disable libtool compatibility mode
261 - Added --checksum option to enable line checksumming
262 - Added --gcov-tool option
263 - Added --ignore-errors option
264 - Added --initial option to generate zero coverage from graph files
265 - Updated help text
266 - Updated man page
267 - Fixed lcov not working when -k is specified more than once
268 - Fixed lcov not deleting .gcda files when specifying -z and -d
270 lcovrc:
271 - Added geninfo_compat_libtool option
272 - Added geninfo_checksum option
273 - Removed geninfo_no_checksum option from example lcovrc
274 - Updated man page
276 README:
277 - Added description of lcovrc file
280 Version 1.5:
281 ============
283 genhtml:
284 - Added check for invalid characters in test names
285 - Added --legend option
286 - Added --html-prolog option
287 - Added --html-epilog option
288 - Added --html-extension option
289 - Added warning when specifying --no-prefix and --prefix
290 - Reworked help text to make it more readable
292 geninfo:
293 - Renamed 'sles9' compatibility mode to 'hammer' compatibility mode
294 - Added support for mandrake gcc 3.3.2
295 - Fixed bbg file reading in hammer compatibility mode
296 - Added check for invalid characters in test names
297 - Added --base-directory option
299 lcov:
300 - Added check for invalid characters in test names
301 - Added --base-directory option
304 Version 1.4:
305 ============
307 All:
308 - Added configuration file support
310 genhtml:
311 - Fixed help text message
312 - Fixed handling of special characters in file- and directory names
313 - Added description of --css-file option to man page
315 geninfo:
316 - Added support for GCOV file format as used by GCC 3.3.3 on SUSE SLES9
317 - Fixed error text message
318 - Added check to abort processing if no source code file is available
319 - Added workaround for a problem where geninfo could not find source code
320   files for a C++ project
321 - Fixed 'branch'-statement parsing for GCC>=3.3 .gcov files
322 - Fixed exec count-statement parsing for GCC>=3.3 .gcov files
323 - Fixed .gcno-file parser (some lines were not counted as being instrumented)
325 lcov:
326 - Modified path for temporary files from '.' to '/tmp'
327 - Fixed comments
328 - Removed unused function 'escape_shell'
330 lcovrc:
331 - Introduced sample configuration file
333 Makefile:
334 - Added rule to install configuration file
335 - Fixed installation path for man pages
338 Version 1.3:
339 ============
341 All:
342 - Added compatibility for gcc-3.4
344 lcov:
345 - Modified --diff function to better cope with ambiguous entries in patch files
346 - Modified --capture option to use modprobe before insmod (needed for 2.6)
347 - Added --path option required for --diff function
350 Version 1.2:
351 ============
353 All:
354 - Added compatibility for gcc-3.3
355 - Adjusted LCOV-URL (http://ltp.sourceforge.net/coverage/lcov.php)
356 - Minor changes to whitespaces/line breaks/spelling
357 - Modified call mechanism so that parameters for external commands are not
358   parsed by the shell mechanism anymore (no more problems with special
359   characters in paths/filenames)
360 - Added checksumming mechanism: each tracefile now contains a checksum for
361   each instrumented line to detect incompatible data
363 Makefile:
364 - Added rule to build source RPM
365 - Changed install path for executables (/usr/local/bin -> /usr/bin)
367 lcov.spec:
368 - Modified to support building source rpms
370 updateversion.pl:
371 - Modified to include update of release number in spec file
373 genhtml:
374 - Fixed bug which would not correctly associate data sets with an empty
375   test name (only necessary when using --show-details in genhtml)
376 - Implemented new command line option '--nochecksum' to suppress generation
377   of checksums
378 - Implemented new command line option '--highlight' which highlights lines of
379   code which were only covered in converted tracefiles (see '--diff' option of
380   lcov)
382 geninfo:
383 - Added workaround for a bug in gcov shipped with gcc-3.2 which aborts when
384   encountering empty .da files
385 - Fixed geninfo so that it does not abort after encountering empty .bb files
386 - Added function to collect branch coverage data
387 - Added check for gcov tool
388 - Added check for the '--preserve-paths' option of gcov; if available, this
389   will prevent losing .gcov files in some special cases (include files with
390   same name in different subdirectories)
391 - Implemented new command line option '--follow' to control whether or not 
392   links should be followed while searching for .da files.
393 - Implemented new command line option '--nochecksum' to suppress generation
394   of checksums
396 lcov:
397 - Fixed bug which would not correctly associate data sets with an empty
398   test name (only necessary when using --show-details in genhtml)
399 - Cleaned up internal command line option check
400 - Files are now processed in alphabetical order
401 - Added message when reading tracefiles
402 - Implemented new command line option '--nochecksum' to suppress generation
403   of checksums
404 - Implemented new command line option '--diff' which allows converting
405   coverage data from an older source code version by using a diff file
406   to map line numbers
407 - Implemented new command line option '--follow' to control whether or not 
408   links should be followed while searching for .da files.
410 genpng:
411 - Added support for the highlighting option of genhtml
412 - Corrected tab to spaces conversion
413 - Modified genpng to take number of spaces to use in place of tab as input
414   instead of replacement string
415   
417 Version 1.1:
418 ============
420 - Added CHANGES file
421 - Added Makefile implementing the following targets:
422   * install    : install LCOV scripts and man pages
423   * uninstall  : revert previous installation
424   * dist       : create lcov.tar.gz file and lcov.rpm file
425   * clean      : clean up example directory, remove .tar and .rpm files
426 - Added man pages for all scripts
427 - Added example program to demonstrate the use of LCOV with a userspace
428   application
429 - Implemented RPM build process
430 - New directory structure:
431   * bin        : contains all executables
432   * example    : contains a userspace example for LCOV
433   * man        : contains man pages
434   * rpm        : contains files required for the RPM build process
435 - LCOV-scripts are now in bin/
436 - Removed .pl-extension from LCOV-script files
437 - Renamed readme.txt to README
439 README:
440 - Adjusted mailing list address to ltp-coverage@lists.sourceforge.net
441 - Fixed incorrect parameter '--output-filename' in example LCOV call
442 - Removed tool descriptions and turned them into man pages
443 - Installation instructions now refer to RPM and tarball
445 descriptions.tests:
446 - Fixed some spelling errors
448 genhtml:
449 - Fixed bug which resulted in an error when trying to combine .info files
450   containing data without a test name
451 - Fixed bug which would not correctly handle data files in directories
452   with names containing some special characters ('+', etc.)
453 - Added check for empty tracefiles to prevent division-by-zeros
454 - Implemented new command line option --num-spaces / the number of spaces
455   which replace a tab in source code view is now user defined
456 - Fixed tab expansion so that in source code view, a tab doesn't produce a
457   fixed number of spaces, but as many spaces as are needed to advance to the
458   next tab position
459 - Output directory is now created if it doesn't exist
460 - Renamed "overview page" to "directory view page"
461 - HTML output pages are now titled "LCOV" instead of "GCOV"
462 - Information messages are now printed to STDERR instead of STDOUT
464 geninfo:
465 - Fixed bug which would not allow .info files to be generated in directories
466   with names containing some special characters
467 - Information messages are now printed to STDERR instead of STDOUT
469 lcov:
470 - Fixed bug which would cause lcov to fail when the tool is installed in
471   a path with a name containing some special characters
472 - Implemented new command line option '--add-tracefile' which allows the
473   combination of data from several tracefiles
474 - Implemented new command line option '--list' which lists the contents
475   of a tracefile
476 - Implemented new command line option '--extract' which allows extracting
477   data for a particular set of files from a tracefile
478 - Implemented new command line option '--remove' which allows removing
479   data for a particular set of files from a tracefile
480 - Renamed '--reset' to '--zerocounters' to avoid a naming ambiguity with
481   '--remove'
482 - Changed name of gcov kernel directory from /proc/gcov to a global constant
483   so that it may be changed easily when required in future versions
484 - Information messages are now printed to STDERR instead of STDOUT
487 Version 1.0 (2002-09-05):
488 =========================
490 - Initial version