load involves loading a project into an image in which the project
does not exist.
upgrade involves loading a project into an image in which the
project already is loaded.
Loading is straightforward ... it is what we do all of the time. Add
a bunch of classes and methods, then run the #initialize methods for
the new classes.
Upgrading is interesting because besides adding/removing classes and
methods, you have to worry about completely unloading packages that
are no longer part of the project. You also have to worry about the
fact that new classes will get there #initialize methods, but
preexisitng classes will not ... which can lead to interesting
results. This may lead to pre/post upgrade doits...
I easily understand the difference. I was just wondering whether load:
cannot do an update: if the package is present already. Maybe as I
user I should not take care whether a package is already present
before loading it. Just a thought.
Remove is interesting because you have to also consider removing any
projects that are dependent upon the project being removed.
Once Metacello 1.0 is released I start working on adding upgrade
and remove to Metacello.
Sounds like a good plan!
Thanks for your explanation.
Alexandre
Dale
----- "Alexandre Bergel" <[email protected]> wrote:
| Hi Esteban,
|
| It looks cool. I tried and I was seen apparent problems.
| I think it would be useful to add
| loadLastVersionOf:
| loadLastStableVersionOf:
|
| I am not aware of Metacello details, but where is there a
distinction
|
| between loading and upgrading?
| You do not have removeProject: or something?
|
| Cheers,
| Alexandre
|
|
| On 17 Mar 2010, at 09:23, Esteban Lorenzano wrote:
|
| > Hi,
| > I want to announce the immediate release of GoferProjectLoader, a
| > Gofer extension to manage Metacello configurations.
| > For all who want to know quickly what is this, here is a small
| > synopsis:
| >
| > GoferProjectLoader is a loader for Metacello configurations (A
| > metacello configuration is a full project load tool, including
| > package/project dependencies with it corresponding versions).
| > GoferProjectLoader automatically scan projects stored on
| > MetacelloRepository, but you can add your private repositories as
| > well. GoferProjectLoader responsibilities include:
| >
| > 1) Install project versions and keep track of them.
| > 2) Update configurations and upgrade projects (if desired).
| >
| > GoferProjectLoader relies on Metacello and Gofer to perform this
| > tasks (In fact, It can be thought as a Gofer extension to
understand
|
| > Metacello packages).
| >
| > To load GoferProjectLoader, you need to do:
| >
| > Gofer it
| > squeaksource: 'MetacelloRepository';
| > package: 'ConfigurationOfGoferProjectLoader';
| > load.
| >
| > ConfigurationOfGoferProjectLoader project lastVersion load.
| >
| > With this... you'll never need again to perform once and again
this
|
| > repetitive configuration... instead, you can do things like:
| >
| > Gofer project
| > load: 'Seaside30';
| > load: 'Pier2'.
| >
| > You can see the full documentation here:
| > http://www.smallworks.com.ar/en/community/GoferProjectLoader
| >
| > Now I'm working on the promised page for configurations (Adrian: I
|
| > really sorry for the delay... I know I promised this a lot of time
|
| > ago... but time is the tyrant :( )
| >
| > Cheers,
| > Esteban
| >
| >
| >
| > _______________________________________________
| > Pharo-project mailing list
| > [email protected]
| > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-
project
|
| --
| _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
| Alexandre Bergel http://www.bergel.eu
| ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
|
|
|
|
|
|
| _______________________________________________
| Pharo-project mailing list
| [email protected]
| http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project