WTF

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

WTF

Mariano Martinez Peck
Sorry, I couldn't come up with a better subject.  I am having a problem.  To reproduce: take a pharo image. I took the last one from here:  https://ci.lille.inria.fr/pharo/view/Nautilus/job/Nautilus-Release/70/

Then I evaluated:

Gofer it
url: 'http://ss3.gemstone.com/ss/MarianoBuilder';
package: 'MarianoBuilder';
load.

(ConfigurationOfMariano project version: '1.0-baseline') load: 'Fuel'

And that fails saying: 'Could not resolve: Keymapping-Tools-Spec [Keymapping-Tools-Spec-BenjaminVanRyseghem.1] in /Users/mariano/Pharo/imagenes/Nautilus1.4/package-cache http://www.squeaksource.com/Shortways ERROR: ''GoferRepositoryError: Could not access http://www.squeaksource.com/Shortways: ZnHttpUnsuccessful: 404 Not Found'''

WTF???     Fuel is not related at all to Keymappings nor to Nautilus. What is it trying to load?

If I do a record, I get the correct thing:

 a MetacelloNullRecordingMCSpecLoader(linear load :
    linear load : 1.0-baseline [ConfigurationOfMariano]
        load : ConfigurationOfFuel
    linear load : 1.0-baseline [ConfigurationOfMariano]
        linear load : 1.8-baseline [ConfigurationOfFuel]
            load : Fuel
            load : FuelTests
            load : FuelProgressUpdate
            load : FuelBenchmarks
            load : FuelLogo
            load : FuelCompression
            load : FuelExamples
            load : FuelProgressUpdateBenchmarks
            load : FuelMetalevel
            load : FuelPackageLoader
            load : FuelPackageLoaderTests
            load : FuelMetalevelTests)


Thanks Dale,

--
Mariano
http://marianopeck.wordpress.com

Reply | Threaded
Open this post in threaded view
|

Re: WTF

Dale Henrichs
Mariano,

Could you send me the full Transcript log? I suspect that loading the baseline is the place where the #record and #load get out of synch, but the transcript log will allow me to see when the "load goes off track".

Dale

----- Original Message -----
| From: "Mariano Martinez Peck" <[hidden email]>
| To: [hidden email]
| Sent: Saturday, April 14, 2012 1:27:46 PM
| Subject: [Metacello] WTF
|
| Sorry, I couldn't come up with a better subject. I am having a
| problem. To reproduce: take a pharo image. I took the last one from
| here:
| https://ci.lille.inria.fr/pharo/view/Nautilus/job/Nautilus-Release/70/
|
| Then I evaluated:
|
| Gofer it
| url: ' http://ss3.gemstone.com/ss/MarianoBuilder ';
| package: 'MarianoBuilder';
| load.
|
| (ConfigurationOfMariano project version: '1.0-baseline') load: 'Fuel'
|
| And that fails saying: 'Could not resolve: Keymapping-Tools-Spec
| [Keymapping-Tools-Spec-BenjaminVanRyseghem.1] in
| /Users/mariano/Pharo/imagenes/Nautilus1.4/package-cache
| http://www.squeaksource.com/Shortways ERROR: ''GoferRepositoryError:
| Could not access http://www.squeaksource.com/Shortways :
| ZnHttpUnsuccessful: 404 Not Found'''
|
| WTF??? Fuel is not related at all to Keymappings nor to Nautilus.
| What is it trying to load?
|
| If I do a record, I get the correct thing:
|
| a MetacelloNullRecordingMCSpecLoader(linear load :
| linear load : 1.0-baseline [ConfigurationOfMariano]
| load : ConfigurationOfFuel
| linear load : 1.0-baseline [ConfigurationOfMariano]
| linear load : 1.8-baseline [ConfigurationOfFuel]
| load : Fuel
| load : FuelTests
| load : FuelProgressUpdate
| load : FuelBenchmarks
| load : FuelLogo
| load : FuelCompression
| load : FuelExamples
| load : FuelProgressUpdateBenchmarks
| load : FuelMetalevel
| load : FuelPackageLoader
| load : FuelPackageLoaderTests
| load : FuelMetalevelTests)
|
|
| Thanks Dale,
|
| --
| Mariano
| http://marianopeck.wordpress.com
|
|
Reply | Threaded
Open this post in threaded view
|

Re: WTF

Mariano Martinez Peck


On Mon, Apr 16, 2012 at 6:28 PM, Dale Henrichs <[hidden email]> wrote:
Mariano,

Could you send me the full Transcript log? I suspect that loading the baseline is the place where the #record and #load get out of synch, but the transcript log will allow me to see when the "load goes off track".


Hi Dale Find attached both files "load" and "record". Notice the difference. Load brings lots of incorrect things (like nautilus and its dependencies). Record brings the correct stuff.

Thanks
 
Dale

----- Original Message -----
| From: "Mariano Martinez Peck" <[hidden email]>
| To: [hidden email]
| Sent: Saturday, April 14, 2012 1:27:46 PM
| Subject: [Metacello] WTF
|
| Sorry, I couldn't come up with a better subject. I am having a
| problem. To reproduce: take a pharo image. I took the last one from
| here:
| https://ci.lille.inria.fr/pharo/view/Nautilus/job/Nautilus-Release/70/
|
| Then I evaluated:
|
| Gofer it
| url: ' http://ss3.gemstone.com/ss/MarianoBuilder ';
| package: 'MarianoBuilder';
| load.
|
| (ConfigurationOfMariano project version: '1.0-baseline') load: 'Fuel'
|
| And that fails saying: 'Could not resolve: Keymapping-Tools-Spec
| [Keymapping-Tools-Spec-BenjaminVanRyseghem.1] in
| /Users/mariano/Pharo/imagenes/Nautilus1.4/package-cache
| http://www.squeaksource.com/Shortways ERROR: ''GoferRepositoryError:
| Could not access http://www.squeaksource.com/Shortways :
| ZnHttpUnsuccessful: 404 Not Found'''
|
| WTF??? Fuel is not related at all to Keymappings nor to Nautilus.
| What is it trying to load?
|
| If I do a record, I get the correct thing:
|
| a MetacelloNullRecordingMCSpecLoader(linear load :
| linear load : 1.0-baseline [ConfigurationOfMariano]
| load : ConfigurationOfFuel
| linear load : 1.0-baseline [ConfigurationOfMariano]
| linear load : 1.8-baseline [ConfigurationOfFuel]
| load : Fuel
| load : FuelTests
| load : FuelProgressUpdate
| load : FuelBenchmarks
| load : FuelLogo
| load : FuelCompression
| load : FuelExamples
| load : FuelProgressUpdateBenchmarks
| load : FuelMetalevel
| load : FuelPackageLoader
| load : FuelPackageLoaderTests
| load : FuelMetalevelTests)
|
|
| Thanks Dale,
|
| --
| Mariano
| http://marianopeck.wordpress.com
|
|



