(src, dest, template=None, fixer_names=None,
                     options=None, explicit=None)
return copied
Recursively copy a directory, only copying new and changed files,
    running run_2to3 over all newly copied Python modules afterward.

    If you give a template string, it's parsed like a MANIFEST.in.
Recursively copy a directory, only copying new and changed files,
    running run_2to3 over all newly copied Python modules afterward.
Recursively copy a directory only copying new and changed files running run_2to3 over all newly copied Python modules afterward .
def copydir_run_2to3(src, dest, template=None, fixer_names=None,
                     options=None, explicit=None):
    """Recursively copy a directory, only copying new and changed files,
    running run_2to3 over all newly copied Python modules afterward.

    If you give a template string, it's parsed like a MANIFEST.in.
    """
    from distutils.dir_util import mkpath
    from distutils.file_util import copy_file
    from distutils.filelist import FileList
    filelist = FileList()
    curdir = os.getcwd()
    os.chdir(src)
    try:
        filelist.findall()
    finally:
        os.chdir(curdir)
    filelist.files[:] = filelist.allfiles
    if template:
        for line in template.splitlines():
            line = line.strip()
            if not line: continue
            filelist.process_template_line(line)
    copied = []
    for filename in filelist.files:
        outname = os.path.join(dest, filename)
        mkpath(os.path.dirname(outname))
        res = copy_file(os.path.join(src, filename), outname, update=1)
        if res[1]: copied.append(outname)
    run_2to3([fn for fn in copied if fn.lower().endswith('.py')],
             fixer_names=fixer_names, options=options, explicit=explicit)
    return copied
def copydir_run_2to3 ( src , dest , template = None , fixer_names = None , options = None , explicit = None ) : from distutils . dir_util import mkpath from distutils . file_util import copy_file from distutils . filelist import FileList filelist = FileList ( ) curdir = os . getcwd ( ) os . chdir ( src ) try : filelist . findall ( ) finally : os . chdir ( curdir ) filelist . files [ : ] = filelist . allfiles if template : for line in template . splitlines ( ) : line = line . strip ( ) if not line : continue filelist . process_template_line ( line ) copied = [ ] for filename in filelist . files : outname = os . path . join ( dest , filename ) mkpath ( os . path . dirname ( outname ) ) res = copy_file ( os . path . join ( src , filename ) , outname , update = 1 ) if res [ 1 ] : copied . append ( outname ) run_2to3 ( [ fn for fn in copied if fn . lower ( ) . endswith ( '.py' ) ] , fixer_names = fixer_names , options = options , explicit = explicit ) return copied