[ANN] VMMaker metacello config for Squeak and Pharo

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

[ANN] VMMaker metacello config for Squeak and Pharo

Torsten Bergmann
 
Hi, (crosspost vm-dev, squeak-dev, pharo-dev)

with more and more Metacello configurations for various well known Squeak and Pharo
packages appearing in the metacello repository [1] I thought it would be a good
idea to have one for VMMaker. It is based on a description by David (see [2]) and maybe he is able to help me keeping it maintained.

Since Metacello is Smalltalk independent and therefore able to handle differences
between the deployment systems the new 'ConfigurationOfVMMaker' includes two platform
spec's - one for #pharo and one #squeak. (Pharo has FreeType preinstalled, and
Squeak not).

Unfortunately the Balloon3D stuff needs a little bit more cleaning (underscores,
assigns to block args). Maybe Andreas is able to fix this. Until then one has
to switch a preference in Pharo.

However: it should be easy now to load and use VMMaker in both:


  In Squeak 3.11 #9236
  ====================

     Installer ss project: 'MetacelloRepository';
        install: 'ConfigurationOfVMMaker'.

     ((Smalltalk at: #ConfigurationOfVMMaker) project version: '1.0') load


  In Pharo (core or dev) evaluate:
  ================================
   
     Preferences setPreference: #allowBlockArgumentAssignment toValue: true.

     Gofer new
        squeaksource: 'MetacelloRepository';
        package: 'ConfigurationOfVMMaker';
        load.


     ((Smalltalk at: #ConfigurationOfVMMaker) project version: '1.0') load


Feel free to have a look or use it to build shiny new VM's for the next interesting
devices. For more infos on Metacello see [3] and [4].

Bye
T.

------------------------------------------------------------------------------------

[1] http://squeaksource.com/MetacelloRepository.html
[2] http://n4.nabble.com/Package-name-SharedPool-Speech-SharedPool-FFI-etc-td1299897.html
[3] http://code.google.com/p/metacello/
[4] http://gemstonesoup.wordpress.com/2010/01/25/metacello-1-0-beta22-launches/

--
Jetzt kostenlos herunterladen: Internet Explorer 8 und Mozilla Firefox 3.5 -
sicherer, schneller und einfacher! http://portal.gmx.net/de/go/atbrowser
Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] [ANN] VMMaker metacello config for Squeak and Pharo

David T. Lewis
 
On Fri, Feb 05, 2010 at 04:55:34PM +0100, Torsten Bergmann wrote:

> Hi, (crosspost vm-dev, squeak-dev, pharo-dev)
>
> with more and more Metacello configurations for various well known Squeak and Pharo
> packages appearing in the metacello repository [1] I thought it would be a good
> idea to have one for VMMaker. It is based on a description by David (see [2])
> and maybe he is able to help me keeping it maintained.
>
> Since Metacello is Smalltalk independent and therefore able to handle differences
> between the deployment systems the new 'ConfigurationOfVMMaker' includes two platform
> spec's - one for #pharo and one #squeak. (Pharo has FreeType preinstalled, and
> Squeak not).

Wonderful! Thank you so much for doing this.

I guess this means it's time for me to learn how to use Metacello ;-)

Dave

Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] [ANN] VMMaker metacello config for Squeak and Pharo

Andreas.Raab
 
Hi David -

Let's be a bit careful before jumping heads-on into the Metacello
frenzy. I don't mind if people choose to use Metacello to load VMMaker
but it shouldn't be the only option. Myself for example, I use
customarily a variety of images, none of which support or are supported
by Metacello. It would not be good if we require Metacello to load VMMaker.

Cheers,
   - Andreas

David T. Lewis wrote:

>  
> On Fri, Feb 05, 2010 at 04:55:34PM +0100, Torsten Bergmann wrote:
>> Hi, (crosspost vm-dev, squeak-dev, pharo-dev)
>>
>> with more and more Metacello configurations for various well known Squeak and Pharo
>> packages appearing in the metacello repository [1] I thought it would be a good
>> idea to have one for VMMaker. It is based on a description by David (see [2])
>> and maybe he is able to help me keeping it maintained.
>>
>> Since Metacello is Smalltalk independent and therefore able to handle differences
>> between the deployment systems the new 'ConfigurationOfVMMaker' includes two platform
>> spec's - one for #pharo and one #squeak. (Pharo has FreeType preinstalled, and
>> Squeak not).
>
> Wonderful! Thank you so much for doing this.
>
> I guess this means it's time for me to learn how to use Metacello ;-)
>
> Dave
>
Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] [ANN] VMMaker metacello config for Squeak and Pharo

