I like where your headed. Checkout #1272542: fallback code for some ideas on potential collaboration.

Comments

freblasty’s picture

Read the issue and project description. I would love to collaborate but need some more information on the subject.

mikeytown2’s picture

I'm thinking of having different backends for HTTPRL, one of them right now is the stream_select() backend. If there was a CURL backend as well that would be pretty cool. This issue (#380052: Add support with non-blocking parallel link checking) has curl multi sorta working; but they switched to HTTPRL due to CURL redirect issues (HTTPRL allows for requests to be added to the stack even after it's been executed; to follow 301's, etc...).

We are both going after the same goal... we want a more powerful HTTP client in drupal because drupal_http_request() doesn't do what we need it to.

Do you think you could get curl multi working in this project? What do you need in HTTPRL (proxy, hook_response_formatter_info, etc) in order to start to merge the projects?

freblasty’s picture

I think i'll get curl multi to work just need to rethink the hole "API" so that one can swithc between single curl and multi curl requests without much of an effort.

Adding the webclient hooks to the HTTPRL module would come in handy if you want to support proxy, and auto response formatting. But this would mean that all fallbacks should support the same functionality.

mikeytown2’s picture

Discovered this a couple of days ago: https://github.com/jmathai/php-multi-curl

I've added in support for something similar that would allow for auto response formatting #1524968: Run drupal_alter() in httprl_post_processing(). For proxy support I have an issue where I link to various issues for core that deal with it #1320172: Bring in proxy support.

freblasty’s picture

Sorry for the late response, been quite busy at work so haven't had any time to start development. Now i've noticed the pluggable architecture issue against the drupal 8 core which makes me wonder if we should halt the development until that issue is closed?

mikeytown2’s picture

Also be aware of http://drupal.org/project/chr.

I'm not sure about the direction of #64866: Pluggable architecture for drupal_http_request(); its a good idea but it needs someone to drive it. Something that CURL can't do that stream select can do is run shell commands #1357652-22: Merge Projects: Replace Background Process's HTTP client with HTTPRL's. . This makes me think that having a pluggable architecture is the right way. Making HTTPRL pluggable and have that be the core replacement sounds interesting if you ask me. I got some ideas for a 2.x branch of HTTPRL to make it suitable for core but that's a big change #1593862: 2.x branch and target for core inclusion. Move extra stuff to sub-modules..

freblasty’s picture

Status: Active » Fixed

Closing the support request as the last comment is almost a year old.

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.

Project: » Lost & found issues

This issue’s project has disappeared. Most likely, it was a sandbox project, which can be deleted by its maintainer. See the Lost & found issues project page for more details. (The missing project ID was 1490922)