--
Mariano
http://marianopeck.wordpress.com


load.rtf (9K) Download Attachment
record.rtf (1K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: WTF

Dale Henrichs
Mariano,

Sorry ... I overlooked your reply .. I thought I had already read the messages in this group, but I hadn't ... #mailfail ...

Anyway, there is an explanation for why Nautilus and KeyMappings are monkeyed with during a #load and not reported during a #record ...

For the record, the forth coming release of Metacello (no date yet) with the scripting API will address this "feature".

Firstly, KeyMappings is being touched during the load because you already have some aspect of Nautilus already loaded into your image. #record does its business by ignoring the loaded state of the image so this is a point where record and load can give different answers.

Secondly, you are loading a baseline, which says to Metacello "use the latest versions of all projects and packages when you load".

Thirdly, when you load a version of a configuration that is already in the image, Metacello endeavors to make sure that all of the components of the project are brought to the same version ...

So you have asked Metacello to make the image consistent with the '1.0-baseline' version of ConfigurationOfMariano. Since Nautilus (or a component of Nautilus) is present in the image, Metacello is automatically upgrading Nautilus along with Fuel, because they are both specified in the same baseline ...

You happen to be using a configuration as a convenient collection of unrelated projects, so you are unhappy when Metacello performs this service. If this had been a configuration of related components you wouldn't have noticed (or may even have been glad) that this service was performed.

With the Metacello scripting api, I will change the behavior of Metacello so that it will neither upgrade nor downgrade a project version automatically. Once a project is loaded into an image, you will have to explicitly upgrade/downgrade projects or explicitly allow upgrade/downgrades during a specific load.

Dale

----- Original Message -----
| From: "Mariano Martinez Peck" <[hidden email]>
| To: [hidden email]
| Sent: Monday, April 16, 2012 11:11:13 AM
| Subject: Re: [Metacello] WTF
|
|
|
|
| On Mon, Apr 16, 2012 at 6:28 PM, Dale Henrichs < [hidden email]
| > wrote:
|
|
| Mariano,
|
| Could you send me the full Transcript log? I suspect that loading the
| baseline is the place where the #record and #load get out of synch,
| but the transcript log will allow me to see when the "load goes off
| track".
|
|
|
| Hi Dale Find attached both files "load" and "record". Notice the
| difference. Load brings lots of incorrect things (like nautilus and
| its dependencies). Record brings the correct stuff.
|
| Thanks
|
|
| Dale
|
|
|
| ----- Original Message -----
| | From: "Mariano Martinez Peck" < [hidden email] >
| | To: [hidden email]
| | Sent: Saturday, April 14, 2012 1:27:46 PM
| | Subject: [Metacello] WTF
| |
| | Sorry, I couldn't come up with a better subject. I am having a
| | problem. To reproduce: take a pharo image. I took the last one from
| | here:
| | https://ci.lille.inria.fr/pharo/view/Nautilus/job/Nautilus-Release/70/
| |
| | Then I evaluated:
| |
| | Gofer it
| | url: ' http://ss3.gemstone.com/ss/MarianoBuilder ';
| | package: 'MarianoBuilder';
| | load.
| |
| | (ConfigurationOfMariano project version: '1.0-baseline') load:
| | 'Fuel'
| |
| | And that fails saying: 'Could not resolve: Keymapping-Tools-Spec
| | [Keymapping-Tools-Spec-BenjaminVanRyseghem.1] in
| | /Users/mariano/Pharo/imagenes/Nautilus1.4/package-cache
| | http://www.squeaksource.com/Shortways ERROR:
| | ''GoferRepositoryError:
| | Could not access http://www.squeaksource.com/Shortways :
| | ZnHttpUnsuccessful: 404 Not Found'''
| |
| | WTF??? Fuel is not related at all to Keymappings nor to Nautilus.
| | What is it trying to load?
| |
| | If I do a record, I get the correct thing:
| |
| | a MetacelloNullRecordingMCSpecLoader(linear load :
| | linear load : 1.0-baseline [ConfigurationOfMariano]
| | load : ConfigurationOfFuel
| | linear load : 1.0-baseline [ConfigurationOfMariano]
| | linear load : 1.8-baseline [ConfigurationOfFuel]
| | load : Fuel
| | load : FuelTests
| | load : FuelProgressUpdate
| | load : FuelBenchmarks
| | load : FuelLogo
| | load : FuelCompression
| | load : FuelExamples
| | load : FuelProgressUpdateBenchmarks
| | load : FuelMetalevel
| | load : FuelPackageLoader
| | load : FuelPackageLoaderTests
| | load : FuelMetalevelTests)
| |
| |
| | Thanks Dale,
| |
| | --
| | Mariano
| | http://marianopeck.wordpress.com
| |
| |
|
|
|
| --
| Mariano
| http://marianopeck.wordpress.com
|
|
Reply | Threaded
Open this post in threaded view
|

Re: WTF

Mariano Martinez Peck


On Thu, Apr 19, 2012 at 7:20 PM, Dale Henrichs <[hidden email]> wrote:
Mariano,

Sorry ... I overlooked your reply .. I thought I had already read the messages in this group, but I hadn't ... #mailfail ...

Anyway, there is an explanation for why Nautilus and KeyMappings are monkeyed with during a #load and not reported during a #record ...

For the record, the forth coming release of Metacello (no date yet) with the scripting API will address this "feature".

Firstly, KeyMappings is being touched during the load because you already have some aspect of Nautilus already loaded into your image. #record does its business by ignoring the loaded state of the image so this is a point where record and load can give different answers.

Secondly, you are loading a baseline, which says to Metacello "use the latest versions of all projects and packages when you load".

Thirdly, when you load a version of a configuration that is already in the image, Metacello endeavors to make sure that all of the components of the project are brought to the same version ...

So you have asked Metacello to make the image consistent with the '1.0-baseline' version of ConfigurationOfMariano. Since Nautilus (or a component of Nautilus) is present in the image, Metacello is automatically upgrading Nautilus along with Fuel, because they are both specified in the same baseline ...

You happen to be using a configuration as a convenient collection of unrelated projects, so you are unhappy when Metacello performs this service. If this had been a configuration of related components you wouldn't have noticed (or may even have been glad) that this service was performed.

With the Metacello scripting api, I will change the behavior of Metacello so that it will neither upgrade nor downgrade a project version automatically. Once a project is loaded into an image, you will have to explicitly upgrade/downgrade projects or explicitly allow upgrade/downgrades during a specific load.

Thanks Dale. I think I will really appreciate that. I was *very* happy with my ConfigurationOfMariano until I discover this problem. So, please, let me know when there is something that I can test :)

Cheers
 

Dale

----- Original Message -----
| From: "Mariano Martinez Peck" <[hidden email]>
| To: [hidden email]
| Sent: Monday, April 16, 2012 11:11:13 AM
| Subject: Re: [Metacello] WTF
|
|
|
|
| On Mon, Apr 16, 2012 at 6:28 PM, Dale Henrichs < [hidden email]
| > wrote:
|
|
| Mariano,
|
| Could you send me the full Transcript log? I suspect that loading the
| baseline is the place where the #record and #load get out of synch,
| but the transcript log will allow me to see when the "load goes off
| track".
|
|
|
| Hi Dale Find attached both files "load" and "record". Notice the
| difference. Load brings lots of incorrect things (like nautilus and
| its dependencies). Record brings the correct stuff.
|
| Thanks
|
|
| Dale
|
|
|
| ----- Original Message -----
| | From: "Mariano Martinez Peck" < [hidden email] >
| | To: [hidden email]
| | Sent: Saturday, April 14, 2012 1:27:46 PM
| | Subject: [Metacello] WTF
| |
| | Sorry, I couldn't come up with a better subject. I am having a
| | problem. To reproduce: take a pharo image. I took the last one from
| | here:
| | https://ci.lille.inria.fr/pharo/view/Nautilus/job/Nautilus-Release/70/
| |
| | Then I evaluated:
| |
| | Gofer it
| | url: ' http://ss3.gemstone.com/ss/MarianoBuilder ';
| | package: 'MarianoBuilder';
| | load.
| |
| | (ConfigurationOfMariano project version: '1.0-baseline') load:
| | 'Fuel'
| |
| | And that fails saying: 'Could not resolve: Keymapping-Tools-Spec
| | [Keymapping-Tools-Spec-BenjaminVanRyseghem.1] in
| | /Users/mariano/Pharo/imagenes/Nautilus1.4/package-cache
| | http://www.squeaksource.com/Shortways ERROR:
| | ''GoferRepositoryError:
| | Could not access http://www.squeaksource.com/Shortways :
| | ZnHttpUnsuccessful: 404 Not Found'''
| |
| | WTF??? Fuel is not related at all to Keymappings nor to Nautilus.
| | What is it trying to load?
| |
| | If I do a record, I get the correct thing:
| |
| | a MetacelloNullRecordingMCSpecLoader(linear load :
| | linear load : 1.0-baseline [ConfigurationOfMariano]
| | load : ConfigurationOfFuel
| | linear load : 1.0-baseline [ConfigurationOfMariano]
| | linear load : 1.8-baseline [ConfigurationOfFuel]
| | load : Fuel
| | load : FuelTests
| | load : FuelProgressUpdate
| | load : FuelBenchmarks
| | load : FuelLogo
| | load : FuelCompression
| | load : FuelExamples
| | load : FuelProgressUpdateBenchmarks
| | load : FuelMetalevel
| | load : FuelPackageLoader
| | load : FuelPackageLoaderTests
| | load : FuelMetalevelTests)
| |
| |
| | Thanks Dale,
| |
| | --
| | Mariano
| | http://marianopeck.wordpress.com
| |
| |
|
|
|
| --
| Mariano
| http://marianopeck.wordpress.com
|
|



--
Mariano
http://marianopeck.wordpress.com

Reply | Threaded
Open this post in threaded view
|

Re: WTF

Dale Henrichs
Mariano,

Sorry about that:) I'll let you know.

