\bg#ddlmZddlZddlZddlmZddlmZddlm Z gdZ dZ ee j Zefdd ZedfddZddZddZdS)) annotationsN)Path) HTTPError)urlopen) DOWNLOAD_DIR retrieve_file output_fileurls_from_file)zhttp://zhttps://z github.com/z/raw/urlstr download_dirrreturnc |}tD]O}||dd}Pt|t jdd|S)Nz/:z [^\-_\.\w\d]+_)strip NAME_REMOVEreplacerresub)r r file_nameparts {/builddir/build/BUILD/cloudlinux-venv-1.0.7/venv/lib/python3.11/site-packages/setuptools/tests/config/downloads/__init__.pyr r s| ILL%%dB//5577==dCCIIKK  bf%5sIFF G GGwaitfloatc`t||}|rtd|d|dnr|ddtd|d| t ||n4#t $r't j|t ||YnwxYw|S)Nz Skipping z (already exists: )T)exist_okparentsz Downloading z to )r existsprintmkdirdownloadrtimesleep)r r rpaths rrrs sL ) )D {{}}   8#888889999D$777 ,S,,d,,--- S$       Jt    S$       Ks)A::.B+*B+ list_file list[str]ctd||d}d|DS)z^``list_file`` should be a text file where each line corresponds to a URL to download. zfile: zutf-8)encodingc<g|]}|d|S)#) startswith).0r s r z"urls_from_file..1s) K K KCs~~c7J7J KC K K Kr)r# read_text splitlines)r)contents rr r +sQ 9  !!7!33G K K7--// K K KKrdestc<t|5}|}dddn #1swxYwYt|d5}||dddn #1swxYwYt |sJdS)Nwb)rreadopenwriterr")r r5fdatas rr%r%4s vvxx dD  Q   ::     s155 A..A25A2)r r r rrr)r r r rrrrr)r)rrr*)r r r5r) __future__rrr&pathlibr urllib.errorrurllib.requestr__all__r__file__parentrr rr r%rrrEs"""""" """""""""""" L L L> tH~~$ 0<HHHHH2>Q     LLLLr