New D tool releases

Hans-Albert Maritz via Digitalmars-d-announce digitalmars-d-announce at puremagic.com
Sat Jun 13 00:19:43 PDT 2015


On Monday, 8 June 2015 at 19:18:03 UTC, Brian Schott wrote:
> Dfix 0.2.2:
> https://github.com/Hackerpilot/dfix/releases/tag/v0.2.2
> * Fixed a bug that caused the string concatenation fix to be 
> applied
>   inside of "deprecated" attributes. I plan to revert this fix 
> if
>   dmd starts accepting `deprecated("string1" ~ "string2")`
>
> Dfmt 0.4.0-beta1 and 0.3.6
> https://github.com/Hackerpilot/dfmt/releases/tag/v0.3.6
> * Fix a spacing bug with function contracts
>
> https://github.com/Hackerpilot/dfmt/releases/tag/v0.4.0-beta1
> * Introduced support for `// dfmt off` and `// dfmt on` comments
> * Added the ability to configure spacing around the `:` in 
> selective
>   imports.
> * Added the ability to configure indentation of case statements.
> * Added the ability to configure indentation of attribute 
> declarations.
> * Added the ability to configure formatting of labeled loops.
>
> D-Scanner 0.2.0-beta1
> https://github.com/Hackerpilot/Dscanner/releases/tag/0.2.0-beta1
> * Fixed several bugs in the lint checks.
> * Added support for generating Emacs etags files.
> * `--imports` option can now work on more than one file at a 
> time
> * Added undocumented public declaration check.
> * Added unused label check.
> * Added check for variables with the same name as labels.
> * Added check for redundant parenthesis.
> * Added "line" field to ctags output to work with the Tagbar 
> plugin better.
> * Unused variable declaration check is now disabled inside of 
> __traits
>   expressions.
> * Undocumented declaration check is disabled for things marked
>   "deprecated" or "@disable".
> * Undocumented declaration check ignores @property functions.

Awesome tools! I implemented a syntax highlighter, as a 
replacement to the current custom lexer implementation, for 
dlangide similar to how XMLPrinter works. It was a breeze to 
implement it and resulted in a very powerful syntax highlighter.

I'm integrating the dscanner analysis tools now, but for scanning 
an entire project it would be awesome to use DCD's existing 
cache. I'm relatively new to D but I think a possible solution 
would be to implement a plugin system for DCD where applications 
can instruct DCD to dynamically load and execute the plugin 
through an interface. This would avoid the need for the IDE and 
DCD to both maintain their own cache of the parsed modules. An 
example plugin would be a dscanner analysis plugin.

Do you think this would be something of worth for me to pursue 
and possibly integrate with DCD?


More information about the Digitalmars-d-announce mailing list