<br><br><div class="gmail_quote">On Tue, Apr 12, 2011 at 1:58 PM, David T. Lewis <span dir="ltr"><<a href="mailto:lewis@mail.msen.com">lewis@mail.msen.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div><div></div><div class="h5"><br>
On Tue, Apr 12, 2011 at 12:53:20PM +0200, Igor Stasenko wrote:<br>
><br>
> Hello,<br>
><br>
> i'd like to know what we can do to clean up the mess with Cog VM<br>
> versioning, so people could identify it more easily.<br>
><br>
> Currently , what<br>
><br>
> Smalltalk vmVersion shows is:<br>
><br>
> Smalltalk vmVersion<br>
><br>
> 'Croquet Closure Stack VM [StackInterpreter<br>
> VMMaker-oscog-IgorStasenko.Stasenko.49] StackVM VM 4.0.0'<br>
><br>
> but it doesn't says anything about which version of platform sources<br>
> are used to build it.<br>
> Also, a version number VM 4.0.0 makes no sense..<br>
><br>
> I'd really like to see what we can do to improve it.<br>
<br>
</div></div>(this may be a duplicate response, I'm having mail problems today)<br>
<br>
The mechanism used in the standard VMMaker and Unix platform sources<br>
works well in practice. This uses VMMaker class>>versionString to<br>
identify the (approximate) version of Smalltalk sources, combined<br>
with the Subversion revision number identified at compile time.<br>
<br>
For the VMMaker side, I'd suggest adopting a similar (manually<br>
maintained) convention for #versionString, but also add a<br>
suffix to identify a cog VM versus interpreter VM. Thus if<br>
the versionString is '1.2.3' the Cog VM might use '1.2.3c'.<br>
The suffix identifier is helpful in the near term for maintaining<br>
separate installation directories on unix, and possibly becomes<br>
irrelevant whenever we get the code bases merged.<br>
<br>
For the platforms sources on the git mirror with CMMakerVMMaker<br>
build, some mechanism would be needed to identify version level.<br>
Ian's build procedure on unix with Subversion works well for<br>
this, but I don't know how to do the equivalent on the git<br>
mirror. But I'm not really familiar with git, so hopefully<br>
someone can suggest something here.<br>
<br></blockquote><div><br>For SVN you have the versions. Let say 2023. In Git, each commit has a commit hash, which looks something like: f3fe94c828f66cd0e7c37cfa3434e384ff65915e<br>You can look at them throught gitorious or by doing "git log". Example:<br>
<br>;-) /usr/local/git/bin/git log<br><span style="background-color: rgb(255, 255, 51);">commit f3fe94c828f66cd0e7c37cfa3434e384ff65915e</span><br>Merge: 1af7478 f123973<br>Author: Esteban Lorenzano <<a href="mailto:estebanlm@gmail.com">estebanlm@gmail.com</a>><br>
Date: Mon Apr 4 08:46:21 2011 -0300<br><br> Merge branch 'master' of gitorious.org:cogvm/blessed into integration<br><br><span style="background-color: rgb(255, 255, 51);">commit f1239738a1f14f6f067465e71dc24fd84f5a041e</span><br>
Author: Igor Stasenko <<a href="mailto:siguctua@gmail.com">siguctua@gmail.com</a>><br>Date: Mon Apr 4 12:49:55 2011 +0200<br><br> Merge branch 'master' of gitorious.org:cogvm/blessed into svn-merge<br> <br>
Conflicts:<br> image/VMMaker-Squeak4.1.changes<br> platforms/iOS/vm/iPhone/iPhone.image<br> platforms/unix/vm/sqUnixMain.c<br> platforms/win32/vm/sqWin32Window.c<br> src/plugins/ADPCMCodecPlugin/ADPCMCodecPlugin.c<br>
src/plugins/HostWindowPlugin/HostWindowPlugin.c<br> src/plugins/SoundGenerationPlugin/SoundGenerationPlugin.c<br> src/plugins/SoundPlugin/SoundPlugin.c<br> src/plugins/SqueakFFIPrims/SqueakFFIPrims.c<br>
src/vm/cointerp.c<br> src/vm/cointerp.h<br> src/vm/gcc3x-cointerp.c<br><br><span style="background-color: rgb(255, 255, 51);">commit 1af7478875b2d534c3b6cdc89d8244ff3ea4ec65</span><br>Author: Esteban Lorenzano <<a href="mailto:estebanlm@gmail.com">estebanlm@gmail.com</a>><br>
Date: Sun Apr 3 09:09:20 2011 -0300<br><br> added LocalePlugin<br clear="all"><br><br><br><br>However, only the 4 first characters are usually enough to specify a version. So for example in Git you can do:<br><br>git ch<span style="background-color: rgb(255, 255, 255);">eckout <span style="background-color: rgb(255, 255, 51);">1af7</span>478875b2d534c3b6cdc89d8244ff3ea4ec65<br>
<br>or <br><br>git checkout 1af7</span><br><br>So...we can have the same as the SVN if we want. <br><br>Cheers<br></div></div><br>-- <br>Mariano<br><a href="http://marianopeck.wordpress.com" target="_blank">http://marianopeck.wordpress.com</a><br>
<br>