Hi Holger
Thanks again for being so responsive.
After doing some admittedly light research on the `new` method versus
`initialize`, it looks like Pharo (and probably, therefore, Squeak) is
the only variant of Smalltalk that automatically calls an instance
initializer (`initialize`) on `new`. If GNU Smalltalk is following this
to be easier to port from Pharo, that raises a philosophical question
for GNU Smalltalk: is intended for it to align as much as possible with
the Pharo implementation (and then perhaps, ultimately, become a "Pharo
variant"), or to attempt to remain more "pure" (whatever that might mean
:)) relative to Smalltalk-80? I noticed in various texts discussion
Smalltalk class instance creation, specifically show a pattern something
like:
Foo class >> new [
^super new initialize
]
Mark
On 8/31/2015 2:09 AM, Holger Freyther wrote:
The socket is connecting fine. But digging into the connection code, I found that a `class
new` operation now automatically calls the `initialize` method in 3.2.91-b98173d, but it
does not do so in 3.2.5. This causes a problem in the MySQLPacket and MySQLInputPacket
connection code and results in `MySQLInputPacket >> initialize` being called too
early in `^(self new) stream: aStream ; initialize` inside of ` MySQLPacket class >>
on: aStream`. It's called automatically on `self new` before the stream is set.
I tried to align this semantic to Pharo (as porting from/to Pharo gets easier).
Thank
you for your analysis! The question is why does the CI pass? Did I by accident
not
go through authentication?
I will try to reproduce and integrate a fix this week.
holger
_______________________________________________
help-smalltalk mailing list
help-smalltalk@gnu.org
https://lists.gnu.org/mailman/listinfo/help-smalltalk