November 6, 2007
I have started work on the first fundamental changes towards 0.6 release. Namely I have implemented the “easy sending for TCP” which enables users to just send data and not care anymore (more or less). Up until now you had to do a tedious loop with OnCanSend sending “trick” and in all honesty it wasn’t exactly optimal (usability wise, speed doesn’t change).
Now I need to test this on basic TCP server/client and start fixing higher protocols which use TCP. Old functionality will be still possible if you specify the old TLSocket as the SocketClass property for the TCP object. This means that even inherited TLSockets will work “old style” and of course analogically, new TLSocketTCP will also allow descendants.
Once this is done and FTP and HTTP works reliably again, I’ll start to hack on SSL. If everything goes well I might even manage a QT and Carbon Lazarus integration (will require probably Lazarus 0.9.26 or even greater depending on when my changes get in).
All in all 0.6 looks pretty promising.
On a side note I have entered benchmarking of the various event models (select, epoll etc.) as my research project at the university so we might get some tangible comparisons soon 🙂