August 17, 2011
Now that Lars Kyllingstad's new and improved std.path has passed the vote  – congratulations, Lars! –, and Jose Armando Garcia, the author of the proposed logging module, is currently not available, the etc.curl module by Jonas Drewsen is at the front of the review queue. I have volunteered to run the formal process for inclusion with Phobos.

etc.curl provides a high-level interface to client-side networking functionality for the HTTP, FTP and SMTP protocols by wrapping libcurl [1], accessing the C interface of which is already possible using Phobos in the form of etc.c.curl. Prior stages of the work have already been discussed in March [2], May [3], and June [4]. Thanks to everybody who took the time to evaluate the library back then; as far as I am aware, all raised concerns have been addressed since then.

Based on the amount of discussion this module already underwent, I hereby propose a two-week review period. Barring any objections, the review starts today (Aug 18) and ends on Aug 31, followed by a one week vote (Sep 1 - Sep 7).


API documentation:

A discussion on the wrapper has already been started on digitalmars.D [5]. To keep everything in one place, please post your comments and reviews there.

At this point, I would like to invite everyone to spend some time testing the module and reading its documentation and code. It is essential for a working open source code review process that many people participate in it, and regardless of whether you are new to D or a seasoned contributor, your opinion is very valuable.

Jonas also asked us to have a look at the list of known issues (which can also be found at the top of the source file), and, if possible, suggest a solution:

Known issues:
 * DDoc is not generated where the mixins ByLineAsync, ByLineSync, ByChunkAsync and ByLineSync are used. This seems to be a limitation of ddoc - suggestions on how to circumvent this appreciated.

Possible improvements:
 * Progress may be deprecated in the future. Maybe implement a replacement.
 * Support typed http headers - (Johannes Pfau)

To make sure it doesn't get lost, let me also repeat Johannes Pfau's request to add proxy support from another thread ([6]) here.

Thanks a lot for your reviewing efforts,