Second Round CURL Wrapper Review

dsimcha dsimcha at yahoo.com
Sun Dec 11 16:53:13 PST 2011


Here's my review.  Remember, review ends on December 16.

Overall, this library has massively improved due to the rounds of 
review it's been put through.  I only found a few minor nitpicks. 
  However, a recurring pattern is minor grammar mistakes in the 
documentation.  Please proofread all documentation again.

Docs:

"The high level API is build" -> "The high level API is built"

"LibCurl is licensed under a MIT/X derivate license" -> "LibCurl 
is licensed under an MIT/X derivative license"

AutoConnect:  "Connection type used when the url should be used 
to auto detect protocol."  ->  "auto detect THE protocol"

Why is there a link to curl_easy_set_opt in the byLineAsync and 
byChunkAsync docs?

In onSend:  "The length of the void[] specifies the maximum 
number of bytes that can be send." -> "can be SENT"

What is the use case for exposing struct Curl?  I prefer if this 
were unexposed because we'll obviously be unable to provide a 
replacement if/when the backend to this library is rewritten in 
pure D.

Actually, that leads to another question:  Should this module 
really be named etc.curl/std.curl/std.net.curl, or should the 
fact that it currently uses Curl as a backend be relegated to an 
implementation detail?

Code:

pragma(lib) basically doesn't work on Linux because the object 
format doesn't support it.  Don't rely on it.

Should the protocol detection be case-insensitive, i.e. "ftp://" 
== "FTP://"?


More information about the Digitalmars-d mailing list