
    8.g                         S SK r S SKrS SKrS SKrS\ R                   S\S\\\4   4S jrS\S\S-  4S jrS\R                  S	\S
\S\S\S-  4
S jr
g)    Nrelease_datem_monthsreturnc                     US-  nUS-  nU R                   U-   U R                  U-   S-  -   nU R                  U-   S-  nUS:X  a  SnUS-  nXE4$ )z
get the (year, month) tuple when the maintenance for the distribution
ends. Needs the data of the release and the number of months that
its is supported as input
   r      )yearmonth)r   r   yearsmonthssupport_end_yearsupport_end_months         +/usr/lib/python3/dist-packages/apt/utils.pyget_maintenance_end_dater      su     NE]F#((50L4F4F4OTV3VV%++f4:AA00    pathc                 |   U (       a$  [         R                  R                  U 5      (       d  g[         R                  " [        R
                  " U 5      5       n[        R                  " U5      n[        U5      nSU;  a
   SSS5        gUS   n[        R                  " U5      sSSS5        $ ! , (       d  f       g= f)z>
return the release date as time_t for the given release file
NDate)	osr   existsfdopenapt_pkgopen_maybe_clear_signed_fileTagFilenextstr_to_time)r   datatagsectiondates        r   "get_release_date_from_release_filer!   /   s     rww~~d++	777=	>$ood#s) 	 
?	>
 v""4( 
?	>	>s   )B-	B--
B;cachepkgnamelabelreleasec                 t   X;  a  gX   nSnUR                   R                   Hb  nUb  UR                  c  M  UR                   H=  u  pxUR                  U:X  d  M  UR                  U:X  d  M)  UR
                  U:X  d  M;  UnM?     Md     U(       d  gU R                  R                  UR                  S   S   5      n	U R                  R                   H  n
U
R                   H  nU	(       d  M  U	R                  UR                  :X  d  M(  U	R                  (       d  M;  [        R                  R                  S5      nS Hp  n[        R                  " U
R                   5      SR#                  U
R$                  U5      -   n[&        R(                  R+                  X-   5      (       d  Mh  X-   s  s  s  $    M     M     g)z+get the release file that provides this pkgNr   zDir::State::lists)	InReleaseReleasezdists_{}_{})_pkgversion_list	file_listoriginr$   archive_list
find_indexlistindex_filesdescribe
is_trustedr   configfind_diruri_to_filenameuriformatdistr   r   r   )r"   r#   r$   r%   pkgveraverver_file_index	indexfile	metaindexmdirnamerelfilenames                  r   get_release_filename_for_pkgrE   ?   sd    
.C
C %%<4>>1 $H 5(NNe+$$/ !/ & &&s}}Q'7':;I[[%%	&&AyY//1::=)BVBVBV!..112EF7G"22!%,,!D ww~~gn55&~-  8 ' & r   )datetimer   r   aptinttupler   strr!   CacherE    r   r   <module>rM      s   &  	  
1##1/21
38_1()S )S4Z ) %99%"%+.%9<%4Z%r   