Dale

----- Original Message -----
| From: "Mariano Martinez Peck" <[hidden email]>
| To: [hidden email]
| Sent: Tuesday, May 1, 2012 2:22:30 AM
| Subject: Re: [Metacello] WTF
|
|
|
|
| On Thu, Apr 19, 2012 at 7:20 PM, Dale Henrichs < [hidden email]
| > wrote:
|
|
| Mariano,
|
| Sorry ... I overlooked your reply .. I thought I had already read the
| messages in this group, but I hadn't ... #mailfail ...
|
| Anyway, there is an explanation for why Nautilus and KeyMappings are
| monkeyed with during a #load and not reported during a #record ...
|
| For the record, the forth coming release of Metacello (no date yet)
| with the scripting API will address this "feature".
|
| Firstly, KeyMappings is being touched during the load because you
| already have some aspect of Nautilus already loaded into your image.
| #record does its business by ignoring the loaded state of the image
| so this is a point where record and load can give different answers.
|
| Secondly, you are loading a baseline, which says to Metacello "use
| the latest versions of all projects and packages when you load".
|
| Thirdly, when you load a version of a configuration that is already
| in the image, Metacello endeavors to make sure that all of the
| components of the project are brought to the same version ...
|
| So you have asked Metacello to make the image consistent with the
| '1.0-baseline' version of ConfigurationOfMariano. Since Nautilus (or
| a component of Nautilus) is present in the image, Metacello is
| automatically upgrading Nautilus along with Fuel, because they are
| both specified in the same baseline ...
|
| You happen to be using a configuration as a convenient collection of
| unrelated projects, so you are unhappy when Metacello performs this
| service. If this had been a configuration of related components you
| wouldn't have noticed (or may even have been glad) that this service
| was performed.
|
| With the Metacello scripting api, I will change the behavior of
| Metacello so that it will neither upgrade nor downgrade a project
| version automatically. Once a project is loaded into an image, you
| will have to explicitly upgrade/downgrade projects or explicitly
| allow upgrade/downgrades during a specific load.
|
|
| Thanks Dale. I think I will really appreciate that. I was *very*
| happy with my ConfigurationOfMariano until I discover this problem.
| So, please, let me know when there is something that I can test :)
|
| Cheers
|
|
|
|
| Dale
|
| ----- Original Message -----
| | From: "Mariano Martinez Peck" < [hidden email] >
| | To: [hidden email]
|
|
| | Sent: Monday, April 16, 2012 11:11:13 AM
| | Subject: Re: [Metacello] WTF
| |
| |
| |
| |
| | On Mon, Apr 16, 2012 at 6:28 PM, Dale Henrichs <
| | [hidden email]
| | > wrote:
| |
| |
| | Mariano,
| |
| | Could you send me the full Transcript log? I suspect that loading
| | the
| | baseline is the place where the #record and #load get out of synch,
| | but the transcript log will allow me to see when the "load goes off
| | track".
| |
| |
| |
| | Hi Dale Find attached both files "load" and "record". Notice the
| | difference. Load brings lots of incorrect things (like nautilus and
| | its dependencies). Record brings the correct stuff.
| |
| | Thanks
| |
| |
| | Dale
| |
| |
| |
| | ----- Original Message -----
| | | From: "Mariano Martinez Peck" < [hidden email] >
| | | To: [hidden email]
| | | Sent: Saturday, April 14, 2012 1:27:46 PM
| | | Subject: [Metacello] WTF
| | |
| | | Sorry, I couldn't come up with a better subject. I am having a
| | | problem. To reproduce: take a pharo image. I took the last one
| | | from
| | | here:
| | | https://ci.lille.inria.fr/pharo/view/Nautilus/job/Nautilus-Release/70/
| | |
| | | Then I evaluated:
| | |
| | | Gofer it
| | | url: ' http://ss3.gemstone.com/ss/MarianoBuilder ';
| | | package: 'MarianoBuilder';
| | | load.
| | |
| | | (ConfigurationOfMariano project version: '1.0-baseline') load:
| | | 'Fuel'
| | |
| | | And that fails saying: 'Could not resolve: Keymapping-Tools-Spec
| | | [Keymapping-Tools-Spec-BenjaminVanRyseghem.1] in
| | | /Users/mariano/Pharo/imagenes/Nautilus1.4/package-cache
| | | http://www.squeaksource.com/Shortways ERROR:
| | | ''GoferRepositoryError:
| | | Could not access http://www.squeaksource.com/Shortways :
| | | ZnHttpUnsuccessful: 404 Not Found'''
| | |
| | | WTF??? Fuel is not related at all to Keymappings nor to Nautilus.
| | | What is it trying to load?
| | |
| | | If I do a record, I get the correct thing:
| | |
| | | a MetacelloNullRecordingMCSpecLoader(linear load :
| | | linear load : 1.0-baseline [ConfigurationOfMariano]
| | | load : ConfigurationOfFuel
| | | linear load : 1.0-baseline [ConfigurationOfMariano]
| | | linear load : 1.8-baseline [ConfigurationOfFuel]
| | | load : Fuel
| | | load : FuelTests
| | | load : FuelProgressUpdate
| | | load : FuelBenchmarks
| | | load : FuelLogo
| | | load : FuelCompression
| | | load : FuelExamples
| | | load : FuelProgressUpdateBenchmarks
| | | load : FuelMetalevel
| | | load : FuelPackageLoader
| | | load : FuelPackageLoaderTests
| | | load : FuelMetalevelTests)
| | |
| | |
| | | Thanks Dale,
| | |
| | | --
| | | Mariano
| | | http://marianopeck.wordpress.com
| | |
| | |
| |
| |
| |
| | --
| | Mariano
| | http://marianopeck.wordpress.com
| |
| |
|
|
|
| --
| Mariano
| http://marianopeck.wordpress.com
|
|
Reply | Threaded
Open this post in threaded view
|

Re: WTF

Mariano Martinez Peck
In reply to this post by Mariano Martinez Peck


On Tue, May 1, 2012 at 11:22 AM, Mariano Martinez Peck <[hidden email]> wrote:


On Thu, Apr 19, 2012 at 7:20 PM, Dale Henrichs <[hidden email]> wrote:
Mariano,

Sorry ... I overlooked your reply .. I thought I had already read the messages in this group, but I hadn't ... #mailfail ...

Anyway, there is an explanation for why Nautilus and KeyMappings are monkeyed with during a #load and not reported during a #record ...

For the record, the forth coming release of Metacello (no date yet) with the scripting API will address this "feature".

Firstly, KeyMappings is being touched during the load because you already have some aspect of Nautilus already loaded into your image. #record does its business by ignoring the loaded state of the image so this is a point where record and load can give different answers.

Secondly, you are loading a baseline, which says to Metacello "use the latest versions of all projects and packages when you load".

Thirdly, when you load a version of a configuration that is already in the image, Metacello endeavors to make sure that all of the components of the project are brought to the same version ...

So you have asked Metacello to make the image consistent with the '1.0-baseline' version of ConfigurationOfMariano. Since Nautilus (or a component of Nautilus) is present in the image, Metacello is automatically upgrading Nautilus along with Fuel, because they are both specified in the same baseline ...

You happen to be using a configuration as a convenient collection of unrelated projects, so you are unhappy when Metacello performs this service. If this had been a configuration of related components you wouldn't have noticed (or may even have been glad) that this service was performed.

With the Metacello scripting api, I will change the behavior of Metacello so that it will neither upgrade nor downgrade a project version automatically. Once a project is loaded into an image, you will have to explicitly upgrade/downgrade projects or explicitly allow upgrade/downgrades during a specific load.

Thanks Dale. I think I will really appreciate that. I was *very* happy with my ConfigurationOfMariano until I discover this problem. So, please, let me know when there is something that I can test :)


Dale, this is what I was talking about in the other thread :)


 
Cheers
 

Dale

----- Original Message -----
| From: "Mariano Martinez Peck" <[hidden email]>
| To: [hidden email]
| Sent: Monday, April 16, 2012 11:11:13 AM
| Subject: Re: [Metacello] WTF
|
|
|
|
| On Mon, Apr 16, 2012 at 6:28 PM, Dale Henrichs < [hidden email]
| > wrote:
|
|
| Mariano,
|
| Could you send me the full Transcript log? I suspect that loading the
| baseline is the place where the #record and #load get out of synch,
| but the transcript log will allow me to see when the "load goes off
| track".
|
|
|
| Hi Dale Find attached both files "load" and "record". Notice the
| difference. Load brings lots of incorrect things (like nautilus and
| its dependencies). Record brings the correct stuff.
|
| Thanks
|
|
| Dale
|
|
|
| ----- Original Message -----
| | From: "Mariano Martinez Peck" < [hidden email] >
| | To: [hidden email]
| | Sent: Saturday, April 14, 2012 1:27:46 PM
| | Subject: [Metacello] WTF
| |
| | Sorry, I couldn't come up with a better subject. I am having a
| | problem. To reproduce: take a pharo image. I took the last one from
| | here:
| | https://ci.lille.inria.fr/pharo/view/Nautilus/job/Nautilus-Release/70/
| |
| | Then I evaluated:
| |
| | Gofer it
| | url: ' http://ss3.gemstone.com/ss/MarianoBuilder ';
| | package: 'MarianoBuilder';
| | load.
| |
| | (ConfigurationOfMariano project version: '1.0-baseline') load:
| | 'Fuel'
| |
| | And that fails saying: 'Could not resolve: Keymapping-Tools-Spec
| | [Keymapping-Tools-Spec-BenjaminVanRyseghem.1] in
| | /Users/mariano/Pharo/imagenes/Nautilus1.4/package-cache
| | http://www.squeaksource.com/Shortways ERROR:
| | ''GoferRepositoryError:
| | Could not access http://www.squeaksource.com/Shortways :
| | ZnHttpUnsuccessful: 404 Not Found'''
| |
| | WTF??? Fuel is not related at all to Keymappings nor to Nautilus.
| | What is it trying to load?
| |
| | If I do a record, I get the correct thing:
| |
| | a MetacelloNullRecordingMCSpecLoader(linear load :
| | linear load : 1.0-baseline [ConfigurationOfMariano]
| | load : ConfigurationOfFuel
| | linear load : 1.0-baseline [ConfigurationOfMariano]
| | linear load : 1.8-baseline [ConfigurationOfFuel]
| | load : Fuel
| | load : FuelTests
| | load : FuelProgressUpdate
| | load : FuelBenchmarks
| | load : FuelLogo
| | load : FuelCompression
| | load : FuelExamples
| | load : FuelProgressUpdateBenchmarks
| | load : FuelMetalevel
| | load : FuelPackageLoader
| | load : FuelPackageLoaderTests
| | load : FuelMetalevelTests)
| |
| |
| | Thanks Dale,
| |
| | --
| | Mariano
| | http://marianopeck.wordpress.com
| |
| |
|
|
|
| --
| Mariano
| http://marianopeck.wordpress.com
|
|



