Code size without documentation comments and unittests
Andrei Alexandrescu via Digitalmars-d
digitalmars-d at puremagic.com
Sat Feb 25 21:50:32 PST 2017
On 2/25/17 2:55 PM, Timothee Cour via Digitalmars-d wrote:
> Try dscanner --sloc although IMO --tokenCount should be the most
> relevant metric (only caveat is mixin strings with which one could cheat
> to make token count smaller).
Thanks, got that working with ease. The operation of dub has gotten
quite a bit smoother, props to Sönke!
One thing that I found surprising is the chatter that seems impossible
to mute. Here's a session:
$ dub run dscanner -- --sloc ../phobos/std/traits.d
Building package dscanner in /Users/andrei/.dub/packages/dscanner-0.4.0/
Target libdparse 0.7.0 is up to date. Use --force to rebuild.
Target emsi_containers 0.5.3 is up to date. Use --force to rebuild.
Target dsymbol 0.2.0 is up to date. Use --force to rebuild.
Target inifiled 0.0.6 is up to date. Use --force to rebuild.
Target dscanner 0.4.0 is up to date. Use --force to rebuild.
Running ../../.dub/packages/dscanner-0.4.0/dscanner --sloc
../phobos/std/traits.d
../phobos/std/traits.d: 3747
total: 3747
I might be missing something, so bear with me. My current understanding is:
* The usual way to run stuff gotten via dub is with "dub run", so that
people don't need to deal with version directories and complex paths
such as ~/.dub/packages/dscanner-0.4.0/dscanner.
* There is no easy way to get rid of the chatteroo prefacing the actual
output from the application. One possibility I imagine is a rather
gnarly sed script that prints nothing until it detects '^Running ', and
then starts printing everything.
* There is even no --quiet option
(https://code.dlang.org/docs/commandline#run) with run that instructs
dub to not inform about things being up to date.
Are these correct? In that case, dub runs afoul of the Rule of Silence:
the command "dub run xyz" should only output whatever xyz outputs if dub
takes no actual additional build steps. By the RoS, there might be a
--verbose flag with dmd run that prints the above.
What am I missing?
Thanks,
Andrei
More information about the Digitalmars-d
mailing list