On 22 Jul 2018, at 19:35 , Sean P. DeNigris <sean@clipperadams.com> wrote:
Andrew Black-2 wrote
spec baseline: 'SmaCC-Reification' with: [ spec repository: 'github://apblack/SmaCC:fglr' ].
This line will not work. What you're saying here is load a BaselineOfXyz where Xyz = 'SmaCC-Reification'. In fact you want to load the package. I think you can just change the keyword #basline: to #package:, although SmaCC has a 'Reification' group, which might be better. In any event, if you just want to make sure that the 'SmaCC-Reification' package is loaded when you load SmaCC, then I think what you're after is: spec baseline: 'SmaCC' with: [ spec loads: #('Reification' ) ]
I think the above would replace both of your SmaCC-related lines (you can specify multiple entities in to #loads: if needed.
NB. the preferred syntax in a baseline is literal arrays like above i.e. #() instead of curly-brace runtime arrays like {'Grace-Tests' . 'Grace-Ast'}
Thanks for the suggestions. But now I am more confused than ever! Can you tell me what this line actually means. That is, what does the #baseline:with: method actually declare? Where should I put this statement? In baselineOfSmaCC, or baselineOfGrace? Why? Note that the SmaCC-Reification package is not part of the current normal load for SmaCC â thatâs why I have to specify it separately. Is this declaration saying the opposite? If not, what is it saying? Earlier, you wrote:
spec package: 'SmaCC-Reification' with: [ spec requires: #('SmaCC-Smalltalk-Parser' 'SmaCC-Runtime' 'SmaCC-Java') ]
AFAICT this is not necessary because these dependencies are declared in BaselineOfSmaCC. These declarations are the very lines from baselineOfSmaCC that declare these dependencies â arenât they? If I take them out, how will Metacello know that loading SmaCC-Reification requires the three packages listed in the array? Iâm sorry if I sound frustrated â none of this makes any sense to me. There seems to be no documentation other than the very high-level stuff that describes th eoverall purpose of package dependencies â which I think that I understand. Andrew