--
Mariano
http://marianopeck.wordpress.com




--
Mariano
http://marianopeck.wordpress.com

Reply | Threaded
Open this post in threaded view
|

Re: WTF

Dale Henrichs

----- Original Message -----
| From: "Mariano Martinez Peck" <[hidden email]>
|
|..........SNIP...............
|
| For the record, the forth coming release of Metacello (no date yet)
| with the scripting API will address this "feature".
|
| Firstly, KeyMappings is being touched during the load because you
| already have some aspect of Nautilus already loaded into your image.
| #record does its business by ignoring the loaded state of the image
| so this is a point where record and load can give different answers.
|
| .........SNIP...............
|
| With the Metacello scripting api, I will change the behavior of
| Metacello so that it will neither upgrade nor downgrade a project
| version automatically. Once a project is loaded into an image, you
| will have to explicitly upgrade/downgrade projects or explicitly
| allow upgrade/downgrades during a specific load.

That statement is true except the bit about upgrade being disallowed on upgrade ... upgrades are allowed by default ...

So, the scripting api should address your problem and I will be interested in hearing if it works for you ... you may need to use the `onUpgrade:` message but give it a try without anything special ...

I also want to point out that in that mail I said:

  "I will change the behavior of Metacello so that..."

In actual fact, I haven't "changed the behavior of Metacello". With the Preview installed the following statement should work exactly as it had in earlier versions of Metacello:

  (ConfigurationOfMariano project version: '1.0-baseline') load: 'Fuel'

