D6 'Dolphin' package has circular dependency ?!

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
8 messages Options
Reply | Threaded
Open this post in threaded view
|

D6 'Dolphin' package has circular dependency ?!

Chris Uppal-3
Hi,

I don't know whether I've messed things up.  I don't see how I can have done,
but if not then I don't understand why this hasn't been mentioned before.

With a clean install of D6 (with or without patch 1).  Open the Package
Browser.  Find and select the 'Dolphin' package.  Go to the pre-requisites tab.
Turn on 'Show Status Icons' in the pre-requisites tree.  It (for me) shows an
error cross since 'Dolphin' depends on 'Dolphin Literal Filer', which in turn
depends on 'Dolphin.  That -- naturally -- means that /no/ packages can be
saved.  Eeeek !

The dependency is because ResourceIdentifier>>loadWithContext:forEdit: refers
to class STLInFiler.

As a workaround I just moved that method into 'Dolphin MVP Base'.  A hack, but
at least I can save packages again.

    -- chris


Reply | Threaded
Open this post in threaded view
|

Re: D6 'Dolphin' package has circular dependency ?!

Janos Kazsoki
Chris,

not in my version, although it shows the same dependencies: 'Dolphin
Literal Filer' depends on Dolphin, but everything is green...

Strange, has anybody an explanation, why the circular dependency is
green in this case?

Thanks,
Janos


Reply | Threaded
Open this post in threaded view
|

Re: D6 'Dolphin' package has circular dependency ?!

ChanHong Kim
I have encountered like Janos' situation.
So I restarted from new fresh image
and install my package carefully.

Hmmmm...


Reply | Threaded
Open this post in threaded view
|

Re: D6 'Dolphin' package has circular dependency ?!

Chris Uppal-3
In reply to this post by Janos Kazsoki
Janos,

> not in my version, although it shows the same dependencies: 'Dolphin
> Literal Filer' depends on Dolphin, but everything is green...

Thanks for the confirmation.


> Strange, has anybody an explanation, why the circular dependency is
> green in this case?

I suspect that it is something to do with the pre-requisite caching in Packages
(computing pre-requisites is very expensive so each Package keeps a record of
its pre-requisites and only recomputes it when necessary).

    -- chris


Reply | Threaded
Open this post in threaded view
|

Re: D6 'Dolphin' package has circular dependency ?!

Ian Bartholomew-21
In reply to this post by Chris Uppal-3
Chris,

> With a clean install of D6 (with or without patch 1).  Open the Package
> Browser.  Find and select the 'Dolphin' package.  Go to the pre-requisites tab.
> Turn on 'Show Status Icons' in the pre-requisites tree.  It (for me) shows an
> error cross since 'Dolphin' depends on 'Dolphin Literal Filer', which in turn
> depends on 'Dolphin.  That -- naturally -- means that /no/ packages can be
> saved.  Eeeek !

I can't see the problem in either a clean or updated image.

In a clean D6 I don't have a
ResourceIdentifier>>loadWithContext:forEdit: method.

In D6 with patch 1 I do have the method but it is packaged as a loose
method in the Dolphin MVP Base package.  Looking at the PL1 script it
should install the method in the same package as the Shell class - which
it does.

--
Ian

Use the Reply-To address to contact me (limited validity).
Mail sent to the From address is ignored.


Reply | Threaded
Open this post in threaded view
|

Re: D6 'Dolphin' package has circular dependency ?!

Chris Uppal-3
Ian,

> I can't see the problem in either a clean or updated image.
>
> In a clean D6 I don't have a
> ResourceIdentifier>>loadWithContext:forEdit: method.

Ah, then I think what has happened is that I've somehow infected my supposedly
clean image with the beta for patch 1.  Why applying the real version of patch
1 didn't fix it, I don't know, but I don't really care since starting again
from an as-freshly-installed image fixes it.

Thank you.

    -- chris


Reply | Threaded
Open this post in threaded view
|

Re: D6 'Dolphin' package has circular dependency ?!

Ian Bartholomew-21
Chris,

>   Why applying the real version of patch
> 1 didn't fix it, I don't know,

Replacing a method with a loose method in a package will not change the
package of the existing method.  The beta patch obviously put the method
in the "Dolphin Literal Filer" package and updating the method using the
final patch didn't change that.

Filing the final patch into a clean image puts the loose method into the
default package (as defined in the patch file) as it is a completely new
method.

--
Ian

Use the Reply-To address to contact me (limited validity).
Mail sent to the From address is ignored.


Reply | Threaded
Open this post in threaded view
|

Re: D6 'Dolphin' package has circular dependency ?!

Blair McGlashan-3
"Ian Bartholomew" <[hidden email]> wrote in message
news:[hidden email]...

> Chris,
>
>>   Why applying the real version of patch
>> 1 didn't fix it, I don't know,
>
> Replacing a method with a loose method in a package will not change the
> package of the existing method.  The beta patch obviously put the method
> in the "Dolphin Literal Filer" package and updating the method using the
> final patch didn't change that.
>
> Filing the final patch into a clean image puts the loose method into the
> default package (as defined in the patch file) as it is a completely new
> method.
>

Exactly (thanks Ian). We should have made it clear that if you install a
beta patch, that subsequent releases of the patch (including the final one)
might not undo all the effects of the previous version of the patch. You
really have to start with a fresh image to install a patch.

Regards

Blair