Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:81328 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 21538 invoked from network); 28 Jan 2015 19:49:03 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 28 Jan 2015 19:49:03 -0000 Authentication-Results: pb1.pair.com smtp.mail=mike.php.net@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=mike.php.net@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 74.125.82.44 as permitted sender) X-PHP-List-Original-Sender: mike.php.net@gmail.com X-Host-Fingerprint: 74.125.82.44 mail-wg0-f44.google.com Received: from [74.125.82.44] ([74.125.82.44:60658] helo=mail-wg0-f44.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id A1/8A-44076-E2D39C45 for ; Wed, 28 Jan 2015 14:49:02 -0500 Received: by mail-wg0-f44.google.com with SMTP id z12so22625121wgg.3 for ; Wed, 28 Jan 2015 11:48:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:content-type:content-transfer-encoding; bh=J5cQjxN3lFpGm2bG9IubWla95Us2MGTOHq+ObE48EzY=; b=FlJM8hRondnPAZ5O+Obg0BAFcEbTMH5dsx1mz4ywR99abcf+iw9pLNBZdMm4rFyMQK TWkX4KhHiIL9TFVRPmfVDdgbIG2i7lmrvCcvAuFD/XbaGGAoF4XZsLQuvUk2dcW6JYvK 5A/ijYqeFvPS58cP6ihyF91dDjMKnhG2fzPx1pJ8kWp9vw3qVe0z6MXXcGa7IfaTFMzv PR6YHCkSnrUPONIBTzjx0bnH/89kndDgD3GucjBI5uL/wlwiHjiVJ3FpJXhi4n2Hvc13 VHiyhToTG4hwQvlkor7rpFSlaFRm1dpWU1Vew9YOQb06unTeyaYp1L/c6Sbb9bxjAucg y5DA== X-Received: by 10.194.81.104 with SMTP id z8mr10727937wjx.45.1422474539851; Wed, 28 Jan 2015 11:48:59 -0800 (PST) Received: from [192.168.2.120] (89-104-28-113.customer.bnet.at. [89.104.28.113]) by mx.google.com with ESMTPSA id d6sm4162168wic.1.2015.01.28.11.48.58 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 28 Jan 2015 11:48:58 -0800 (PST) Sender: Michael Wallner Message-ID: <54C93D29.8070303@php.net> Date: Wed, 28 Jan 2015 20:48:57 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.4.0 MIME-Version: 1.0 To: Andrea Faulds CC: Levi Morrison , PHP Internals References: <54C8D36E.7010803@php.net> <584E167F-CD06-4ACB-A33A-92DD178BCFD8@ajf.me> <54C934C1.6080601@php.net> <32FA0837-DCDD-4157-AD1A-3A9DE91B5FFB@ajf.me> In-Reply-To: <32FA0837-DCDD-4157-AD1A-3A9DE91B5FFB@ajf.me> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Subject: Re: [PHP-DEV] [RFC] [VOTE] pecl_http From: mike@php.net (Michael Wallner) On 28/01/15 20:18, Andrea Faulds wrote: > Hi Michael, > >> On 28 Jan 2015, at 19:13, Michael Wallner wrote: >> >> - Client >> >> The http stream wrapper is a hack and the existing libcurl binding >> is subpar. They could be improved separately, but that is not >> subject of this RFC. >> >> Currently only libcurl is implemented as a provider for the client >> functionality. Provides most of the functionality of current >> libcurl. Representation of the request and response how a client >> sees them. Support for parallel requests and optional libev{,ent} >> support. > > If the client is merely a wrapper around cURL, what benefit does it > offer over ext/curl except a better API? > > Personally, I’ve never liked that PHP requires cURL for doing HTTP > requests. It’s a language made for the web, it should have built-in > HTTP, and it should share code between its server-side HTTP and > client-side HTTP stuff. I don’t think that the HTTP stream wrappers > are a “hack” - they’re what PHP should have had all along. I think we > should focus on improving them (so there’s no need to use cURL) > rather than adding yet another HTTP client. Sounds a bit like NIH. We could implement a http_client driver with the code from the stream wrapper and see how they compare in feature set and performance. -- Regards, Mike