Metacello and suffixes in package names

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

Metacello and suffixes in package names

Usman Bhatti
Hi,

It seems that Metacello does not consider PackageName-xyz and PacakgeName-BranchName-xyz as the same package. I suspect it because when I look at the packages loaded by two different configurations with and without branch names as package name suffixes are not the same. Could someone knowing the internals of Metacello confirm it?

So, here is a log of Metacello of the loadDirective for ConfigOfGlamour with and without packages with branch names. I have truncated the output to highlight important parts of the log.

----------- Metacello log follows ----------------------

Without branching (Rubric and Glamour-Morphic-Renderer loaded only once):
linear load : 
atomic load : 3.3.0 [ConfigurationOfGlamour]
linear load : 3.1.3.Moose51 [ConfigurationOfGlamourCore]
--------------------List of Packages----------------
atomic load : 1.2.14.Moose51 [ConfigurationOfRubric]
load : Rubric-AndreiChis.207
                            load : Glamour-Morphic-Renderer-AndreiChis.324
--------------------List of Packages----------------
linear load : 1.13 [ConfigurationOfRoassal2]
linear load : 3.1.4 [ConfigurationOfGlamourCore]
--------------------List of Packages----------------

With branching (old versions overwrites the fixes):

linear load : 
atomic load : 3.3.0 [ConfigurationOfGlamour]
linear load : 3.1.3.Moose51 [ConfigurationOfGlamourCore]
--------------------List of Packages----------------
atomic load : 1.2.14.Moose51 [ConfigurationOfRubric]
load : Rubric-Moose51-usmanbhatti.207
                       load : Glamour-Morphic-Renderer-Moose51-usmanbhatti.324
--------------------List of Packages----------------
linear load : 1.13 [ConfigurationOfRoassal2]
linear load : 3.1.4 [ConfigurationOfGlamourCore]
atomic load : 1.2.15 [ConfigurationOfRubric]
load : Rubric-AlainPlantec.206
load : Glamour-Morphic-Renderer-AndreiChis.321
--------------------List of Packages----------------

---------------

What it actually changes is packages with branch name are overwritten with their predecessors and hence fixes are not correctly included in the resulting image. It seems that ensuring correct loading in the presence of branched packages requires no other configuration is loading previous versions of the branched packages.

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Metacello and suffixes in package names

Thierry Goubier
Hi Usman,

as far as I know, I see two things:

- Metacello and Monticello have no true concept of branch names in their code; there is code where when you decode a package version name, you throw away some of the name to keep only the package name, the version and the author.

and:

