ConfigurationOfAlien

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
14 messages Options
Reply | Threaded
Open this post in threaded view
|

ConfigurationOfAlien

Fernando olivero
Hi, just added ConfigurationOfAlien to the MetacelloRepository.


To load Alien using Metacello configurations evaluate

        Gofer new
                url: 'http://www.squeaksource.com/MetacelloRepository' ;
                package: 'ConfigurationOfAlien';
                load.
        (ConfigurationOfAlien project version:'1.0') load.


( John please update the ALIEN squeaksource page with the previous text )


Note:
        Using the available  MAC VM i the pharo page, you should be able to run the test correctly.
        ( the alien plugin 'IA32ABI 7 May 2009 (e)', is compiled inside that vm, there's no need for the external one)  


Metacello question:
 
If i want load Alien Examples, the package Alien-MacOSExamples, but don't want to add them to the above configuration , should i create a new #versionXXX method ?

Or provide a class side method like for example

ConfigurationOfAlien>>loadWithMaxOsExamples
        (ConfigurationOfAlien project version:'1.0') load:#('Alien-MacOsExamples')


Saludos,
Fernando
_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: ConfigurationOfAlien

Schwab,Wilhelm K
That's great news, at least for mac users.  What does a penguin herder do to get a plugin?  Would it be easier to use a squeak image to build it?

Bill




-----Original Message-----
From: [hidden email] [mailto:[hidden email]] On Behalf Of Fernando olivero
Sent: Wednesday, January 13, 2010 11:43 AM
To: [hidden email] Development
Subject: [Pharo-project] ConfigurationOfAlien

Hi, just added ConfigurationOfAlien to the MetacelloRepository.


To load Alien using Metacello configurations evaluate

        Gofer new
                url: 'http://www.squeaksource.com/MetacelloRepository' ;
                package: 'ConfigurationOfAlien';
                load.
        (ConfigurationOfAlien project version:'1.0') load.


( John please update the ALIEN squeaksource page with the previous text )


Note:
        Using the available  MAC VM i the pharo page, you should be able to run the test correctly.
        ( the alien plugin 'IA32ABI 7 May 2009 (e)', is compiled inside that vm, there's no need for the external one)  


Metacello question:
 
If i want load Alien Examples, the package Alien-MacOSExamples, but don't want to add them to the above configuration , should i create a new #versionXXX method ?

Or provide a class side method like for example

ConfigurationOfAlien>>loadWithMaxOsExamples
        (ConfigurationOfAlien project version:'1.0') load:#('Alien-MacOsExamples')


Saludos,
Fernando
_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: ConfigurationOfAlien

Henrik Sperre Johansen

On Jan 13, 2010, at 6:06 53PM, Schwab,Wilhelm K wrote:

> That's great news, at least for mac users.  What does a penguin herder do to get a plugin?

1) Download VM sources for latest release from www.squeakvm.org.
2) Make an image with VMMaker and AlienPlugin.
3) Use VMMakerTool to generate AlienPlugin sources.
4) (possibly) use special sqVirtualMachine.c/h from  the \Cross\plugins\IA32ABI folder.
5) Try to compile, fix errors that pop up.
6) Repeat step5 enough times that you end up with a compiled plugin.


>  Would it be easier to use a squeak image to build it?
Only step 2, unless you load from  www.squeaksource.org/JBARepo, and run VMMakerLoader loadAndFix.

Cheers,
Henry
_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: ConfigurationOfAlien

Mariano Martinez Peck
In reply to this post by Fernando olivero


On Wed, Jan 13, 2010 at 5:43 PM, Fernando olivero <[hidden email]> wrote:
Hi, just added ConfigurationOfAlien to the MetacelloRepository.


To load Alien using Metacello configurations evaluate

       Gofer new
               url: 'http://www.squeaksource.com/MetacelloRepository' ;
               package: 'ConfigurationOfAlien';
               load.
       (ConfigurationOfAlien project version:'1.0') load.


( John please update the ALIEN squeaksource page with the previous text )



