3 End-user-visible changes
7 * Can now be run from source dir with no effort.
9 ==================================================
13 End-user-visible changes
15 * Directory arguments are now searched for files, allowing to handle
16 projects with a large number of files.
18 * New --fileregexp option to override the per-language regexp used to
19 look for files inside directories.
21 * More statistics are available in the report file.
23 Changes for the class writer:
25 * extractors' getdeps methods cannot rely any more on @ARGV
26 containing the files list, and must get it from the FILES instance
29 ==================================================
35 * The '.graph-includes.report' suffix used when using --output did
36 not include the first dot.
38 Other end-user-visible changes
40 * Visible edges are now labelled with the number of real dependencies
41 they represent, so we have some visual feedback of transitive
44 * Huge performance boost for the transitive reduction.
46 * When cycles are present, the specific reduction selected is usually
47 a different one than in 0.6.1 and below, as a side-effect of
48 implementation changes.
50 * More documentation has been written.
52 Changes for the class writer:
54 * project::record_missing_dep was split out of project::record_dep.
56 * Dependencies are now stored in a hash instead of an array.
58 * The "label" special_edge attribute is now an array of strings, to
59 be presented on several lines.
61 ==================================================
67 * Fixed the distribution which misses the C and perl extractors.
69 ==================================================
75 * A typo in the graphincludes::params package prevented the
76 parameters default values to be used.
80 * New --language flag to select syntax of source files.
82 * Preliminary support for extracting perl dependencies, using
85 Changes for the class writer:
87 * C-specific behaviour is now located in new extractor::C class.
89 * Changed special_edge() return value to an hash of graphviz node
92 * More methods were moved from project::default up to ancestor
95 ==================================================
101 * --Include is now recognized as long form for -I.
103 * New --sysInclude option to specify system directories. Included
104 files not found in the project, but found in those directories are
105 not considered as "not found".
107 Other end-user-visible changes
109 * Removed inconditional duplicate warnings flooding the output.
111 * Verbose diagnostics are now output unconditionally into a
112 graph-includes.report (or <file>.graph-includes.report) file.
114 Changes for the class writer:
116 * The constructor for the project classes now uses named parameters,
117 instead of positional parameters.
118 * Global parameters were moved to a new graphincludes::params package.
120 ==================================================
124 Command-line changes:
126 * Implemented cpp-like "-I <dir>" syntax for #include lookup,
127 dropping the infamous former ad-hoc heuristic.
129 Other end-user-visible changes
131 * `#include "..."' are now analyzed using the standard cpp semantics,
132 and `#include <...>' line are now considered as well.
136 * Many code cleanups.
138 ==================================================
144 * Fixed a bug in the ad-hoc #include resolver which caused some
145 dependencies to be ignored
147 Command-line changes:
149 * New --paper option to get a graph printable on paper (for now, only
152 Other end-user-visible changes
154 * More documentation has been written.
156 ==================================================
162 * --output would reject its argument.
164 * --focus and --showdropped caused invalid output.
166 Command-line changes:
168 * New --prefixstrip option to make the graph more readable by
169 stripping a common prefix from all filenames.
171 * Obsolete (pre 0.1 !) --allfiles option was completely dropped.
173 Other end-user-visible changes
175 * More documentation has been written.
177 * The default project-class (and the sample wesnoth class) now
178 provide default singleton level-2 groups (so "--group 2-2" should
179 work on all projects).
181 Changes for the class writer:
183 * The tool expect a project class to build its dependency graph in an
184 init() method, instead of in the constructor.
186 * The project class constructor now takes an additional prefixstrip
187 argument. More changes to come in this area to cause such changes
188 to be less disruptive in the future.
190 * A project class can now specify excuses for abusive dependencies,
191 to be shown in as edges of a different color, and with the excuse
194 ==================================================
198 Initial public release.