Brendan Eich wrote:
> (Warren was right; waterson shouldn't have removed the REQUIRES
> requirement!)
In my defense, I was fixing problems that occurred ~weekly in the source
tree about a year-and-a-half ago.
1. Inconsistent support for REQUIRES across platforms led to platform
bustage. For example, Mac ``automatically'' grovels through subtrees to
find header files, meaning that a person who primarily developed on Mac
would unwittingly introduce a new module dependency, breaking Win32 and
Unix in the process.
2. Removing or moving header files leads to kooky build bustage in
depend builds, especially on Win32. Because Win32 _copies_ the header
files into $(DIST)/include, old versions of the headers tended to lurk
around causing bizarre build-, and sometimes even run-time bustage. This
is also a potential problem on Mac, where aliases continue to point to
files that are in the ``Trash'', but less so.
These aren't horrible problems, but they tended to keep the tree closed
because some people got good builds while others saw bustage or bizarre
behavior.
The down-side, as was noted, is that it's all too easy to introduce
bogo-dependencies. But we've got super-review now, right? ;-)
chris