Excellent!!!!

Hi Fernando: I checked the Conf, I hope you don't bother if I give you some feedback.

In version1:   try to put mostly only versions. Static information like         spec package: 'Alien-Core'  with: [ spec requires: #( 'Alien-Prereqs'  ) ].
would be better to put them in the baseline. All static and structure information (groups, requieres, etc) should go in baseline. And in version, only versions, author, date, description, blessing, etc.  Post and preload for exaple, it depends. Is they are likely to be always the same, put them in baseline. If they are particular for a version, put them in version. In your case I think they should go on baseline.

You didn't put the dependency from Alien-CoreTest  to Alien. Think that every package should be perfectly loaded.  So, if Alien-CoreTest depends on Alien-Core, then, you have to put it. The same with the examples.
 
Note:
       Using the available  MAC VM i the pharo page, you should be able to run the test correctly.
       ( the alien plugin 'IA32ABI 7 May 2009 (e)', is compiled inside that vm, there's no need for the external one)


Metacello question:

If i want load Alien Examples, the package Alien-MacOSExamples, but don't want to add them to the above configuration , should i create a new #versionXXX method ?

Or provide a class side method like for example

ConfigurationOfAlien>>loadWithMaxOsExamples
       (ConfigurationOfAlien project version:'1.0') load:#('Alien-MacOsExamples')


In my opinion, neither. I would use groups for this. Something like this in baseline mehtod:

    spec
            group: 'default' with: #('Core' );
            group: 'Core' with: #( 'Alien-Core' );
            group: 'Tests' with: #( 'Alien-CoreTest' );
            group: 'Examples' with: #('Alien-MacOSExamples' );

Then to load the project, you can evaluate:


(ConfigurationOfAlien project version: 'xxxx') load  

(this will install the default, which is core)

(ConfigurationOfAlien project version: 'xxxx') load: 'Tests'

will load that group

or:

(ConfigurationOfAlien project version: 'xxxx') load: #('Core' 'Tests' 'Examples' )   

and will load everything.

  
For more information you can look in MetacelloRepository, there are a lot of examples.

Cheers

Mariano


 

Saludos,
Fernando
_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: ConfigurationOfAlien

Levente Uzonyi-2
In reply to this post by Henrik Sperre Johansen
On Wed, 13 Jan 2010, Henrik Johansen wrote:

>
> On Jan 13, 2010, at 6:06 53PM, Schwab,Wilhelm K wrote:
>
>> That's great news, at least for mac users.  What does a penguin herder do to get a plugin?
>
> 1) Download VM sources for latest release from www.squeakvm.org.
> 2) Make an image with VMMaker and AlienPlugin.
> 3) Use VMMakerTool to generate AlienPlugin sources.
> 4) (possibly) use special sqVirtualMachine.c/h from  the \Cross\plugins\IA32ABI folder.
> 5) Try to compile, fix errors that pop up.
> 6) Repeat step5 enough times that you end up with a compiled plugin.

7) Run the tests and wonder why your plugin doesn't work. Repeat 1-7 a few times.
8) Give up and wait till someone else succeeds.

>
>
>>  Would it be easier to use a squeak image to build it?
> Only step 2, unless you load from  www.squeaksource.org/JBARepo, and run VMMakerLoader loadAndFix.

I wonder why are these packages forked.


Levente

>
> Cheers,
> Henry
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: ConfigurationOfAlien

Henrik Sperre Johansen

On Jan 13, 2010, at 7:00 23PM, Levente Uzonyi wrote:

> On Wed, 13 Jan 2010, Henrik Johansen wrote:
>
>>
>> On Jan 13, 2010, at 6:06 53PM, Schwab,Wilhelm K wrote:
>>
>>> That's great news, at least for mac users.  What does a penguin herder do to get a plugin?
>>
>> 1) Download VM sources for latest release from www.squeakvm.org.
>> 2) Make an image with VMMaker and AlienPlugin.
>> 3) Use VMMakerTool to generate AlienPlugin sources.
>> 4) (possibly) use special sqVirtualMachine.c/h from  the \Cross\plugins\IA32ABI folder.
>> 5) Try to compile, fix errors that pop up.
>> 6) Repeat step5 enough times that you end up with a compiled plugin.
>
> 7) Run the tests and wonder why your plugin doesn't work. Repeat 1-7 a few times.
> 8) Give up and wait till someone else succeeds.