Andreas.Raab
 
Torsten Bergmann wrote:
> Andreas Raab wrote:
>> Let's be a bit careful before jumping heads-on into the Metacello
>> frenzy.
>
> Somehow I knew before that you will respond like this ... ;)

Right. And that's the problem with prejudices. If you expect a response
of a certain form you'll find a way to interpret what's being said to
match your expectations even though the intention may have been
completely different.

What I was saying to David, not to you, is that we need to make sure
that we don't introduce any undue dependencies on Metacello. Given the
dependencies of Metacello itself I think there is an actual risk of that
happening and I simply wanted to remind David that it's important for us
to make sure VMMaker doesn't require Metacello.

BTW, it is unfair to spam your message to both Squeak-dev and the Pharo
list just to paint me as a nay-sayer in the community.

Cheers,
   - Andreas

>> I don't mind if people choose to use Metacello to load VMMaker
>> but it shouldn't be the only option.
>
> Hey - Metacello is "just" a package management tool for Monticello using
> descriptions of the dependencies and the versions that fit together.
> Anything I did was to create such a configuration.
>
> Nobody forces you or other developers to use Metacello - having
> such an (additional) config does not change the way you are working
> right now. Use Monticello, SqueakSource, ... as you did before. You can
> continue to use build scripts, installers, SqueakMap, Universe,
> whatever ... to load VMMaker.
>
> But currently I dont see none of these "loaders" is well maintained (or only
> with private scripts), anything I've found was a decription from David (see last mail) on the web. And how often does one ask which packages in which version fit
> together to get VMMaker or other Squeak projects to work. Try to rebuild the
> SqueakSource server and you know what I'm talking about!
>
> Providing and maintaining a metacello spec is simple and works. And the
> interesting thing is that someone (Dale) is actively maintaining this tool
> on several Smalltalks - even for Squeak.  
>
> And as Fernando responded on the pharo list:
>  "And the ConfigurationOfXXX is allowing a new form of communication , unthinkable
>   just a couple of months ago...."
>
> Metacello easily allows to have reproducable builds for projects, applications, images ...
> (see http://astares.blogspot.com/2010/01/pharo-10-release-candidate-2-and-image.html)
>
> Someone requires VMMaker in a specific version - just point him to "ConfigurationOfVMMaker" and you are done.  
>
>> Myself for example, I use customarily a variety of images, none of which
>> support or are supported by Metacello.
>
> Two things
>  - this has nothing to do with Metacello. Your images dont have to have Metacello.
>    So it is just an additional configuration, so why will you bother - it will
>    not affect the way you worked before
>
>  - it is not the problem of the Squeak community if you use non-Squeak images
>    to build VM's. As community we all have to assure that VMMaker and its loading
>    (with or without Metacello) is well known and works on standard images and
>    the loading and VM building is reproducable by ANYONE!
>    Does the term "Truck Factor" ring a bell?  
>
> At least your images seem to be able to use Monticello - so why lament.
> You can continue to work as before and if David could invest a minute
> to save others from annoying questions about VMMaker loading everything
> is in good shape and even free's some time in the long term.
>
>> It would not be good if we require Metacello to load VMMaker.
>
> Is the Linux project in trouble when one create's and publishes a CD with
> linux packages that fit together? No! Same applies here. You should really
> have a look first before commenting on Metacello...
>  
> Bye
> T.
>
>  
>
>
>
>
>
Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] [ANN] VMMaker metacello config for Squeak and Pharo

Henrik Sperre Johansen
 
