The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
Revision history for Perl module YAHC

0.035 2017-11-13 IKRUGLOV
    - *change in behaivor* - lowercase header keys
    - provide ability to pass external eventlog in ->new()
    - include new tests

0.034 2017-06-20 IKRUGLOV
    - support of reposponses without Content-Length by joaquim.rovira@booking.com
    - check that Content-Length is numeric value by joaquim.rovira@booking.com
    - support of HEAD, 1xx, 204 and 304 responses by jeroen.vanwolffelaar@booking.com

0.033 2017-04-22 IKRUGLOV
    - yahc_conn_socket_cache_id(): return undef if conn is undef
    - when considering droping a socket take into account response protocol
    - socket_cache as callback
    - fix bug in yahc_terminal_error()
    - don't set backoff time when backoff callback returned 0
    - support of HEAD method
    - can pass headers in ->new()
    - do not overwrite Host header when set by user
    - implement yahc_conn_user_data()
    - improved tests

0.032 2017-02-27 IKRUGLOV
    - socket cache support multiple file handles per destination
    - uniq connections ids

0.031 2017-01-17 IKRUGLOV
    - clarification of docs
    - yahc_retry_conn() can accept backoff_delay arg
    - fix double setting args in ->new() and ->request()
    - optimize internal timer creation

0.030 2016-10-13 IKRUGLOV
    - report sent body (cut to 1024 bytes) in timeline
    - more fare scheduling of retries
    - enrich error messages with numeric representation of $! or IO::Socket::SSL::SSL_ERROR
    - stop leaking connections once completed
    - drop() can force socket to be closed
    - new tests

0.029 2016-09-06 IKRUGLOV
    - fix problem with empty head param when building http request body
    - improved docs
    - lots of improvments in tests

0.028 2016-07-23 IKRUGLOV
    - new yahc_conn_register_error()
    - new yahc_conn_attempt()
    - *change in behaivor* - timeout errors are marked with new
      YAHC::Error::TIMEOUT() bit. So, direct comparation like $err ==
      YAHC::Error::CONNECT_TIMEOUT() won't work anymore and should be done as
      bitmask check $err & YAHC::Error::CONNECT_TIMEOUT.
    - bugfix in backoff_delay logic
    - bugfix in user_callback calls, update EV internal time to avoid deviation.
    - added t/account_for_signal.t into MANIFEST
    - beter docs
    - more tests

0.027 2016-07-16 IKRUGLOV
    - new backoff_delay feature
    - new lifetime_timeout feature
    - *change in behaivor* - in case of internal error, exception in
      callback or expiration of lifetime_timeout callback is called with
      TERMINAL_ERROR bit set in $error. In this case all further attempt to
      retry or reinit connection are ignored and the connection goes to
      COMPLETED state unconditionally. Previous behaivor was that a connection
      silently terminates.
    - *change in behaivor* - give all timeouts the highest priorities in event
      loop. This provides stonger timeout guarantee but can cause timeouts in
      border cases which didn't happen before.
    - *change in behaivor* - when connection failed all retry attempts report
      error condition with new error YAHC::Error::RETRY_LIMIT instead of
      YAHC::Error::CONNECT_ERROR
    - rename YAHC::State::WAIT_SYNACK to YAHC::State::CONNECTING
    - improved tests
    - improved docs

0.026 2016-07-14 IKRUGLOV
    - improved docs
    - account_for_signals
    - experimental support of socket_cache
    - expose break() method
    - warn if UTF8 flagged payload detected
    - tests improvments

0.025 2015-12-04 IKRUGLOV
    - yahc_retry_conn()
    - move t/requests.t to live tests

0.024 2015-11-13 IKRUGLOV
    - fix failing tests

0.023 2015-11-12 IKRUGLOV
    - bug fix

0.022 2015-11-11 IKRUGLOV
    - new tests
    - minor performance optimizations

0.021 2015-11-06 IKRUGLOV
    - passing host to YAHC->new didn't work
    - ignore extention when parsing chunked encoding
    - minor improvments

0.019 2015-09-28 IKRUGLOV
    - chunked encoding support
    - $ENV{YAHC_DEBUG} and $ENV{YAHC_TIMELINE}

0.018 2015-07-03 IKRUGLOV
    - SSL support
    - update EV's time before setting a timer
    - compatibility fixes
    - other minor changes

0.017 2015-05-25 IKRUGLOV
    - registering a error includes a record in timeline
    - check stop condition after going into CONNECTED state
    - improve test
    - add test into build
    - remove active_connections()

0.016 2015-05-19 IKRUGLOV
    - add active_connections()
    - minor fixes
    - tests and benchmarks

0.015 2015-05-12 IKRUGLOV
    - yahc_conn_attempts_left
    - set the lowest priority to timers
    - compatibility fixes

0.014 2015-05-11 IKRUGLOV
    - move benchmark files into 'benchmark' directory
    - handle case where body is 0 (int)
    - change response interface to use same fields as Hijk uses (headers => head, status_code => status)
    - change format of error messages
    - new tests

0.013 2015-05-?? IKRUGLOV
    - Added github repo to the dist metadata and the doc
    - Added this Changes file