Ah - I checked out master. So should I have checked out dev? Would this explain 
it?

I've appreciated the help a lot by the way.

Tim

Sent from my iPhone

> On 4 Aug 2017, at 17:28, Pavel Krivanek <pavel.kriva...@gmail.com> wrote:
> 
> It it were packages from the development branch then you do not need to 
> flatten them. 
> 
> -- Pavel
> 
> 2017-08-04 15:52 GMT+02:00 Tim Mackinnon <tim@testit.works>:
>> Hi Pavel - When you say “packages from the Pharo repo” - I think I’m doing 
>> that - yesterday I cloned the Pharo repo and then I copied the Fuel packages 
>> you guys suggested over into my branch (not elegant, but simple).
>> 
>> So I should have the flattened versions then?
>> 
>> (I have now managed to get the P7 image working - so thanks for all your 
>> help, but I’m curious about this part)
>> 
>> Tim
>> 
>>> On 4 Aug 2017, at 12:49, Pavel Krivanek <pavel.kriva...@gmail.com> wrote:
>>> 
>>> Hmm, Pharo 7 has flattened traits in the kernel, but it still supports 
>>> them. So probably because you are using vanilla Fuel packages, they extend 
>>> traits that are not used for real. You should use packages from the Pharo 
>>> repository.
>>> 
>>> -- Pavel
>>> 
>>> 2017-08-04 13:42 GMT+02:00 Tim Mackinnon <tim@testit.works>:
>>>> Sadly - false call, that was my logging message - so I’m stumped why these 
>>>> traits aren’t being compiled when I load in Fuel? 
>>>> 
>>>> However I have figured out why I get the BigEndian error - this is because 
>>>> the platform is now 7 and so the FlPharo06Platform is not being identified 
>>>> and the more generic FlPharoPlatform is then the default and it doesn’t 
>>>> implement #isBigEndian.
>>>> 
>>>> Tim
>>>> 
>>>> 
>>>> 
>>>>> On 4 Aug 2017, at 12:20, Tim Mackinnon <tim@testit.works> wrote:
>>>>> 
>>>>> I’ve spotted something interesting in my logs - when I added one of the 
>>>>> missing methods to ClassDescription - I see in the log the message:
>>>>> 
>>>>> Loaded -> Fuel-cypress.1 --- 
>>>>> filetree:///builds/macta/PharoLambda/bootstrap --- cache
>>>>> ...finished baseline
>>>>> Compiling missing traits...
>>>>> Evaluating post load initialization...
>>>>> Finished Script.
>>>>> 
>>>>> However when I remove all the compiles I don’t see this message:
>>>>> 
>>>>> Loaded -> Fuel-cypress.1 --- 
>>>>> filetree:///builds/macta/PharoLambda/bootstrap --- cache
>>>>> ...finished baseline
>>>>> Evaluating post load initialization...
>>>>> Finished Script.
>>>>> 
>>>>> 
>>>>> So I wonder if this is similar to the problem I had in the previous 6.0 
>>>>> image - where some things didn’t seem to compile properly (in that case, 
>>>>> it was loading a missing class that didn’t seem to cause recompilation).
>>>>> 
>>>>> Tim
>>>>> 
>>>>>> On 4 Aug 2017, at 11:10, Tim Mackinnon <tim@testit.works> wrote:
>>>>>> 
>>>>>> Actually there is something weird going on - as now I’m getting a 
>>>>>> complaint about "FLPharoPlatform had the subclass responsibility to 
>>>>>> implement #isBigEndian”, and that’s in the FuelPlatform-Pharo-06 which 
>>>>>> you said to include (and it looks like I am).
>>>>>> 
>>>>>> I need to double check this - as I must be making some trivial mistake.
>>>>>> 
>>>>>> Tim
>>>>>> 
>>>>>>> On 4 Aug 2017, at 11:01, Tim Mackinnon <tim@testit.works> wrote:
>>>>>>> 
>>>>>>> Hi Mariano - I’ve looked at this again, and it was my fault - I was 
>>>>>>> compiling in :
>>>>>>> 
>>>>>>> fuelAccept: aGeneralMapper
>>>>>>>         ^self explicitRequirement.
>>>>>>> 
>>>>>>> Because when I looked at the Traits for fuel - this is what it had for 
>>>>>>> TClass? - as I’m not so clear on traits, what does this mean - as I had 
>>>>>>> just assumed that I should flatten the Fuel methods for TCLass, 
>>>>>>> TBehaviour and TClassDescription - but I think I’ve misunderstood what 
>>>>>>> I should do (and I guess from Pavel’s comment - I should really look at 
>>>>>>> why that initial method was missing as it sounds like it should have 
>>>>>>> worked  - so maybe its an order loading thing?).
>>>>>>> 
>>>>>>> Thanks, for helping by the way - this is proving very instructional.
>>>>>>> 
>>>>>>> Tim
>>>>>>> 
>>>>>>>> On 3 Aug 2017, at 18:26, Mariano Martinez Peck <marianop...@gmail.com> 
>>>>>>>> wrote:
>>>>>>>> 
>>>>>>>> 
>>>>>>>>> On Thu, Aug 3, 2017 at 2:14 PM, Tim Mackinnon <tim@testit.works> 
>>>>>>>>> wrote:
>>>>>>>>> Hi Mariano - I compiled in the trait methods manually and it got 
>>>>>>>>> further - but now I’m seeing another error - Error: Explicitly 
>>>>>>>>> required method",
>>>>>>>>>     "\u001b[0mLambda class(Object)>>error:",
>>>>>>>>>     "explicitRequirement”,
>>>>>>>>> 
>>>>>>>> 
>>>>>>>> mmmm the stack is weird... it looks like if Class >> fuelAccept: would 
>>>>>>>> have the wrong implementation, that is, having the one from TClass:
>>>>>>>> 
>>>>>>>> fuelAccept: aGeneralMapper
>>>>>>>>        ^self explicitRequirement.
>>>>>>>> 
>>>>>>>> Rather than the correct one:
>>>>>>>> 
>>>>>>>> fuelAccept: aGeneralMapper
>>>>>>>> 
>>>>>>>>        ^aGeneralMapper visitClass: self
>>>>>>>> 
>>>>>>>> 
>>>>>>>> Maybe the solution is to compile all those methods from traits BUT NOT 
>>>>>>>> those that are "^self explicitRequirement." because those will 
>>>>>>>> override the good methods.
>>>>>>>> 
>>>>>>>> If that doesn't work, then maybe can you print to console the each 
>>>>>>>> impl (source) of each implementor of #fuelAccept: ?
>>>>>>>> 
>>>>>>>> Thoughts?
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>>  
>>>>>>>>> Any ideas?
>>>>>>>>> 
>>>>>>>>> Tim
>>>>>>>>> 
>>>>>>>>> "--- RUNNING ERROR HANDLER ---",
>>>>>>>>>     "Error: Explicitly required method",
>>>>>>>>>     "",
>>>>>>>>>     "\u001b[0m\u001b[31mError: Explicitly required method",
>>>>>>>>>     "\u001b[0mLambda class(Object)>>error:",
>>>>>>>>>     "explicitRequirement",
>>>>>>>>>     "  self error: 'No decompiler available' in Lambda 
>>>>>>>>> class(Object)>>explicitRequirement in Block: explicitRequirement...",
>>>>>>>>>     "False>>ifFalse:",
>>>>>>>>>     "Lambda class(Object)>>explicitRequirement",
>>>>>>>>>     "Lambda class(Class)>>fuelAccept:",
>>>>>>>>>     "FLLightGeneralMapper>>mapAndTrace:",
>>>>>>>>>     "FLLightGlobalMapper>>mapAndTrace:",
>>>>>>>>>     "FLPluggableSubstitutionMapper>>mapAndTrace:",
>>>>>>>>>     "FLAnalysis>>mapAndTrace:",
>>>>>>>>>     "FLAnalysis>>run",
>>>>>>>>>     "setDefaultAnalysis",
>>>>>>>>>     "  self error: 'No decompiler available' in 
>>>>>>>>> FLAnalyzer>>setDefaultAnalysis in Block: setDefaultAnalysis...",
>>>>>>>>>     "FLAnalyzer>>analysisFor:",
>>>>>>>>>     "FLSerialization>>analysisStep",
>>>>>>>>>     "FLSerialization>>run",
>>>>>>>>>     "setDefaultSerialization",
>>>>>>>>>     "  self error: 'No decompiler available' in 
>>>>>>>>> FLSerializer>>setDefaultSerialization in Block: 
>>>>>>>>> setDefaultSerialization...",
>>>>>>>>>     "serialize: t1 on: t2",
>>>>>>>>>     "  self error: 'No decompiler available' in 
>>>>>>>>> FLSerializer>>serialize:on: in Block: serialize: t1 on: t2...",
>>>>>>>>>     "on: t1 globalEnvironment: t2 do: t3",
>>>>>>>>>     "  self error: 'No decompiler available' in FLEncoder 
>>>>>>>>> class>>on:globalEnvironment:do: in Block: on: t1 globalEnvironment: 
>>>>>>>>> t2 do: t3...",
>>>>>>>>>     "BlockClosure>>ensure:",
>>>>>>>>>     "FLEncoder class>>on:globalEnvironment:do:",
>>>>>>>>>     "FLSerializer>>serialize:on:",
>>>>>>>>>     "NonInteractiveUIManager>>writeFuelContext:",
>>>>>>>>>     "Lambda class>>processDebug:",
>>>>>>>>>     "Lambda class>>processJSON:",
>>>>>>>>>     "Lambda class>>process:",
>>>>>>>>>     "activate",
>>>>>>>>> 
>>>>>>>>>> On 3 Aug 2017, at 17:26, Mariano Martinez Peck 
>>>>>>>>>> <marianop...@gmail.com> wrote:
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> On Thu, Aug 3, 2017 at 1:17 PM, Tim Mackinnon <tim@testit.works> 
>>>>>>>>>> wrote:
>>>>>>>>>>> Hi guys - I think I’m getting close - I’m able to load remote 
>>>>>>>>>>> packages, and I’ve added fuel to my repo and its loading - however 
>>>>>>>>>>> I am getting an error when I run and test writing out a context - 
>>>>>>>>>>> MessageNotUnderstood: Context 
>>>>>>>>>>> class>>fuelIgnoredInstanceVariableNames
>>>>>>>>>>> 
>>>>>>>>>>> I can see that this is a trait - is trait support missing in the 
>>>>>>>>>>> minimal image?
>>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> Uff...that's a good question hahahhah 
>>>>>>>>>> I don't know if the minimal image supports traits, but what I am 
>>>>>>>>>> almost sure, is the Behavior DOES need the methods defined in 
>>>>>>>>>> TBehavior. So maybe the minimal image flattens the traits. In this 
>>>>>>>>>> case you could do the same for Fuel (flattenDownAllTraits)
>>>>>>>>>>  
>>>>>>>>>>> (I also seemed to get this far just loading the Fuel package - but 
>>>>>>>>>>> just to be sure I added the other platform ones like you suggested 
>>>>>>>>>>> and still get the same error). Given how simple that method is, I 
>>>>>>>>>>> could just compile it in - but maybe there are many more?
>>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> TBehavior, TClass and TClassDescription are the only one that comes 
>>>>>>>>>> to my mind right now...  there are only a few methods from Fuel. So 
>>>>>>>>>> could compile those directly at least on a first step...at least you 
>>>>>>>>>> keep you going. 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>>  
>>>>>>>>>>> Tim
>>>>>>>>>>> 
>>>>>>>>>>> 
>>>>>>>>>>> "errorMessage": "Command failed: ./pharo Pharo.image 
>>>>>>>>>>> --no-default-preferences process Lambda 
>>>>>>>>>>> '{\"debug\":true,\"data\":5}'\n
>>>>>>>>>>>   "errorType": "Error",
>>>>>>>>>>>   "stackTrace": [
>>>>>>>>>>>     "Writing fuel context to S3...",
>>>>>>>>>>>     "Using S3 bucket morethan-technology-projects",
>>>>>>>>>>>     "\u001b[31m",
>>>>>>>>>>>     "--- RUNNING ERROR HANDLER ---",
>>>>>>>>>>>     "MessageNotUnderstood: Context 
>>>>>>>>>>> class>>fuelIgnoredInstanceVariableNames",
>>>>>>>>>>>     "",
>>>>>>>>>>>     "\u001b[0m\u001b[31mMessageNotUnderstood: Context 
>>>>>>>>>>> class>>fuelIgnoredInstanceVariableNames",
>>>>>>>>>>>     "\u001b[0mContext class(Object)>>doesNotUnderstand: 
>>>>>>>>>>> #fuelIgnoredInstanceVariableNames",
>>>>>>>>>>>     "FLVariablesMapping>>instanceVariableNamesToSerialize",
>>>>>>>>>>>     "FLVariablesMapping>>initializeAnalyzing",
>>>>>>>>>>>     "FLVariablesMapping class>>newAnalyzing:references:",
>>>>>>>>>>>     
>>>>>>>>>>> "FLContextCluster(FLPointerObjectCluster)>>initializeAnalyzing:",
>>>>>>>>>>>     "FLContextCluster class(FLObjectCluster class)>>newAnalyzing:",
>>>>>>>>>>>     "clusterKeyedByObjectClass: t1 class: t2",
>>>>>>>>>>>     "  self error: 'No decompiler available' in 
>>>>>>>>>>> FLLightGeneralMapper(FLMapper)>>clusterKeyedByObjectClass:class: in 
>>>>>>>>>>> Block: clusterKeyedByObjectClass: t1 class: t2...",
>>>>>>>>>>>     "clusterInstanceOf: t1 keyInBucket: t2 factory: t3",
>>>>>>>>>>>     "  self error: 'No decompiler available' in 
>>>>>>>>>>> FLLightGeneralMapper(FLMapper)>>clusterInstanceOf:keyInBucket:factory:
>>>>>>>>>>>  in Block: clusterInstanceOf: t1 keyInBucket: t2 factory: t3...",
>>>>>>>>>>>     "at: t1 ifAbsentPut: t2",
>>>>>>>>>>>     "  self error: 'No decompiler available' in 
>>>>>>>>>>> IdentityDictionary(Dictionary)>>at:ifAbsentPut: in Block: at: t1 
>>>>>>>>>>> ifAbsentPut: t2...",
>>>>>>>>>>>     "IdentityDictionary(Dictionary)>>at:ifAbsent:",
>>>>>>>>>>>     "IdentityDictionary(Dictionary)>>at:ifAbsentPut:",
>>>>>>>>>>>     
>>>>>>>>>>> "FLLightGeneralMapper(FLMapper)>>clusterInstanceOf:keyInBucket:factory:",
>>>>>>>>>>>     
>>>>>>>>>>> "FLLightGeneralMapper(FLMapper)>>clusterKeyedByObjectClass:class:",
>>>>>>>>>>>     "FLLightGeneralMapper(FLMapper)>>mapAndTraceByObjectClass:to:",
>>>>>>>>>>>     "FLLightGeneralMapper>>visitMethodContext:",
>>>>>>>>>>>     "Context>>fuelAccept:",
>>>>>>>>>>>     "FLLightGeneralMapper>>mapAndTrace:",
>>>>>>>>>>>     "FLLightGlobalMapper>>mapAndTrace:",
>>>>>>>>>>>     "FLPluggableSubstitutionMapper>>mapAndTrace:",
>>>>>>>>>>>     "FLAnalysis>>mapAndTrace:",
>>>>>>>>>>>     "FLAnalysis>>run",
>>>>>>>>>>>     "setDefaultAnalysis",
>>>>>>>>>>>     "  self error: 'No decompiler available' in 
>>>>>>>>>>> FLAnalyzer>>setDefaultAnalysis in Block: setDefaultAnalysis...",
>>>>>>>>>>>     "FLAnalyzer>>analysisFor:",
>>>>>>>>>>>     "FLSerialization>>analysisStep",
>>>>>>>>>>>     "FLSerialization>>run",
>>>>>>>>>>>     "setDefaultSerialization",
>>>>>>>>>>>     "  self error: 'No decompiler available' in 
>>>>>>>>>>> FLSerializer>>setDefaultSerialization in Block: 
>>>>>>>>>>> setDefaultSerialization...",
>>>>>>>>>>>     "serialize: t1 on: t2",
>>>>>>>>>>>     "  self error: 'No decompiler available' in 
>>>>>>>>>>> FLSerializer>>serialize:on: in Block: serialize: t1 on: t2...",
>>>>>>>>>>>     "on: t1 globalEnvironment: t2 do: t3",
>>>>>>>>>>>     "  self error: 'No decompiler available' in FLEncoder 
>>>>>>>>>>> class>>on:globalEnvironment:do: in Block: on: t1 globalEnvironment: 
>>>>>>>>>>> t2 do: t3...",
>>>>>>>>>>>     "BlockClosure>>ensure:",
>>>>>>>>>>>     "FLEncoder class>>on:globalEnvironment:do:",
>>>>>>>>>>>     "\u001b[0m"
>>>>>>>>>>>> On 3 Aug 2017, at 13:16, Mariano Martinez Peck 
>>>>>>>>>>>> <marianop...@gmail.com> wrote:
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> On Thu, Aug 3, 2017 at 8:58 AM, Tim Mackinnon <tim@testit.works> 
>>>>>>>>>>>> wrote:
>>>>>>>>>>>>> I’m so close now (bit of a diversion with gitlab yml not liking 
>>>>>>>>>>>>> the eval string) - that did load and it got me really close - I’m 
>>>>>>>>>>>>> just missing FlSerializer now (I have progressed my work to fuel 
>>>>>>>>>>>>> out the context for debugging to S3)… so looking at the repo, 
>>>>>>>>>>>>> there are quite a few fuel packages - but in a big image I can 
>>>>>>>>>>>>> see that FLSerialiser is in Core - so do I just need core? But 
>>>>>>>>>>>>> then there are a few fuel packages with Core?
>>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> The easiest way to understand that is either checking 
>>>>>>>>>>>> ConfigurationOfFuel directly or some of the related Metacello tool.
>>>>>>>>>>>> Anyway, for this case, I think you need the packages (in this 
>>>>>>>>>>>> order): FuelPlatform and Fuel. Bug again, Metacello allows some 
>>>>>>>>>>>> postLoad actions (which we use in Fuel)... so...it's not always 
>>>>>>>>>>>> easy to load a project without Metacello. 
>>>>>>>>>>>> 
>>>>>>>>>>>> Sometimes you can print the result of #record:
>>>>>>>>>>>> 
>>>>>>>>>>>> Metacello new 
>>>>>>>>>>>>    configuration: 'Fuel';
>>>>>>>>>>>>    smalltalkhubUser: 'Pharo' project: 'Fuel';
>>>>>>>>>>>>    version: #stable;
>>>>>>>>>>>>    record: #('Core').
>>>>>>>>>>>> 
>>>>>>>>>>>> ->
>>>>>>>>>>>> 
>>>>>>>>>>>> "linear load : 
>>>>>>>>>>>>    linear load : 2.1.10 [ConfigurationOfFuel]
>>>>>>>>>>>>            linear load : baseline [ConfigurationOfFuelPlatform]
>>>>>>>>>>>>                    load : FuelPlatform-Core
>>>>>>>>>>>>                    load : FuelPlatform-Pharo-Core
>>>>>>>>>>>>                    load : FuelPlatform-Pharo-06"
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> ------
>>>>>>>>>>>> 
>>>>>>>>>>>> Anyway.... I guess I would try to load these packages (in this 
>>>>>>>>>>>> order):
>>>>>>>>>>>> 
>>>>>>>>>>>> FuelPlatform-Core
>>>>>>>>>>>> FuelPlatform-Pharo-Core
>>>>>>>>>>>> FuelPlatform-Pharo-06
>>>>>>>>>>>> Fuel
>>>>>>>>>>>> 
>>>>>>>>>>>> And when you are down loading, then execute:
>>>>>>>>>>>> 
>>>>>>>>>>>> (Smalltalk at: #FLPlatform) current addHacks
>>>>>>>>>>>> 
>>>>>>>>>>>>  
>>>>>>>>>>>>> I’m also not quite clear on how I would load packages without a 
>>>>>>>>>>>>> Baseline (would I create my own baseline for the fuel packages I 
>>>>>>>>>>>>> need?)
>>>>>>>>>>>>> 
>>>>>>>>>>>>> Tim
>>>>>>>>>>>>> 
>>>>>>>>>>>>>> On 3 Aug 2017, at 12:07, Pavel Krivanek 
>>>>>>>>>>>>>> <pavel.kriva...@gmail.com> wrote:
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 2017-08-03 13:02 GMT+02:00 Tim Mackinnon <tim@testit.works>:
>>>>>>>>>>>>>>> I really appreciate your patience and help on this - it looks 
>>>>>>>>>>>>>>> very promising and I am giving it a spin now…
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> When you say the pharo repository - are you referring to this: 
>>>>>>>>>>>>>>> https://github.com/pharo-project/pharo/tree/master/src. ? Just 
>>>>>>>>>>>>>>> so I know for the future.
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> yes
>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> -- Pavel 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> Tim
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> On 3 Aug 2017, at 09:16, Pavel Krivanek 
>>>>>>>>>>>>>>>> <pavel.kriva...@gmail.com> wrote:
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 2017-08-03 10:14 GMT+02:00 Pavel Krivanek 
>>>>>>>>>>>>>>>> <pavel.kriva...@gmail.com>:
>>>>>>>>>>>>>>>>> The easiest think you can do is to copy to your repository 
>>>>>>>>>>>>>>>>> (or some other) related packages from the Pharo repository 
>>>>>>>>>>>>>>>>> (to do not have to clone it all):
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> Metacello-GitBasedRepository.package
>>>>>>>>>>>>>>>>> Metacello-GitHub.package
>>>>>>>>>>>>>>>>> SUnit-Core.package
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> and create baseline to load them. I already tried it so you 
>>>>>>>>>>>>>>>>> can test it:
>>>>>>>>>>>>>>>>> https://drive.google.com/open?id=0BzSsmZhqtUTeMVJacTZtdW5UQW8
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> Then you will do something like:
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> (accidental message send ;-) )
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> BASELINE=MetacelloGitBasedRepository
>>>>>>>>>>>>>>>> pharo "$IMAGE_NAME.image" --no-default-preferences eval --save 
>>>>>>>>>>>>>>>> \
>>>>>>>>>>>>>>>>        "Metacello new baseline: '$BASELINE'; repository: 
>>>>>>>>>>>>>>>> 'filetree://./PharoLambda/src'; load."
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> BASELINE=Lambda
>>>>>>>>>>>>>>>> pharo "$IMAGE_NAME.image" --no-default-preferences eval --save 
>>>>>>>>>>>>>>>> \
>>>>>>>>>>>>>>>>        "Metacello new baseline: '$BASELINE'; repository: 
>>>>>>>>>>>>>>>> 'filetree://./PharoLambda/src'; load."
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> As I tried that. The baseline of Lambda is then able to be 
>>>>>>>>>>>>>>>> loaded.
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> -- Pavel
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 2017-08-02 15:18 GMT+02:00 Tim Mackinnon <tim@testit.works>:
>>>>>>>>>>>>>>>>>> Ah, I think I’m starting to get closer to what I need…
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> So if I want to load in that last piece to enable more 
>>>>>>>>>>>>>>>>>> general remote loading - how do I figure out how to do that? 
>>>>>>>>>>>>>>>>>> I’m trying to work out where the build steps for building up 
>>>>>>>>>>>>>>>>>> the image (can I see them in Jenkins? It wasn’t clear to me 
>>>>>>>>>>>>>>>>>> if I can look it up? Or the BaselineOfIDE was mentioned - 
>>>>>>>>>>>>>>>>>> looking there I can see a few metacello and gofer packages - 
>>>>>>>>>>>>>>>>>> but then I guess I’m looking for an easy Mcz I can use with 
>>>>>>>>>>>>>>>>>> the example below?
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> Or do I just load Metacello as a git submodule and then it 
>>>>>>>>>>>>>>>>>> will be on my local filesystem to then bootstrap up?
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> I guess I’m trying to work out the best sustainable approach 
>>>>>>>>>>>>>>>>>> to getting to a good server based image that has minimal 
>>>>>>>>>>>>>>>>>> tools and the ability to easily load remote code for pre-req 
>>>>>>>>>>>>>>>>>> projects.
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>> Tim
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> On 2 Aug 2017, at 07:05, Guillermo Polito 
>>>>>>>>>>>>>>>>>>> <guillermopol...@gmail.com> wrote:
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> Yes, you should be able to load an mcz in that image by 
>>>>>>>>>>>>>>>>>>> doing:
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> (MCDirectoryRepository new directory: 'where-your-mcz-is')
>>>>>>>>>>>>>>>>>>>     loadVersionFromFileNamed: 
>>>>>>>>>>>>>>>>>>> 'Metacello-GitBasedRepository-Author.1.mcz') load.
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> Guille
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> On Wed, Aug 2, 2017 at 7:57 AM, Pavel Krivanek 
>>>>>>>>>>>>>>>>>>>> <pavel.kriva...@gmail.com> wrote:
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 2017-08-01 23:13 GMT+02:00 Tim Mackinnon 
>>>>>>>>>>>>>>>>>>>> <tim@testit.works>:
>>>>>>>>>>>>>>>>>>>>> Hi Pavel - I tried it again and the problem is do with 
>>>>>>>>>>>>>>>>>>>>> Metacello dependencies in your baseline.
>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>> The SUnit baseline doesn’t specify any additional 
>>>>>>>>>>>>>>>>>>>>> dependencies to load (it just loads local packages), 
>>>>>>>>>>>>>>>>>>>>> whereas my baseline that fails looks like this:
>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>> baseline: spec
>>>>>>>>>>>>>>>>>>>>>   <baseline>
>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>   spec for: #common do: [
>>>>>>>>>>>>>>>>>>>>>           spec configuration: 'ZTimestamp' with: [
>>>>>>>>>>>>>>>>>>>>>                   spec 
>>>>>>>>>>>>>>>>>>>>>                           versionString: #stable;
>>>>>>>>>>>>>>>>>>>>>                           repository: 
>>>>>>>>>>>>>>>>>>>>> 'http://mc.stfx.eu/Neo' ].
>>>>>>>>>>>>>>>>>>>>>                   
>>>>>>>>>>>>>>>>>>>>>           spec baseline: 'AWS' with: [    
>>>>>>>>>>>>>>>>>>>>>                   spec repository: 
>>>>>>>>>>>>>>>>>>>>> 'github://newapplesho/aws-sdk-smalltalk:v1.10/pharo-repository'
>>>>>>>>>>>>>>>>>>>>>  ].
>>>>>>>>>>>>>>>>>>>>>                                           
>>>>>>>>>>>>>>>>>>>>>           spec 
>>>>>>>>>>>>>>>>>>>>>                   package: 'Lambda' with: [ spec 
>>>>>>>>>>>>>>>>>>>>> requires: {'ZTimestamp'. 'AWS'}].
>>>>>>>>>>>>>>>>>>>>>                   
>>>>>>>>>>>>>>>>>>>>>   ].              
>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>> The “spec configuration: ….” Specifications cause the 
>>>>>>>>>>>>>>>>>>>>> error:
>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>> 25 UndefinedObject(Object)>>doesNotUnderstand: #addTo:
>>>>>>>>>>>>>>>>>>>>> 26 MCRepositoryGroup>>addRepository:
>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>> If I remove those lines from my baseline above (as well 
>>>>>>>>>>>>>>>>>>>>> the requires: reference to them) I can then successfully 
>>>>>>>>>>>>>>>>>>>>> load my packages.
>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>> So is this something the minimal image should support 
>>>>>>>>>>>>>>>>>>>>> (otherwise how do you load external packages into your 
>>>>>>>>>>>>>>>>>>>>> image without checking them in locally?) OR is there 
>>>>>>>>>>>>>>>>>>>>> something simple I can checkin and load locally to return 
>>>>>>>>>>>>>>>>>>>>> that behaviour? (Personally I think it would make sense 
>>>>>>>>>>>>>>>>>>>>> to allow remote loading - I’m guessing Pharo itself as a 
>>>>>>>>>>>>>>>>>>>>> core has everything it needs - but if you want to do any 
>>>>>>>>>>>>>>>>>>>>> experimentation on the core and need remote packages, you 
>>>>>>>>>>>>>>>>>>>>> would hit this too - so it feels a bit limiting). 
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> The dependencies in th baseline are supported but the 
>>>>>>>>>>>>>>>>>>>> support for most of external repositories (like package 
>>>>>>>>>>>>>>>>>>>> Metacello-GitBasedRepository) is loaded at the end of 
>>>>>>>>>>>>>>>>>>>> bootstrapping process in BaselineOfIDE. We should 
>>>>>>>>>>>>>>>>>>>> check/solve dependencies and move it into the minimal 
>>>>>>>>>>>>>>>>>>>> Pharo. For now you can try to load it by yourself or work 
>>>>>>>>>>>>>>>>>>>> with already prepared local clones of required 
>>>>>>>>>>>>>>>>>>>> repositories.
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> -- Pavel
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>  
>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>> Tim
>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> On 1 Aug 2017, at 10:06, Pavel Krivanek 
>>>>>>>>>>>>>>>>>>>>>> <pavel.kriva...@gmail.com> wrote:
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 2017-07-31 22:51 GMT+02:00 Tim Mackinnon 
>>>>>>>>>>>>>>>>>>>>>> <tim@testit.works>:
>>>>>>>>>>>>>>>>>>>>>>> I wasn’t clear on which image to retry - the 
>>>>>>>>>>>>>>>>>>>>>>> https://ci.inria.fr/pharo/job/Pharo-6.0-Update-Step-3.2-Minimal/lastSuccessfulBuild/artifact/Pharo-minimal-64.zip
>>>>>>>>>>>>>>>>>>>>>>>  one still shows as being last updated 7 days ago.
>>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> The 
>>>>>>>>>>>>>>>>>>>>>>> https://ci.inria.fr/pharo/view/6.0-SysConf/job/Pharo-6.0-Step-04-01-ConfigurationOfMinimalPharo/
>>>>>>>>>>>>>>>>>>>>>>>  one gives me a mismatch error: This interpreter (vers. 
>>>>>>>>>>>>>>>>>>>>>>> 68021) cannot read image file (vers. 6521).
>>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> The 
>>>>>>>>>>>>>>>>>>>>>>> https://ci.inria.fr/pharo/view/7.0/job/70-Bootstrap-32bit-Conversion/lastSuccessfulBuild/artifact/latest-minimal-64.zip
>>>>>>>>>>>>>>>>>>>>>>>  one gives me a walkback when trying to run my install 
>>>>>>>>>>>>>>>>>>>>>>> script :
>>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> 25 UndefinedObject(Object)>>doesNotUnderstand: #addTo:
>>>>>>>>>>>>>>>>>>>>>>> 26 MCRepositoryGroup>>addRepository:
>>>>>>>>>>>>>>>>>>>>>>> 27 createRepository
>>>>>>>>>>>>>>>>>>>>>>>   | repo |
>>>>>>>>>>>>>>>>>>>>>>>   repo := self project createRepository: self.
>>>>>>>>>>>>>>>>>>>>>>>   ^ MCRepositoryGroup default repositories
>>>>>>>>>>>>>>>>>>>>>>>     detect: [ :each | each = repo ]
>>>>>>>>>>>>>>>>>>>>>>>     ifNone: [ 
>>>>>>>>>>>>>>>>>>>>>>>       MCRepositoryGroup default addRepository: repo.
>>>>>>>>>>>>>>>>>>>>>>>       repo ] in 
>>>>>>>>>>>>>>>>>>>>>>> MetacelloRepositorySpec>>createRepository
>>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> I think this is because the image doesn’t support 
>>>>>>>>>>>>>>>>>>>>>>> Metacello? As in:
>>>>>>>>>>>>>>>>>>>>>>> Metacello new
>>>>>>>>>>>>>>>>>>>>>>>     repository: 'filetree://../src';
>>>>>>>>>>>>>>>>>>>>>>>     baseline: 'Lambda';
>>>>>>>>>>>>>>>>>>>>>>>     load.
>>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> How do you guys load things into the minimal images (I 
>>>>>>>>>>>>>>>>>>>>>>> thought you used Metacello - but maybe you do it some 
>>>>>>>>>>>>>>>>>>>>>>> other way?)
>>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> I can use a big 6.1 image fine (as it has Metacello 
>>>>>>>>>>>>>>>>>>>>>>> loaded) but I’d really like a minimal solution - that 
>>>>>>>>>>>>>>>>>>>>>>> can load in libraries like AWS S3, or XML parsing etc. 
>>>>>>>>>>>>>>>>>>>>>>> and it seems like I should be a good customer for 
>>>>>>>>>>>>>>>>>>>>>>> kicking the tires on all of this.
>>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>>> Tim
>>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> I checked the 64-bit Pharo 7 minimal image and loading 
>>>>>>>>>>>>>>>>>>>>>> of baseline (of SUnit from pharo-project/pharo) works:
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> ./pharo Pharo7.0-minimal-64bit-b1625bf.image eval --save 
>>>>>>>>>>>>>>>>>>>>>> "Metacello new baseline: 'SUnit'; repository: 
>>>>>>>>>>>>>>>>>>>>>> 'filetree://./pharo-core/src'; load."
>>>>>>>>>>>>>>>>>>>>>>  
>>>>>>>>>>>>>>>>>>>>>> ./pharo Pharo7.0-minimal-64bit-b1625bf.image eval 
>>>>>>>>>>>>>>>>>>>>>> "TestCase suite run"
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> Can you test it too?
>>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>>>> -- Pavel
>>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> -- 
>>>>>>>>>>>>>>>>>>>    
>>>>>>>>>>>>>>>>>>> Guille Polito
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> Research Engineer
>>>>>>>>>>>>>>>>>>> French National Center for Scientific Research - 
>>>>>>>>>>>>>>>>>>> http://www.cnrs.fr
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> Web: http://guillep.github.io
>>>>>>>>>>>>>>>>>>> Phone: +33 06 52 70 66 13
>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>> 
>>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> -- 
>>>>>>>>>>>> Mariano
>>>>>>>>>>>> http://marianopeck.wordpress.com
>>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> -- 
>>>>>>>>>> Mariano
>>>>>>>>>> http://marianopeck.wordpress.com
>>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> -- 
>>>>>>>> Mariano
>>>>>>>> http://marianopeck.wordpress.com
>>>>>>> 
>>>>>> 
>>>>> 
>>>> 
>>> 
>> 
> 

Reply via email to