On 06.02.2010 00:18, Andreas Raab wrote:
>
> What I was saying to David, not to you, is that we need to make sure
> that we don't introduce any undue dependencies on Metacello. Given the
> dependencies of Metacello itself I think there is an actual risk of
> that happening and I simply wanted to remind David that it's important
> for us to make sure VMMaker doesn't require Metacello.
Right. Try loading ConfigurationOfVMMaker though (no dependencies!) and
you'll see what it really is.
A declarative way to define the packages (and their versions) which need
to be loaded to build a VMMaker image.
You can do it manually without loading the tools used for automatic
loading, or just unload the tools (gofer, metacello, configurationofxxx)
after the functionality is actually loaded.
I see it as improbable to make VMMaker depend on Metacello to work, as
it currently is make it depend on .mcm's to work.
If there's an obvious point I'm missing, please enlighten me, as I'm
sure David is not the only one interested in what such undue
dependencies on Metacello would actually entail.

Cheers,
Henry
Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] [ANN] VMMaker metacello config for Squeak and Pharo

Andreas.Raab
 
Henrik Sperre Johansen wrote:

>
> On 06.02.2010 00:18, Andreas Raab wrote:
>>
>> What I was saying to David, not to you, is that we need to make sure
>> that we don't introduce any undue dependencies on Metacello. Given the
>> dependencies of Metacello itself I think there is an actual risk of
>> that happening and I simply wanted to remind David that it's important
>> for us to make sure VMMaker doesn't require Metacello.
> Right. Try loading ConfigurationOfVMMaker though (no dependencies!) and
> you'll see what it really is.
> A declarative way to define the packages (and their versions) which need
> to be loaded to build a VMMaker image.
> You can do it manually without loading the tools used for automatic
> loading, or just unload the tools (gofer, metacello, configurationofxxx)
> after the functionality is actually loaded.
> I see it as improbable to make VMMaker depend on Metacello to work, as
> it currently is make it depend on .mcm's to work.
> If there's an obvious point I'm missing, please enlighten me, as I'm
> sure David is not the only one interested in what such undue
> dependencies on Metacello would actually entail.

If there are none, that's great. However, the last time I loaded some
Metacello stuff (which is a couple of weeks ago) it pulled in all sorts
of things including OmniBrowser and left some modification in other
packages. If that has been fixed since, all the better.

Cheers,
   - Andreas

Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] [ANN] VMMaker metacello config for Squeak and Pharo

Henrik Sperre Johansen
 
On 06.02.2010 00:40, Andreas Raab wrote:

>
> Henrik Sperre Johansen wrote:
>>
>> On 06.02.2010 00:18, Andreas Raab wrote:
>>>
>>> What I was saying to David, not to you, is that we need to make sure
>>> that we don't introduce any undue dependencies on Metacello. Given
>>> the dependencies of Metacello itself I think there is an actual risk
>>> of that happening and I simply wanted to remind David that it's
>>> important for us to make sure VMMaker doesn't require Metacello.
>> Right. Try loading ConfigurationOfVMMaker though (no dependencies!)
>> and you'll see what it really is.
>> A declarative way to define the packages (and their versions) which
>> need to be loaded to build a VMMaker image.
>> You can do it manually without loading the tools used for automatic
>> loading, or just unload the tools (gofer, metacello,
>> configurationofxxx) after the functionality is actually loaded.
>> I see it as improbable to make VMMaker depend on Metacello to work,
>> as it currently is make it depend on .mcm's to work.
>> If there's an obvious point I'm missing, please enlighten me, as I'm
>> sure David is not the only one interested in what such undue
>> dependencies on Metacello would actually entail.
>
> If there are none, that's great. However, the last time I loaded some
> Metacello stuff (which is a couple of weeks ago) it pulled in all
> sorts of things including OmniBrowser and left some modification in
> other packages. If that has been fixed since, all the better.
>
> Cheers,
>   - Andreas
If OmniBrowser is defined as a prerequisite for what you are trying to
load with Metacello, then yes, it will pull that in.
If a squeak-specific
If you try to load Metacello with ConfigurationOfMetacello, it will load
Gofer, which is the Installer-equivalent package it uses to load packages.
If any of the prereqs include extension methods/overrides, then yes, you
will have dirty packages afterwards, for the same reason you would get
that when loading the package from Monticello manually.

I think I see your point now though, no external packages only part of a
ConfigurationOfMetacello should be required for VMMaker to work/alter
the default behaviour of VMMaker in a way which is required for it to work.
To this I agree fully, please note this is already the situation with
the -Pools packages though, if you want to build all VMMaker-included
plugins properly.

