What is
versioner?
How does it relate to metacello browser (which I should try)?
Versionner is a simplification of MetacelloBrowser that I use everyday. It is really rare
when I use the monticello browser.
So, how to use it? Easy:
-=-=-=-=-=-=-=-=-=-=-=-=
1 - Load it:
Gofer new
squeaksource: 'Versionner';
package: 'ConfigurationOfVersionner';
load.
((Smalltalk at: #ConfigurationOfVersionner) project version: #development) load.
2 - Work on your project (e.g., Nautilus, Mondrian, Whatever that has a well defined
configuration)
3 - Open the Versionner and select the name of the configuration on the left hand pane
(the prefix 'ConfigurationOf' has been removed)
4 - Press commit
-=-=-=-=-=-=-=-=-=-=-=-=
Y nada más! It will create a new version, save all the dirty packages and save the
configuration.
It is not bulletproof in case of concurrent development. However, I have never bumped
into a serious problem.
Alexandre
On Oct 7, 2011, at 3:10 PM, Alexandre Bergel wrote:
Hi!
With Santiago we are trying to import different versions of a configuration in Moose. The
following script does a relatively good job. Some of you may be interested in it. Note
that it is specialized for Mondrian, but can be easily adapted for other projects.
-=-=-=-=-=-=-=-=-=-=
| mooseModel packages task |
#('2.10' '2.13' '2.100') do: [:version |
| project |
project := (ConfigurationOfMondrian project version: version).
[
project load.
"This is necessary by Moose to properly import"
Gofer new
url: 'http://www.squeaksource.com/CollectionExtensions';
version: 'CollectionExtensions-TudorGirba.29';
load.
packages := (project packages collect: #name) select: [:p | p beginsWith:
'Mondrian'].
mooseModel := MooseModel new.
task := MooseSqueakClassCategoryImporterTask new.
task importerClass: SmalltalkImporter.
task importingContext mergeClassAndMetaclass.
task model: mooseModel.
task runCandidateOperator.
task addFromPackagesNamed: packages.
task runWithProgress.
mooseModel name: 'Mondrian ', version.
mooseModel install.
] on: Error do: [ :ex | Transcript show: 'cannot load version ', version, '
', ex printString. ].
]
-=-=-=-=-=-=-=-=-=-=
This way of importing is however not perfect. It installs the software, which is not
necessary in principle and can be a showstopper. But at least, it gives some result. Shall
I put this script in MooseScripts?
If would be cool to have more users of Versionner/MonticelloBrowser, small tools I made
to automatically save your packages and give a new version number. Versionner has a commit
button, a bit like in SVN. This give some food for evolution analysis. Currently, we
cannot really go that far since we do not have explicit versions of what we are building!
Cheers,
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel
http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
_______________________________________________
Moose-dev mailing list
Moose-dev(a)iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
_______________________________________________
Moose-dev mailing list
Moose-dev(a)iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel
http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
_______________________________________________
Moose-dev mailing list
Moose-dev(a)iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
_______________________________________________
Moose-dev mailing list
Moose-dev(a)iam.unibe.ch