httpx 1.5.1 → 1.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. checksums.yaml +4 -4
  2. data/doc/release_notes/1_6_0.md +50 -0
  3. data/doc/release_notes/1_6_1.md +17 -0
  4. data/lib/httpx/adapters/datadog.rb +23 -13
  5. data/lib/httpx/adapters/faraday.rb +14 -9
  6. data/lib/httpx/adapters/webmock.rb +1 -1
  7. data/lib/httpx/callbacks.rb +1 -1
  8. data/lib/httpx/connection/http1.rb +5 -6
  9. data/lib/httpx/connection/http2.rb +34 -18
  10. data/lib/httpx/connection.rb +19 -26
  11. data/lib/httpx/errors.rb +3 -1
  12. data/lib/httpx/io/ssl.rb +1 -4
  13. data/lib/httpx/io/tcp.rb +52 -21
  14. data/lib/httpx/io/unix.rb +4 -3
  15. data/lib/httpx/loggable.rb +4 -1
  16. data/lib/httpx/options.rb +248 -160
  17. data/lib/httpx/plugins/aws_sdk_authentication.rb +2 -0
  18. data/lib/httpx/plugins/aws_sigv4.rb +2 -0
  19. data/lib/httpx/plugins/callbacks.rb +13 -1
  20. data/lib/httpx/plugins/circuit_breaker.rb +2 -0
  21. data/lib/httpx/plugins/content_digest.rb +2 -0
  22. data/lib/httpx/plugins/cookies.rb +2 -2
  23. data/lib/httpx/plugins/digest_auth.rb +2 -0
  24. data/lib/httpx/plugins/expect.rb +2 -0
  25. data/lib/httpx/plugins/fiber_concurrency.rb +195 -0
  26. data/lib/httpx/plugins/follow_redirects.rb +2 -0
  27. data/lib/httpx/plugins/grpc.rb +2 -0
  28. data/lib/httpx/plugins/h2c.rb +26 -16
  29. data/lib/httpx/plugins/internal_telemetry.rb +0 -49
  30. data/lib/httpx/plugins/ntlm_auth.rb +2 -0
  31. data/lib/httpx/plugins/oauth.rb +10 -2
  32. data/lib/httpx/plugins/persistent.rb +27 -18
  33. data/lib/httpx/plugins/proxy/socks4.rb +1 -1
  34. data/lib/httpx/plugins/proxy/socks5.rb +1 -1
  35. data/lib/httpx/plugins/proxy/ssh.rb +2 -0
  36. data/lib/httpx/plugins/proxy.rb +61 -20
  37. data/lib/httpx/plugins/response_cache/file_store.rb +2 -2
  38. data/lib/httpx/plugins/response_cache.rb +2 -0
  39. data/lib/httpx/plugins/retries.rb +2 -0
  40. data/lib/httpx/plugins/ssrf_filter.rb +2 -2
  41. data/lib/httpx/plugins/stream_bidi.rb +3 -3
  42. data/lib/httpx/plugins/upgrade/h2.rb +11 -1
  43. data/lib/httpx/plugins/upgrade.rb +8 -0
  44. data/lib/httpx/pool.rb +15 -10
  45. data/lib/httpx/request/body.rb +8 -3
  46. data/lib/httpx/request.rb +22 -11
  47. data/lib/httpx/resolver/entry.rb +30 -0
  48. data/lib/httpx/resolver/https.rb +3 -1
  49. data/lib/httpx/resolver/multi.rb +16 -3
  50. data/lib/httpx/resolver/native.rb +15 -6
  51. data/lib/httpx/resolver/resolver.rb +15 -11
  52. data/lib/httpx/resolver/system.rb +5 -3
  53. data/lib/httpx/resolver.rb +49 -21
  54. data/lib/httpx/response/body.rb +1 -1
  55. data/lib/httpx/response/buffer.rb +13 -18
  56. data/lib/httpx/selector.rb +92 -34
  57. data/lib/httpx/session.rb +89 -30
  58. data/lib/httpx/session_extensions.rb +3 -2
  59. data/lib/httpx/transcoder/form.rb +1 -13
  60. data/lib/httpx/transcoder/multipart/mime_type_detector.rb +1 -1
  61. data/lib/httpx/transcoder/multipart.rb +14 -0
  62. data/lib/httpx/transcoder/utils/deflater.rb +1 -1
  63. data/lib/httpx/version.rb +1 -1
  64. data/sig/callbacks.rbs +1 -1
  65. data/sig/chainable.rbs +1 -0
  66. data/sig/connection/http1.rbs +2 -0
  67. data/sig/connection/http2.rbs +5 -1
  68. data/sig/connection.rbs +6 -6
  69. data/sig/errors.rbs +3 -1
  70. data/sig/io/ssl.rbs +1 -1
  71. data/sig/io/tcp.rbs +13 -7
  72. data/sig/io/udp.rbs +7 -2
  73. data/sig/io/unix.rbs +0 -1
  74. data/sig/io.rbs +0 -3
  75. data/sig/options.rbs +64 -11
  76. data/sig/plugins/fiber_concurrency.rbs +51 -0
  77. data/sig/plugins/h2c.rbs +5 -1
  78. data/sig/plugins/oauth.rbs +15 -1
  79. data/sig/plugins/persistent.rbs +1 -1
  80. data/sig/plugins/proxy/socks4.rbs +1 -1
  81. data/sig/plugins/proxy/socks5.rbs +1 -1
  82. data/sig/plugins/proxy.rbs +5 -2
  83. data/sig/plugins/ssrf_filter.rbs +1 -1
  84. data/sig/plugins/stream_bidi.rbs +2 -2
  85. data/sig/request.rbs +4 -1
  86. data/sig/resolver/entry.rbs +13 -0
  87. data/sig/resolver/native.rbs +1 -0
  88. data/sig/resolver/resolver.rbs +2 -3
  89. data/sig/resolver/system.rbs +2 -2
  90. data/sig/resolver.rbs +12 -11
  91. data/sig/response.rbs +2 -2
  92. data/sig/selector.rbs +18 -10
  93. data/sig/session.rbs +4 -0
  94. data/sig/transcoder/form.rbs +3 -3
  95. data/sig/transcoder/multipart.rbs +9 -3
  96. metadata +11 -3
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: httpx
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.5.1
4
+ version: 1.6.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tiago Cardoso
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2025-06-09 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: http-2
@@ -155,6 +155,8 @@ extra_rdoc_files:
155
155
  - doc/release_notes/1_4_4.md