Well, yes.

>
>>
>>
>>> Would it be easier to use a squeak image to build it?
>> Only step 2, unless you load from  www.squeaksource.org/JBARepo, and run VMMakerLoader loadAndFix.
>
> I wonder why are these packages forked.

It's not really forked, just installing versions different to what is in VMMaker repository that needs to be changed to work with Pharo.

In specific, the two I remember:
- One of the methods specified in MiscPrimitivePlugin didn't work/return an error for WideStrings. The solution in Pharo was to introduce an extra layer of indirection, since the method itself was called many places, the original definition was moved to a method called ...viaPrimitive (should be renamed prim...), and handling introduced before prim call was made. (using fallback instead if param was WideString).

- One of the methods used by VMMaker had a spelling error, which has been fixed in Pharo, something with occurrencesOf: I think.

Cheers,
Henry
_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: ConfigurationOfAlien

Stéphane Ducasse
In reply to this post by Levente Uzonyi-2

On Jan 13, 2010, at 7:00 PM, Levente Uzonyi wrote:

> On Wed, 13 Jan 2010, Henrik Johansen wrote:
>
>>
>> On Jan 13, 2010, at 6:06 53PM, Schwab,Wilhelm K wrote:
>>
>>> That's great news, at least for mac users.  What does a penguin herder do to get a plugin?
>>
>> 1) Download VM sources for latest release from www.squeakvm.org.
>> 2) Make an image with VMMaker and AlienPlugin.
>> 3) Use VMMakerTool to generate AlienPlugin sources.
>> 4) (possibly) use special sqVirtualMachine.c/h from  the \Cross\plugins\IA32ABI folder.
>> 5) Try to compile, fix errors that pop up.
>> 6) Repeat step5 enough times that you end up with a compiled plugin.
>
> 7) Run the tests and wonder why your plugin doesn't work. Repeat 1-7 a few times.
> 8) Give up and wait till someone else succeeds.
>
>>
>>
>>> Would it be easier to use a squeak image to build it?
>> Only step 2, unless you load from  www.squeaksource.org/JBARepo, and run VMMakerLoader loadAndFix.

probably because JB was fighting in his corner against the dragon and did not dare to fucked up the VMMaker repository
After the paper we are writing I will ask him to take action and to ask if people wants his stuff.


>
> I wonder why are these packages forked.
>
>
> Levente
>
>>
>> Cheers,
>> Henry
>> _______________________________________________
>> Pharo-project mailing list
>> [hidden email]
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: ConfigurationOfAlien

Henrik Sperre Johansen
On 13.01.2010 22:25, Stéphane Ducasse wrote:

> On Jan 13, 2010, at 7:00 PM, Levente Uzonyi wrote:
>
>    
>> On Wed, 13 Jan 2010, Henrik Johansen wrote:
>>
>>      
>>> On Jan 13, 2010, at 6:06 53PM, Schwab,Wilhelm K wrote:
>>>
>>>        
>>>> That's great news, at least for mac users.  What does a penguin herder do to get a plugin?
>>>>          
>>> 1) Download VM sources for latest release from www.squeakvm.org.
>>> 2) Make an image with VMMaker and AlienPlugin.
>>> 3) Use VMMakerTool to generate AlienPlugin sources.
>>> 4) (possibly) use special sqVirtualMachine.c/h from  the \Cross\plugins\IA32ABI folder.
>>> 5) Try to compile, fix errors that pop up.
>>> 6) Repeat step5 enough times that you end up with a compiled plugin.
>>>        
>> 7) Run the tests and wonder why your plugin doesn't work. Repeat 1-7 a few times.
>> 8) Give up and wait till someone else succeeds.
>>
>>      
>>>
>>>        
>>>> Would it be easier to use a squeak image to build it?
>>>>          
>>> Only step 2, unless you load from  www.squeaksource.org/JBARepo, and run VMMakerLoader loadAndFix.
>>>        
> probably because JB was fighting in his corner against the dragon and did not dare to fucked up the VMMaker repository
> After the paper we are writing I will ask him to take action and to ask if people wants his stuff.
>    
The changes he made are specific to changes made in Pharo, getting them
commited to VMMaker will be hard without having Squeak adopt them as well.

