Changeset 503 in tailor for vcpx/cvsps.py


Ignore:
Timestamp:
08/05/05 12:23:23 (8 years ago)
Author:
lele@…
Hash name:
20050805102323-97f81-4de4aa10a473c22b5148200047138b58575375b3
Message:

M-x whitespace-cleanup

File:
1 edited

Legend:

Unmodified
Added
Removed
  • vcpx/cvsps.py

    r467 r503  
    44# :Autore:   Lele Gaifax <lele@nautilus.homeip.net> 
    55# :Licenza:  GNU General Public License 
    6 #  
     6# 
    77 
    88""" 
     
    2020 
    2121CVS_CMD = 'cvs' 
    22 CVSPS_CMD = 'cvsps'    
     22CVSPS_CMD = 'cvsps' 
    2323 
    2424def changesets_from_cvsps(log, sincerev=None): 
     
    3030    from datetime import datetime 
    3131    from cvs import compare_cvs_revs 
    32      
     32 
    3333    # cvsps output sample: 
    3434    ## --------------------- 
     
    140140 
    141141    ## UpdatableSourceWorkingDir 
    142      
     142 
    143143    def _getUpstreamChangesets(self, root, repository, module, sincerev=None, 
    144144                              branch=None): 
     
    155155        if sincerev: 
    156156            sincerev = int(sincerev) 
    157              
     157 
    158158        changesets = [] 
    159159        cmd = [CVSPS_CMD, "--cvs-direct", "-u", "-b", branch, 
     
    161161        cvsps = ExternalCommand(command=cmd) 
    162162        log = cvsps.execute(module, stdout=PIPE, TZ='UTC') 
    163          
     163 
    164164        for cs in changesets_from_cvsps(log, sincerev): 
    165165            changesets.append(cs) 
     
    170170        from os.path import join, exists 
    171171        from os import listdir 
    172          
     172 
    173173        if not entrydir: 
    174174            return 
     
    178178            deldir = changeset.addEntry(entrydir, None) 
    179179            deldir.action_kind = deldir.DELETED 
    180          
     180 
    181181    def _applyChangeset(self, root, changeset, logger=None): 
    182182        from os.path import join, exists, dirname, split 
     
    185185        from cvs import CvsEntries 
    186186        from time import sleep 
    187          
     187 
    188188        entries = CvsEntries(root) 
    189189 
     
    219219            # remove it with everything it contains (that should be 
    220220            # just a single "CVS" subdir, btw) 
    221              
     221 
    222222            if e.action_kind == e.DELETED and e.new_revision is None: 
    223223                assert listdir(join(root, e.name)) == ['CVS'], '%s should be empty' % e.name 
     
    229229                while True: 
    230230                    cvsup.execute(e.name, stdout=PIPE) 
    231              
     231 
    232232                    if cvsup.exit_status: 
    233233                        retry += 1 
     
    243243                    else: 
    244244                        break 
    245                      
     245 
    246246                if cvsup.exit_status: 
    247247                    raise ChangesetApplicationFailure( 
     
    289289        if timestamp == 'INITIAL': 
    290290            timestamp = csets[-1].date.isoformat(sep=' ') 
    291              
     291 
    292292        if not exists(join(wdir, 'CVS')): 
    293293            cmd = [CVS_CMD, "-q", "-d", repository, "checkout", 
     
    297297            if timestamp: 
    298298                cmd.extend(["-D", "%s UTC" % timestamp]) 
    299              
     299 
    300300            checkout = ExternalCommand(cwd=basedir, command=cmd) 
    301301            checkout.execute(module) 
    302              
     302 
    303303            if checkout.exit_status: 
    304304                raise TargetInitializationFailure( 
     
    307307        else: 
    308308            if logger: logger.info("Using existing %s", wdir) 
    309              
     309 
    310310        self.__forceTagOnEachEntry(wdir) 
    311          
     311 
    312312        entries = CvsEntries(wdir) 
    313          
     313 
    314314        # update cvsps cache, then loop over the changesets and find the 
    315315        # last applied, to find out the actual cvsps revision 
     
    324324                    if not found: 
    325325                        break 
    326                  
     326 
    327327            if found: 
    328328                last = cset 
     
    336336            if logger: logger.info("working copy up to cvsps revision %s", 
    337337                                   last.revision) 
    338              
     338 
    339339        return last 
    340      
     340 
    341341    def _willApplyChangeset(self, root, changeset, applyable=None): 
    342342        """ 
    343343        This gets called just before applying each changeset. 
    344          
     344 
    345345        Since CVS has no "createdir" event, we have to take care 
    346346        of new directories, creating empty-but-reasonable CVS dirs. 
     
    352352                if m.action_kind == m.ADDED: 
    353353                    self.__createParentCVSDirectories(changeset, root, m.name) 
    354              
     354 
    355355            return True 
    356356        else: 
    357357            return False 
    358          
     358 
    359359    def __createParentCVSDirectories(self, changeset, root, entry): 
    360360        """ 
     
    365365        'cvs update' will work. 
    366366        """ 
    367          
     367 
    368368        from os.path import split, join, exists 
    369369        from os import mkdir 
     
    373373            basedir = join(root, path) 
    374374        else: 
    375             basedir = root             
     375            basedir = root 
    376376        cvsarea = join(basedir, 'CVS') 
    377          
     377 
    378378        if path and not exists(cvsarea): 
    379379            parentcvs = self.__createParentCVSDirectories(changeset, 
     
    381381 
    382382            assert exists(parentcvs), "Uhm, strange things happen" 
    383              
     383 
    384384            if not exists(basedir): 
    385385                mkdir(basedir) 
     
    413413            entry = changeset.addEntry(path, None) 
    414414            entry.action_kind = entry.ADDED 
    415              
     415 
    416416        return cvsarea 
    417      
     417 
    418418    ## SyncronizableTargetWorkingDir 
    419419 
     
    434434        after a manual ``cvs update`` in the working directory. 
    435435        """ 
    436          
     436 
    437437        from os import walk, rename 
    438438        from os.path import join 
     
    445445                f.close() 
    446446                rename(efn, efn+'.old') 
    447                  
     447 
    448448                newentries = [] 
    449449                for e in entries: 
     
    459459                f.writelines(newentries) 
    460460                f.close() 
    461      
     461 
    462462    def _getCommitEntries(self, changeset): 
    463463        """ 
     
    472472 
    473473        return entries 
    474          
     474 
    475475    def _commit(self,root, date, author, remark, changelog=None, entries=None): 
    476476        """ 
     
    480480        from shwrap import ReopenableNamedTemporaryFile 
    481481        from sys import getdefaultencoding 
    482          
     482 
    483483        encoding = ExternalCommand.FORCE_ENCODING or getdefaultencoding() 
    484          
     484 
    485485        logmessage = [] 
    486486        if remark: 
     
    496496        log = open(rontf.name, "w") 
    497497        log.write('\n'.join(log)) 
    498         log.close()             
     498        log.close() 
    499499 
    500500        cmd = [CVS_CMD, "-q", "ci", "-F", rontf.name] 
    501501        if not entries: 
    502502            entries = ['.'] 
    503            
     503 
    504504        ExternalCommand(cwd=root, command=cmd).execute(entries) 
    505         
     505 
    506506    def _removePathnames(self, root, names): 
    507507        """ 
Note: See TracChangeset for help on using the changeset viewer.