[Glass] Another metacello loading puzzle: xml

Dale Henrichs via Glass glass at lists.gemtalksystems.com
Wed Dec 27 09:13:37 PST 2017

On 12/26/17 10:03 PM, Iwan Vosloo via Glass wrote:
> On 26/12/2017 19:38, Dale Henrichs via Glass wrote:
>> Well I think that if you want to avoid hitting the network all of the 
>> time, then you do a separate fetch into the cacheRepository[1] and 
>> then when you are doing a load, you use repositoryOverrides[2]. The 
>> links are broken in the urls below but the code is and explanations 
>> are still valid ...
>> Dale
>> [1] 
>> https://code.google.com/archive/p/metacello/wikis/FAQ.wiki#How_do_I_create_a_local_cache_repository_for_a_config 
>> [2] 
>> https://code.google.com/archive/p/metacello/wikis/FAQ.wiki#How_do_I_override_the_repository_for_a_config 
> Thanks Dale,
> I have to use the Metacello scripting API though... and according to 
> its docs[1] that means to simply fetch (with cacheRepository set) and 
> thereafter a load (also with cacheRepository set).
> I have been trying to get just this bit to work as per the docs... Are 
> those docs correct? Should this work via the scripting API?
Not sure what you mean by "scripting API"?
> I figured that repositoryOverrides will just help when it comes to the 
> ConfigurationOf/BaselineOf classes themselves. And I dont see anything 
> about repositoryOverrides in those scripting API docs.
if you are using local clones of git repositories, there is no real 
advantage to using cacheRepositories and repositoryOverrides ... they 
were invented to avoid hitting the network for http-based mcz repositories.

The GLASS1 bootstrapping script and the GLASS1 baseline itself still 
uses one or two http mcz repositories ... I am currently working on 
completely eliminating the use of http mcz repositories for the 
bootstrapping scripts and tODE ...
> I also struggle to understand how docs of the one API apply to the 
> scripting API etc
Note that the examples in[1] are using configurations and configurations 
are using http-based mcz repositories ... These days it makes more sense 
to create a github repository and use local clones for your projects 
than to fiddle with cacheRepsitories and repositoryOverrides ...

Perhaps you could be more specific about exactly what you are trying to 
> [1] 
> https://github.com/Metacello/metacello/blob/master/docs/MetacelloScriptingAPI.md#fetching

More information about the Glass mailing list