however, if you use the scripting API to perform the load, you should get the new behavior:

  Metacello new
    configuration: 'Mariano';
    version: '1.0-baseline';
    load: 'Fuel'.

also if you do the following you should get the old (`classic`) behavior:

  Metacello classic
    configuration: 'Mariano';
    version: '1.0-baseline';
    load: 'Fuel'.

So the trick will be to use the scripting api for your loads...

Let me know how it works for you,

Dale


Reply | Threaded
Open this post in threaded view
|

Re: WTF

Mariano Martinez Peck


On Wed, Aug 1, 2012 at 8:54 PM, Dale Henrichs <[hidden email]> wrote:

----- Original Message -----
| From: "Mariano Martinez Peck" <[hidden email]>
|
|..........SNIP...............
|
| For the record, the forth coming release of Metacello (no date yet)
| with the scripting API will address this "feature".
|
| Firstly, KeyMappings is being touched during the load because you
| already have some aspect of Nautilus already loaded into your image.
| #record does its business by ignoring the loaded state of the image
| so this is a point where record and load can give different answers.
|
| .........SNIP...............
|
| With the Metacello scripting api, I will change the behavior of
| Metacello so that it will neither upgrade nor downgrade a project
| version automatically. Once a project is loaded into an image, you
| will have to explicitly upgrade/downgrade projects or explicitly
| allow upgrade/downgrades during a specific load.

