1 Version 0.12 - UNRELEASED
3 End-user-visible changes
5 * The documentation previously found in the README file is now
6 available in DocBook XML format, in the doc/ directory.
10 * Fixed the uniqueincludes project class, which has been broken since
11 the 0.6 reorganization.
13 * Calculation of edge weights was wrong.
17 * Objects now get their hash locked in the constructors, to catch
18 typos, unwanted modifications, and other errors likely to occur
19 during subsequent refactorings.
21 * Introduced graph, node, and edge objects (splitted out from
22 project, along with relevant methods). A project now has a stack
27 ==================================================
29 Version 0.11 - 2005-12-06
31 End-user-visible changes
33 * Generalized support for node coloring, with renderer::dot
34 supporting 2 coloring levels (background and outline)
36 * Improved portability to non-UNIX platforms, was successfully run on
39 * The C extractor now looks in for system headers in /usr/include by
42 * The Perl extractor uses the default @INC value to locate system
45 Changes for the class writer:
47 * Per-language extractors can now declare a default system-include
52 * The --color flag was broken.
54 ==================================================
56 Version 0.10 - 2005-11-29
58 End-user-visible changes
60 * Added a --renderer flag to select another renderer than dot.
62 * Added preliminary support to use tulip as renderer.
64 ==================================================
66 Version 0.9.2 - 2005-11-2
68 * Start of a "tutorial" or "how to use" section in the doc.
70 * Explicitely written down the plan for the upcoming redesign.
72 ==================================================
74 Version 0.9.1 - 2005-06-01
78 * Fixed a typo preventing the recursive search to see .c and .h
81 ==================================================
83 Version 0.9 - 2005-06-01
87 * Now fails nicely when no dependencies are found for any reason.
89 Other end-user-visible changes
91 * Command-line and version are now logged in the report file.
95 * Can now be run from source dir with no effort.
97 * Exit with usage on command-line.
99 * Updated usage summary with recent options.
101 ==================================================
103 Version 0.8 - 2005-05-26
105 End-user-visible changes
107 * Directory arguments are now searched for files, allowing to handle
108 projects with a large number of files.
110 * New --fileregexp option to override the per-language regexp used to
111 look for files inside directories.
113 * More statistics are available in the report file.
115 Changes for the class writer:
117 * extractors' getdeps methods cannot rely any more on @ARGV
118 containing the files list, and must get it from the FILES instance
121 ==================================================
123 Version 0.7 - 2005-05-10
127 * The '.graph-includes.report' suffix used when using --output did
128 not include the first dot.
130 Other end-user-visible changes
132 * Visible edges are now labelled with the number of real dependencies
133 they represent, so we have some visual feedback of transitive
136 * Huge performance boost for the transitive reduction.
138 * When cycles are present, the specific reduction selected is usually
139 a different one than in 0.6.1 and below, as a side-effect of
140 implementation changes.
142 * More documentation has been written.
144 Changes for the class writer:
146 * project::record_missing_dep was split out of project::record_dep.
148 * Dependencies are now stored in a hash instead of an array.
150 * The "label" special_edge attribute is now an array of strings, to
151 be presented on several lines.
153 ==================================================
155 Version 0.6.1 - 2005-04-26
159 * Fixed the distribution which misses the C and perl extractors.
161 ==================================================
163 Version 0.6 - 2005-04-24
167 * A typo in the graphincludes::params package prevented the
168 parameters default values to be used.
170 Command-line changes:
172 * New --language flag to select syntax of source files.
174 * Preliminary support for extracting perl dependencies, using
177 Changes for the class writer:
179 * C-specific behaviour is now located in new extractor::C class.
181 * Changed special_edge() return value to an hash of graphviz node
182 attribute/value pairs
184 * More methods were moved from project::default up to ancestor
187 ==================================================
189 Version 0.5 - 2005-04-20
191 Command-line changes:
193 * --Include is now recognized as long form for -I.
195 * New --sysInclude option to specify system directories. Included
196 files not found in the project, but found in those directories are
197 not considered as "not found".
199 Other end-user-visible changes
201 * Removed inconditional duplicate warnings flooding the output.
203 * Verbose diagnostics are now output unconditionally into a
204 graph-includes.report (or <file>.graph-includes.report) file.
206 Changes for the class writer:
208 * The constructor for the project classes now uses named parameters,
209 instead of positional parameters.
210 * Global parameters were moved to a new graphincludes::params package.
212 ==================================================
214 Version 0.4 - 2005-04-17
216 Command-line changes:
218 * Implemented cpp-like "-I <dir>" syntax for #include lookup,
219 dropping the infamous former ad-hoc heuristic.
221 Other end-user-visible changes
223 * `#include "..."' are now analyzed using the standard cpp semantics,
224 and `#include <...>' line are now considered as well.
228 * Many code cleanups.
230 ==================================================
232 Version 0.3 - 2005-04-14
236 * Fixed a bug in the ad-hoc #include resolver which caused some
237 dependencies to be ignored
239 Command-line changes:
241 * New --paper option to get a graph printable on paper (for now, only
244 Other end-user-visible changes
246 * More documentation has been written.
248 ==================================================
250 Version 0.2 - 2005-04-01
254 * --output would reject its argument.
256 * --focus and --showdropped caused invalid output.
258 Command-line changes:
260 * New --prefixstrip option to make the graph more readable by
261 stripping a common prefix from all filenames.
263 * Obsolete (pre 0.1 !) --allfiles option was completely dropped.
265 Other end-user-visible changes
267 * More documentation has been written.
269 * The default project-class (and the sample wesnoth class) now
270 provide default singleton level-2 groups (so "--group 2-2" should
271 work on all projects).
273 Changes for the class writer:
275 * The tool expect a project class to build its dependency graph in an
276 init() method, instead of in the constructor.
278 * The project class constructor now takes an additional prefixstrip
279 argument. More changes to come in this area to cause such changes
280 to be less disruptive in the future.
282 * A project class can now specify excuses for abusive dependencies,
283 to be shown in as edges of a different color, and with the excuse
286 ==================================================
288 Version 0.1 - 2005-03-28
290 Initial public release.