Cheers,
Henry

PS. If you have loaded the ConfigurationOfVMMaker, you might want to
look at the grouping feature. While the default is to load all plugins,
it's easy (well, with the Metacello tools installed ;) ) to load just a
core install, or a selection of the  plugins you like as well.

Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] [ANN] VMMaker metacello config for Squeak and Pharo

Andreas.Raab
 
Henrik Sperre Johansen wrote:
> If OmniBrowser is defined as a prerequisite for what you are trying to
> load with Metacello, then yes, it will pull that in.

One of the things that's really hard with Metacello is understanding
what depends on Metacello and what depends on the application package.
I'm pretty sure that when I tried it previously, it was Metacello itself
that loaded OB, but since it's a while ago I could be misremembering.

However, it appears that when loading the ConfigurationOfVMMaker it
doesn't pull in OB (great!) and the only dirty package is the Freetype
vs. Freetype-Plugin dependency. This is *much* better than what I've
previously seen.

> I think I see your point now though, no external packages only part of a
> ConfigurationOfMetacello should be required for VMMaker to work/alter
> the default behaviour of VMMaker in a way which is required for it to work.
> To this I agree fully, please note this is already the situation with
> the -Pools packages though, if you want to build all VMMaker-included
> plugins properly.

Yes, and I really dislike that situation, too.

Cheers,
   - Andreas

Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] [ANN] VMMaker metacello config for Squeak and Pharo

keith1y
In reply to this post by Andreas.Raab
 
Torsten Bergmann wrote:
Andreas Raab wrote:
Let's be a bit careful before jumping heads-on into the Metacello frenzy.
Somehow I knew before that you will respond like this ... ;)

Right. And that's the problem with prejudices. If you expect a response of a certain form you'll find a way to interpret what's being said to match your expectations even though the intention may have been completely different.

What I was saying to David, not to you, is that we need to make sure that we don't introduce any undue dependencies on Metacello. Given the dependencies of Metacello itself I think there is an actual risk of that happening and I simply wanted to remind David that it's important for us to make sure VMMaker doesn't require Metacello.

BTW, it is unfair to spam your message to both Squeak-dev and the Pharo list just to paint me as a nay-sayer in the community.

Cheers,
 - Andreas

I don't mind if people choose to use Metacello to load VMMaker but it shouldn't be the only option.
Hey - Metacello is "just" a package management tool for Monticello using descriptions of the dependencies and the

It's is not "just a package manager" it is huge and totally over engineered for the purpose you have in mind. You are talking 40 classes! VMMaker is at a far lower level than Seaside or other things Metacello is being used for.

Installer has a mechanism that is much better suited to this purpose, a simple readable DSL for loading things. You can put  scripts into InstallerScripts to be loaded using

Installer install: 'VMMaker'.

this is very simple, and you can publish variants for all different platforms.

versions that fit together. Anything I did was to create such a configuration. Nobody forces you or other developers to use Metacello - having such an (additional) config does not change the way you are working right now. Use Monticello, SqueakSource, ... as you did before. You can continue to use build scripts, installers, SqueakMap, Universe, whatever ... to load VMMaker.
But currently I dont see none of these "loaders" is well maintained (or only with private scripts), anything I've found was a

What do you need to be maintained. Installer was written in 2006 and has been working fine ever since, has been majorly refactored, and the api has stayed consistent, through all of that time. There is very little to maintain on installer, that is often the key to effective maintenance.

Sake/Packages just adds dependencies, it too is small and relatively simple. S/P has been relatively stable for a long period. In S/P If you need a package to load, you maintain it. It is for the users to maintain.

I am certainly not convinced as to why you need Metacello, to achieve what Installer used to do in one class.

decription from David (see last mail) on the web. And how often does one ask which packages in which version fit
together to get VMMaker or other Squeak projects to work. Try to rebuild the
SqueakSource server and you know what I'm talking about!
Providing and maintaining a metacello spec is simple and works. And the

I don't agree. Nothing about Metacello strikes me as simple. 

I could comment on the rest of your post, I basically disagree with pretty much everything you say.