That statement is true except the bit about upgrade being disallowed on upgrade ... upgrades are allowed by default ...


but one thing is be allowed and another one is perform the upgrade itself. So...if I have a project reference already loaded of a baseline, would that be automatically upgraded?
 

So, the scripting api should address your problem and I will be interested in hearing if it works for you ... you may need to use the `onUpgrade:` message but give it a try without anything special ...

I also want to point out that in that mail I said:

  "I will change the behavior of Metacello so that..."

In actual fact, I haven't "changed the behavior of Metacello". With the Preview installed the following statement should work exactly as it had in earlier versions of Metacello:

  (ConfigurationOfMariano project version: '1.0-baseline') load: 'Fuel'

however, if you use the scripting API to perform the load, you should get the new behavior:

  Metacello new
    configuration: 'Mariano';
    version: '1.0-baseline';
    load: 'Fuel'.

also if you do the following you should get the old (`classic`) behavior:

  Metacello classic
    configuration: 'Mariano';
    version: '1.0-baseline';
    load: 'Fuel'.

So the trick will be to use the scripting api for your loads...

Let me know how it works for you,

Ok, I understand. However, right now I need to first bootstrap metacello (with its scripting API) and then use it. I know that later we will have the bootstraping automatically by integrating a small package by default in Pharo. So...wouldn't be a good idea to integrate that small package (the one that has Metacello, ConfigurationOf, etc) that knows how to bootstrap Metacello even if it will change later?  because that way it is easier for us to test it. 

