Boost logo

Boost-Build :

From: Rene Rivera (grafik666_at_[hidden])
Date: 2002-03-24 01:48:27


On 2002-03-24 at 12:08 AM, david.abrahams_at_[hidden] (David Abrahams) wrote:

><little picture>
>Some recent changes have caused tests of Python modules to fail to have
>the appropriate PYTHONPATH set up.
>
>What is the point of this new gIS_DEPENDENCY() pseudo-function variable?
>It seems to be true for everything other than PYD, and the fact that
>it's checked causes strange assymetries. That's not the whole problem,
>though. I threw in some quick fixes which seem to get things right, but
>I don't have much confidence in the state of the code right now.
></little picture>

Hmm, forgot about PYD targets :-( My fault. EXEs right are the only things
which aren't dependencies to declare-local-target.

><big picture>
>I don't recognize lots of the code anymore. That would be OK if the code
>as a whole were more maintainable, and if we had a reliable suite of
>tests that would tell us if any change caused breakage. I'm afraid that
>Boost.Build is becoming a victim of its own success. People find v1 to
>be so useful that they're constantly coming along with patches, each of
>which causes some amount of breakage and draws our attention away from
>the maintainable rewrite (v2) we're supposedly working on. Meanwhile,
>since Rene has taken responsibility for v1 maintenance /and/ for the
>startup code in v2, progress is impeded as he is occupied with
>fascinating v1 improvements**
>
>If we can all agree, I'd like to declare a moratorium on modifications
>to v1 other than fixes for SERIOUS bugs. There are two reasons for my
>suggestion:
>
>a. in order to make progress on v2.
>b. so that boost has a stable and working build system during v2
>development
></big picture>

Agreed, every time I think the feature set is done with for a while someone
comes up with something else, and a patch for it. One of the things that has
gotten us, mostly me in this case, in trouble is the lack of documentation for
the features that currently exist. And therefore getting broken when new code
comes in.

Some of the changes I've made are my attempt at cleaning up some of the
convoluted code structure that has crept into V1. Dave this is a consequence
of the suggestions to factor out things, to clean up code.

I think it's time to stop that. I agree it's time to stop V1 development.
Every time I go into that code I keep wishing I was doing V2 instead :-\

>>From V1 code point of view I'd like to see instead an effort to document the
current interface, what it does, or rather what it should do. We need this so
we can tell what's a bug or not. And we need it for V2 implementation. This is
the counterpart to the architecture docs of V2.

Also any new features we think of or receive from others should, instead of
getting patched in, be commented on, documented and added to the V2 todo list.
The absence of this documentation is what currently worries me about V2 also.
We have docs on the internal implementation of V2 will be but not of what the
top level features it's trying to implement, other than the existing V1 code.
And as we all know code is the worst documentation ;-|

>**No, it's not just Rene. I did the PYD and vc6/vc7 stuff, which I
>needed for my own work.

Yep, we all do it because of our work. I was eager to put in the template rule
because it will immediately help in cleaning up my ever growing number of
Jamfiles in my project.

-- grafik - Don't Assume Anything
-- rrivera_at_[hidden] - grafik_at_[hidden]
-- 102708583_at_icq - Grafik666_at_AIM - Grafik_at_[hidden]

 


Boost-Build list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk