+
    svKj
                         R t ^ RIt^ RIHt ^ RIHt ^ RIHtH	t	H
t
 ^ RIHtHt ^ RIHt ^ RIHt RtR	tR
 R ltR R ltR R ltR# )z"
Client version related functions
N)inf)Optional)get_apt_cache_timeget_pkg_candidate_versionversion_compare)CANDIDATE_CACHE_PATHUAC_RUN_PATH)ProcessExecutionError)subpz37.2z37.2ubuntu0.1c                $    V ^8  d   QhR\         /#    return)str)formats   "2/usr/lib/python3/dist-packages/uaclient/version.py__annotate__r      s      S     c                    \         P                  R4      '       g   \         # \        P                  P	                  \        P                  P	                  \
        4      4      p \        P                  P                  \        P                  P                  V R4      4      '       d#   . ROp \        V4      w  r#VP                  4       # \        #   \         d	     \        # i ; i)a+  Return the packaged version as a string

Prefer the binary PACKAGED_VESION set by debian/rules to DEB_VERSION.
If unavailable, check for a .git development environments:
  a. If run in our upstream repo `git describe` will gives a leading
     XX.Y so return the --long version to allow daily build recipes
     to count commit offset from upstream's XX.Y signed tag.
  b. If run in a git-ubuntu pkg repo, upstream tags aren't visible,
     believe __VERSION__ is correct - there is and MUST always be a
     test to make sure it matches debian/changelog
z@@PACKAGED_VERSIONz.git)gitdescribez
--abbrev=8z--match=[0-9]*z--long)PACKAGED_VERSION
startswithospathdirname__file__existsjoinr
   stripr	   __VERSION__)topdircmdout_s       r   get_versionr%      s     &&';<<WW__RWW__X67F	ww~~bggll66233K	#YFC99;  % 		s   *C C C c                :    V ^8  d   QhR\         \        ,          /# r   r   r   )r   s   "r   r   r   /   s      (3- r   c                     \        4       ;'       g    \        p \        P                  P	                  \
        4      '       d*   \        P                  ! \
        4      P                  V 8  dh   R p \        R4      pV'       dQ   \        P                  ! \        RR7       \        \
        R4      ;_uu_ 4       pVP                  V4       R R R 4       V#   \        \
        R4      ;_uu_ 4       pVP                  4       P                  4       uuR R R 4       #   + '       g   i     T# ; i  \         d    Te   Tu #  Lki ; i  + '       g   i     R # ; i  \         d     R # i ; i)Nzubuntu-pro-clientT)exist_okwr)r   r   r   r   r   r   statst_mtimer   makedirsr   openwrite	Exceptionreadr   )last_apt_cache_updatecandidate_versionfs      r   get_last_known_candidater6   /   s    /077CGGNN/0077'(114II 		) 9:M N L48.44GG-. 5((	 !&,,668>># -, 54(( 	) ,(( -	)
 -,
   sa   .AD( 5D	D( E +E	
E D%	D( %D( (D>=D>E	E E E$#E$c                :    V ^8  d   QhR\         \        ,          /# r   r'   )r   s   "r   r   r   L   s      x} r   c                  `    \        4       p V '       d   \        V \        4       4      ^ 8  d   V # R# )    N)r6   r   r%   )	candidates    r   check_for_new_versionr;   L   s&    (*I_Y>Br   )__doc__os.pathr   mathr   typingr   uaclient.aptr   r   r   uaclient.defaultsr   r   uaclient.exceptionsr	   uaclient.systemr
   r    r   r%   r6   r;    r   r   <module>rE      sE       
 A 5  " 2:r   