kghF+ dZddlZddlZddlZddlZddlmZddlm Z m Z m Z m Z ddl mZddlmZddlmZddlmZmZdd lmZdd lmZdd lmZdd lmZdd lmZm Z m!Z!ddl"m#Z#m$Z$m%Z%ej&e'Z(dede e)fdZ*dede e+fdZ, d%dedede+de e)de e)de e-f dZ.de+de+fdZ/de+de+de+fdZ0dedede+fdZ1 d&dedede e)de e+def d Z2Gd!d"Z3Gd#d$Z4dS)'z(Download files with progress indicators.N) HTTPStatus)BinaryIOIterableOptionalTuple)Response)ReadTimeoutError)get_download_progress_renderer)IncompleteDownloadErrorNetworkConnectionError)PyPI)Link) is_from_cache) PipSession)HEADERSraise_for_statusresponse_chunks) format_sizeredact_auth_from_urlsplitextrespreturnct t|jdS#tttf$rYdSwxYw)Nzcontent-length)intheaders ValueErrorKeyError TypeErrorrs ~/builddir/build/BUILD/imunify360-venv-2.6.0/opt/imunify360/venv/lib/python3.11/site-packages/pip/_internal/network/download.py_get_http_response_sizer!sF4< 01222 ) ,tts 77ch|jd|jdS)z Return either the ETag or Last-Modified header (or None if neither exists). The return value can be used in an If-Range header. etagz last-modified)rgetrs r (_get_http_response_etag_or_last_modifiedr% s, <  FDL$4$4_$E$E F FFlink progress_bar total_length range_startc|jtjkr|j}n|j}t |}|r=|r&|dt |dt |d}n|dt |d}t|rt d|n9|rt d|nt d|t tj krd}n"t|rd}n|sd}n |d krd}nd}t|}|s|St||| } | |S) Nz (/)zUsing cached %szResuming download %szDownloading %sFTi)bar_typesizeinitial_progress)netlocr file_storage_domainshow_urlurl_without_fragmentrrrloggerinfogetEffectiveLevelloggingINFOrr ) rr'r(r)r*url logged_url show_progresschunksrenderers r _prepare_downloadr?(s {d...m'%c**JG  GXX[!9!9XXK rs;.. 666666666666000000;;;;;;JJJJJJTTTTTTTT++++++******555555444444RRRRRRRRRRPPPPPPPPPP  8 $ $(x}G8G GGGG"# 00 0 003- 0 # 0 e_ 0000f&&&&&& (3 (# (RU ( ( ( (hds0"#"   #sm   0JCJCJCJCJCJCJCJCZ1111111111r&