Anyway, since I stopped using ConfigurationOfMariano for this problem, I should update it first ;)  so I will start by that


--
Mariano
http://marianopeck.wordpress.com

Reply | Threaded
Open this post in threaded view
|

Re: WTF

Dale Henrichs


----- Original Message -----
| From: "Mariano Martinez Peck" <[hidden email]>
| To: [hidden email]
| Sent: Wednesday, August 1, 2012 12:18:33 PM
| Subject: Re: [Metacello] WTF
|
|
|
|
| On Wed, Aug 1, 2012 at 8:54 PM, Dale Henrichs < [hidden email] >
| wrote:
|
|
|
|
| ----- Original Message -----
| | From: "Mariano Martinez Peck" < [hidden email] >
| |
| |..........SNIP...............
|
| |
| | For the record, the forth coming release of Metacello (no date yet)
| | with the scripting API will address this "feature".
| |
| | Firstly, KeyMappings is being touched during the load because you
| | already have some aspect of Nautilus already loaded into your
| | image.
| | #record does its business by ignoring the loaded state of the image
| | so this is a point where record and load can give different
| | answers.
| |
| | .........SNIP...............
|
| |
| | With the Metacello scripting api, I will change the behavior of
| | Metacello so that it will neither upgrade nor downgrade a project
| | version automatically. Once a project is loaded into an image, you
| | will have to explicitly upgrade/downgrade projects or explicitly
| | allow upgrade/downgrades during a specific load.
|
| That statement is true except the bit about upgrade being disallowed
| on upgrade ... upgrades are allowed by default ...
|
|
|
|
|
| but one thing is be allowed and another one is perform the upgrade
| itself. So...if I have a project reference already loaded of a
| baseline, would that be automatically upgraded?

