a *NaY@sddlmZmZmZmZddlmZmZddlZGddde Z ej e eee eedddZeeefeeefdd d d Zeed d dZeedddZeeefeeefdddZdS))AnyCallableDictOptional)quoteurlparseNc@seZdZeddddZdS) _StdoutStreamN)chunkreturncCs t|dSN)print)selfr rg/private/var/folders/js/6pj4vh5d4zd0k6bxv74qrbhr0000gr/T/pip-target-22xwyzbs/lib/python/gitlab/utils.py__call__sz_StdoutStream.__call__)__name__ __module__ __qualname__rrrrrrrsr)responsestreamedaction chunk_sizer cCs>|dur|jS|durt}|j|dD]}|r(||q(dS)NF)r)contentr iter_content)rrrrr rrrresponse_contents r)destsrcr cCsL|D]>\}}t|tr>|D]\}}||d||f<q"q|||<qdS)Nz%s[%s])items isinstancedict)rrkvZdict_kZdict_vrrr copy_dict/s  r")idr cCs t|ddS)N)safe)r)r#rrr clean_str_id;sr&)urlr cCs&t|}|jdd}|j|dS)N.z%2E)path)rr)replace_replacegeturl)r'parsednew_pathrrr sanitized_url?sr/)datar cCsdd|DS)NcSsi|]\}}|dur||qSr r).0r r!rrr Fz)remove_none_from_dict..)r)r0rrrremove_none_from_dictEsr4)typingrrrr urllib.parserrrequestsobjectrResponseboolintbytesrstrr"r&r/r4rrrrs "