%PDF- %PDF-
| Direktori : /snap/core/current/usr/share/python3/debpython/__pycache__/ |
| Current File : //snap/core/current/usr/share/python3/debpython/__pycache__/__init__.cpython-35.pyc |
Nw�VU �
@ s� y d d l m Z Wn e k
r. d Z Yn Xd d l Z d d l Z d d l m Z m Z d d l m Z e j e
� Z e j d � Z
Gd d � d � Z d d d d d � Z d S)
� )�datetimeN)�PIPE�Popen)�dumpsz4.*?/usr/lib/python(\d(?:.\d+)?)/(site|dist)-packagesc @ s( e Z d Z d d � Z d d � Z d S)�memoizec C s | | _ i | _ d S)N)�func�cache)�selfr � r
�(/usr/share/python3/debpython/__init__.py�__init__ s zmemoize.__init__c O sE t | | f � } | | j k r: | j | | � | j | <| j | S)N)r r r )r �args�kwargs�keyr
r
r �__call__ s zmemoize.__call__N)�__name__�
__module__�__qualname__r r r
r
r
r r s r c C sc d d d | d | i } d } | d k r- n� | d k rR | j d t d t � n� | r� t | t � r| d } t | d � } t r� | j d
j t j � j � � � | j d j | � � | j
� | j d | d | � t j d | � t
| | � �c } | j � \ } } | o| j � t d
| j d | o?t | d � d | oTt | d � � SWd QRXd S)a< Execute external shell commad.
:param cdw: currennt working directory
:param env: environment
:param log_output:
* opened log file or path to this file, or
* None if output should be included in the returned dict, or
* False if output should be redirectored to stdout/stderr
�shellT�cwd�envFN�stdout�stderr�az
# command executed on {}z
$ {}
zinvoking: %s�
returncodezutf-8)�updater �
isinstance�str�openr �write�formatZnowZ isoformat�flush�log�debugr �communicate�close�dictr ) Zcommandr r Z
log_outputr
r% �processr r r
r
r �execute s,
"
r( )r �ImportError�logging�re�
subprocessr r �pickler � getLoggerr r"