Can Metacello publish and use definitions on a web page or wiki, can it load from squeakmap, or universes, can it access published bug fixes, can you override with your own local definitions, can it bootstrap from the source.st code inside a monticello package.

If you look at the range of functionality in the existing tools we have had for along time, Metacello really isn't offering anything of interest, and is certainly overkill for VMMaker.

cheers

Keith



Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] [ANN] VMMaker metacello config for Squeak and Pharo

Torsten Bergmann
In reply to this post by Torsten Bergmann
 
Hi Andreas,

a simple question: why do you warn others about "jumping heads-on"
into a "frenzy" technology, when you never had a deeper look at
Metacello or the simple config I provided for VMMaker?

I havent changed a single package in VMMaker, the loading order, etc.
you can continue to load and use VMMaker as before. Even in your own custom
images. Nothing has changed!!!

The only thing that is different now is that there is an easy way
for Metacello users to load VMMaker into Squeak or Pharo. If you dont
like Metacello - no problem - you dont have to use it.

As I said - the config is just additionally available. One can use it or
ignore it - but we need feedback from David or other VM maintainers (like you)
about the VMMaker Monticello package dependencies and Monticello file versions
to keep this config maintained. If they change it would be good to update the
config. Nothing more!

>Given the dependencies of Metacello itself I think there is an actual
>risk of that happening

Please enlighten me. Where do you see that risk? Did we introduce a
dependency for VMMaker on Universe or SqueakMap code when we registered VMMaker
there? No! Sample applies to Metacello.

>BTW, it is unfair to spam your message to both Squeak-dev and the Pharo
>list just to paint me as a nay-sayer in the community.

Now you are the one who is interpreting! I wrote my original mail and the response
to all three lists and since I use a web browser for reading
(sqf.org/pipermail) and answering (GMX) I didnt notice that you responded
only on vm-dev. This is also the reason why I constantly create new threads (sorry guys).

I think you paint yourself as nay-sayer. Why do you warn about someting
that help others to move forward. When you work with VMMaker day by day
it is easy for you to follow all the package changes and stay on track.

But if someone wants to build a VM he will not start with google and
search for the right packages. He will just load it with all dependencies.
Metacello provides an easy way to do that. Nothing more.

>If there are none, that's great. However, the last time I loaded some
>Metacello stuff (which is a couple of weeks ago) it pulled in all sorts
>of things including OmniBrowser and left some modification in other
>packages.

Will you blame Metacello for loading something that was depending
on OmniBrowser or that someone created a configuration with packages
overriding others?  Then help to clean the config.

Metacello is a vehicle to describe package dependencies
and versions that fit together. You can even unload it easily after
it brought in the code.

Again - please invest a few minutes in learning about metacello!

Thanks
T.






--
Jetzt kostenlos herunterladen: Internet Explorer 8 und Mozilla Firefox 3.5 -
sicherer, schneller und einfacher! http://portal.gmx.net/de/go/atbrowser
Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] [ANN] VMMaker metacello config for Squeak and Pharo

Torsten Bergmann
In reply to this post by Torsten Bergmann
 
Hi Keith,

>It's is not "just a package manager" it is huge and totally over  
>engineered for the purpose you have in mind.

I dont care if you think it is over engineered in it's internal core.
The specs are easy to write and I can maintain/load them with Monticello.
I can continue to use both: Squeak and Pharo for projects.
And I can load my projects code and throw Metacello's overengineered
code out of the image easily afterwards. It's just a vehicle.

Since the spec is parsable I can switch if someone provides something
better in the future. Currently it is available, maintained and working.

Is Bob/Sake project meanwhile with public access? Are you back in
Bob/Sake business?

>VMMaker is at a far lower level than Seaside or other things  
>Metacello is being used for.

Yes, like FFI, ExternalWebBrowsers, SQLite3 or others which
are available via configurations. You may say it is overkill for
such small projects - but you can construct more complex configs
(like Seaside) from that.

>... You can put  scripts into InstallerScripts to be loaded using ...

I know all this - but
 
 a) I want something that works on Squeak, Pharo, Gemstone, maybe other ST's later
    (since I use Seaside)
 b) I want to maintain versions in one file (here in one class)
    not in separate scripts for each version. I can use Monticello diffs to
    see how the config has changed, ...
 c) I want a declarative description instead of code since I may
    use it for other purposes too (deployment and dependency tools, ...)
 
