Which is right?

H. S. Teoh via Digitalmars-d digitalmars-d at puremagic.com
Sun Feb 15 22:19:04 PST 2015


On Sun, Feb 15, 2015 at 04:02:30PM -0800, Andrei Alexandrescu via Digitalmars-d wrote:
[...]
> * We have the fastest compiler _and_ language in the world, yet it's
> impossible to unittest one module; unittesting one requires building a
> ton of unrelated stuff, which takes a long time.

I thought people have been complaining about this since a long time ago?
That they wanted more control over unittesting? That compiling user code
with -unittest also activates unittest blocks in 3rd party library code?
I guess it's about time to get our act together and fix that...


> * Documentation build dependencies are wrongly set up; after changing
> one std module, trying to rebuild dlang.org doesn't "get" it. You need
> to rebuild html in phobos with some arcane command line.

Welcome to the wonderfully simple world of makefiles. (Except when it's
not.) :-P


> * Don't get me started about the ddox build.
> 
> Right now the building and testing rig is quite suboptimal for
> significant phobos work. Worst of all, all of these issues were solved
> earlier. I'll do my part by increasing review scrutiny.
[...]

I know I'm biased, but these kinds of issues are exactly why I don't
like makefiles, and especially the fact that current makefiles have
out-of-tree dependencies. Those things may work reasonably well at
first, but they inevitably, inescapably, drift towards becoming a
hairball of unmaintainable mess. Eventually, to deal with the mess, you
end up reinventing what so many make alternatives have already done,
years ago.  Dmitry recently was working on implementing some SCons
scripts for the D repos, but nooo, we can't get rid of makefiles 'cos
they are "universal" and everybody knows them and we don't like to
change old habits and we just plain like makefiles. Sigh.

But ranting aside, it would be good to draft up an official Phobos
contributors' guidelines page (or update an existing one if it already
exists, and put it in a place where people can actually find it, since I
don't even know if such a thing exists and I've been contributing to
Phobos for quite some time -- the only thing I know of is the coding
style guidelines). Many common items belong there, like linking to the
style guidelines, correct @trusted usage, needing ddoc'd unittests,
coverage expectations, updating doc headers, updating makefiles
(including win32.mak and win64.mak, that often get neglected), updating
dlang.org for when the navbar needs to be updated, etc., etc..


T

-- 
Three out of two people have difficulties with fractions. -- Dirk Eddelbuettel


More information about the Digitalmars-d mailing list