----- "Simon Denier" <Simon.Denier(a)inria.fr> wrote:
| Unfortunately, there have been too many threads this morning
|
| *About Metacello*
|
| Suggestions:
| 1) have better names
| loadLast -> loadDevVersion or loadVeryLast
| loadLatest -> loadStableVersion or loadLastStable
| (those 2 are really annoying)
|
| Also the names in the OB commands could be better and reflect the
| current conventions:
| Save project -> save configuration
| update project -> update configuration
| Update Package Methods -> update current version???
Yeah, I have sucked in creating names for things ... and the terminology has evolved.
Frankly, at the moment I am caught in between two points, where I'm not sure that the
new names are really really better and the desire to avoid changing the tool labels too
frequently ...
You are raising good points, so I will be interested in what other people think in terms
of naming suggestions ... I have holiday time coming as well (today and tomorrow are
"vacation" days), so I will spend some time thinking about names...
|
| Now, when I do a "Current Project Version" on any ConfigurationOf, it
| does not work except for the one with Metacello. I dont know, maybe
| the configurations do not respect some rules? It's annoying because it
| breaks the above tools.
I am very interested in these problems ... a pointer to the ConfigurationOf package that
is causing the problem would allow me to fix the problem. In the recent releases of
Metacello I have fixed the problems that I've seen and am interested in getting the
issues shaken out.
|
|
| 2) refactor the documentation
| When I started with Metacello 3 months ago it was easy because there
| was one recent post describing the things. Now three months later this
| is a problem because things have changed a lot but this post is still
| the first hit in google "metacello"
|
http://gemstonesoup.wordpress.com/2009/08/25/metacello-package-management-f…
|
| Now if you try to follow links there is this post and then this post
|
http://gemstonesoup.wordpress.com/2009/10/14/a-shiny-new-api-for-metacello/
|
http://gemstonesoup.wordpress.com/2009/11/16/metacello-1-0-beta-14-released/
|
| Finally it appears that
|
http://code.google.com/p/metacello/w/list
| is now the source for documentation.
|
| There is the API reference for declaration, description of OBCommands,...
| Unfortunately it lacks something about how to play with last/latest
| versions with the API.
| - if I go to the tutorial, it just refers to the embedded tutorial in
| the code and I dont want to load the tutorial each time I need some
| documentation
|
| So please Dale, can you put a few items about things such as
| ConfigurationOfXXX project lastVersion, how to manipulate groups,
| things discussed with Lukas?
Excellent points ... I will take a crack at cleaning up the documentation.
|
| 3) Good tool for managing configuration, saving projects...
| There is a small browser in GLMSmalltalkExamples>>metacelloBrowser,
| maybe somebody can start to enhance it to display version and perform
| commands.
|
|
| *About the Moose process*
| I dont think the Pharo process and the Moose process compare.
|
| The Pharo process is about integrating fixes from packages which are
|
| supposed to do one and only one thing, and do it well and is tested.
|
| The Moose process is about developers making incremental changes to
| the code base so that they can work and share it immediately. Which
| means it can break other things.
| Now I'm pretty sure I dont want a release every time someone commits a
|
| package in Moose, because I'm pretty sure this someone didn't run all
|
| the tests before committing. So making a release for each new commit
| makes no sense for me. We dont integrate changes, we just merge when
| there are some divergent branches. That's why we are always working
| with the dev version and the 'default' is one way to do it.
|
| If we want historical data about Moose, I guess it's still possible to
| retrieve all latest packages at a given date. It will not be very
| different from what we used at this date.
|
| Now about the *release* process for Moose: sure I would like that
| there will be more releases. Now as Doru said, when we do a release,
| we should do it for every sub projects and it's bit difficult with the
| current tools.
| - One way to do automatically it is to use the test server to at least
| create a new version from the latest dev version and blessed it as
| 'tested' if 100% tests passed or 'broken'
| But I dont want such versions to pollute the manual versions, which
| are supposed to be stronger. So something like create automatically
| 'testedVersionXXX' with tests or broken as possible blessing.
| - Then we can do manual release from time to time (every two weeks,
| every months?), which requires more work as we have to do it for the
| different subprojects first, and blessed it as beta or stable.
Metacello does have the notion of a #development version. #development means that the
specification of the version is in flux and may change over time ... It sounds like
you'd want to use the #development version for the 100% tested versions, then when you
are ready to snap off a real version, you'd mark all of the development versions as
beta or stable or whatever (for all the contricuting projects) and then open a new
#development version.
BTW when I say development version I mean something like: version '1.1' with a
#development blessing.
Dale