HoneyryderChuck
82b0a4bf28
fix: https resolver should close when no more outstanding connections are around
2022-01-16 22:54:56 +02:00
HoneyryderChuck
5c019c440f
added test for testing the env var proxy defs
2022-01-08 15:09:11 +02:00
HoneyryderChuck
27d81f3090
introduce custom timer to replace Timers::Group
...
The HTTPX::Timers class mimicks the same top-level API as its
predecessors, but simplifies its implementation. Adding a timer will
resort all timers, while lookups are roughly the same complexity. The
key difference is that callbacks are now aggregated by interval, i.e.
different requests setting the same timeout, will reuse the same timer.
This is a more simple design than Timers::Group, which stores timers in
a binary search tree; the latter will perform well in any environment,
whereas the first one is more tailored for the use-case of httpx, where
most of the times no timers will be set, and when they do, the same
timer will be reused for all requests because they usually have the same
set of options (and therefore timeouts).
2021-09-20 13:19:55 +01:00
HoneyryderChuck
b5ec7acd51
making get/set access to the plugins hash thread-safe
2021-07-07 12:45:14 +01:00
HoneyryderChuck
e3468fb3c4
isolating the punycode module
2021-06-11 14:44:07 +01:00
HoneyryderChuck
bc6bc903fc
moved default options out of the initializer
2021-04-08 17:46:54 +01:00
HoneyryderChuck
bf0ec99794
removed the timeout class
2021-04-08 17:34:19 +01:00
HoneyryderChuck
981824bf47
fixing how to load plugins on boot, such as the http_proxy when the system proxy is set
2021-02-15 17:20:41 +00:00
HoneyryderChuck
cbfb5c968e
moving domain_name module to core httpx, as the punycode IDN translation will be needed at this layer
2020-11-07 01:34:48 +00:00
HoneyryderChuck
01552757a0
supporting the retry-after header for redirections as well
2020-10-31 14:15:28 +00:00
HoneyryderChuck
1d86db13a1
added tests for certain untested options of a session
2020-01-12 20:38:05 +00:00
HoneyryderChuck
c1c0c536eb
Client -> Session (signal this as deprecation, as this is public API
2019-03-16 16:32:33 +00:00
HoneyryderChuck
b6d6597cb8
Connection -> Pool
2019-03-16 15:23:49 +00:00
HoneyryderChuck
94f335fd2f
moved all altsvc-specific logic to AltSvc module; renamed uri to origin where possible; fixed the creation of the alternative channel
2018-11-22 18:07:45 +00:00
HoneyryderChuck
5a09575263
parsing alternative service header in channel instead, emit event
2018-11-22 18:07:45 +00:00
HoneyryderChuck
e051ea57da
added alternative services store
2018-11-22 18:07:45 +00:00
HoneyryderChuck
861d69c409
fixed all remaining rubocop fails
2018-01-28 23:01:33 +00:00
HoneyryderChuck
c4811c01f8
added support for rubies between 2.1 and 2.5 (polyfills)
2018-01-28 20:13:04 +00:00
HoneyryderChuck
0821b13ba9
add log method as a mixin
2018-01-04 23:45:55 +00:00
HoneyryderChuck
2742f4f9af
added chainable module, a la http gem
2017-12-07 21:15:39 +00:00
HoneyryderChuck
9c40845d94
added the ability to load plugins in the client, allowing to extend request/response/headers transparently
2017-12-07 01:05:01 +00:00
HoneyryderChuck
fbdd7e2dd8
added registry module, where one can register by a tag; introducing transcoder, modules which can encode and decode; using them for the body/form/json bodies
2017-12-06 19:49:26 +00:00
HoneyryderChuck
a214891fa1
added timeouts backend like http, integrated it in connecting sockets, and performing selector operations; the global one still needs work though (currently connecting one by one, connection not integrated in selector)
2017-11-29 00:07:49 +00:00
HoneyryderChuck
c7319964c0
added the options module, similar to http
2017-11-28 18:12:02 +00:00
HoneyryderChuck
85f08f0c7a
changed the resource structure
2017-11-28 14:36:18 +00:00
HoneyryderChuck
0bcfc7fbe2
added first structure draft, resource names to change, but... it works\! to nghttp2
2017-11-28 01:24:24 +00:00
HoneyryderChuck
bbd472186b
deleted it all
2017-11-27 22:26:22 +00:00
HoneyryderChuck
b1530da6aa
added content-type parser
2017-11-27 17:20:59 +00:00
HoneyryderChuck
c0f2efdc16
added other timeouts, for now empty
2017-11-27 17:20:34 +00:00
HoneyryderChuck
b9091db9fa
added main building blocks necessary to implement and verify the public API
2017-11-27 17:15:15 +00:00