[Pharo-project] Fwd: [Metacello] Re: symbolic version proof of concept...
-------- Original Message -------- Subject: [Metacello] Re: symbolic version proof of concept... Date: Thu, 25 Nov 2010 08:02:41 -0800 From: Dale <dhenrich@vmware.com> Reply-To: metacello@googlegroups.com <metacello@googlegroups.com> To: Metacello <metacello@googlegroups.com> Doru, If you want to try out the load you need to do a couple of things: Gofer new gemsource: 'metacello'; package: 'ConfigurationOfMetacello'; load. Then: (ConfigurationOfMetacello project version: '1.0-beta.28') load. Followed by: Gofer new url: 'http://a-bibliocello.gemstone.com/bibliocello/projects/Pharo/ repository/Experiment1/MetacelloRepository'; package: 'ConfigurationOfGofer'; package: 'ConfigurationOfRefactoringBrowser'; package: 'ConfigurationOfShout'; package: 'ConfigurationOfOCompletion'; package: 'ConfigurationOfOmniBrowser'; load. That way you've got all of the new configurations preloaded in your image. And then: (ConfigurationOfOmniBrowser project version: #stable) load. Sorry about not including these instructions in the original message:( Dale On Nov 25, 5:10 am, Tudor Girba <tudor.gi...@gmail.com> wrote:
Hi,
I tried: Gofer new url: 'http://a-bibliocello.gemstone.com/bibliocello/projects/Pharo/reposito... package: 'ConfigurationOfOmniBrowser'; load. ((Smalltalk at: #ConfigurationOfOmniBrowser) project version: #stable) load: 'Tests'.
But the (ConfigurationOfOmniBrowser project version: #stable) is nil.
Cheers, Doru
On 25 Nov 2010, at 12:21, Alexandre Bergel wrote:
Is there a short description of symbolic versions somewhere?
Alexandre
On 24 Nov 2010, at 21:46, Dale wrote:
Over the last few days I've been working on converting ConfigurationOfOmniBrowser and the configurations it depends upon (ConfigurationOfRefactoringBrowser, ConfigurationOfShout, and ConfigurationOfOCompletion) to use symbolic versions.
The results are stashed away in a repository on the Bibliocello site:
http://a-bibliocello.gemstone.com/bibliocello/projects/Pharo/reposito...
With Metacello 1.0-beta.28 loaded you can execute the following expression in a PharoCore1.0, PharoCore1.1, or PharoCore1.2 image and the appropriate versions of OmniBrowser and the supporting proejcts will be loaded:
(ConfigurationOfOmniBrowser project version: #stable) load: 'Tests'.
So far I have been using only the 'Tests' group because ... well I want to verify that the code not only loads, but passes all of the tests (for the loaded projects) in each image and the results are:
PharoCore1.0: 1221 run, 1218 passes, 3 expected failures, 0 failures, 0 errors, 0 unexpected passes PharoCore1.1: 1325 run, 1324 passes, 1 expected failures, 0 failures, 0 errors, 0 unexpected passes PharoCore1.2: 814 run, 813 expected passes, 0 expected failures, 0 failures, 1 errors, 0 unexpected passes, and deprecation warnings
For Pharo1.2, OB-Refactory is not loaded, because it doesn't appear to have been ported to Pharo1.2 yet ...
If you want to look at what I've done you can compare the latest version of the config with the earliest version of the config in the repository ... I'll be glad to explain any changes that don't make sense to you.
All four configs also run clean against the Metacello validator ....
I've developed a set of scripts (in MetacelloToolBox) that I have been using to automate the process of determining which versions in a particular configuration load cleanly into an image and if the tests pass as well (including checking for deprecation warnings). The following expression when executed in a PharoCore1.0.x image will load each version in the configuration and run the tests (loading the 'Tests' group if it is defined):
(MetacelloToolBox validatePlatformLoad: #'pharo1.0.x' for: 'OmniBrowser') explore.
Right now, that script will automatically update the development and stable symbolic version definitions as well as mark versions as #release if the 'Tests' group loads without errors or deprecation warnings and passes all of the tests (without deprecation warnings). It also produces an 'issues list' that describes the individual errors, critical warnings and warnings for each version ... much like the validator with added information about tests.
I expect to continue working my way through the various configurations with the goal to automate as much of the validation and analysis as possible...
Dale
-- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
--www.tudorgirba.com
"In a world where everything is moving ever faster, one might have better chances to win by moving slower."
Oh, one other thing ... Metacello1.0-beta.28 has not been released yet, it's a development version so I recommend that for now you only use 1.0-beta.28 for experimenting with symbolicVersions ... Dale On 11/25/2010 10:30 AM, Dale Henrichs wrote:
-------- Original Message -------- Subject: [Metacello] Re: symbolic version proof of concept... Date: Thu, 25 Nov 2010 08:02:41 -0800 From: Dale<dhenrich@vmware.com> Reply-To: metacello@googlegroups.com<metacello@googlegroups.com> To: Metacello<metacello@googlegroups.com>
Doru,
If you want to try out the load you need to do a couple of things:
Gofer new gemsource: 'metacello'; package: 'ConfigurationOfMetacello'; load.
Then:
(ConfigurationOfMetacello project version: '1.0-beta.28') load.
Followed by:
Gofer new url: 'http://a-bibliocello.gemstone.com/bibliocello/projects/Pharo/ repository/Experiment1/MetacelloRepository'; package: 'ConfigurationOfGofer'; package: 'ConfigurationOfRefactoringBrowser'; package: 'ConfigurationOfShout'; package: 'ConfigurationOfOCompletion'; package: 'ConfigurationOfOmniBrowser'; load.
That way you've got all of the new configurations preloaded in your image. And then:
(ConfigurationOfOmniBrowser project version: #stable) load.
Sorry about not including these instructions in the original message:(
Dale
On Nov 25, 5:10 am, Tudor Girba<tudor.gi...@gmail.com> wrote:
Hi,
I tried: Gofer new url: 'http://a-bibliocello.gemstone.com/bibliocello/projects/Pharo/reposito... package: 'ConfigurationOfOmniBrowser'; load. ((Smalltalk at: #ConfigurationOfOmniBrowser) project version: #stable) load: 'Tests'.
But the (ConfigurationOfOmniBrowser project version: #stable) is nil.
Cheers, Doru
On 25 Nov 2010, at 12:21, Alexandre Bergel wrote:
Is there a short description of symbolic versions somewhere?
Alexandre
On 24 Nov 2010, at 21:46, Dale wrote:
Over the last few days I've been working on converting ConfigurationOfOmniBrowser and the configurations it depends upon (ConfigurationOfRefactoringBrowser, ConfigurationOfShout, and ConfigurationOfOCompletion) to use symbolic versions.
The results are stashed away in a repository on the Bibliocello site:
http://a-bibliocello.gemstone.com/bibliocello/projects/Pharo/reposito...
With Metacello 1.0-beta.28 loaded you can execute the following expression in a PharoCore1.0, PharoCore1.1, or PharoCore1.2 image and the appropriate versions of OmniBrowser and the supporting proejcts will be loaded:
(ConfigurationOfOmniBrowser project version: #stable) load: 'Tests'.
So far I have been using only the 'Tests' group because ... well I want to verify that the code not only loads, but passes all of the tests (for the loaded projects) in each image and the results are:
PharoCore1.0: 1221 run, 1218 passes, 3 expected failures, 0 failures, 0 errors, 0 unexpected passes PharoCore1.1: 1325 run, 1324 passes, 1 expected failures, 0 failures, 0 errors, 0 unexpected passes PharoCore1.2: 814 run, 813 expected passes, 0 expected failures, 0 failures, 1 errors, 0 unexpected passes, and deprecation warnings
For Pharo1.2, OB-Refactory is not loaded, because it doesn't appear to have been ported to Pharo1.2 yet ...
If you want to look at what I've done you can compare the latest version of the config with the earliest version of the config in the repository ... I'll be glad to explain any changes that don't make sense to you.
All four configs also run clean against the Metacello validator ....
I've developed a set of scripts (in MetacelloToolBox) that I have been using to automate the process of determining which versions in a particular configuration load cleanly into an image and if the tests pass as well (including checking for deprecation warnings). The following expression when executed in a PharoCore1.0.x image will load each version in the configuration and run the tests (loading the 'Tests' group if it is defined):
(MetacelloToolBox validatePlatformLoad: #'pharo1.0.x' for: 'OmniBrowser') explore.
Right now, that script will automatically update the development and stable symbolic version definitions as well as mark versions as #release if the 'Tests' group loads without errors or deprecation warnings and passes all of the tests (without deprecation warnings). It also produces an 'issues list' that describes the individual errors, critical warnings and warnings for each version ... much like the validator with added information about tests.
I expect to continue working my way through the various configurations with the goal to automate as much of the validation and analysis as possible...
Dale
-- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
--www.tudorgirba.com
"In a world where everything is moving ever faster, one might have better chances to win by moving slower."
participants (1)
-
Dale Henrichs