Hi,

It has been quite a while, but here is another progress report on the Zinc HTTP 
Components project.

First of all, Zinc HTTP Components has found a new home:

        http://zn.stfx.eu

and more importantly, it is now self hosted, i.e. the pages you see are served 
by Zn, and all testing and debugging handlers are now available live. For more 
information regarding this production quality deploy, please see

        http://zn.stfx.eu/#livedemo

The documentation pages have been updated a bit to better reflect the current 
status of the project.

Second, I thank all people who contributed by testing Zn, giving feedback as 
well as for some of them actual code. Thank you, Cédrick Béler, Philippe 
Marschall, Esteban Lorenzano, Jan van de Sandt, Stéphane Ducasse, Andy Burnett, 
Norbert Hartl, Paul DeBruicker, Hernán Morales Durand and Tony Fleig. (I hope I 
didn't forget anyone). Thanks Lukas Renggli and Marcus Denker for adding Zn to 
their continuous integration servers. 

Sven

Here is a list of changes since January of this year:

- introduction of ZnUrl class
- improved ZnStaticFileServerDelegate
- introduced #asZnMimeType on ZnMimeType, MIMEType & String
- Zinc-AWS proof of concept client
- added lots of comments
- several fixes to Zinc's Seaside adaptor, ZnZincServerAdaptor (encoding issues)
- split of ZnNetworkingUtils from ZnUtils to separate related functionality
- fixed ZnClient class>>#getImageOfType:usingParser:fromUrl: to correctly 
report responses with unexpected mime types 
- promoted ZnFixedClient>>#fixedUrl: to public status and changed it to accept 
ZnUrl objects as well for more flexibility 
  (allowing users to add query/fragment URL elements in addition to the path)
- ZnUserAgent (and ZnHttpClient) now can follow relative redirect locations
- introduced ZnMultiValueDictionary to allow multiple values to be stored under 
one key as an array,
  using it for queries and headers
- changed the redirect behavior for POST/PUT requests: the common practice is 
to turn these into GET request, 
  see ZnUserAgent>>#method:for:headers:data:imit: and 
ZnUserAgent>>#prepareRedirect:
- added simple ConfigurationOfZincHTTPComponents
- added ZnByteEncoder to handle single byte encodings that do not map directly 
to the lower Unicode section 
  (for example Latin2, ISO-8859-2) by reusing the mapping tables from 
ByteTextConverter
- added #handlesEncoding: and #newForEncoding: protocol to class side of 
ZnCharacterEncoding hierarchy
- added proper content length computation to ZnMultiPartFormDataEntity (bugfix)
- some code cleanup to ZnEntity content length computation
- added ZnUrl>>#queryDo: ZnApplicationForUrlEncodedEntity>>#fieldsDo:
- added ZnMessage>>#resetEntity: to allow overwriting content type and length 
when these are already set
- fixed a typo in the ZnMimePart instance creation methods (formdata should be 
form-data)
- added ZnResponse>>#serverError:
- implemented ZnHTTPSocketFacade class>>#httpPostMultipart:args:accept:request:
- added ZnHTTPSocketFacade class>>#constructMultiPartFormDataEntity:
- extended ZnZincServerAdaptor to handle multipart formdata posts (including 
file uploads)
- introducing exception hierarchy in Zinc-HTTP-Exceptions
- added ZnResponse>>#isNotModified
- bugfix to Base64 encoding that introduced newlines
- changed ZnZincServerAdaptor>>#defaultCodec to GRNullCodec
- added new logging framework in Zinc-HTTP-Logging, consisting of ZnLogEvent 
(an Announcment), 
  ZnLogSupport and ZnLogListener and subclasses ZnTranscriptLogger, 
ZnMemoryLogger and ZnFileLogger
- now using the new logging facilities in Zn[Single|Multi]ThreadedServer, 
ZnFixedClient and ZnUserAgent
- now using the new logging facilities in Zn[Single|Multi]ThreadedServer, 
ZnFixedClient and ZnUserAgent
- small fix to ZnUrl>>#printPathOn: to deal with cases where forward slashes 
are encoded in URLs
- various small changes related to the Gemstone port (byte array literals, 
Unicode creation)
- fixed an important bug related to reading entities upToEnd

The latest version now is: 

Name: Zinc-HTTP-SvenVanCaekenberghe.150
Author: SvenVanCaekenberghe
Time: 1 May 2011, 7:19:13 pm
UUID: 8fe0b470-7728-454d-bc90-fa42d8330817
Ancestors: Zinc-HTTP-SvenVanCaekenberghe.149



Reply via email to