As far as I remember, Andreas for one was not against changing
ByteString class >>  findSubstring;in:startingAt:matchTable: to
primFindSubstring, and changing findSubstring... to a
non-primitive-invoking method that does delegation, although I believe
the bug has already been handled differently (ie. the senders have been
changed to do the check instead) in Trunk.

As for the spelling correction, the method is still called
findLastOccuranceOfString:startingAt: in Trunk, should be simple enough
to rename it findLastOccurrenceOfString:startingAt:  and keep the old
version for backwards-compatability if deemed necessary.

Cheers,
Henry

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: ConfigurationOfAlien

Nicolas Cellier
2010/1/13 Henrik Sperre Johansen <[hidden email]>:

> On 13.01.2010 22:25, Stéphane Ducasse wrote:
>> On Jan 13, 2010, at 7:00 PM, Levente Uzonyi wrote:
>>
>>
>>> On Wed, 13 Jan 2010, Henrik Johansen wrote:
>>>
>>>
>>>> On Jan 13, 2010, at 6:06 53PM, Schwab,Wilhelm K wrote:
>>>>
>>>>
>>>>> That's great news, at least for mac users.  What does a penguin herder do to get a plugin?
>>>>>
>>>> 1) Download VM sources for latest release from www.squeakvm.org.
>>>> 2) Make an image with VMMaker and AlienPlugin.
>>>> 3) Use VMMakerTool to generate AlienPlugin sources.
>>>> 4) (possibly) use special sqVirtualMachine.c/h from  the \Cross\plugins\IA32ABI folder.
>>>> 5) Try to compile, fix errors that pop up.
>>>> 6) Repeat step5 enough times that you end up with a compiled plugin.
>>>>
>>> 7) Run the tests and wonder why your plugin doesn't work. Repeat 1-7 a few times.
>>> 8) Give up and wait till someone else succeeds.
>>>
>>>
>>>>
>>>>
>>>>> Would it be easier to use a squeak image to build it?
>>>>>
>>>> Only step 2, unless you load from  www.squeaksource.org/JBARepo, and run VMMakerLoader loadAndFix.
>>>>
>> probably because JB was fighting in his corner against the dragon and did not dare to fucked up the VMMaker repository
>> After the paper we are writing I will ask him to take action and to ask if people wants his stuff.
>>
> The changes he made are specific to changes made in Pharo, getting them
> commited to VMMaker will be hard without having Squeak adopt them as well.
>
> As far as I remember, Andreas for one was not against changing
> ByteString class >>  findSubstring;in:startingAt:matchTable: to
> primFindSubstring, and changing findSubstring... to a
> non-primitive-invoking method that does delegation, although I believe
> the bug has already been handled differently (ie. the senders have been
> changed to do the check instead) in Trunk.
>
> As for the spelling correction, the method is still called
> findLastOccuranceOfString:startingAt: in Trunk, should be simple enough
> to rename it findLastOccurrenceOfString:startingAt:  and keep the old
> version for backwards-compatability if deemed necessary.
>
Oh this one is already ported in trunk
findLastOccuranceOfString: subString startingAt: start
        self deprecated: 'Use instead #findLastOccurrenceOfString:startingAt:'.
        ^ self findLastOccurrenceOfString: subString startingAt: start

> Cheers,
> Henry
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: ConfigurationOfAlien

Henrik Sperre Johansen
On 13.01.2010 22:58, Nicolas Cellier wrote:

