open possibly-utf8 files with forced utf8
This commit is contained in:
parent
fc32a907a5
commit
175c0a285c
5 changed files with 12 additions and 7 deletions
|
@ -28,7 +28,7 @@ class Module(ModuleManager.BaseModule):
|
|||
channel.__log_file.write("%s\n" % line)
|
||||
def _write(self, channel, filename, key, line):
|
||||
if not hasattr(channel, "__log_file"):
|
||||
channel.__log_file = open(filename, "a")
|
||||
channel.__log_file = utils.io.open(filename, "a")
|
||||
channel.__log_rsa = None
|
||||
channel.__log_aes = None
|
||||
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
import collections, configparser, os, typing
|
||||
from src import utils
|
||||
|
||||
class Config(object):
|
||||
def __init__(self, name: str, location: str):
|
||||
|
@ -11,7 +12,7 @@ class Config(object):
|
|||
|
||||
def load(self):
|
||||
if os.path.isfile(self.location):
|
||||
with open(self.location) as config_file:
|
||||
with utils.io.open(self.location, "r") as config_file:
|
||||
parser = self._parser()
|
||||
parser.read_string(config_file.read())
|
||||
self._config.clear()
|
||||
|
@ -20,7 +21,7 @@ class Config(object):
|
|||
self._config[k] = v
|
||||
|
||||
def save(self):
|
||||
with open(self.location, "w") as config_file:
|
||||
with utils.io.open(self.location, "w") as config_file:
|
||||
parser = self._parser()
|
||||
parser[self._name] = self._config.copy()
|
||||
parser.write(config_file)
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
import contextlib, enum, ipaddress, multiprocessing, os.path, queue, signal
|
||||
import threading, typing
|
||||
from . import cli, consts, datetime, decorators, irc, http, parse, security
|
||||
from . import cli, consts, datetime, decorators, io, irc, http, parse, security
|
||||
|
||||
from .decorators import export, hook, kwarg, spec
|
||||
from .settings import (BoolSetting, FunctionSetting, IntRangeSetting,
|
||||
|
|
4
src/utils/io.py
Normal file
4
src/utils/io.py
Normal file
|
@ -0,0 +1,4 @@
|
|||
import io
|
||||
|
||||
def open(path: str, mode: str):
|
||||
return io.open(path, mode=mode, encoding="utf8")
|
|
@ -1,5 +1,5 @@
|
|||
import decimal, io, re, typing
|
||||
from src.utils import datetime, errors
|
||||
import decimal, re, typing
|
||||
from src.utils import datetime, errors, io
|
||||
|
||||
from .spec import *
|
||||
from .time import duration
|
||||
|
@ -10,7 +10,7 @@ COMMENT_TYPES = ["#", "//"]
|
|||
def hashflags(filename: str
|
||||
) -> typing.List[typing.Tuple[str, typing.Optional[str]]]:
|
||||
hashflags = [] # type: typing.List[typing.Tuple[str, typing.Optional[str]]]
|
||||
with io.open(filename, mode="r", encoding="utf8") as f:
|
||||
with io.open(filename, "r") as f:
|
||||
for line in f:
|
||||
line = line.strip("\n")
|
||||
found = False
|
||||
|
|
Loading…
Reference in a new issue