[Seaside] Bug (and fix?) with #doSilently: and FileLibrary
Mariano Martinez Peck
marianopeck at gmail.com
Thu Oct 10 20:53:40 UTC 2013
I noticed that when we add files to FileLibrary using provided methods like
both methods are created, #selectorsToInclude and whatever you have
updated, say, #myCss. However, if you go to Monticello Browser, only
#selectorsToInclude appears. Digging a bit, I found out that Seaside ends
up using Grease for that. And Grease does:
GRPharoPlatform >>compile: aString into: aClass classified: aSymbol
self doSilently: [
aClass compile: aString classified: aSymbol ]
And then, of course, the doSilently, ends up doing:
GRPharoPlatform >> doSilently: aBlock
"Deals with a different between Pharo1.x and Pharo2.x"
^ (Smalltalk includesKey: #SystemChangeNotifier)
ifTrue:[(Smalltalk at: #SystemChangeNotifier) uniqueInstance doSilently:
ifFalse:[(Smalltalk at: #SystemAnnouncer) uniqueInstance suspendAllWhile:
So...first, I don't like that a method named like #compile:into:classified:
does a silently compilation. Normally, we have the "silently" as part of
the selector (or a boolean parameter). Second, why would we want to compile
silently? the idea is that after, we commit the FileLibrary...so if the
method is not there, it is a problem.
So, should we change the #compile:into:classified: to NOT do the silently?
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the seaside