diff options
Diffstat (limited to 'src/utils')
| -rw-r--r-- | src/utils/__init__.py | 6 | ||||
| -rw-r--r-- | src/utils/parse.py | 5 |
2 files changed, 9 insertions, 2 deletions
diff --git a/src/utils/__init__.py b/src/utils/__init__.py index eaf3cc03..d36112a5 100644 --- a/src/utils/__init__.py +++ b/src/utils/__init__.py @@ -15,6 +15,9 @@ ISO8601_FORMAT_TZ = "%z" DATETIME_HUMAN = "%Y/%m/%d %H:%M:%S" +def datetime_utcnow() -> datetime.datetime: + return datetime.datetime.utcnow().replace(tzinfo=datetime.timezone.utc) + def iso8601_format(dt: datetime.datetime, milliseconds: bool=False) -> str: dt_format = dt.strftime(ISO8601_FORMAT_DT) tz_format = dt.strftime(ISO8601_FORMAT_TZ) @@ -25,8 +28,7 @@ def iso8601_format(dt: datetime.datetime, milliseconds: bool=False) -> str: return "%s%s%s" % (dt_format, ms_format, tz_format) def iso8601_format_now(milliseconds: bool=False) -> str: - now = datetime.datetime.utcnow().replace(tzinfo=datetime.timezone.utc) - return iso8601_format(now, milliseconds=milliseconds) + return iso8601_format(datetime_utcnow(), milliseconds=milliseconds) def iso8601_parse(s: str, microseconds: bool=False) -> datetime.datetime: fmt = ISO8601_PARSE_MICROSECONDS if microseconds else ISO8601_PARSE return datetime.datetime.strptime(s, fmt) diff --git a/src/utils/parse.py b/src/utils/parse.py index 65d0552b..b53b9595 100644 --- a/src/utils/parse.py +++ b/src/utils/parse.py @@ -1,4 +1,5 @@ import io, typing +from src import utils COMMENT_TYPES = ["#", "//"] def hashflags(filename: str @@ -79,3 +80,7 @@ def try_int(s: str) -> typing.Optional[int]: return int(s) except ValueError: return None + +def line_normalise(s: str) -> str: + lines = list(filter(None, [line.strip() for line in s.split("\n")])) + return " ".join(line.replace(" ", " ") for line in lines) |
