Hi All,
I've completed porting MethodWrappers to Squeak 4.2. You'll need to update your image to at least Compiler-eem.215 & Kernel-eem.623. You can find MethodWrappers4.2-eem.17 at http://www.squeaksource.com/MethodWrappers. Enjoy.
P.S. Anyone in VW land interested in updating the codee? The class comments in VW are obsolete (valueNowOrOnUnwindDo: is mentioned instead of ensure: etc). If you do update the code you might want to add the tweak I did to MwBlockMethodWrapper>valueWithReceiver:arguments: to make both before and after blocks optional. i.e.
MwBlockMethodWrapper methods for evaluating valueWithReceiver: anObject arguments: anArrayOfObjects "Optionally evaluate beforeBlock before evaluating clientMethod if beforeBlock is non-nil. Optionally evaluate afterBlock afterwards if afterBlock is non-nil." self wasActive: true. self beforeBlock ifNotNil: [:beforeBlock| beforeBlock value: anObject value: anArrayOfObjects]. ^self afterBlock ifNil: [self clientMethod valueWithReceiver: anObject arguments: anArrayOfObjects] ifNotNil: [:afterBlock| [self clientMethod valueWithReceiver: anObject arguments: anArrayOfObjects] ensure: [afterBlock value: anObject value: anArrayOfObjects]]
On Tue, Sep 13, 2011 at 2:42 PM, Eliot Miranda eliot.miranda@gmail.comwrote:
Hi All,
the most up-to-date MethodWrappers I can find is for Squeak 3.9,
pre-closures. Anyone have anything compatible with Squeak 4.1/4.2/Pharo 1.1/1.2/1.3?
-- best, Eliot
Hi.
The current version of Squeak 4.2, namely #10977, includes Kernel-nice.542 and Compiler-nice.184. Having this, your update of MethodWrappers is not usable with Squeak 4.2 but with the trunk version?
Is there a chance that the required versions of Kernel and Compiler will be integrated into Squeak 4.2 soon?
Marcel
-- View this message in context: http://forum.world.st/MethodWrappers-for-Squeak-4-2-tp3819384p3850480.html Sent from the Squeak - Dev mailing list archive at Nabble.com.
Hi.
I tried to update #10977 to the required versions of Compiler and Kernel. The update failed.
Merging/Loading Compiler-eem.215 results in "Compiler class DNU #newParser." Merging/Loading Kernel-eem.623 results in "nil returned in LargePositiveInteger>>lowBit".
Marcel
-- View this message in context: http://forum.world.st/MethodWrappers-for-Squeak-4-2-tp3819384p3850557.html Sent from the Squeak - Dev mailing list archive at Nabble.com.
On 28 September 2011 10:55, Marcel Taeumel marcel.taeumel@student.hpi.uni-potsdam.de wrote:
Hi.
I tried to update #10977 to the required versions of Compiler and Kernel. The update failed.
Merging/Loading Compiler-eem.215 results in "Compiler class DNU #newParser." Merging/Loading Kernel-eem.623 results in "nil returned in LargePositiveInteger>>lowBit".
It looks like Compiler-eem.215 depends on Kernel-nice.563 (2011/02/23). That might be something post-4.2? So if you try load Kernel-nice.563, then Compiler-eem.215, then Kernel-eem.623 you might get further?
(I found the above by opening a trunk image and using the annotations pane.)
frank
Marcel
-- View this message in context: http://forum.world.st/MethodWrappers-for-Squeak-4-2-tp3819384p3850557.html Sent from the Squeak - Dev mailing list archive at Nabble.com.
Hi Marcel,
first you need to update 10977 to trunk. Here's how:
1. start up 10977. 2. open the preferences browser; MenuBar->Tools->Preferences 3. search for "update" 4. change Update URL:'s value to http://source.squeak.org/trunk 5. update Squeak
Half way through you'll get a conflict in a Monticello update. You want to keep the change that does /not/ delete versionFromFileNamed:. If you get this wrong and later get an MNU during s subsequent update simply open a change set browser, locate Monticello-cmm.440, select versionFromFileNamed:, choose versions and revert to the latest one, then proceed the MNU notifier.
Then save your updated trunk image. Now you will be able to load MethodWrappers4.2. And no, I won't port MethodWrappers to 4.2 base, only to trunk :)
cheers On Wed, Sep 28, 2011 at 2:12 AM, Marcel Taeumel < marcel.taeumel@student.hpi.uni-potsdam.de> wrote:
Hi.
The current version of Squeak 4.2, namely #10977, includes Kernel-nice.542 and Compiler-nice.184. Having this, your update of MethodWrappers is not usable with Squeak 4.2 but with the trunk version?
Is there a chance that the required versions of Kernel and Compiler will be integrated into Squeak 4.2 soon?
Marcel
-- View this message in context: http://forum.world.st/MethodWrappers-for-Squeak-4-2-tp3819384p3850480.html Sent from the Squeak - Dev mailing list archive at Nabble.com.
squeak-dev@lists.squeakfoundation.org