>I could comment on the rest of your post, I basically disagree with  
>pretty much everything you say.

No problem for me ... you dont have to use it.
It doesnt change anything on VMMaker or prevents you from using
other loaders/installers.

>Can Metacello publish and use definitions on a web page or wiki, can  
>it load from squeakmap, or universes, can it access published bug  
>fixes, can you override with your own local definitions, can it  
>bootstrap from the source.st code inside a monticello package.

Again: Metacello does not care about SqueakMap, Universe, Mantis
       since it is not bound to Squeak. You compare apples with oranges.

Lets play a short game:

You will find ConfigurationOfMetaSource in the MetaSource project on SqS,
that is able to load a whole seaside app right from a core image
and keep it maintained with new versions.

Show me that Installer/Sake/Bob is doing better here and is aligned
with the goals in a) b) and c)

Bye
T.



--
NEU: Mit GMX DSL über 1000,- ¿ sparen!
http://portal.gmx.net/de/go/dsl02
Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] [ANN] VMMaker metacello config for Squeak and Pharo

Andreas.Raab
In reply to this post by Torsten Bergmann
 
Hi Torsten -

I am not interesting in arguing. I have looked at Metacello, quite
seriously, a while ago. It's true, I didn't load your config before
writing my note, for which I apologize. Things seem to have improved
significantly from when I last looked at it, which is good news.

Cheers,
   - Andreas

Torsten Bergmann wrote:

>  
> Hi Andreas,
>
> a simple question: why do you warn others about "jumping heads-on"
> into a "frenzy" technology, when you never had a deeper look at
> Metacello or the simple config I provided for VMMaker?
>
> I havent changed a single package in VMMaker, the loading order, etc.
> you can continue to load and use VMMaker as before. Even in your own custom
> images. Nothing has changed!!!
>
> The only thing that is different now is that there is an easy way
> for Metacello users to load VMMaker into Squeak or Pharo. If you dont
> like Metacello - no problem - you dont have to use it.
>
> As I said - the config is just additionally available. One can use it or
> ignore it - but we need feedback from David or other VM maintainers (like you)
> about the VMMaker Monticello package dependencies and Monticello file versions
> to keep this config maintained. If they change it would be good to update the
> config. Nothing more!
>
>> Given the dependencies of Metacello itself I think there is an actual
>> risk of that happening
>
> Please enlighten me. Where do you see that risk? Did we introduce a
> dependency for VMMaker on Universe or SqueakMap code when we registered VMMaker
> there? No! Sample applies to Metacello.
>
>> BTW, it is unfair to spam your message to both Squeak-dev and the Pharo
>> list just to paint me as a nay-sayer in the community.
>
> Now you are the one who is interpreting! I wrote my original mail and the response
> to all three lists and since I use a web browser for reading
> (sqf.org/pipermail) and answering (GMX) I didnt notice that you responded
> only on vm-dev. This is also the reason why I constantly create new threads (sorry guys).
>
> I think you paint yourself as nay-sayer. Why do you warn about someting
> that help others to move forward. When you work with VMMaker day by day
> it is easy for you to follow all the package changes and stay on track.
>
> But if someone wants to build a VM he will not start with google and
> search for the right packages. He will just load it with all dependencies.
> Metacello provides an easy way to do that. Nothing more.
>
>> If there are none, that's great. However, the last time I loaded some
>> Metacello stuff (which is a couple of weeks ago) it pulled in all sorts
>> of things including OmniBrowser and left some modification in other
>> packages.
>
> Will you blame Metacello for loading something that was depending
> on OmniBrowser or that someone created a configuration with packages
> overriding others?  Then help to clean the config.
>
> Metacello is a vehicle to describe package dependencies
> and versions that fit together. You can even unload it easily after
> it brought in the code.
>
> Again - please invest a few minutes in learning about metacello!
>
> Thanks
> T.
>
>
>
>
>
>
Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] [ANN] VMMaker metacello config for Squeak and Pharo

keith1y
In reply to this post by Torsten Bergmann
 

Is Bob/Sake project meanwhile with public access? Are you back in
Bob/Sake business?

Sake has always been public access.

