Ñò
6»‚Uc        	   @   sv   d  d k  l Z d  d k l Z d  d k l Z d  d k Z d  d k l Z d  d k	 l
 Z
 d e f d „  ƒ  YZ d S(	   iÿÿÿÿ(   t   convert_path(   t   log(   t   DistutilsOptionErrorN(   t   Command(   t
   basestringt   rotatec           B   sD   e  Z d  Z d Z d d d g Z g  Z d „  Z d „  Z d „  Z RS(   s   Delete older distributionss2   delete older distributions, keeping N newest filess   match=t   ms   patterns to match (required)s	   dist-dir=t   ds%   directory where the distributions ares   keep=t   ks(   number of matching distributions to keepc         C   s   d  |  _ d  |  _ d  |  _ d  S(   N(   t   Nonet   matcht   dist_dirt   keep(   t   self(    (    s=   /usr/lib/python2.6/site-packages/setuptools/command/rotate.pyt   initialize_options   s    		c      	   C   sß   |  i  d  j o t d ƒ ‚ n |  i d  j o t d ƒ ‚ n y t |  i ƒ |  _ Wn t j
 o t d ƒ ‚ n Xt |  i  t ƒ o@ g  } |  i  i d ƒ D] } | t	 | i
 ƒ  ƒ q¢ ~ |  _  n |  i d d ƒ d  S(   NsQ   Must specify one or more (comma-separated) match patterns (e.g. '.zip' or '.egg')s$   Must specify number of files to keeps   --keep must be an integert   ,t   bdistR   (   s   dist_dirs   dist_dir(   R
   R	   R   R   t   intt
   ValueErrort
   isinstanceR   t   splitR    t   stript   set_undefined_options(   R   t   _[1]t   p(    (    s=   /usr/lib/python2.6/site-packages/setuptools/command/rotate.pyt   finalize_options   s    @c      	   C   s  |  i  d ƒ d d k l } xõ |  i D]ê } |  i i ƒ  d | } | t i i |  i | ƒ ƒ } g  } | D] } | t i i	 | ƒ | f qm ~ } | i
 ƒ  | i ƒ  t i d t | ƒ | ƒ | |  i } x? | D]7 \ } } t i d | ƒ |  i p t i | ƒ qÖ qÖ Wq' Wd  S(   Nt   egg_infoiÿÿÿÿ(   t   globt   *s   %d file(s) matching %ss   Deleting %s(   t   run_commandR   R
   t   distributiont   get_namet   ost   patht   joinR   t   getmtimet   sortt   reverseR   t   infot   lenR   t   dry_runt   unlink(   R   R   t   patternt   filesR   t   ft   t(    (    s=   /usr/lib/python2.6/site-packages/setuptools/command/rotate.pyt   run-   s     
 3

 
(   s   match=R   s   patterns to match (required)(   s	   dist-dir=R   s%   directory where the distributions are(   s   keep=R   s(   number of matching distributions to keep(	   t   __name__t
   __module__t   __doc__t   descriptiont   user_optionst   boolean_optionsR   R   R.   (    (    (    s=   /usr/lib/python2.6/site-packages/setuptools/command/rotate.pyR   
   s   			(   t   distutils.utilR    t	   distutilsR   t   distutils.errorsR   R    t
   setuptoolsR   t   setuptools.compatR   R   (    (    (    s=   /usr/lib/python2.6/site-packages/setuptools/command/rotate.pyt   <module>   s   