Torsten,

I don't know whether Pharo uses the latest version of Metacello from github when building Pharo6.0 ... historically Pharo has not used the latest version from github and this has been the case for a very long time and I've been hoping that eventually this would be solved, but perhaps not?

There haven't been any bugfixes to Metacello since November, but perhaps they are lagging behind more than that?

Dale


On 02/21/2017 05:24 AM, Torsten Bergmann wrote:
Hi,

regarding the problem Sven mentioned on 
http://lists.pharo.org/pipermail/pharo-users_lists.pharo.org/2017-February/030542.html

here are my findings:

When I use latest Pharo 6 (Image 60404) and run

   Metacello new
      smalltalkhubUser: 'Seaside' project: 'MetacelloConfigurations';
      configuration: 'Seaside3';
      version: #'release3.2';
      load

it loads the latest release 3.2 (which internally loads 3.2.1).  The package is 
"ConfigurationOfSeaside3-JohanBrichau.323.mcz"

This loads fine in Pharo 6 except that after installation the "Tools" -> "Seaside 
control panel" is not working anymore as
"NewListModel" is not found anymore. So the control panel is broken. Dont know 
what the migration path is for UI's
who used the removed "NewListModel" class.

So yes - one can (by using the above script) use Seaside but currently has to 
start the server with a script
until this is fixed. This is good to know - but does not solve the "loading from 
catalog" issue.

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

So (in a fresh image 60404) I loaded "Bootstrap" from catalog and I received 
the error Sven reported.

But ConfigurationOfBootstrap itself is not the problem I guess. Because it is 
also only referencing the
"release3.2" version of Seaside and also 
"ConfigurationOfSeaside3-JohanBrichau.323.mcz" is loaded.


The Transcript shows the following error output:

   Loaded -> ConfigurationOfSeaside3-JohanBrichau.323 --- 
http://smalltalkhub.com/mc/Seaside/MetacelloConfigurations/main/ ---
   http://smalltalkhub.com/mc/Seaside/MetacelloConfigurations/main/Error: Name 
not found: Seaside-Pharo-Development

Also when you try to open the ConfigurationOfSeaside3 using Versionner I receiver an 
error "Name not found: Seaside-Pharo-Development".

So there must be something wrong with the Seaside config I thought - or (what 
would be worse) with the newer Metacello
version included in Pharo 6. At least the config looks OK and in both situations 
"ConfigurationOfSeaside3-JohanBrichau.323" is used.

Additionally I tried:

  - when I load the Bootstrap config in a fresh Pharo 5.0 image (50769) from 
Catalog all loads fine.
  - when I manipulate the Pharo 6 image to have a version 5 signature
        SystemVersion newVersion: 'Pharo5.0'. SystemVersion  current inspect.
    and load from catalog afterwards it also does not work. So I guess a Pharo 
5.x specific config rule could not be the cause.


Now I checked how Catalog loads the configs. And in class CatalogProject you 
will notice that for the catalog we still use Gofer for loading
installStableVersion
        Gofer it
                url: self repositoryUrl;
                configurationOf: self name;
                loadStable
        
when I change it to Metacello API

     installStableVersion
          Metacello new
                repository: self repositoryUrl, '/',self name;
                configuration: self name;
                version: #'stable';
                load

what a surprise: anything loads fine. I still wonder and do not know about the 
difference why Gofer and Metacello loading in Pharo 6
makes a difference now.

So we could fix it for the catalog ... still I have no glue about the 
Gofer/Metacello API difference ...

https://pharo.fogbugz.com/f/cases/19736/Catalog-should-use-Metacello-API-instead-of-Gofer-for-Configuration-installation

Thanks
T.


Reply via email to