[V3dot10] Case Study 1 (Answering Milan from needed Tool
Bert Freudenberg
bert at freudenbergs.de
Wed Jan 24 14:58:19 UTC 2007
On Jan 24, 2007, at 15:38 , Ralph Johnson wrote:
> On 1/24/07, Jerome Peace <peace_the_dreamer at yahoo.com> wrote:
>> |I must be wrong, but I'd like to understand how such
>> situation is dealt with
>> |in Monticello.
>
> I followed back to the original posts. That is a great story!
>
> In short, if Package1 requires a change to a method in Package2 then
> you should NOT move the method to Package2. instead, you should make
> a new version of Package2 and Package1 requires that new version, not
> the old one. The problem is thiinking that "change" is the same as
> "new version of a package". Often changes cut across package
> boundaries.
>
> The worst is refactorings. Suppose we decide to change the name of
> the #add: method. This is easy to do in the refactoring browser. it
> will require changine nearly every package, and if you use one of
> these new versions, you will want to use them all. In general,
> version control systems do not deal well with changes to interfaces of
> packages.
Yep. On a related note, what you *absolutely* must not do in the base
system is using Monticello overrides. It is tempting sometimes, but
introduces so much problems it is not worth the hassle.
- Bert -
More information about the V3dot10
mailing list