ó
Ñs/Uc           @   sº   d  Z  d Z d Z d Z d Z d d l Z d d l Z d d l Z d d l Z d d l	 Z	 d e e d „ Z e d „ Z d	 „  Z e d
 „ Z e d „ Z i d d 6d d 6e d „ Z d S(   s   $Format:%d$s   $Format:%H$t    s   pg8000-s   pg8000/_version.pyiÿÿÿÿNc   	   	   C   s=  t  |  t ƒ s t ‚ d  } x¾ |  D] } y? t j | g | d | d t j d | r\ t j n d  ƒ} PWq" t k
 r¾ t j	 ƒ  d } | j
 t
 j k rŸ q" n  | rº d | d GH| GHn  d  SXq" W| rØ d |  f GHn  d  S| j ƒ  d j ƒ  } t j d k r| j ƒ  } n  | j d k r9| r5d	 | d GHn  d  S| S(
   Nt   cwdt   stdoutt   stderri   s   unable to run %si    s    unable to find command, tried %st   3s   unable to run %s (error)(   t
   isinstancet   listt   AssertionErrort   Nonet
   subprocesst   Popent   PIPEt   EnvironmentErrort   syst   exc_infot   errnot   ENOENTt   communicatet   stript   versiont   decodet
   returncode(	   t   commandst   argsR   t   verboset   hide_stderrt   pt   ct   eR   (    (    sG   /var/www/c4bv.valis/web2py-ge-R-2.10.3/gluon/contrib/pg8000/_version.pyt   run_command   s6    "		c         C   s\   t  j j | ƒ } | j |  ƒ s@ | r< d | | |  f GHn  d  Si | t |  ƒ d 6d d 6S(   NsA   guessing rootdir is '%s', but '%s' doesn't start with prefix '%s'R   R    t   full(   t   ost   patht   basenamet
   startswithR   t   len(   t   parentdir_prefixt   rootR   t   dirname(    (    sG   /var/www/c4bv.valis/web2py-ge-R-2.10.3/gluon/contrib/pg8000/_version.pyt   versions_from_parentdir;   s    c         C   sÞ   i  } yÀ t  |  d ƒ } x  | j ƒ  D]’ } | j ƒ  j d ƒ rq t j d | ƒ } | rq | j d ƒ | d <qq n  | j ƒ  j d ƒ r% t j d | ƒ } | r· | j d ƒ | d <q· q% q% W| j ƒ  Wn t k
 rÙ n X| S(   Nt   rs   git_refnames =s
   =\s*"(.*)"i   t   refnamess
   git_full =R   (	   t   opent	   readlinesR   R"   t   ret   searcht   groupt   closeR   (   t   versionfile_abst   keywordst   ft   linet   mo(    (    sG   /var/www/c4bv.valis/web2py-ge-R-2.10.3/gluon/contrib/pg8000/_version.pyt   git_get_keywordsH   s     c   	      C   sÂ  |  s
 i  S|  d j  ƒ  } | j d ƒ r; | r7 d GHn  i  St g  | j  d ƒ j d ƒ D] } | j  ƒ  ^ qW ƒ } d } t g  | D]% } | j | ƒ r‚ | t | ƒ ^ q‚ ƒ } | s	t g  | D] } t j d | ƒ rÀ | ^ qÀ ƒ } | r	d d j | | ƒ GHq	n  | r*d	 d j t | ƒ ƒ GHn  xa t | ƒ D]S } | j | ƒ r7| t | ƒ } | rnd
 | GHn  i | d 6|  d j  ƒ  d 6Sq7W| rœd GHn  i |  d j  ƒ  d 6|  d j  ƒ  d 6S(   NR)   s   $Formats"   keywords are unexpanded, not usings   ()t   ,s   tag: s   \ds   discarding '%s', no digitss   likely tags: %ss
   picking %sR   R   s(   no suitable tags, using full revision id(	   R   R"   t   sett   splitR#   R,   R-   t   joint   sorted(	   R1   t
   tag_prefixR   R)   R(   t   refst   TAGt   tagst   ref(    (    sG   /var/www/c4bv.valis/web2py-ge-R-2.10.3/gluon/contrib/pg8000/_version.pyt   git_versions_from_keywords_   s:    781c         C   s/  t  j j t  j j | d ƒ ƒ s7 | r3 d | GHn  i  Sd g } t j d k r^ d d g } n  t | d d d	 d
 g d | ƒ} | d  k r i  S| j |  ƒ sº | r¶ d | |  f GHn  i  S| t	 |  ƒ } t | d d g d | ƒ} | d  k rõ i  S| j
 ƒ  } | j d ƒ r| d 7} n  i | d 6| d 6S(   Ns   .gits   no .git in %st   gitt   win32s   git.cmds   git.exet   describes   --tagss   --dirtys   --alwaysR   s'   tag '%s' doesn't start with prefix '%s's	   rev-parset   HEADs   -dirtyR   R   (   R   R    t   existsR9   R   t   platformR   R   R"   R#   R   t   endswith(   R;   R%   R   t   GITSR   t   tagR   (    (    sG   /var/www/c4bv.valis/web2py-ge-R-2.10.3/gluon/contrib/pg8000/_version.pyt   git_versions_from_vcsŠ   s0    !		t   unknownR   R   c         C   s¾   i t  d 6t d 6} t | t | ƒ } | r0 | SyQ t j j t ƒ } x8 t t	 t
 j t j ƒ ƒ ƒ D] } t j j | ƒ } qd WWn t k
 r• |  SXt t | | ƒ p½ t t | | ƒ p½ |  S(   NR)   R   (   t   git_refnamest   git_fullR@   R;   R   R    t   abspatht   __file__t   rangeR#   t   versionfile_sourceR8   t   sepR&   t	   NameErrorRJ   R'   R$   (   t   defaultR   R1   t   verR%   t   i(    (    sG   /var/www/c4bv.valis/web2py-ge-R-2.10.3/gluon/contrib/pg8000/_version.pyt   get_versions¬   s    %(   RL   RM   R;   R$   RQ   R   R   R,   R	   R   R   t   FalseR   R'   R5   R@   RJ   RW   (    (    (    sG   /var/www/c4bv.valis/web2py-ge-R-2.10.3/gluon/contrib/pg8000/_version.pyt   <module>   s    	+"