def transmute(in_file, out_ext, out_folder=None, processes=None, **kw):
    if (not out_folder):
        out_folder = (_os.path.dirname(in_file) or _os.getcwd())
    flist = set(_glob(in_file))
    if in_file.endswith('.tar.bz2'):
        flist = (flist - set(_glob(in_file.replace('.tar.bz2', out_ext))))
    elif in_file.endswith('.conda'):
        flist = (flist - set(_glob(in_file.replace('.conda', out_ext))))
    failed_files = {}
    with _tqdm.tqdm(total=len(flist), leave=False) as t:
        with _Executor(max_workers=processes) as executor:
            convert_f = _functools.partial(_convert, out_ext=out_ext, out_folder=out_folder, **kw)
            for (fn, out_fn, errors) in executor.map(convert_f, flist):
                t.set_description(('Converted: %s' % fn))
                t.update()
                if errors:
                    failed_files[fn] = errors
                    _rm_rf(out_fn)
    return failed_files
def transmute(in_file, out_ext, out_folder=None, processes=None, **kw):
    if (not out_folder):
        out_folder = (_os.path.dirname(in_file) or _os.getcwd())
    flist = set(_glob(in_file))
    if in_file.endswith('.tar.bz2'):
        flist = (flist - set(_glob(in_file.replace('.tar.bz2', out_ext))))
    elif in_file.endswith('.conda'):
        flist = (flist - set(_glob(in_file.replace('.conda', out_ext))))
    failed_files = {}
    with _tqdm.tqdm(total=len(flist), leave=False) as t:
        with _Executor(max_workers=processes) as executor:
            convert_f = _functools.partial(_convert, out_ext=out_ext, out_folder=out_folder, **kw)
            for (fn, out_fn, errors) in executor.map(convert_f, flist):
                t.set_description(('Converted: %s' % fn))
                t.update()
                if errors:
                    failed_files[fn] = errors
                    _rm_rf(out_fn)
    return failed_files