> 2010/1/13 Henrik Sperre Johansen<[hidden email]>:
>    
>>
>> As for the spelling correction, the method is still called
>> findLastOccuranceOfString:startingAt: in Trunk, should be simple enough
>> to rename it findLastOccurrenceOfString:startingAt:  and keep the old
>> version for backwards-compatability if deemed necessary.
>>
>>      
> Oh this one is already ported in trunk
> findLastOccuranceOfString: subString startingAt: start
> self deprecated: 'Use instead #findLastOccurrenceOfString:startingAt:'.
> ^ self findLastOccurrenceOfString: subString startingAt: start
>    
Sweet, I was browsing an old version then :D



_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: ConfigurationOfAlien

johnmci
In reply to this post by Fernando olivero

On 2010-01-13, at 8:43 AM, Fernando olivero wrote:

> To load Alien using Metacello configurations evaluate
>
> Gofer new
> url: 'http://www.squeaksource.com/MetacelloRepository' ;
> package: 'ConfigurationOfAlien';
> load.
> (ConfigurationOfAlien project version:'1.0') load.
>
>
> ( John please update the ALIEN squeaksource page with the previous text )

Done

--
===========================================================================
John M. McIntosh <[hidden email]>   Twitter:  squeaker68882
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
===========================================================================





_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: ConfigurationOfAlien

Alain Plantec-4
In reply to this post by Fernando olivero
Hi all,

 From a freshly updated 11151->11156
after

(ConfigurationOfAlien project version:'1.0') load.

I've
Array DNU createMethod:header:
and can't open debugger anymore.

see screenshot.

Maybe ConfigurationOfAlien/Alien is(are) only for 1.0 ?
Sorry if I missed something.

Cheers
Alain

Fernando olivero a écrit :

