
"Martin Wille" <mw8329@yahoo.com.au> wrote in message news:4201D178.60406@yahoo.com.au...
Gennadiy Rozental wrote:
It's been deprecated *since the dawn of time*. I planned post an announcement together with library update announcement.
Still, developers like to avoid broken regression tests; they're upsetting to developers at best. A simple post with advance warning that you were going to remove BOOST_TEST would have given everyone an opportunity to prevent a large swath of red squares.
What's wrong with red squares? Isn't it a basic paradigm of TDD? You make change - you fix all the test cases that failed. Failing test cases is your announcement that something needs to be done. Anyway 3 years should've been enough to get rid of tools that were announced deprecated.
Well, one thing that is wrong with red squares is that they cost resources.
Sure. Testing cost resources. But it brings real value instead. In this case, for example, it served as a change announcement. It general it brings a level of confidence so you could make any changes. If anything breakes test system tells you so. In extreme TDD you start with all test cases failing (some of them written even before implementation is done) and then fix them.
Testing time significantly grows with the number of failing tests.
Why is that? You need to redo any test case affected in any case, right? So test failing in compile time, for example, may actually decrease testing time (no linking, no running)
Giving the developers a chance to phase out BOOST_TEST would have decreased the number of attempts to compile broken code.
It's kinda unclear what change needs to be pre-anounced and which not. Any anouncement assumes some grace period (and what if some developers are unavailable or missed an anouncement?). It also assumes that something should be done before the change will actually happend. It all eventually leads to longer development time for one who make an anouncement. Amount of time/work for the rest of developers is the same (I would guess that it even less with known test cases that needs to be fixed and change already in place). In any case I do not see a failing test case as a something to be upset about. Rather I feel satisfaction that testing system again helped me. It much worse when all test cases are passing and you finding error only in users reports. This makes tests a most valuable and salvagable part of any project (IMO)
OTOH, if it has been deprecated for a long time, then developers should have phased it out already. Anyway, a heads-up would have been helpful.
Regards, m
Gennadiy P.S. Above sentiments of course assumes that all the developers making changes actually to improve the project, not to break one ;)