On Wednesday, 8 October 2014 at 07:52:37 UTC, Dmitry Olshansky
wrote:
On Tuesday, 7 October 2014 at 21:59:08 UTC, Peter Alexander
Okay, I think I should go a bit futher with the second version
of the tool.
Things on todo list:
- make tool general enough to work for any GitHub based
project (and hackable for other hostings)
- use Brian's D parser to accurately find artifacts
- detect "throw new SomeStuff" pattern and automatically
populate potential fix line
- list all source links in one coulmn for the same function
(this needs proper parser)
- use blacklist of <module-name>:<artifact name> to filter out
CTFE
- use current data from wiki for "potential fix" column if
present
The new version is out, it's a bit rough for a proper
announcement yet and misses a couple of things from my todo list
but the improvement is so radical I decided to share it anyway.
With the new pattern-matcher/parser I hacked together in on top
of Brain's lexer it's now surgically precise in labeling
artifacts. Also I retained as much as possible of original
comments (line numbers have changed), and grouped source links
per artifact.
Updated Wiki:
http://wiki.dlang.org/Stuff_in_Phobos_That_Generates_Garbage
Tool:
https://github.com/DmitryOlshansky/gchunt
Also it's "universal" as in any github-hosted D project, for
example here is an output for druntime:
http://wiki.dlang.org/Stuff_in_Druntime_That_Generates_Garbage
Still todo:
- blacklisting of modules/artifacts
- detect usage of (i)dup
- label throw new xyz as `EX`
- a few bugs to fix in artifact labeling