[Glass] Metacello load order of dependant projects
Dale Henrichs via Glass
glass at lists.gemtalksystems.com
Thu Feb 9 18:01:09 PST 2017
Jupiter,
Executing the following before loading should do the trick:
Metacello new
baseline: 'Seaside3';
repository: 'filetree:///opt/git/JupiterSmalltalk/Seaside/repository';
lock.
This will force Bootstrap and/or BootstrapMaggritte to load Seaside3
from your local repository ...If you have local clones, you should be
using a lock, you can use a lock like the one above without loading the
project ...
<aside>With tODE putting project entries with a lock into
$GS_HOME/sys/local/server/projects will automatically lock those
projects (if you either use `project load` to load projects or have
executed a `project list` at least once... and then subsequent loads via
Metacello or tODE will honor the locked projects ... the idea is to not
require you to always have to worry about doing manual 'lock" commands
for all of your local clones for each new stone that you create</aside>
With the lock ,you probably don't need to include the Seaside3 baseline
spec below unless you have another direct dependency on the Seaside3
project ... the lock (without a load) is sufficient and a load of any
project that references Seasidde3 or any other locked project will
automatically use the local clone ...
The code that included below does not look like a complete baseline spec
... what class is it in? are there any package specs?what is your load
command?
There are just three project references that I see: Seaside3, Bootstrap,
and BootstrapMagritte. Without the actual load expression and complete
baseline spec, I can't really tell what Metacello will try to load ...
For example the default order for an expression like
Metacello new
baseline: '???';
repository: '???';
load.
Should be definition order and since Seaside3 is the first definition I
see it should be first, but it sounds like you might be doing something
like:
Metacello new
baseline: '???';
repository: '???';
load: `Bootstrap'.
or there is more in the baseline spec than meets my eye:)
Dale
On 2/9/17 3:27 PM, Jupiter Jones via Glass wrote:
> Am I able to specify the order in which project dependencies load in a baseline? I am loading a version of Seaside locally from disc and have the following in the baseline...
>
> spec
> baseline: 'Seaside3'
> with: [
> spec
> repository:
> 'filetree:///opt/git/JupiterSmalltalk/Seaside/repository';
> loads: #('Core' 'Development' 'Zinc') ]
> spec
> configuration: 'Bootstrap'
> with: [
> spec
> repository:
> 'http://smalltalkhub.com/mc/TorstenBergmann/Bootstrap/main';
> version: '0.16.0' ].
> spec
> configuration: 'BootstrapMagritte'
> with: [
> spec
> repository:
> 'http://www.smalltalkhub.com/mc/TorstenBergmann/BootstrapMagritte/main';
> version: '0.2.3’ ]
>
> However, Metacello ends up trying to load Bootstrap first which loads Seaside from Smalltalkhub.
>
> I can manually load Seaside first, then lock it, then load this baseline, however, if it possible to make it load the seaside from this baseline first and lock it?
>
> Thanks for any advice.
>
> Cheers,
>
> J
> _______________________________________________
> Glass mailing list
> Glass at lists.gemtalksystems.com
> http://lists.gemtalksystems.com/mailman/listinfo/glass
More information about the Glass
mailing list