2025-03-05 22:20:41 +00:00

1.2 KiB

1.4.2

Bugfixes

  • faraday: use default reason when none is matched by Net::HTTP::STATUS_CODES
  • native resolver: keep sending DNS queries if the socket is available, to avoid busy loops on select
  • native resolver fixes for Happy Eyeballs v2
    • do not apply resolution delay if the IPv4 IP was not resolved via DNS
    • ignore ALIAS if DNS response carries IP answers
    • do not try to query for names already awaiting answer from the resolver
    • make sure all types of errors are propagated to connections
    • make sure next candidate is picked up if receiving NX_DOMAIN_NOT_FOUND error from resolver
  • raise error happening before any request is flushed to respective connections (avoids loop on non-actionable selector termination).
  • fix "NoMethodError: undefined method `after' for nil:NilClass", happening for requests flushed into persistent connections which errored, and were retried in a different connection before triggering the timeout callbacks from the previously-closed connection.

Chore

  • Refactor of timers to allow for explicit and more performant single timer interval cancellation.
  • default log message restructured to include info about process, thread and caller.