~ruther/qmk_firmware

ref: 5469f30dfedb2537bf950bbc8e7fea95a42ac667 qmk_firmware/lib/python/qmk/datetime.py -rw-r--r-- 894 bytes
5469f30d — James Young Migrate `LOCKING_*_ENABLE` to Data-Driven: 0-9 (#23716) 1 year, 7 months ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
"""Functions to work with dates and times in a uniform way.

The results of these functions are cached for 5 seconds to provide uniform time strings across short running processes. Long running processes that need more precise timekeeping should not use these functions.
"""
from time import gmtime, strftime

from qmk.constants import DATE_FORMAT, DATETIME_FORMAT, TIME_FORMAT
from qmk.decorators import lru_cache


@lru_cache(timeout=5)
def current_date():
    """Returns the current time in UTZ as a formatted string.
    """
    return strftime(DATE_FORMAT, gmtime())


@lru_cache(timeout=5)
def current_datetime():
    """Returns the current time in UTZ as a formatted string.
    """
    return strftime(DATETIME_FORMAT, gmtime())


@lru_cache(timeout=5)
def current_time():
    """Returns the current time in UTZ as a formatted string.
    """
    return strftime(TIME_FORMAT, gmtime())