in reply to
RFC: Code testers/reviewers needed
1. $header->content_length is not available for chunked transfer (according to HTTP spec)
2. why are you mixing decoded_content and content_file ?
3. you are not checking if file downloaded correct (see mirror method in LWP::UserAgent)
4. is_success can give you false positives (but probably HEAD requests are OK in practice) https://github.com/libwww-perl/libwww-perl/issues/46 https://rt.cpan.org/Public/Bug/Display.html?id=85759
5. you can avoid HEAD requests at all - use LWP callbacks, you will be able to get length/last_mod_time before whole file is transferred