def packageScripts(scriptFilesToPackage, destPackageFilepath, dependencyTree): ''' will package all given files and import dependencies into a single zip file ''' destPackageFilepath = Path(destPackageFilepath).setExtension('zip') if destPackageFilepath.exists(): destPackageFilepath.delete() filesToPackage = map(Path, scriptFilesToPackage) for f in scriptFilesToPackage: filesToPackage += dependencyTree.findDependencies(f, None, False) if not filesToPackage: return None #remove any duplicate files... filesToPackage = removeDupes(filesToPackage) #this is a little hacky - but we don't want to re-distribute wingdbstub so lets check to see if its in the list of files for f in filesToPackage: if f.name() == 'wingdbstub': filesToPackage.remove(f) break #now build the zip file import zipfile with zipfile.ZipFile(str(destPackageFilepath), 'w') as thePackage: for f in filesToPackage: thePackage.write(str(f), str(makeScriptPathRelative(f))) return destPackageFilepath
def packageScripts( scriptFilesToPackage, destPackageFilepath, dependencyTree ): ''' will package all given files and import dependencies into a single zip file ''' destPackageFilepath = Path( destPackageFilepath ).setExtension( 'zip' ) if destPackageFilepath.exists(): destPackageFilepath.delete() filesToPackage = map( Path, scriptFilesToPackage ) for f in scriptFilesToPackage: filesToPackage += dependencyTree.findDependencies( f, None, False ) if not filesToPackage: return None #remove any duplicate files... filesToPackage = removeDupes( filesToPackage ) #this is a little hacky - but we don't want to re-distribute wingdbstub so lets check to see if its in the list of files for f in filesToPackage: if f.name() == 'wingdbstub': filesToPackage.remove( f ) break #now build the zip file import zipfile with zipfile.ZipFile( str( destPackageFilepath ), 'w' ) as thePackage: for f in filesToPackage: thePackage.write( str( f ), str( makeScriptPathRelative( f ) ) ) return destPackageFilepath
def listPresets(locale, tool, ext=DEFAULT_XTN): ''' lists the presets in a given local for a given tool ''' files = [] alreadyAdded = set() for d in getPresetDirs(locale, tool): if d.exists: for f in d.files(): if f.name() in alreadyAdded: continue if f.hasExtension(ext): files.append(f) alreadyAdded.add(f.name()) #remove duplicates files = removeDupes(files) files = [Preset.FromFile(f) for f in files] return files
def listPresets( locale, tool, ext=DEFAULT_XTN ): ''' lists the presets in a given local for a given tool ''' files = [] alreadyAdded = set() for d in getPresetDirs(locale, tool): if d.exists: for f in d.files(): if f.name() in alreadyAdded: continue if f.hasExtension( ext ): files.append( f ) alreadyAdded.add( f.name() ) #remove duplicates files = removeDupes( files ) files = [ Preset.FromFile( f ) for f in files ] return files