Login  Register

Re: SCCS integration problems

Posted by Chris Uppal-2 on Apr 01, 2001; 3:58pm
URL: https://forum.world.st/SCCS-integration-problems-tp3359998p3360017.html

Blair,

> The individual objects in the package (classes, resources, etc) are also
> flagged individually as "changed", and events are triggered when they are
> changed/added (see the events published by SmalltalkSystem and
> ResourceManager). These are the events that are picked up by the various
> browers to keep them in sync.

Has this changed in D4.01?  I used (in D4.0) to just catch #packageChanged
from the PackageManager, which worked OK up till recently (I think).  Bob's
note made me realise that things had stopped working.

I'm not sure now what I ought to be trapping (as you may remember, I have a
need to keep up-to-date with all the currently loaded packages), after some
hours getting badly confused while trying to get my stuff working again, I'm
now trapping all of:

    #loadedChanged
    #owndedChanged
    #prerequisitesReset
    #classRepackaged:from:to:
    #methodRepackaged:from:to:
    #resourceRepackaged:from:to:
    #globalRepackaged:from:to:
    #packageChanged:

as they are generated by the PM .

That works OK again now, *except* that I'm no longer getting told about
changes to any of:

    package version
    package comment
    package scripts

unless they cause the package's changed flag to get set.

This affects the "standard" package browser too, so there's been a
regression to the days when changes to packages' comments, etc, weren't
propagated properly.

Can I ask that you go back to the old behaviour for the #packageChanged:
notification please ?  It seems more logical to me, anyway.

Also, I *think* that it's unnecessary for me to be trapping the 4 new
events:
    #classRepackaged:from:to:
    #methodRepackaged:from:to:
    #resourceRepackaged:from:to:
    #globalRepackaged:from:to:
since they are only sent when #ownedChanged: is sent (and I don't need the
extra detail).  Can you confirm that that is how you intend it to be used
please ?

(BTW, those 4 haven't been added to PackageManager
class>>publishedEventsOfInstances, I presume that's just an oversight).

I don't know if it's bug or not, but you used to generate
#prerequisitesReset whenever a method was changed (on the grounds that the
prerequisites cache was possibly out-of-date).  That doesn't seem to happen
anymore.  I'd have said that the old behaviour was more correct.

> Blair

    -- chris