Promoted Object, Node, and Edge into DEPS namespace
[deps.git] / NEWS
blob9549c928d14334241ded0a4a81c49a5f0ce88bb5
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.
8  Bugs fixed:
10  * Fixed the uniqueincludes project class, which has been broken since
11    the 0.6 reorganization.
13  * Calculation of edge weights was wrong.
15  Under the hood:
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
23    of graphs.
25  * Many API changes.
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
37    win32.
39  * The C extractor now looks in for system headers in /usr/include by
40    default.
42  * The Perl extractor uses the default @INC value to locate system
43    headers.
45  Changes for the class writer:
47  * Per-language extractors can now declare a default system-include
48    path.
50  Bugs fixed:
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
76  Bugs fixed:
78  * Fixed a typo preventing the recursive search to see .c and .h
79    files.
81 ==================================================
83 Version 0.9 - 2005-06-01
85  Bugs fixed:
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.
93  * New --version flag.
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
119    variable.
121 ==================================================
123 Version 0.7 - 2005-05-10
125  Bugs fixed:
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
134    reduction.
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
157  Bugs fixed:
159  * Fixed the distribution which misses the C and perl extractors.
161 ==================================================
163 Version 0.6 - 2005-04-24
165  Bugs fixed:
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
175    "--language perl"
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
185    classes.
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.
226  Under the hood
228  * Many code cleanups.
230 ==================================================
232 Version 0.3 - 2005-04-14
234  Bugs fixed:
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
242    a4, a3 and letter)
244  Other end-user-visible changes
246  * More documentation has been written.
248 ==================================================
250 Version 0.2 - 2005-04-01
252  Bugs fixed:
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
284    as a label.
286 ==================================================
288 Version 0.1 - 2005-03-28
290  Initial public release.