Second Round CURL Wrapper Review

jdrewsen jdrewsen at nospam.com
Mon Dec 12 04:24:25 PST 2011


On Monday, 12 December 2011 at 00:53:14 UTC, dsimcha wrote:
> 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"

ok

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

will fix

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

ok

> 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.

Initially it was not exposed but there were a couple of requests 
to expose it. Thats why.

> 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?

I think it should have curl in the name. I do not believe that a 
native D network library should have the same API as this module. 
It is limited by the design of libcurl and should be improved by 
a native D net library.

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

ok

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

yes


Thanks for the feedback
/Jonas


More information about the Digitalmars-d mailing list