On 17-Aug-05 10:32:00 Angus Robertson - Magenta Systems Ltd wrote: >> How do you think that all we heavily tested for weeks if nobody, >> except the developer(s), made any test?
>I only have a single development environment, and I need to be able to >produce bug fix versions of several applications at short notice, often >hours, that get widely distributed within hours. >Many other professional developers are probably in exactly the same >situation. I'm one. Actually I'm using only the HttpCli component. To do a test I normally use a modified version of HttpTst. To not affect the compilation of other application I copy the new files (HttpProt in this case) to the dir of the test application. With this way only this program will use the "new" version, so the other projects are "safe". >So using new versions of components is very delicate, thus the absolute >need for backward compatibly and full version and change documentation, >to allow the risk of new versions to be accessed. The changes that I made are backward compatible. If they aren't then there is a bug. >I do keep up to date with official ICS betas, including SSL, test them >for weeks or months in various live applications, report problems, and >often try to fix them myself, for the benefit of other uses, but only >if I can see the risk of doing so and I can be sure the changes will >not cause me major grief. This exactly what I normally do, and what every good programmer should do :-) BTW, there is another "test" version of HttpCli. If you missed it, this solve a potential problem that could raise when both the proxy and the host require an authentication. The symptom is very bad: the application goes in a infinite loop! So it is very important that people test it because it change the logic of how the autentication is handled internally. I worked two weeks to solve it. It take so long because I repeated the test with an huge amount of combination every time I changed the code. See old post for details. >> We are not speaking specific on gzip but on handlig encoding in a >> generic way. >Not really fussed how many different fancy schemes are supported. This was not only a problem of different encoding, but of different implementation. What I want to avoid is that an application need two different zip libraries because the component "need" a different one to handle the gzip encoding. And this will help a lot in the compability field, in particular when it is planned to use a different zip library in the future. >> If you are using VCLZip library to handle gzip content then it could >> be interesting to see if you are able to add it to this "new" version >> or if it is missing something indispensable. >Vclzip is commercial, I used it to replace the previous Borland Zlib >implementation because it was convenient, but I'd rather use open >source for anything new. >I will test your changed component in one of my applications provided, >provided there is no DLL requirement. There is no need of dll. To test it you need HttpProt.pas and HttpContCod.pas contained in HttpContCod.zip that is on ICS site. To use the new code you must define Use_ContentCoding, otherwise the code is exactly the same of the last release (and of course in that case there is no need of the HttpContCod unit). Using only these units no encodings will handled by the component, so all should be backward compatible. To enable an encoding you must include in the uses clause of one unit of your project a unit that contain a class able to handle, for example, the gzip. The HttpCCodGzip.pas is a sample. To work it need all other files contained in the zip, dll included. I invite you to test it first without gzip and then with gzip using the VCLZip library. To implement it write a new unit following HttpCCodGzip.pas as sample. It should be very easy (that unit is only 59 lines long). If you have questions I'm there. Of course feedback are welcome :-) Bye, Maurizio. -- To unsubscribe or change your settings for TWSocket mailing list please goto http://www.elists.org/mailman/listinfo/twsocket Visit our website at http://www.overbyte.be