File tree Expand file tree Collapse file tree 1 file changed +11
-0
lines changed
Expand file tree Collapse file tree 1 file changed +11
-0
lines changed Original file line number Diff line number Diff line change 1111import types
1212import urllib .parse
1313from configparser import ConfigParser
14+ from datetime import datetime
1415from typing import (
1516 IO ,
1617 Any ,
@@ -351,6 +352,12 @@ def validate_boolean_field(field: Optional[str]) -> Union[bool, None]:
351352 return None
352353
353354
355+ def datetime_to_global_time (dt : datetime ) -> str :
356+ if dt .tzinfo is None :
357+ raise TimeZoneMissingError (f"Datetime { dt } does not have a time zone." )
358+ return f"<time:{ dt .isoformat (timespec = 'seconds' )} >"
359+
360+
354361class ZulipError (Exception ):
355362 pass
356363
@@ -367,6 +374,10 @@ class UnrecoverableNetworkError(ZulipError):
367374 pass
368375
369376
377+ class TimeZoneMissingError (ZulipError ):
378+ pass
379+
380+
370381class Client :
371382 def __init__ (
372383 self ,
You can’t perform that action at this time.
0 commit comments