VMMaker is at a far lower level than Seaside or other things  
Metacello is being used for.

Yes, like FFI, ExternalWebBrowsers, SQLite3 or others which
are available via configurations. You may say it is overkill for
such small projects - but you can construct more complex configs
(like Seaside) from that. 

... You can put  scripts into InstallerScripts to be loaded using ...

I know all this - but

a) I want something that works on Squeak, Pharo, Gemstone, maybe other ST's later
   (since I use Seaside)

Well I cant help you there. But it would not be rocket science to port Installer, or sake because they were designed to be minimal. They were designed to be portable to other platforms as an enabling technology.

Metacello only does one thing, whereas Sake is as general as make in theory.

b) I want to maintain versions in one file (here in one class)
   not in separate scripts for each version. I can use Monticello diffs to
   see how the config has changed, ...

This is a design flaw of Metacello, when you have mechanisms like inheritance, 
maintaining one definition for all contexts doesn't work. I have tried it.

c) I want a declarative description instead of code since I may
   use it for other purposes too (deployment and dependency tools, ...)

I could comment on the rest of your post, I basically disagree with  
pretty much everything you say.

No problem for me ... you dont have to use it.
It doesnt change anything on VMMaker or prevents you from using
other loaders/installers.

Can Metacello publish and use definitions on a web page or wiki, can  
it load from squeakmap, or universes, can it access published bug  
fixes, can you override with your own local definitions, can it  
bootstrap from the source.st code inside a monticello package.

Again: Metacello does not care about SqueakMap, Universe, Mantis
      since it is not bound to Squeak. You compare apples with oranges.

Lets play a short game:

You will find ConfigurationOfMetaSource in the MetaSource project on SqS,
that is able to load a whole seaside app right from a core image
and keep it maintained with new versions.

Sake/Packages does all that.

(Package named: 'Seaside') latest load.

Show me that Installer/Sake/Bob is doing better here and is aligned
with the goals in a) b) and c)

Sake uses fully  declarative desriptions.

Keith
Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] [ANN] VMMaker metacello config for Squeak and Pharo

keith1y
 

Lets play a short game:

You will find ConfigurationOfMetaSource in the MetaSource project on SqS,
that is able to load a whole seaside app right from a core image
and keep it maintained with new versions.


A core image or ANY core image?

LPF has an api for loading things into ANY image.

#> squeak Squeak3.10.image http://ftp.squeak.org/3.11/scripts/LPF.st Installer install="Packages" 

Keith
Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] [ANN] VMMaker metacello config for Squeak and Pharo

David T. Lewis
In reply to this post by Andreas.Raab
 
On Fri, Feb 05, 2010 at 09:57:30AM -0800, Andreas Raab wrote:
>
> Hi David -
>
> Let's be a bit careful before jumping heads-on into the Metacello
> frenzy. I don't mind if people choose to use Metacello to load VMMaker
> but it shouldn't be the only option. Myself for example, I use
> customarily a variety of images, none of which support or are supported
> by Metacello. It would not be good if we require Metacello to load VMMaker.

I understand and fully agree.

Personally I use a 3.8 image for most VMMaker work for exactly this
reason. If it works in Squeak 3.8 it usually works everywhere, modulo
a few annoyances like SmalltalkImage current, and with the recently
noted exception of Scratch ;)

I'm also happy to see the Metacello support, because it will make
VMMaker more accessible from images that do use Metacello.

Dave

Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] [ANN] VMMaker metacello config for Squeak and Pharo

Torsten Bergmann
In reply to this post by Torsten Bergmann
 
Andreas wrote:
>I am not interesting in arguing.

+1

>Things seem to have improved significantly from when I last looked at it,
>which is good news.

Yes. I will try to keep this separate metacello config for vmmaker maintained,
but as I said I need a minimal support from vm-maintainers side to get notified
when load order or packages change. Thanks in advance!

David wrote:
>I'm also happy to see the Metacello support, because it will make
>VMMaker more accessible from images that do use Metacello.

Thank you. Yes that was the goal. If a project is easy accessible more
people are able to use it or learn or help.  

Thanks
Torsten


--
NEU: Mit GMX DSL über 1000,- ¿ sparen!
http://portal.gmx.net/de/go/dsl02