So I know that some of you already started to use Moose under Pharo 1.1, and now it is
time to assess the situation.
I took the latest Pharo Core on the web 11383.
I loaded the latest Pharo Conf 1.1-beta1.10517
Then I loaded default of ConfigurationOfMoose.
After loading, the first issue I knew beforehand is that there was a conflicting
dependency between the version of MorphTreeWidget loaded by Moose default and the one
which now comes by default with Pharo 1.1
I built two new default versions for Glamour and Moose with Pharo1.1 by removing this
dependency:
(ConfigurationOfMoose project version: 'default11') load
should load a working Moose (not tested)
Tests got something like 200 errors, however most of them seem to have common roots
(meaning fix one problem and you fix dozens of tests). There seem to be nothing really
serious, just fixing changes in API and also compiler semantics, with strange things
around.
1) For example, the following snippet of code is valid (I didn't even know that!) but
the semantic has changed:
[ :i ] value: 1 -> returns 1 under Pharo 1.0, and nil under Pharo 1.1
2) Also it seems that the compiler now considers _ as a message send. Just try
MSEUtilities signatureFromSmalltalkSelector: #_
and you get a nice primitive failed. Of course the importer did not like it :)
I just replaced _ with :=
3) fix deprecation asSortedArray -> asArray sort in Hashtable
4) One fix NOT commited in Glamour:
Message send autoDeselect: produces DNU, rewritten as autoDeselection:
in GLMMorphicRenderer>>treeMorphFor:and:
I started to do that, I'm now at 20 failures and 42 errors.
The fun thing is that the changes are not necessarily complicated, but the effects on
tests can be weird (like above). So it's difficult sometimes to tell what is the
problem. Now failing tests are mostly in GroupTest (some difference in importing the
model, perhaps simply due to changes in the system classes imported) and MooseAlgos, a
couple of other packages...
If someone knows how to replace the following snipper, it will solve a lot of error tests
in MooseAlgos actually.
Stream endOfStreamSignal signal
--
Simon