&=d ^ddlmZddlmZddlmZddlmZdZGddeZ d d Z d S) ) HTMLParser)utils)open_url) NoNetworkz2https://buildd.debian.org/build.php?arch=%s&pkg=%sc4eZdZdZdZdZd dZdZdZdS) BuilddParsercXtj|i|_d|_d|_dS)NF)r__init__versionssavedatafound_succeededselfs 7/usr/lib/python3/dist-packages/reportbug/checkbuildd.pyr zBuilddParser.__init__%s/D!!!  $c6|j|j|z|_dSdS)Nr )rdatas r handle_datazBuilddParser.handle_data.s$ = $ MD0DMMM % $rcd|_dS)Nrrs rsave_bgnzBuilddParser.save_bgn3s  rrcx|j}d|_|s)|'d|}|S)N )r joinsplit)rmoders rsave_endzBuilddParser.save_end6s;}  *(88DJJLL))D rc>|dkr|dSdS)Ntd)r)rtagattrss rhandle_starttagzBuilddParser.handle_starttag=s# $;; MMOOOOO ;rc|dkr5|}|r!d|vr d|_dSdSdSdS)Nr! successfulT)rlowerr)rr"rs r handle_endtagzBuilddParser.handle_endtagAsW $;;==??D ,  44'+$$$ ; , ,44rN)r) __name__ __module__ __qualname__r rrrr$r(rrr r $ss%%%111 ,,,,,rr Nc|stj} tt||fz||}n#t$rYdSwxYw|sdSt }|||jS)a  Check if a source package was built successfully on a buildd The check is not about a specific package version. If `arch` is not given and there is evidence that any version of the package once built sucessfully on any architecture, this function returns True. If `arch` is given, the check is restricted to that architecture. Parameters ---------- src_package : str name of a source package timeout : int connection timeout in seconds arch : str, optional the arch to be checked http_proxy : str, optional Http proxy url to use for connection Returns ------- bool True if the connection succeeded and the package was found to have built successfully, otherwise False F)rget_archr BUILDD_URLrr feedr) src_packagetimeoutarch http_proxypageparsers r check_builtr7Hs6  ~ dK%88*gNN uu u ^^F KK  !!s3 AA)NN) html.parserrrrurlutilsrreportbug.exceptionsrr/r r7r,rrr;s0#"""""B !,!,!,!,!,:!,!,!,H)")")")")")"r