Example #1
0
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
Example #2
0
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
Example #3
0
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
Example #4
0
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