Many moons ago, it was requested that Monticello allow GUIDs as version
numbers... this support was added together with support for conventional 1.0.12b style version numbering in MC1.5 (in theory). However the theory turned out to be not good enough for some folks (they know who they are) Matthew and I spent a couple of hours reworking the version number support in MC1.5 and this has resulted in cleaner, better code... so we are all happy now. (in theory) The net result is that the following is now supported... In addition to the standard.... PackageName-kph.1.mcz we can now have PackageName-kph.1.2.13beta.mcz or PackageName-kph.1.2beta.14.mcz and also.... PackageName-my.very.silly.author.initials.which.stupidly.include.the.delimiter.1.0.3.4beta.mcz But what of GUID support.... well this turned out to be fairly impractical, due to the fact that GUIDs contain a lot of redundant information and dont sort nicely. i.e. you get you packages appearing in a random order in the repo. So instead I defined a timestamp based UID which should do the job. The UID is assembled as - date.time.count So if you happen to save a version named like so... MC will see the timestamp and will save subsequent versions with a new timestamp and updated count. The basic UID package name is like so... PackageName-kph.20080628.054558001.2.mcz However this can be combined with a proper version number (of any length) PackageName-kph.10.5.3beta.20080628.054558001.2.mcz Ok so its not going to be perfect, but I think it should be good enough, since there is a proper GUID in the version info anyway if there ever was a UID clash. best regards Keith |
Some people are under the impression that filename formats in monticello
are not very well defined. This is definitely not the case. There is, and has been for a while, a spec for the filename formats together with a test suite for their parsing. So if you want to be backwards, or forwards compatible, it is not advisable to just start using any old scheme for your mcz filenames. For example you cannot use $- in your authors initials or version numbers, you can however use a space if you want to use full names for some reason. just to let folks know, since I am trying to bring some coherence to the melting pot that many seem intent on stirring wildly best regards Keith |
Am 28.06.2008 um 14:02 schrieb Keith Hodges: > Some people are under the impression that filename formats in > monticello are not very well defined. This is definitely not the case. > > There is, and has been for a while, a spec for the filename formats > together with a test suite for their parsing. > > So if you want to be backwards, or forwards compatible, it is not > advisable to just start using any old scheme for your mcz filenames. > > For example you cannot use $- in your authors initials or version > numbers, you can however use a space if you want to use full names > for some reason. These are conventions that should be followed unless you understand the implications, no doubt about that. However, Monticello was explicitly designed to not place meaning on file names, or to enforce a particular development style (like having a trunk with branches etc). It's "only" that various UI tools will get confused if you break the conventions these tools assume (and I admit being guilty of making tools that assume that too, like the highlighting of ancestors of versions that are already loaded). - Bert - |
In reply to this post by keith1y
My wishlist...
To somehow paraphrase Stéphane Ducasse:
"I want to load any package, from any repository into any Squeak image".
*** BUT ***
1) I need to be warned when prerequisites are missing, I want to be warned of undeclared/missing classes/pools/methods/etc ;
2) I want a good integrated diff tool
3) I want a good merge tool
4) I want an integrated CVS
5) I want a one-click load
6) I want a one-click "publish"
7) I want a user-friendly searchable web interface to the public repository with good browsing capabilities to locate code/packages by category, class name, author, publish date, package name, etc.
8) I want one "tool suite" to do all that, not parts of it with Universes, other stuff with Squeakmap, the rest with Monticello, some with standard fileIn/FileOut, 10 formats of import/export...
In other words, I want simplicity of use to handle complexity of code. -----------------Benoit St-Jean Yahoo! Messenger: bstjean Blog: lamneth.wordpress.com A standpoint is an intellectual horizon of radius zero. (Albert Einstein) |
Free forum by Nabble | Edit this page |