mirror of
https://github.com/mealie-recipes/mealie.git
synced 2025-12-18 16:25:20 -05:00
feat: ✨ add user recipe export functionality (#845)
* feat(frontend): ✨ add user recipe export functionality * remove depreciated folders * change/remove depreciated folders * add testing variable in config * add GUID support for group_id * improve testing feedback on 422 errors * remove/cleanup files/folders * initial user export support * delete unused css * update backup page UI * remove depreciated settings * feat: ✨ export download links * fix #813 * remove top level statements * show footer * add export purger to scheduler * update purge glob * fix meal-planner lockout * feat: ✨ add bulk delete/purge exports * style(frontend): 💄 update UI for site settings * feat: ✨ add version checker * update documentation Co-authored-by: hay-kot <hay-kot@pm.me>
This commit is contained in:
41
mealie/core/release_checker.py
Normal file
41
mealie/core/release_checker.py
Normal file
@@ -0,0 +1,41 @@
|
||||
import datetime
|
||||
from functools import lru_cache
|
||||
|
||||
import requests
|
||||
|
||||
_LAST_RESET = None
|
||||
|
||||
|
||||
@lru_cache(maxsize=1)
|
||||
def get_latest_github_release() -> str:
|
||||
"""
|
||||
Gets the latest release from GitHub.
|
||||
|
||||
Returns:
|
||||
str: The latest release from GitHub.
|
||||
"""
|
||||
|
||||
url = "https://api.github.com/repos/hay-kot/mealie/releases/latest"
|
||||
response = requests.get(url)
|
||||
response.raise_for_status()
|
||||
return response.json()["tag_name"]
|
||||
|
||||
|
||||
def get_latest_version() -> str:
|
||||
"""
|
||||
Gets the latest release version.
|
||||
|
||||
Returns:
|
||||
str: The latest release version.
|
||||
"""
|
||||
MAX_DAYS_OLD = 1 # reset cache after 1 day
|
||||
|
||||
global _LAST_RESET
|
||||
|
||||
now = datetime.datetime.now()
|
||||
|
||||
if not _LAST_RESET or now - _LAST_RESET > datetime.timedelta(days=MAX_DAYS_OLD):
|
||||
_LAST_RESET = now
|
||||
get_latest_github_release.cache_clear()
|
||||
|
||||
return get_latest_github_release()
|
||||
Reference in New Issue
Block a user