There are a couple of "unkowns" for me for this particular issue.

  - during the bootstrap of the preview, I use the currentVersion for
    all "loaded" projects to prime the registry. Your troublesome
    project may show up in the registry after the prime. I don't have
    an `register`unregister` api, but it is obvious at this point that
    I will need to add it - why we have a preview. The registry is a
    dictionary so we can hack the registry if the troublesome project
    shows up
  - loaded projects are upgraded by default, but you can `lock` projects
    that you don't want upgraded, or use the `onUpgrade: [:ex | ex disallow]`
    to prevent _all_ upgrades during a load.

I need feedback from folks using the api to figure out whether default upgrades is the right thing to do ... If there are only a handful of special cases where `lock` and `onUpgrade:` works fine and most of the time the auto upgrade is desirable then we'll stay as it is, otherwise I can change the behavior.


|
|
|
| So, the scripting api should address your problem and I will be
| interested in hearing if it works for you ... you may need to use
| the `onUpgrade:` message but give it a try without anything special
| ...
|
| I also want to point out that in that mail I said:
|
| "I will change the behavior of Metacello so that..."
|
| In actual fact, I haven't "changed the behavior of Metacello". With
| the Preview installed the following statement should work exactly as
| it had in earlier versions of Metacello:
|
|
| (ConfigurationOfMariano project version: '1.0-baseline') load: 'Fuel'
|
| however, if you use the scripting API to perform the load, you should
| get the new behavior:
|
| Metacello new
| configuration: 'Mariano';
| version: '1.0-baseline';
| load: 'Fuel'.
|
| also if you do the following you should get the old (`classic`)
| behavior:
|
| Metacello classic
| configuration: 'Mariano';
| version: '1.0-baseline';
| load: 'Fuel'.
|
| So the trick will be to use the scripting api for your loads...
|
| Let me know how it works for you,
|
|
|
| Ok, I understand. However, right now I need to first bootstrap
| metacello (with its scripting API) and then use it. I know that
| later we will have the bootstraping automatically by integrating a
| small package by default in Pharo. So...wouldn't be a good idea to
| integrate that small package (the one that has Metacello,
| ConfigurationOf, etc) that knows how to bootstrap Metacello even if
| it will change later? because that way it is easier for us to test
| it.

Which version of Pharo are you talking about ... AFAIK the preview can't be bootstrapped into Pharo-2.0 because of bugs. the Pharo-1.4 summer release already has Metacello installed, so you have to use the preview ...

FWIW, I have travis ci builds triggered whenever I change the configuration that test the bootstrap process ... I would like to have the preview included in Pharo-2.0 but the bugs with the announcements have stymied me.
 
|
|
| Anyway, since I stopped using ConfigurationOfMariano for this
| problem, I should update it first ;) so I will start by that

Yes ... as I've mentioned earlier I'm anticipating possible problems depending upon what the prime registry code does ... I might need to fine-tune that process or decide to make it an optional step rather than a unconditional step ... there's also a way to reset the registry (not through the api...)

I'm interested in what happens:)

Dale
Reply | Threaded
Open this post in threaded view
|

Re: WTF

Patrik Sundberg
Mariana: I copied and converted your stuff to the new Metacello API in patriksimagetools. you can find it on github.