a
    ij	                     @   s<   d Z ddlZddlZddlZddddZddddZdS )zGraph utils.    N)returnc                  C   sL   ddl m}  ddlm} | | j |d tjsHt	
d dtjd< dS )z;Log stderr & `absl.logging` in Colab (filtered by default).r   )logging)	googlelogTdefaultZPYTHONWARNINGSN)Zabslr   
colabtoolsr   set_verbosityINFOZset_global_capturesyswarnoptionswarningssimplefilterosenviron)r   r    r   V/home/ghrups/robot-bench/.venv/lib/python3.9/site-packages/etils/ecolab/patch_utils.pyset_verbose   s    

r   c                     st   ddl m}  ddl m ddl m ddl}| d| d  fdd	}t|d
drpt|d
}||j_dS )a  Fix `graphviz` display on Colab.

  By default, graphviz object raises an error when displayed on Colab:

  ```
  ExecutableNotFound: failed to execute ['dot', '-Tsvg'], make sure the
  Graphviz executables are on your systems' PATH
  ```

  Calling this function fix the behavior.
  r   )proto)publish)stubbyNzgraphviz_server.RenderRequestzgraphviz_server.Graphc                    s4     }| j |_dd|d}|jj d S )Nzblade:graphviz-serverzRenderServer.Render)graph)sourcedotCallhtmlZrendered_graphZrendered_bytes)selfr   responseZgraph_proto_clsr   Zrequest_proto_clsr   r   r   _ipython_display_B   s    z)patch_graphviz.<locals>._ipython_display_files)	r   r   r   r   graphvizZGetProtoClassgetattrFiler   )r   r   r   r   r   r   r   patch_graphviz)   s    



r"   )__doc__r   r	   r   r   r"   r   r   r   r   <module>   s
   