156
156
  - doc/release_notes/1_5_0.md
157
157
  - doc/release_notes/1_5_1.md
158
+ - doc/release_notes/1_6_0.md
159
+ - doc/release_notes/1_6_1.md
158
160
  files:
159
161
  - LICENSE.txt
160
162
  - README.md
@@ -282,6 +284,8 @@ files:
282
284
  - doc/release_notes/1_4_4.md
283
285
  - doc/release_notes/1_5_0.md
284
286
  - doc/release_notes/1_5_1.md
287
+ - doc/release_notes/1_6_0.md
288
+ - doc/release_notes/1_6_1.md
285
289
  - lib/httpx.rb
286
290
  - lib/httpx/adapters/datadog.rb
287
291
  - lib/httpx/adapters/faraday.rb
@@ -327,6 +331,7 @@ files:
327
331
  - lib/httpx/plugins/cookies/set_cookie_parser.rb
328
332
  - lib/httpx/plugins/digest_auth.rb
329
333
  - lib/httpx/plugins/expect.rb
334
+ - lib/httpx/plugins/fiber_concurrency.rb
330
335
  - lib/httpx/plugins/follow_redirects.rb
331
336
  - lib/httpx/plugins/grpc.rb
332
337
  - lib/httpx/plugins/grpc/call.rb
@@ -362,6 +367,7 @@ files:
362
367
  - lib/httpx/request.rb
363
368
  - lib/httpx/request/body.rb
364
369
  - lib/httpx/resolver.rb
370
+ - lib/httpx/resolver/entry.rb
365
371
  - lib/httpx/resolver/https.rb
366
372
  - lib/httpx/resolver/multi.rb
367
373
  - lib/httpx/resolver/native.rb
@@ -428,6 +434,7 @@ files:
428
434
  - sig/plugins/cookies/set_cookie_parser.rbs
429
435
  - sig/plugins/digest_auth.rbs
430
436
  - sig/plugins/expect.rbs
437
+ - sig/plugins/fiber_concurrency.rbs
431
438
  - sig/plugins/follow_redirects.rbs
432
439
  - sig/plugins/grpc.rbs
433
440
  - sig/plugins/grpc/call.rbs
@@ -461,6 +468,7 @@ files:
461
468
  - sig/request.rbs
462
469
  - sig/request/body.rbs
463
470
  - sig/resolver.rbs
471
+ - sig/resolver/entry.rbs
464
472
  - sig/resolver/https.rbs
465
473
  - sig/resolver/multi.rbs
466
474
  - sig/resolver/native.rbs
@@ -507,7 +515,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
507
515
  - !ruby/object:Gem::Version
508
516
  version: '0'
509
517
  requirements: []
510
- rubygems_version: 3.6.2
518
+ rubygems_version: 3.6.9
511
519
  specification_version: 4
512
520
  summary: HTTPX, to the future, and beyond
513
521
  test_files: []