The end of curl (in phobos)
Dmitry Olshansky via Digitalmars-d
digitalmars-d at puremagic.com
Sat Feb 18 14:48:53 PST 2017
On 2/18/17 10:20 PM, Seb wrote:
> On Monday, 9 May 2016 at 10:44:13 UTC, ZombineDev wrote:
>> On Monday, 9 May 2016 at 09:35:18 UTC, sigod wrote:
>>> On Monday, 9 May 2016 at 08:55:36 UTC, Jonathan M Davis wrote:
>>>> But given that std.net.curl handles stuff like SSL/TLS, we _can't_
>>>> actually replace all of its functionality - at least not without
>>>> adding a dependency on a different C library, since there's no way
>>>> that it's sane to do the crypto stuff ourselves without a crypto
>>>> expert, and even then, we should think twice about it. I could see
>>>> implementing the SSL/TLS protocols themselves but not the crypto
>>>> they use. If we replace std.net.curl, we likely should just provide
>>>> the basic HTTP functionality, and leave the rest to a dub package
>>>> that we move std.net.curl to.
>>> Any chances that we can produce good crypto code over time? And
>>> verify it with experts, of course.
>> https://github.com/etcimon/botan AFAIK, it is already used in
>> production by its author, in combination with libasync + vibe.d +
>> http2 for a full stack D solution.
> So what's the consensus on this issue?
> Can't we simply move std.net.curl and etc.c.curl to undead and just
> _not_ include it in Phobos?
> Anyone reasonable will use requests , vibe.d's async requestHTTP 
> or their home-grown library anyways. As mentioned in another thread ,
> Phobos is bloated with "old" modules that wouldn't have made it through
> today's review process.
For some time I was a proponent of yanking stuff from Phobos into
oblivion. Now I'm not. Stop breaking code. Yes, we should think harder
before introducing libraries into Phobos but continuing on with removal
of stuff just introduces the continuous churn for no adequate benefit.
What would anyone get from std.net.curl removal? Are you going to find
all of D programs and patch them to use something else?
Yes, Phobos is full of historical accidents and cruft. I'm constantly
tempted to propose Phobos v2 properly _designed_ (not *grown*) and
without the junk. I really think it might be a good idea but only when
we actually know what a proper design looks like.
More information about the Digitalmars-d