Python sys.getfilesystemencoding() Examples
The following are 30
code examples of sys.getfilesystemencoding().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
sys
, or try the search function
.
Example #1
Source File: req_install.py From python-netsurv with MIT License | 6 votes |
def setup_py(self): assert self.source_dir, "No source dir for %s" % self try: import setuptools # noqa except ImportError: if get_installed_version('setuptools') is None: add_msg = "Please install setuptools." else: add_msg = traceback.format_exc() # Setuptools is not available raise InstallationError( "Could not import setuptools which is required to " "install from a source distribution.\n%s" % add_msg ) setup_py = os.path.join(self.setup_py_dir, 'setup.py') # Python2 __file__ should not be unicode if six.PY2 and isinstance(setup_py, six.text_type): setup_py = setup_py.encode(sys.getfilesystemencoding()) return setup_py
Example #2
Source File: posixemulation.py From cutout with MIT License | 6 votes |
def _rename(src, dst): ''' if not isinstance(src, unicode): src = unicode(src, sys.getfilesystemencoding()) if not isinstance(dst, unicode): dst = unicode(dst, sys.getfilesystemencoding()) ''' if _rename_atomic(src, dst): return True retry = 0 rv = False while not rv and retry < 100: rv = _MoveFileEx(src, dst, _MOVEFILE_REPLACE_EXISTING | _MOVEFILE_WRITE_THROUGH) if not rv: time.sleep(0.001) retry += 1 return rv # new in Vista and Windows Server 2008
Example #3
Source File: luci_context.py From recipes-py with Apache License 2.0 | 6 votes |
def _initial_load(): global _CUR_CONTEXT to_assign = {} ctx_path = os.environ.get(ENV_KEY) if ctx_path: if six.PY2: ctx_path = ctx_path.decode(sys.getfilesystemencoding()) _LOGGER.debug('Loading LUCI_CONTEXT: %r', ctx_path) try: with open(ctx_path, 'r') as f: loaded = _to_utf8(json.load(f)) if _check_ok(loaded): to_assign = loaded except OSError as ex: _LOGGER.error('LUCI_CONTEXT failed to open: %s', ex) except IOError as ex: _LOGGER.error('LUCI_CONTEXT failed to read: %s', ex) except ValueError as ex: _LOGGER.error('LUCI_CONTEXT failed to decode: %s', ex) _CUR_CONTEXT = to_assign
Example #4
Source File: app_history.py From sk1-wx with GNU General Public License v3.0 | 6 votes |
def read_history(self): if fsutils.isfile(self.history_file): fp = fsutils.get_fileptr(self.history_file) lines = [line.strip(' \n\r') for line in fp.readlines()] for line in lines: items = line.split('\t') if len(items) == 3: status = int(items[0]) path = items[1] try: path = path.decode('utf-8') except Exception: path = path.decode(sys.getfilesystemencoding()) finally: path = path.encode('utf-8') timestamp = int(items[2]) self.history.append([status, path, timestamp]) fp.close()
Example #5
Source File: common.py From vulscan with MIT License | 6 votes |
def setPaths(): """ Sets absolute paths for project directories and files """ paths.POCSUITE_DATA_PATH = os.path.join(paths.POCSUITE_ROOT_PATH, "data") paths.USER_AGENTS = os.path.join(paths.POCSUITE_DATA_PATH, "user-agents.txt") paths.WEAK_PASS = os.path.join(paths.POCSUITE_DATA_PATH, "password-top100.txt") paths.LARGE_WEAK_PASS = os.path.join(paths.POCSUITE_DATA_PATH, "password-top1000.txt") _ = os.path.join(os.path.expanduser("~"), ".pocsuite") paths.POCSUITE_OUTPUT_PATH = getUnicode(paths.get("POCSUITE_OUTPUT_PATH", os.path.join(_, "output")), encoding=sys.getfilesystemencoding()) paths.POCSUITE_MODULES_PATH = os.path.join(_, "modules") paths.POCSUITE_TMP_PATH = os.path.join(paths.POCSUITE_MODULES_PATH, "tmp") paths.POCSUITE_HOME_PATH = os.path.expanduser("~") paths.POCSUITE_RC_PATH = paths.POCSUITE_HOME_PATH + "/.pocsuiterc"
Example #6
Source File: filesystem.py From recruit with Apache License 2.0 | 6 votes |
def get_filesystem_encoding(): """Returns the filesystem encoding that should be used. Note that this is different from the Python understanding of the filesystem encoding which might be deeply flawed. Do not use this value against Python's unicode APIs because it might be different. See :ref:`filesystem-encoding` for the exact behavior. The concept of a filesystem encoding in generally is not something you should rely on. As such if you ever need to use this function except for writing wrapper code reconsider. """ global _warned_about_filesystem_encoding rv = sys.getfilesystemencoding() if has_likely_buggy_unicode_filesystem and not rv or _is_ascii_encoding(rv): if not _warned_about_filesystem_encoding: warnings.warn( "Detected a misconfigured UNIX filesystem: Will use" " UTF-8 as filesystem encoding instead of {0!r}".format(rv), BrokenFilesystemWarning, ) _warned_about_filesystem_encoding = True return "utf-8" return rv
Example #7
Source File: wheel.py From recruit with Apache License 2.0 | 6 votes |
def fix_script(path): """Replace #!python with #!/path/to/python Return True if file was changed.""" # XXX RECORD hashes will need to be updated if os.path.isfile(path): with open(path, 'rb') as script: firstline = script.readline() if not firstline.startswith(b'#!python'): return False exename = sys.executable.encode(sys.getfilesystemencoding()) firstline = b'#!' + exename + os.linesep.encode("ascii") rest = script.read() with open(path, 'wb') as script: script.write(firstline) script.write(rest) return True
Example #8
Source File: req_install.py From recruit with Apache License 2.0 | 6 votes |
def setup_py(self): assert self.source_dir, "No source dir for %s" % self try: import setuptools # noqa except ImportError: if get_installed_version('setuptools') is None: add_msg = "Please install setuptools." else: add_msg = traceback.format_exc() # Setuptools is not available raise InstallationError( "Could not import setuptools which is required to " "install from a source distribution.\n%s" % add_msg ) setup_py = os.path.join(self.setup_py_dir, 'setup.py') # Python2 __file__ should not be unicode if six.PY2 and isinstance(setup_py, six.text_type): setup_py = setup_py.encode(sys.getfilesystemencoding()) return setup_py
Example #9
Source File: dokuwiki.py From yamdwe with BSD 3-Clause "New" or "Revised" License | 6 votes |
def make_dokuwiki_pagename(mediawiki_name): """ Convert a canonical mediawiki pagename to a dokuwiki pagename Any namespacing that is in the form of a / is replaced with a : """ result = mediawiki_name.replace(" ","_") # We have pages that have ':' in them - replace with underscores result = result.replace(':', '_') result = names.clean_id(camel_to_underscore(result)).replace("/",":") # Some of our mediawiki page names begin with a '/', which results in os.path.join assuming the page is an absolute path. if result[0] == ':': result = result.lstrip(':') # Fix any pages that began with a space, because that breaks dokuwiki result = result.replace(":_", ":") result = codecs.encode(result, sys.getfilesystemencoding(), "replace") return result
Example #10
Source File: wheel.py From jbox with MIT License | 6 votes |
def fix_script(path): """Replace #!python with #!/path/to/python Return True if file was changed.""" # XXX RECORD hashes will need to be updated if os.path.isfile(path): with open(path, 'rb') as script: firstline = script.readline() if not firstline.startswith(b'#!python'): return False exename = sys.executable.encode(sys.getfilesystemencoding()) firstline = b'#!' + exename + os.linesep.encode("ascii") rest = script.read() with open(path, 'wb') as script: script.write(firstline) script.write(rest) return True
Example #11
Source File: misc.py From jbox with MIT License | 6 votes |
def fsencode(filename): if isinstance(filename, bytes): return filename elif isinstance(filename, str): return filename.encode(sys.getfilesystemencoding()) else: raise TypeError("expect bytes or str, not %s" % type(filename).__name__)
Example #12
Source File: req_install.py From jbox with MIT License | 6 votes |
def setup_py(self): assert self.source_dir, "No source dir for %s" % self try: import setuptools # noqa except ImportError: if get_installed_version('setuptools') is None: add_msg = "Please install setuptools." else: add_msg = traceback.format_exc() # Setuptools is not available raise InstallationError( "Could not import setuptools which is required to " "install from a source distribution.\n%s" % add_msg ) setup_py = os.path.join(self.setup_py_dir, 'setup.py') # Python2 __file__ should not be unicode if six.PY2 and isinstance(setup_py, six.text_type): setup_py = setup_py.encode(sys.getfilesystemencoding()) return setup_py
Example #13
Source File: filesystem.py From jbox with MIT License | 6 votes |
def get_filesystem_encoding(): """ Returns the filesystem encoding that should be used. Note that this is different from the Python understanding of the filesystem encoding which might be deeply flawed. Do not use this value against Python's unicode APIs because it might be different. See :ref:`filesystem-encoding` for the exact behavior. The concept of a filesystem encoding in generally is not something you should rely on. As such if you ever need to use this function except for writing wrapper code reconsider. """ global _warned_about_filesystem_encoding rv = sys.getfilesystemencoding() if has_likely_buggy_unicode_filesystem and not rv \ or _is_ascii_encoding(rv): if not _warned_about_filesystem_encoding: warnings.warn( 'Detected a misconfigured UNIX filesystem: Will use UTF-8 as ' 'filesystem encoding instead of {0!r}'.format(rv), BrokenFilesystemWarning) _warned_about_filesystem_encoding = True return 'utf-8' return rv
Example #14
Source File: egg_info.py From jbox with MIT License | 6 votes |
def _safe_path(self, path): enc_warn = "'%s' not %s encodable -- skipping" # To avoid accidental trans-codings errors, first to unicode u_path = unicode_utils.filesys_decode(path) if u_path is None: log.warn("'%s' in unexpected encoding -- skipping" % path) return False # Must ensure utf-8 encodability utf8_path = unicode_utils.try_encode(u_path, "utf-8") if utf8_path is None: log.warn(enc_warn, path, 'utf-8') return False try: # accept is either way checks out if os.path.exists(u_path) or os.path.exists(utf8_path): return True # this will catch any encode errors decoding u_path except UnicodeEncodeError: log.warn(enc_warn, path, sys.getfilesystemencoding())
Example #15
Source File: plug.py From EDMarketConnector with GNU General Public License v2.0 | 6 votes |
def __init__(self, name, loadfile): """ Load a single plugin :param name: module name :param loadfile: the main .py file :raises Exception: Typically ImportError or OSError """ self.name = name # Display name. self.folder = name # basename of plugin folder. None for internal plugins. self.module = None # None for disabled plugins. if loadfile: sys.stdout.write(('loading plugin %s from "%s"\n' % (name.replace('.', '_'), loadfile)).encode('utf-8')) with open(loadfile, 'rb') as plugfile: module = imp.load_module('plugin_%s' % name.encode('ascii', 'replace').replace('.', '_'), plugfile, loadfile.encode(sys.getfilesystemencoding()), ('.py', 'r', imp.PY_SOURCE)) if module.plugin_start.func_code.co_argcount == 0: newname = module.plugin_start() else: newname = module.plugin_start(os.path.dirname(loadfile)) self.name = newname and unicode(newname) or name self.module = module else: sys.stdout.write('plugin %s disabled\n' % name)
Example #16
Source File: helper.py From calibre-web with GNU General Public License v3.0 | 6 votes |
def check_unrar(unrarLocation): if not unrarLocation: return if not os.path.exists(unrarLocation): return _('Unrar binary file not found') try: if sys.version_info < (3, 0): unrarLocation = unrarLocation.encode(sys.getfilesystemencoding()) unrarLocation = [unrarLocation] for lines in process_wait(unrarLocation): value = re.search('UNRAR (.*) freeware', lines, re.IGNORECASE) if value: version = value.group(1) log.debug("unrar version %s", version) break except (OSError, UnicodeDecodeError) as err: log.exception(err) return _('Error excecuting UnRar')
Example #17
Source File: wheel.py From python-netsurv with MIT License | 6 votes |
def fix_script(path): """Replace #!python with #!/path/to/python Return True if file was changed.""" # XXX RECORD hashes will need to be updated if os.path.isfile(path): with open(path, 'rb') as script: firstline = script.readline() if not firstline.startswith(b'#!python'): return False exename = sys.executable.encode(sys.getfilesystemencoding()) firstline = b'#!' + exename + os.linesep.encode("ascii") rest = script.read() with open(path, 'wb') as script: script.write(firstline) script.write(rest) return True
Example #18
Source File: subproc_wrapper.py From calibre-web with GNU General Public License v3.0 | 6 votes |
def process_open(command, quotes=(), env=None, sout=subprocess.PIPE, serr=subprocess.PIPE, newlines=True): # Linux py2.7 encode as list without quotes no empty element for parameters # linux py3.x no encode and as list without quotes no empty element for parameters # windows py2.7 encode as string with quotes empty element for parameters is okay # windows py 3.x no encode and as string with quotes empty element for parameters is okay # separate handling for windows and linux if os.name == 'nt': for key, element in enumerate(command): if key in quotes: command[key] = '"' + element + '"' exc_command = " ".join(command) if sys.version_info < (3, 0): exc_command = exc_command.encode(sys.getfilesystemencoding()) else: if sys.version_info < (3, 0): exc_command = [x.encode(sys.getfilesystemencoding()) for x in command] else: exc_command = [x for x in command] return subprocess.Popen(exc_command, shell=False, stdout=sout, stderr=serr, universal_newlines=newlines, env=env)
Example #19
Source File: update.py From EDMarketConnector with GNU General Public License v2.0 | 5 votes |
def __init__(self, master): try: objc.loadBundle('Sparkle', globals(), join(dirname(sys.executable.decode(sys.getfilesystemencoding())), os.pardir, 'Frameworks', 'Sparkle.framework')) self.updater = SUUpdater.sharedUpdater() except: # can't load framework - not frozen or not included in app bundle? self.updater = None
Example #20
Source File: utils.py From dynamic-training-with-apache-mxnet-on-aws with Apache License 2.0 | 5 votes |
def _str_to_unicode(x): """Handle text decoding. Internal use only""" if not isinstance(x, text_type): return x.decode(sys.getfilesystemencoding()) return x
Example #21
Source File: easy_install.py From jbox with MIT License | 5 votes |
def extract_wininst_cfg(dist_filename): """Extract configuration data from a bdist_wininst .exe Returns a configparser.RawConfigParser, or None """ f = open(dist_filename, 'rb') try: endrec = zipfile._EndRecData(f) if endrec is None: return None prepended = (endrec[9] - endrec[5]) - endrec[6] if prepended < 12: # no wininst data here return None f.seek(prepended - 12) tag, cfglen, bmlen = struct.unpack("<iii", f.read(12)) if tag not in (0x1234567A, 0x1234567B): return None # not a valid tag f.seek(prepended - (12 + cfglen)) cfg = configparser.RawConfigParser( {'version': '', 'target_version': ''}) try: part = f.read(cfglen) # Read up to the first null byte. config = part.split(b'\0', 1)[0] # Now the config is in bytes, but for RawConfigParser, it should # be text, so decode it. config = config.decode(sys.getfilesystemencoding()) cfg.readfp(six.StringIO(config)) except configparser.Error: return None if not cfg.has_section('metadata') or not cfg.has_section('Setup'): return None return cfg finally: f.close()
Example #22
Source File: _util.py From multibootusb with GNU General Public License v2.0 | 5 votes |
def ensure_byte_string(value): """ Return the given ``value`` as bytestring. If the given ``value`` is not a byte string, but a real unicode string, it is encoded with the filesystem encoding (as in :func:`sys.getfilesystemencoding()`). """ if not isinstance(value, bytes): value = value.encode(sys.getfilesystemencoding()) return value
Example #23
Source File: _compat.py From jbox with MIT License | 5 votes |
def get_filesystem_encoding(): return sys.getfilesystemencoding() or sys.getdefaultencoding()
Example #24
Source File: config.py From EDMarketConnector with GNU General Public License v2.0 | 5 votes |
def __init__(self): self.app_dir = join(NSSearchPathForDirectoriesInDomains(NSApplicationSupportDirectory, NSUserDomainMask, True)[0], appname) if not isdir(self.app_dir): mkdir(self.app_dir) self.plugin_dir = join(self.app_dir, 'plugins') if not isdir(self.plugin_dir): mkdir(self.plugin_dir) self.internal_plugin_dir = getattr(sys, 'frozen', False) and normpath(join(dirname(sys.executable.decode(sys.getfilesystemencoding())), pardir, 'Library', 'plugins')) or join(dirname(__file__), 'plugins') self.default_journal_dir = join(NSSearchPathForDirectoriesInDomains(NSApplicationSupportDirectory, NSUserDomainMask, True)[0], 'Frontier Developments', 'Elite Dangerous') self.home = expanduser('~') self.respath = getattr(sys, 'frozen', False) and normpath(join(dirname(sys.executable.decode(sys.getfilesystemencoding())), pardir, 'Resources')) or dirname(__file__) if not getattr(sys, 'frozen', False): # Don't use Python's settings if interactive self.identifier = 'uk.org.marginal.%s' % appname.lower() NSBundle.mainBundle().infoDictionary()['CFBundleIdentifier'] = self.identifier else: self.identifier = NSBundle.mainBundle().bundleIdentifier() self.defaults = NSUserDefaults.standardUserDefaults() self.settings = dict(self.defaults.persistentDomainForName_(self.identifier) or {}) # make writeable # Check out_dir exists if not self.get('outdir') or not isdir(self.get('outdir')): self.set('outdir', NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, True)[0])
Example #25
Source File: utils.py From mishkal with GNU General Public License v3.0 | 5 votes |
def fromFs(filenameblob): """ recives a blob encoded in filesystem encoding and convert it into a unicode object """ if type(filenameblob) != unicode: return filenameblob.decode(sys.getfilesystemencoding()) return filenameblob
Example #26
Source File: utils.py From mishkal with GNU General Public License v3.0 | 5 votes |
def toFs(filename): """ recives a unicode object and encode it into filesystem encoding """ if type(filename)==unicode: return filename.encode(sys.getfilesystemencoding()) return filename
Example #27
Source File: kindle_logging.py From librariansync with GNU General Public License v3.0 | 5 votes |
def utf8_str(p, enc=sys.getfilesystemencoding()): if isinstance(p, unicode): return p.encode('utf-8') if enc != 'utf-8': return p.decode(enc).encode('utf-8', 'replace') return p
Example #28
Source File: __init__.py From csvdiff with BSD 3-Clause "New" or "Revised" License | 5 votes |
def convert(self, value, param, ctx): if isinstance(value, bytes): try: enc = getattr(sys.stdin, 'encoding', None) if enc is not None: value = value.decode(enc) except UnicodeError: try: value = value.decode(sys.getfilesystemencoding()) except UnicodeError: value = value.decode('utf-8', 'replace') return value.split(',') return value.split(',')
Example #29
Source File: os.py From jawfish with MIT License | 5 votes |
def _createenviron(): if name in ('os2', 'nt'): # Where Env Var Names Must Be UPPERCASE def check_str(value): if not isinstance(value, str): raise TypeError("str expected, not %s" % type(value).__name__) return value encode = check_str decode = str def encodekey(key): return encode(key).upper() data = {} for key, value in environ.items(): data[encodekey(key)] = value else: # Where Env Var Names Can Be Mixed Case encoding = sys.getfilesystemencoding() def encode(value): if not isinstance(value, str): raise TypeError("str expected, not %s" % type(value).__name__) return value.encode(encoding, 'surrogateescape') def decode(value): return value.decode(encoding, 'surrogateescape') encodekey = encode data = environ return _Environ(data, encodekey, decode, encode, decode, _putenv, _unsetenv) # unicode environ
Example #30
Source File: utils.py From pcocc with GNU General Public License v3.0 | 5 votes |
def make_str(value): """Converts a value into a valid string.""" if isinstance(value, bytes): try: return value.decode(sys.getfilesystemencoding()) except UnicodeError: return value.decode('utf-8', 'replace') return text_type(value)