- In your example, branch names are not written correctly: from filetree on ss3 (http://ss3.gemstone.com/ss/FileTree/), what you see is that it should be: PackageName.branch-author.version.mcz

Thierry


2015-09-11 15:09 GMT+02:00 Usman Bhatti <[hidden email]>:
Hi,

It seems that Metacello does not consider PackageName-xyz and PacakgeName-BranchName-xyz as the same package. I suspect it because when I look at the packages loaded by two different configurations with and without branch names as package name suffixes are not the same. Could someone knowing the internals of Metacello confirm it?

So, here is a log of Metacello of the loadDirective for ConfigOfGlamour with and without packages with branch names. I have truncated the output to highlight important parts of the log.

----------- Metacello log follows ----------------------

Without branching (Rubric and Glamour-Morphic-Renderer loaded only once):
linear load : 
atomic load : 3.3.0 [ConfigurationOfGlamour]
linear load : 3.1.3.Moose51 [ConfigurationOfGlamourCore]
--------------------List of Packages----------------
atomic load : 1.2.14.Moose51 [ConfigurationOfRubric]
load : Rubric-AndreiChis.207
                            load : Glamour-Morphic-Renderer-AndreiChis.324
--------------------List of Packages----------------
linear load : 1.13 [ConfigurationOfRoassal2]
linear load : 3.1.4 [ConfigurationOfGlamourCore]
--------------------List of Packages----------------

With branching (old versions overwrites the fixes):

linear load : 
atomic load : 3.3.0 [ConfigurationOfGlamour]
linear load : 3.1.3.Moose51 [ConfigurationOfGlamourCore]
--------------------List of Packages----------------
atomic load : 1.2.14.Moose51 [ConfigurationOfRubric]
load : Rubric-Moose51-usmanbhatti.207
                       load : Glamour-Morphic-Renderer-Moose51-usmanbhatti.324
--------------------List of Packages----------------
linear load : 1.13 [ConfigurationOfRoassal2]
linear load : 3.1.4 [ConfigurationOfGlamourCore]
atomic load : 1.2.15 [ConfigurationOfRubric]
load : Rubric-AlainPlantec.206
load : Glamour-Morphic-Renderer-AndreiChis.321
--------------------List of Packages----------------

---------------

What it actually changes is packages with branch name are overwritten with their predecessors and hence fixes are not correctly included in the resulting image. It seems that ensuring correct loading in the presence of branched packages requires no other configuration is loading previous versions of the branched packages.

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev



_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Metacello and suffixes in package names

Stephan Eggermont-3


On 11-09-15 15:52, Thierry Goubier wrote:

> Hi Usman,
>
> as far as I know, I see two things:
>
> - Metacello and Monticello have no true concept of branch names in their
> code; there is code where when you decode a package version name, you throw
> away some of the name to keep only the package name, the version and the
> author.
>
> and:
>
> - In your example, branch names are not written correctly: from filetree on
> ss3 (http://ss3.gemstone.com/ss/FileTree/), what you see is that it should
> be: PackageName.branch-author.version.mcz

So that means that they should preferably not be in a separate repository?

Stephan
_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Metacello and suffixes in package names

Thierry Goubier


2015-09-11 16:05 GMT+02:00 stephan <[hidden email]>:


On 11-09-15 15:52, Thierry Goubier wrote:
Hi Usman,

as far as I know, I see two things:

- Metacello and Monticello have no true concept of branch names in their
code; there is code where when you decode a package version name, you throw
away some of the name to keep only the package name, the version and the
author.

and:

- In your example, branch names are not written correctly: from filetree on
ss3 (http://ss3.gemstone.com/ss/FileTree/), what you see is that it should
be: PackageName.branch-author.version.mcz

So that means that they should preferably not be in a separate repository?

Due to the naming bug in MC and package cache, yes, they should be kept in the same repository (so that you can notice you are overwritting a stable good version with a newer one of the same name and crash everything for all users... otherwise the bug will appear under certain conditions in a user package cache ;) ).

Oh, yes, for fun. MC uses the branch when loading the package, to throw the branch name away inside Pharo; to makes it almost impossible to you to keep using the correct branch name when saving your developments on that branch :(

Thierry



Stephan

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev


_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Metacello and suffixes in package names

Dale Henrichs-3
In reply to this post by Stephan Eggermont-3


On 9/11/15 7:05 AM, stephan wrote:

>
>
> On 11-09-15 15:52, Thierry Goubier wrote:
>> Hi Usman,
>>
>> as far as I know, I see two things:
>>
>> - Metacello and Monticello have no true concept of branch names in their
>> code; there is code where when you decode a package version name, you
>> throw
>> away some of the name to keep only the package name, the version and the
>> author.
>>
>> and:
>>
>> - In your example, branch names are not written correctly: from
>> filetree on
>> ss3 (http://ss3.gemstone.com/ss/FileTree/), what you see is that it
>> should
>> be: PackageName.branch-author.version.mcz
>
> So that means that they should preferably not be in a separate
> repository?
FileTree uses the PackageName.branch to name the directory in which the
package is stored, so it is safe (and desirable) to keep branches in the
same repository.

Dale
_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Metacello and suffixes in package names

Dale Henrichs-3
In reply to this post by Thierry Goubier


On 9/11/15 6:52 AM, Thierry Goubier wrote:
> Hi Usman,
>
> as far as I know, I see two things:
>
> - Metacello and Monticello have no true concept of branch names in
> their code; there is code where when you decode a package version
> name, you throw away some of the name to keep only the package name,
> the version and the author.
>

I prefer to state this slightly differently:)

Monticello has no first class support of package branches. The naming
convention referred to by Thierry is only a file naming convention.

Metacello _honors_ the Monticello naming convention, by allowing you to
specify that a branch be used by allowing you to associate a filename
with a package:

   spec package: 'Seaside-Core' with: [spec file: 'Seaside-Core.gemstone' ]

Dale
_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Metacello and suffixes in package names

Usman Bhatti
In reply to this post by Thierry Goubier
Hi Thierry,

On Fri, Sep 11, 2015 at 3:52 PM, Thierry Goubier <[hidden email]> wrote:
Hi Usman,

as far as I know, I see two things:

- Metacello and Monticello have no true concept of branch names in their code; there is code where when you decode a package version name, you throw away some of the name to keep only the package name, the version and the author.

That's what I thought too.
 

and:

- In your example, branch names are not written correctly: from filetree on ss3 (http://ss3.gemstone.com/ss/FileTree/), what you see is that it should be: PackageName.branch-author.version.mcz

I see, I am probably not specifying my branches correctly so I'll have a look at it.

Tx for your answer.
 

Thierry


2015-09-11 15:09 GMT+02:00 Usman Bhatti <[hidden email]>:
Hi,

It seems that Metacello does not consider PackageName-xyz and PacakgeName-BranchName-xyz as the same package. I suspect it because when I look at the packages loaded by two different configurations with and without branch names as package name suffixes are not the same. Could someone knowing the internals of Metacello confirm it?

So, here is a log of Metacello of the loadDirective for ConfigOfGlamour with and without packages with branch names. I have truncated the output to highlight important parts of the log.

----------- Metacello log follows ----------------------

Without branching (Rubric and Glamour-Morphic-Renderer loaded only once):
linear load : 
atomic load : 3.3.0 [ConfigurationOfGlamour]
linear load : 3.1.3.Moose51 [ConfigurationOfGlamourCore]
--------------------List of Packages----------------
atomic load : 1.2.14.Moose51 [ConfigurationOfRubric]
load : Rubric-AndreiChis.207
                            load : Glamour-Morphic-Renderer-AndreiChis.324
--------------------List of Packages----------------
linear load : 1.13 [ConfigurationOfRoassal2]
linear load : 3.1.4 [ConfigurationOfGlamourCore]
--------------------List of Packages----------------

With branching (old versions overwrites the fixes):

linear load : 
atomic load : 3.3.0 [ConfigurationOfGlamour]
linear load : 3.1.3.Moose51 [ConfigurationOfGlamourCore]
--------------------List of Packages----------------
atomic load : 1.2.14.Moose51 [ConfigurationOfRubric]
load : Rubric-Moose51-usmanbhatti.207
                       load : Glamour-Morphic-Renderer-Moose51-usmanbhatti.324
--------------------List of Packages----------------
linear load : 1.13 [ConfigurationOfRoassal2]
linear load : 3.1.4 [ConfigurationOfGlamourCore]
atomic load : 1.2.15 [ConfigurationOfRubric]
load : Rubric-AlainPlantec.206
load : Glamour-Morphic-Renderer-AndreiChis.321
--------------------List of Packages----------------

---------------

What it actually changes is packages with branch name are overwritten with their predecessors and hence fixes are not correctly included in the resulting image. It seems that ensuring correct loading in the presence of branched packages requires no other configuration is loading previous versions of the branched packages.

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev



_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev



_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Metacello and suffixes in package names

Dale Henrichs-3
In reply to this post by Usman Bhatti


On 9/11/15 6:09 AM, Usman Bhatti wrote:
Hi,

It seems that Metacello does not consider PackageName-xyz and PacakgeName-BranchName-xyz as the same package. I suspect it because when I look at the packages loaded by two different configurations with and without branch names as package name suffixes are not the same. Could someone knowing the internals of Metacello confirm it?

So, here is a log of Metacello of the loadDirective for ConfigOfGlamour with and without packages with branch names. I have truncated the output to highlight important parts of the log.

----------- Metacello log follows ----------------------

Without branching (Rubric and Glamour-Morphic-Renderer loaded only once):
linear load : 
atomic load : 3.3.0 [ConfigurationOfGlamour]
linear load : 3.1.3.Moose51 [ConfigurationOfGlamourCore]
--------------------List of Packages----------------
atomic load : 1.2.14.Moose51 [ConfigurationOfRubric]
load : Rubric-AndreiChis.207
                            load : Glamour-Morphic-Renderer-AndreiChis.324
--------------------List of Packages----------------
linear load : 1.13 [ConfigurationOfRoassal2]
linear load : 3.1.4 [ConfigurationOfGlamourCore]
--------------------List of Packages----------------

With branching (old versions overwrites the fixes):

linear load : 
atomic load : 3.3.0 [ConfigurationOfGlamour]
linear load : 3.1.3.Moose51 [ConfigurationOfGlamourCore]
--------------------List of Packages----------------
atomic load : 1.2.14.Moose51 [ConfigurationOfRubric]
load : Rubric-Moose51-usmanbhatti.207
                       load : Glamour-Morphic-Renderer-Moose51-usmanbhatti.324
--------------------List of Packages----------------
linear load : 1.13 [ConfigurationOfRoassal2]
linear load : 3.1.4 [ConfigurationOfGlamourCore]
atomic load : 1.2.15 [ConfigurationOfRubric]
load : Rubric-AlainPlantec.206
load : Glamour-Morphic-Renderer-AndreiChis.321
--------------------List of Packages----------------
---------------
What it actually changes is packages with branch name are overwritten with their predecessors and hence fixes are not correctly included in the resulting image. It seems that ensuring correct loading in the presence of branched packages requires no other configuration is loading previous versions of the branched packages.


While Thierry's comments (and my own) apply, I'd like to dive a little deeper into this for a minute ... I would like to compare the Metacello specs for Glamour-Morphic-Renderer  in ConfigurationOfGlamourCore (that resolves to Glamour-Morphic-Renderer-Moose51-usmanbhatti.324) and the spec for Glamour-Morphic-Renderer in ConfigurationOfRubric (that resolves to Glamour-Morphic-Renderer-AndreiChis.321)...

I see that in Glamour-Morphic-Renderer-Moose51-usmanbhatti.324 the version number (324 ... which btw is another convention:) is greater than 321, so I do believe that if you had been using the branch naming conventions Glamour-Morphic-Renderer-AndreiChis.321 would not have been loaded .... and I suppose we'll find out shortly:)

I _am_ curious about the package meta information for Glamour-Morphic-Renderer-Moose51-usmanbhatti.324 ... when you crack open that package (inspect the ancestry of working copy) what package name is associated with the latest ancestor? I've seen cases where the package meta data has drifted significantly from the name of the file used to house the package and that has lead to interesting image state, to say the least.

Dale

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Metacello and suffixes in package names

Usman Bhatti


On Fri, Sep 11, 2015 at 4:55 PM, Dale Henrichs <[hidden email]> wrote:


On 9/11/15 6:09 AM, Usman Bhatti wrote:
Hi,

It seems that Metacello does not consider PackageName-xyz and PacakgeName-BranchName-xyz as the same package. I suspect it because when I look at the packages loaded by two different configurations with and without branch names as package name suffixes are not the same. Could someone knowing the internals of Metacello confirm it?

So, here is a log of Metacello of the loadDirective for ConfigOfGlamour with and without packages with branch names. I have truncated the output to highlight important parts of the log.

----------- Metacello log follows ----------------------

Without branching (Rubric and Glamour-Morphic-Renderer loaded only once):
linear load : 
atomic load : 3.3.0 [ConfigurationOfGlamour]
linear load : 3.1.3.Moose51 [ConfigurationOfGlamourCore]
--------------------List of Packages----------------
atomic load : 1.2.14.Moose51 [ConfigurationOfRubric]
load : Rubric-AndreiChis.207
                            load : Glamour-Morphic-Renderer-AndreiChis.324
--------------------List of Packages----------------
linear load : 1.13 [ConfigurationOfRoassal2]
linear load : 3.1.4 [ConfigurationOfGlamourCore]
--------------------List of Packages----------------

With branching (old versions overwrites the fixes):

linear load : 
atomic load : 3.3.0 [ConfigurationOfGlamour]
linear load : 3.1.3.Moose51 [ConfigurationOfGlamourCore]
--------------------List of Packages----------------
atomic load : 1.2.14.Moose51 [ConfigurationOfRubric]
load : Rubric-Moose51-usmanbhatti.207
                       load : Glamour-Morphic-Renderer-Moose51-usmanbhatti.324
--------------------List of Packages----------------
linear load : 1.13 [ConfigurationOfRoassal2]
linear load : 3.1.4 [ConfigurationOfGlamourCore]
atomic load : 1.2.15 [ConfigurationOfRubric]
load : Rubric-AlainPlantec.206
load : Glamour-Morphic-Renderer-AndreiChis.321
--------------------List of Packages----------------
---------------
What it actually changes is packages with branch name are overwritten with their predecessors and hence fixes are not correctly included in the resulting image. It seems that ensuring correct loading in the presence of branched packages requires no other configuration is loading previous versions of the branched packages.


While Thierry's comments (and my own) apply, I'd like to dive a little deeper into this for a minute ... I would like to compare the Metacello specs for Glamour-Morphic-Renderer  in ConfigurationOfGlamourCore (that resolves to Glamour-Morphic-Renderer-Moose51-usmanbhatti.324) and the spec for Glamour-Morphic-Renderer in ConfigurationOfRubric (that resolves to Glamour-Morphic-Renderer-AndreiChis.321)...

I see that in Glamour-Morphic-Renderer-Moose51-usmanbhatti.324 the version number (324 ... which btw is another convention:) is greater than 321, so I do believe that if you had been using the branch naming conventions Glamour-Morphic-Renderer-AndreiChis.321 would not have been loaded .... and I suppose we'll find out shortly:)

Yes, I really hope (and I'll test it shortly) that it is just a matter of naming convention that results in undesired packages getting loaded.
 

I _am_ curious about the package meta information for Glamour-Morphic-Renderer-Moose51-usmanbhatti.324 ... when you crack open that package (inspect the ancestry of working copy) what package name is associated with the latest ancestor?

I am not sure to have followed what you wanted to convey. I was careful to branch off from the correct (read latest) ancestor:

Name: Glamour-Morphic-Renderer-Moose51-usmanbhatti.324
Author: usmanbhatti
Time: 8 September 2015, 5:14:54.771458 pm
UUID: b5b3f2f2-62ab-48c8-a4d1-39960fb8fa3b
Ancestors: Glamour-Morphic-Renderer-usmanbhatti.323

And the inspector concurs with this information in my image: 

Tx for your answer.

Inline image 1

I've seen cases where the package meta data has drifted significantly from the name of the file used to house the package and that has lead to interesting image state, to say the least.

Dale

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev



_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Metacello and suffixes in package names

Dale Henrichs-3


On 09/11/2015 08:20 AM, Usman Bhatti wrote:


On Fri, Sep 11, 2015 at 4:55 PM, Dale Henrichs <[hidden email]> wrote:


On 9/11/15 6:09 AM, Usman Bhatti wrote:
Hi,

It seems that Metacello does not consider PackageName-xyz and PacakgeName-BranchName-xyz as the same package. I suspect it because when I look at the packages loaded by two different configurations with and without branch names as package name suffixes are not the same. Could someone knowing the internals of Metacello confirm it?

So, here is a log of Metacello of the loadDirective for ConfigOfGlamour with and without packages with branch names. I have truncated the output to highlight important parts of the log.

----------- Metacello log follows ----------------------

Without branching (Rubric and Glamour-Morphic-Renderer loaded only once):
linear load : 
atomic load : 3.3.0 [ConfigurationOfGlamour]
linear load : 3.1.3.Moose51 [ConfigurationOfGlamourCore]
--------------------List of Packages----------------
atomic load : 1.2.14.Moose51 [ConfigurationOfRubric]
load : Rubric-AndreiChis.207
                            load : Glamour-Morphic-Renderer-AndreiChis.324
--------------------List of Packages----------------
linear load : 1.13 [ConfigurationOfRoassal2]
linear load : 3.1.4 [ConfigurationOfGlamourCore]
--------------------List of Packages----------------

With branching (old versions overwrites the fixes):

linear load : 
atomic load : 3.3.0 [ConfigurationOfGlamour]
linear load : 3.1.3.Moose51 [ConfigurationOfGlamourCore]
--------------------List of Packages----------------
atomic load : 1.2.14.Moose51 [ConfigurationOfRubric]
load : Rubric-Moose51-usmanbhatti.207
                       load : Glamour-Morphic-Renderer-Moose51-usmanbhatti.324
--------------------List of Packages----------------
linear load : 1.13 [ConfigurationOfRoassal2]
linear load : 3.1.4 [ConfigurationOfGlamourCore]
atomic load : 1.2.15 [ConfigurationOfRubric]
load : Rubric-AlainPlantec.206
load : Glamour-Morphic-Renderer-AndreiChis.321
--------------------List of Packages----------------
---------------
What it actually changes is packages with branch name are overwritten with their predecessors and hence fixes are not correctly included in the resulting image. It seems that ensuring correct loading in the presence of branched packages requires no other configuration is loading previous versions of the branched packages.


While Thierry's comments (and my own) apply, I'd like to dive a little deeper into this for a minute ... I would like to compare the Metacello specs for Glamour-Morphic-Renderer  in ConfigurationOfGlamourCore (that resolves to Glamour-Morphic-Renderer-Moose51-usmanbhatti.324) and the spec for Glamour-Morphic-Renderer in ConfigurationOfRubric (that resolves to Glamour-Morphic-Renderer-AndreiChis.321)...

I see that in Glamour-Morphic-Renderer-Moose51-usmanbhatti.324 the version number (324 ... which btw is another convention:) is greater than 321, so I do believe that if you had been using the branch naming conventions Glamour-Morphic-Renderer-AndreiChis.321 would not have been loaded .... and I suppose we'll find out shortly:)

Yes, I really hope (and I'll test it shortly) that it is just a matter of naming convention that results in undesired packages getting loaded.
 
Yep, you and me both:) Let me know how it goes...

Dale

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Reply | Threaded
Open this post in threaded view
|

Re: Metacello and suffixes in package names

Usman Bhatti
Hi,

I confirm that fixing the branch names corrected the problem with package loading.
The feedback from Thierry and Dale was fruitful.
Thank you guys for your help.

On Fri, Sep 11, 2015 at 6:13 PM, Dale Henrichs <[hidden email]> wrote:


On 09/11/2015 08:20 AM, Usman Bhatti wrote:


On Fri, Sep 11, 2015 at 4:55 PM, Dale Henrichs <[hidden email]> wrote:


On 9/11/15 6:09 AM, Usman Bhatti wrote:
Hi,

It seems that Metacello does not consider PackageName-xyz and PacakgeName-BranchName-xyz as the same package. I suspect it because when I look at the packages loaded by two different configurations with and without branch names as package name suffixes are not the same. Could someone knowing the internals of Metacello confirm it?

So, here is a log of Metacello of the loadDirective for ConfigOfGlamour with and without packages with branch names. I have truncated the output to highlight important parts of the log.

----------- Metacello log follows ----------------------

Without branching (Rubric and Glamour-Morphic-Renderer loaded only once):
linear load : 
atomic load : 3.3.0 [ConfigurationOfGlamour]
linear load : 3.1.3.Moose51 [ConfigurationOfGlamourCore]
--------------------List of Packages----------------
atomic load : 1.2.14.Moose51 [ConfigurationOfRubric]
load : Rubric-AndreiChis.207
                            load : Glamour-Morphic-Renderer-AndreiChis.324
--------------------List of Packages----------------
linear load : 1.13 [ConfigurationOfRoassal2]
linear load : 3.1.4 [ConfigurationOfGlamourCore]
--------------------List of Packages----------------

With branching (old versions overwrites the fixes):

linear load : 
atomic load : 3.3.0 [ConfigurationOfGlamour]
linear load : 3.1.3.Moose51 [ConfigurationOfGlamourCore]
--------------------List of Packages----------------
atomic load : 1.2.14.Moose51 [ConfigurationOfRubric]
load : Rubric-Moose51-usmanbhatti.207
                       load : Glamour-Morphic-Renderer-Moose51-usmanbhatti.324
--------------------List of Packages----------------
linear load : 1.13 [ConfigurationOfRoassal2]
linear load : 3.1.4 [ConfigurationOfGlamourCore]
atomic load : 1.2.15 [ConfigurationOfRubric]
load : Rubric-AlainPlantec.206
load : Glamour-Morphic-Renderer-AndreiChis.321
--------------------List of Packages----------------
---------------
What it actually changes is packages with branch name are overwritten with their predecessors and hence fixes are not correctly included in the resulting image. It seems that ensuring correct loading in the presence of branched packages requires no other configuration is loading previous versions of the branched packages.


While Thierry's comments (and my own) apply, I'd like to dive a little deeper into this for a minute ... I would like to compare the Metacello specs for Glamour-Morphic-Renderer  in ConfigurationOfGlamourCore (that resolves to Glamour-Morphic-Renderer-Moose51-usmanbhatti.324) and the spec for Glamour-Morphic-Renderer in ConfigurationOfRubric (that resolves to Glamour-Morphic-Renderer-AndreiChis.321)...

I see that in Glamour-Morphic-Renderer-Moose51-usmanbhatti.324 the version number (324 ... which btw is another convention:) is greater than 321, so I do believe that if you had been using the branch naming conventions Glamour-Morphic-Renderer-AndreiChis.321 would not have been loaded .... and I suppose we'll find out shortly:)

Yes, I really hope (and I'll test it shortly) that it is just a matter of naming convention that results in undesired packages getting loaded.
 
Yep, you and me both:) Let me know how it goes...

Dale

_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev



_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev