diff options
author | Zach White <skullydazed@gmail.com> | 2020-10-25 14:48:44 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-10-25 14:48:44 -0700 |
commit | 0c42f91f4ccf98a37f055afb777ed491da56335e (patch) | |
tree | 547344d80fe7bf75ff3f348eefbc19dbdd346a8a /lib/python/qmk/datetime.py | |
parent | 8ef82c466e73e555fd74107d4c57e678d7152ecc (diff) | |
download | qmk_firmware-0c42f91f4ccf98a37f055afb777ed491da56335e.tar.gz qmk_firmware-0c42f91f4ccf98a37f055afb777ed491da56335e.zip |
Generate api data on each push (#10609)
* add new qmk generate-api command, to generate a complete set of API data.
* Generate api data and push it to the keyboard repo
* fix typo
* Apply suggestions from code review
Co-authored-by: Joel Challis <git@zvecr.com>
* fixup api workflow
* remove file-changes-action
* use a more mainstream github action
* fix yaml error
* Apply suggestions from code review
Co-authored-by: Erovia <Erovia@users.noreply.github.com>
* more uniform date handling
* make flake8 happy
* Update lib/python/qmk/decorators.py
Co-authored-by: Erovia <Erovia@users.noreply.github.com>
Co-authored-by: Joel Challis <git@zvecr.com>
Co-authored-by: Erovia <Erovia@users.noreply.github.com>
Diffstat (limited to 'lib/python/qmk/datetime.py')
-rw-r--r-- | lib/python/qmk/datetime.py | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/lib/python/qmk/datetime.py b/lib/python/qmk/datetime.py new file mode 100644 index 000000000..4bffcc621 --- /dev/null +++ b/lib/python/qmk/datetime.py | |||
@@ -0,0 +1,29 @@ | |||
1 | """Functions to work with dates and times in a uniform way. | ||
2 | |||
3 | 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. | ||
4 | """ | ||
5 | from time import gmtime, strftime | ||
6 | |||
7 | from qmk.constants import DATE_FORMAT, DATETIME_FORMAT, TIME_FORMAT | ||
8 | from qmk.decorators import lru_cache | ||
9 | |||
10 | |||
11 | @lru_cache(timeout=5) | ||
12 | def current_date(): | ||
13 | """Returns the current time in UTZ as a formatted string. | ||
14 | """ | ||
15 | return strftime(DATE_FORMAT, gmtime()) | ||
16 | |||
17 | |||
18 | @lru_cache(timeout=5) | ||
19 | def current_datetime(): | ||
20 | """Returns the current time in UTZ as a formatted string. | ||
21 | """ | ||
22 | return strftime(DATETIME_FORMAT, gmtime()) | ||
23 | |||
24 | |||
25 | @lru_cache(timeout=5) | ||
26 | def current_time(): | ||
27 | """Returns the current time in UTZ as a formatted string. | ||
28 | """ | ||
29 | return strftime(TIME_FORMAT, gmtime()) | ||