567 Commits

Author SHA1 Message Date
HoneyryderChuck
453f0c8c63 ignoring URI escape deprecation (not the same result) 2018-06-04 10:44:12 +01:00
HoneyryderChuck
1b68700f54 ignoring URI escape deprecation (not the same result) 2018-06-04 10:43:48 +01:00
HoneyryderChuck
63fdd8c83a added retry-on-next-proxy when errors happen which happened during proxy connection or protocol establishment 2018-06-04 09:59:28 +01:00
HoneyryderChuck
68861bc336 proxy: allow to pass a list of possible proxies to :uri parameter; taking the first one from the list 2018-06-04 09:59:28 +01:00
HoneyryderChuck
9040c837d4 using CGI.escape due to rubocop 2018-06-04 09:46:08 +01:00
HoneyryderChuck
42cdd04017 added retry-on-next-proxy when errors happen which happened during proxy connection or protocol establishment 2018-06-01 19:18:16 +01:00
HoneyryderChuck
0ca0971e27 proxy: allow to pass a list of possible proxies to :uri parameter; taking the first one from the list 2018-06-01 19:18:16 +01:00
HoneyryderChuck
4e5507f1db do not escape redirect location in tests (uris are escaped now) 2018-06-01 19:17:51 +01:00
HoneyryderChuck
19503156e1 encoding URLs properly by replacing unsafe characters 2018-06-01 17:29:30 +01:00
HoneyryderChuck
b7e875a761 rubocoped this 2018-05-28 10:00:54 +01:00
HoneyryderChuck
994c1b853e moved TCP and SSL definitions under /io, where possible future transports will go to 2018-05-25 16:05:03 +01:00
HoneyryderChuck
6c49581dc2 added unix io type (so now one can open unix sockets), added a basic test to show that connectivity is possible 2018-05-25 15:57:46 +01:00
HoneyryderChuck
54d4c613d1 allow transport to be used to get the proper IO type; changing signature of both TCP and SSL 2018-05-25 15:56:51 +01:00
HoneyryderChuck
5b4c465c72 allow to pass transport type (tcp, ssl, unix)and a transport options 2018-05-25 15:55:41 +01:00
HoneyryderChuck
25b04e7c0e setting up the nghttp2 docker image to use from registry instead of building one every single time. this should speed up the test suite 2018-05-10 16:49:55 +01:00
HoneyryderChuck
7e54ee00e5 this change fixes http event stream requests, which are not understood by HTTP::Parser, and do not trigger the message complete event; it doesn't call the dispatch inside the callback, instead relying on an existing mechanism to do it outside the callback, thereby avoiding the bug which was the reason for the previous comment 2018-04-09 12:23:03 +01:00
HoneyryderChuck
e9d8f4fc8c added missing release notes 2018-04-06 11:35:56 +01:00
HoneyryderChuck
6c1ebd57a8 bumped to 0.0.5 v0.0.5 2018-04-03 20:34:13 +01:00
HoneyryderChuck
70b2c17543 Merge branch 'pipeline-timeout' into 'master'
Pipeline timeout

See merge request honeyryderchuck/httpx!19
2018-04-03 19:03:03 +00:00
HoneyryderChuck
1065607837 fixed patch for CI 2.5 to count with 2.5.1 as well 2018-04-03 19:47:40 +01:00
HoneyryderChuck
c032afa060 rubocop suggestion 2018-04-03 19:01:25 +01:00
HoneyryderChuck
48b02731fb allow SSL channels to being properly closed and reoppened 2018-04-03 19:01:11 +01:00
HoneyryderChuck
dfaa66fb6f http1: reset parser instead of closing (it was removing the channel from the selector); this was making http1 pipelining fail 2018-04-03 19:00:11 +01:00
HoneyryderChuck
347b960de8 propagating channel errors to parsers, allowing to reset 2018-04-03 18:59:35 +01:00
HoneyryderChuck
693a7ceb7a not using retries... (to be addressed in a plugin) 2018-04-03 18:39:01 +01:00
HoneyryderChuck
4db4b073d3 renamed channel error emission; emit timeout errors in connection pool, not in client 2018-04-03 09:53:57 +01:00
HoneyryderChuck
56156e91fa bumping to 0.0.4 v0.0.4 2018-03-29 15:47:03 +01:00
HoneyryderChuck
4bd509dce9 rubocop 2018-03-29 15:46:30 +01:00
HoneyryderChuck
6dc5179b46 passing a full response to the HTTPError, thereby exposing the whole response object 2018-03-29 15:34:03 +01:00
HoneyryderChuck
3db315a771 making sure that HTTP/1 connection: close reopens a socket if there are still requests in the buffer 2018-03-29 15:22:08 +01:00
HoneyryderChuck
9f0547a24b Merge branch 'colored_output' into 'master'
Colored output

Closes #19

See merge request honeyryderchuck/httpx!18
2018-03-28 10:34:10 +00:00
HoneyryderChuck
0da9b26f26 disable colors if output is not a tty 2018-03-28 11:00:12 +01:00
HoneyryderChuck
e36a91b6cc added color as a parameter to logs, using ANSI 2018-03-28 10:57:35 +01:00
HoneyryderChuck
25fd0bbf75 changed the log API to use kwargs 2018-03-28 10:51:15 +01:00
HoneyryderChuck
9626f17daf connect: guard against ENETUNREACH and openssl handshake errors 2018-03-28 09:51:33 +01:00
HoneyryderChuck
b47eb263fd allow to wrap client in many layers 2018-03-26 17:39:08 +01:00
HoneyryderChuck
79c7d72f2a bumped rubocop to 0.54 2018-03-26 17:16:41 +01:00
HoneyryderChuck
0e0e7b1ead updated readme formatting 2018-03-26 16:19:54 +01:00
HoneyryderChuck
75ffa8ad4f setting version to 0.0.3 v0.0.3 2018-03-26 15:42:32 +01:00
HoneyryderChuck
505d4d0324 adding a #wrap method, to keep connections open 2018-03-26 15:41:09 +01:00
HoneyryderChuck
438deb488a do not dispatch inside body callback (it resets the parser, while the parser is still parsing...) 2018-03-26 15:32:20 +01:00
HoneyryderChuck
bc95ed0c80 Merge branch 'raise_for_status' into 'master'
Raise for status

See merge request honeyryderchuck/httpx!17
2018-03-26 13:51:08 +00:00
HoneyryderChuck
d02e328077 hackernews script: running in separate thread now to make backtracing easier 2018-03-26 14:37:58 +01:00
HoneyryderChuck
ec17795dbe get example now raises for status 2018-03-26 14:29:40 +01:00
HoneyryderChuck
44f9b9c31a skip connection refused test in jruby (to be debugged) 2018-03-26 12:15:41 +01:00
HoneyryderChuck
f5c8508f44 guarding connection initialization against EADDRNOTAVAIL 2018-03-26 11:55:12 +01:00
HoneyryderChuck
4c9b16740f ssl: allowing non-blocking connects, finally 2018-03-26 11:46:52 +01:00
HoneyryderChuck
7b8d0d89f7 show the actual error coming 2018-03-23 15:00:07 +00:00
HoneyryderChuck
e36c6347bf rubocop indications 2018-03-23 14:48:10 +00:00
HoneyryderChuck
2813ff9efb log error as well in the error response 2018-03-23 14:45:20 +00:00