Hi Mariano,
I loaded Fuel into my working Squeak image, which is an older image kept up to date with trunk via the update stream (i.e. it is "bleeding edge" with various additional packages loaded).
Excellent :) Where can I get a "bleeding edge" Squeak image?
I had to implement SystemVersion>>major and SystemVersion>>minor to complete the installation (these are Pharo idioms, so I just implemented them to answer 0 on Squeak).
To complete the instalation?? Can you remember why (the sender) it is needing #mayor and #minor? As far as I remember, it is only used by Fuel in FLBasicSerializationTest
expectedFailures
but that is not the installation, but running tests.
I did not encounter the timeout problem, but if you have a long running test, just add a pragma like <timeout: 30> to set the timeout to 30 seconds. This will increase the timeout when running on Squeak, and should not affect Pharo.
Thanks, I didn't know. Is there a way to run the tests in the test runner so that it doesn't take into account such timeouts? or can I change the global preference? I ask so that to avoid changing tests code (even if they would work for Pharo).
Below are some notes that I took while running the tests. The most important issue would be the tests that fail in CompiledMethod comparison. I cannot say if this is a Fuel issue or just something about the way the tests are written, but I note significant differences in the implementation of CompiledMethod>>= between Squeak and Pharo, so it is definitely something worth checking.
That's a good point. There must be something there for sure.
Notes on test issues in FuelTests:
FLSequencedSerializationTest>>assertSequencedSerializationEqualityOf: is failing due to difference in CompiledMethod>>= between Pharo and Squeak. Not sure if this is a Fuel issue.
FLBasicSerializationTest>>testGradientFillStyle fails because GradientFillStyle>>= is an identity test, whereas in Pharo it has been added from package '*PolyMorph-Widgets' (i.e. not part of base Pharo either).
FLBasicSerializationTest>>testMethodDictionary fails due to compiled method #= (same issue as FLSequencedSerializationTest>>assertSequencedSerializationEqualityOf:)
In FLBlockClosureSerializationTest, all tests fail with an assertion failure in MethodContext
FLFullBasicSerializationTest>>testMethodDictionaries fails due to the compiled method equality check problem.
FLMethodContextSerializationTest tests fail with assertion failure in MethodContext
FLSortedCollectionSerializationTest tests fail with assertion failure in MethodContext
FLCreateClassSerializationTest has errors due to DNU from ClassForTestToBeDeleted1 class>>basicLocalSelectors
FLCompiledMethodSerializationTest>>testTwoCompiledMethodsReferencingSameClassVariable fails due to the compiled method equality check problem.
FLCreateTraitSerializationTest>>testCreateBasic fails with DNU on Trait>>basicLocalSelectors
Thanks for the detailed answer. From what I can see, even if those tests are wrong, "most cases" should work fine.
Cheers