> Hi, just added ConfigurationOfAlien to the MetacelloRepository.
>
>
> To load Alien using Metacello configurations evaluate
>
> Gofer new
> url: 'http://www.squeaksource.com/MetacelloRepository' ;
> package: 'ConfigurationOfAlien';
> load.
> (ConfigurationOfAlien project version:'1.0') load.
>
>
> ( John please update the ALIEN squeaksource page with the previous text )
>
>
> Note:
> Using the available  MAC VM i the pharo page, you should be able to run the test correctly.
> ( the alien plugin 'IA32ABI 7 May 2009 (e)', is compiled inside that vm, there's no need for the external one)  
>
>
> Metacello question:
>  
> If i want load Alien Examples, the package Alien-MacOSExamples, but don't want to add them to the above configuration , should i create a new #versionXXX method ?
>
> Or provide a class side method like for example
>
> ConfigurationOfAlien>>loadWithMaxOsExamples
> (ConfigurationOfAlien project version:'1.0') load:#('Alien-MacOsExamples')
>
>
> Saludos,
> Fernando
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
>  

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Capture.png (67K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: ConfigurationOfAlien

Fernando olivero
Alain, thanks for pointing this out.

I've tried with the latest dev images, and it works there.

In the core images it doesn't. as you found out.

Anybody have a clue why?


I  dont have time to track down why at the moment, but will do in the future.

Fernando




On Jan 14, 2010, at 9:19 AM, Alain Plantec wrote:

> Hi all,
>
> From a freshly updated 11151->11156
> after
>
> (ConfigurationOfAlien project version:'1.0') load.
>
> I've
> Array DNU createMethod:header:
> and can't open debugger anymore.
>
> see screenshot.
>
> Maybe ConfigurationOfAlien/Alien is(are) only for 1.0 ?
> Sorry if I missed something.
>
> Cheers
> Alain
>
> Fernando olivero a écrit :
>> Hi, just added ConfigurationOfAlien to the MetacelloRepository.
>>
>>
>> To load Alien using Metacello configurations evaluate
>>
>> Gofer new
>> url: 'http://www.squeaksource.com/MetacelloRepository' ;
>> package: 'ConfigurationOfAlien';
>> load.
>> (ConfigurationOfAlien project version:'1.0') load.
>>
>>
>> ( John please update the ALIEN squeaksource page with the previous text )
>>
>>
>> Note:
>> Using the available  MAC VM i the pharo page, you should be able to run the test correctly.
>> ( the alien plugin 'IA32ABI 7 May 2009 (e)', is compiled inside that vm, there's no need for the external one)  
>>
>>
>> Metacello question:
>>
>> If i want load Alien Examples, the package Alien-MacOSExamples, but don't want to add them to the above configuration , should i create a new #versionXXX method ?
>>
>> Or provide a class side method like for example
>>
>> ConfigurationOfAlien>>loadWithMaxOsExamples
>> (ConfigurationOfAlien project version:'1.0') load:#('Alien-MacOsExamples')
>>
>>
>> Saludos,
>> Fernando
>> _______________________________________________
>> Pharo-project mailing list
>> [hidden email]
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>>
>
> <Capture.png><ATT00001..txt>


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: ConfigurationOfAlien

Fernando olivero
In reply to this post by Mariano Martinez Peck
Thanks Mariano!

I was hoping you gave me feedback on Metacelllo usage!

I really think it would usefull to have this info, available in the Metacello tutorial or the web page.
To provide examples of usage.

Fernando



On Jan 13, 2010, at 6:46 PM, Mariano Martinez Peck wrote:



On Wed, Jan 13, 2010 at 5:43 PM, Fernando olivero <[hidden email]> wrote:
Hi, just added ConfigurationOfAlien to the MetacelloRepository.


To load Alien using Metacello configurations evaluate

       Gofer new
               url: 'http://www.squeaksource.com/MetacelloRepository' ;
               package: 'ConfigurationOfAlien';
               load.
       (ConfigurationOfAlien project version:'1.0') load.


( John please update the ALIEN squeaksource page with the previous text )



Excellent!!!!

Hi Fernando: I checked the Conf, I hope you don't bother if I give you some feedback.

In version1:   try to put mostly only versions. Static information like         spec package: 'Alien-Core'  with: [ spec requires: #( 'Alien-Prereqs'  ) ].
would be better to put them in the baseline. All static and structure information (groups, requieres, etc) should go in baseline. And in version, only versions, author, date, description, blessing, etc.  Post and preload for exaple, it depends. Is they are likely to be always the same, put them in baseline. If they are particular for a version, put them in version. In your case I think they should go on baseline.

You didn't put the dependency from Alien-CoreTest  to Alien. Think that every package should be perfectly loaded.  So, if Alien-CoreTest depends on Alien-Core, then, you have to put it. The same with the examples.
 
Note:
       Using the available  MAC VM i the pharo page, you should be able to run the test correctly.
       ( the alien plugin 'IA32ABI 7 May 2009 (e)', is compiled inside that vm, there's no need for the external one)


Metacello question:

If i want load Alien Examples, the package Alien-MacOSExamples, but don't want to add them to the above configuration , should i create a new #versionXXX method ?

Or provide a class side method like for example

ConfigurationOfAlien>>loadWithMaxOsExamples
       (ConfigurationOfAlien project version:'1.0') load:#('Alien-MacOsExamples')


In my opinion, neither. I would use groups for this. Something like this in baseline mehtod:

    spec
            group: 'default' with: #('Core' );
            group: 'Core' with: #( 'Alien-Core' );
            group: 'Tests' with: #( 'Alien-CoreTest' );
            group: 'Examples' with: #('Alien-MacOSExamples' );

Then to load the project, you can evaluate:


(ConfigurationOfAlien project version: 'xxxx') load  

(this will install the default, which is core)

(ConfigurationOfAlien project version: 'xxxx') load: 'Tests'

will load that group

or:

(ConfigurationOfAlien project version: 'xxxx') load: #('Core' 'Tests' 'Examples' )   

and will load everything.

  
For more information you can look in MetacelloRepository, there are a lot of examples.

Cheers

Mariano


 

Saludos,
Fernando
_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

<ATT00001..txt>


_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project