Merge branch 'maintenance/bump-dependencies' into 'dev'

Bump multiple dep versions

See merge request crafty-controller/crafty-4!639
This commit is contained in:
Iain Powrie 2023-10-07 18:25:21 +00:00
commit 2f65971261
6 changed files with 56 additions and 57 deletions

View File

@ -28,6 +28,7 @@
- Improve ui visibility of Build Wizard selection tabs ([Merge Request](https://gitlab.com/crafty-controller/crafty-4/-/merge_requests/633)) - Improve ui visibility of Build Wizard selection tabs ([Merge Request](https://gitlab.com/crafty-controller/crafty-4/-/merge_requests/633))
- Add additional logging for server bootstrap & moves unnecessary logging to `debug` for improved log clarity ([Merge Request](https://gitlab.com/crafty-controller/crafty-4/-/merge_requests/635)) - Add additional logging for server bootstrap & moves unnecessary logging to `debug` for improved log clarity ([Merge Request](https://gitlab.com/crafty-controller/crafty-4/-/merge_requests/635))
- Bump orjson to 3.9.7 for python 3.12 support ([Merge Request](https://gitlab.com/crafty-controller/crafty-4/-/merge_requests/638)) - Bump orjson to 3.9.7 for python 3.12 support ([Merge Request](https://gitlab.com/crafty-controller/crafty-4/-/merge_requests/638))
- Bump all Crafty required python dependancies, maintaining minimum 3.9 support ([Merge Request](https://gitlab.com/crafty-controller/crafty-4/-/merge_requests/639))
### Lang ### Lang
TBD TBD
<br><br> <br><br>

View File

@ -8,11 +8,11 @@ import time
import json import json
import logging import logging
import threading import threading
from zoneinfo import ZoneInfoNotFoundError
from peewee import DoesNotExist from peewee import DoesNotExist
# TZLocal is set as a hidden import on win pipeline # TZLocal is set as a hidden import on win pipeline
from tzlocal import get_localzone from tzlocal import get_localzone
from tzlocal.utils import ZoneInfoNotFoundError
from apscheduler.schedulers.background import BackgroundScheduler from apscheduler.schedulers.background import BackgroundScheduler
from app.classes.models.server_permissions import EnumPermissionsServer from app.classes.models.server_permissions import EnumPermissionsServer

View File

@ -16,8 +16,8 @@ import json
from zoneinfo import ZoneInfo from zoneinfo import ZoneInfo
# TZLocal is set as a hidden import on win pipeline # TZLocal is set as a hidden import on win pipeline
from zoneinfo import ZoneInfoNotFoundError
from tzlocal import get_localzone from tzlocal import get_localzone
from tzlocal.utils import ZoneInfoNotFoundError
from apscheduler.schedulers.background import BackgroundScheduler from apscheduler.schedulers.background import BackgroundScheduler
from apscheduler.jobstores.base import JobLookupError, ConflictingIdError from apscheduler.jobstores.base import JobLookupError, ConflictingIdError
@ -42,6 +42,45 @@ with redirect_stderr(NullWriter()):
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
def callback(called_func):
# Usage of @callback on method
# definition to run a webhook check
# on method completion
def wrapper(*args, **kwargs):
res = None
logger.debug("Checking for callbacks")
try:
res = called_func(*args, **kwargs)
finally:
events = WebhookFactory.get_monitored_events()
if called_func.__name__ in events:
server_webhooks = HelpersWebhooks.get_webhooks_by_server(
args[0].server_id, True
)
for swebhook in server_webhooks:
if called_func.__name__ in str(swebhook.trigger).split(","):
logger.info(
f"Found callback for event {called_func.__name__}"
f" for server {args[0].server_id}"
)
webhook = HelpersWebhooks.get_webhook_by_id(swebhook.id)
webhook_provider = WebhookFactory.create_provider(
webhook["webhook_type"]
)
if res is not False and swebhook.enabled:
webhook_provider.send(
bot_name=webhook["bot_name"],
server_name=args[0].name,
title=webhook["name"],
url=webhook["url"],
message=webhook["body"],
color=webhook["color"],
)
return res
return wrapper
class ServerOutBuf: class ServerOutBuf:
lines = {} lines = {}
@ -166,45 +205,6 @@ class ServerInstance:
self.stats_helper.server_crash_reset() self.stats_helper.server_crash_reset()
self.stats_helper.set_update(False) self.stats_helper.set_update(False)
@staticmethod
def callback(called_func):
# Usage of @callback on method
# definition to run a webhook check
# on method completion
def wrapper(*args, **kwargs):
res = None
logger.debug("Checking for callbacks")
try:
res = called_func(*args, **kwargs)
finally:
events = WebhookFactory.get_monitored_events()
if called_func.__name__ in events:
server_webhooks = HelpersWebhooks.get_webhooks_by_server(
args[0].server_id, True
)
for swebhook in server_webhooks:
if called_func.__name__ in str(swebhook.trigger).split(","):
logger.info(
f"Found callback for event {called_func.__name__}"
f" for server {args[0].server_id}"
)
webhook = HelpersWebhooks.get_webhook_by_id(swebhook.id)
webhook_provider = WebhookFactory.create_provider(
webhook["webhook_type"]
)
if res is not False and swebhook.enabled:
webhook_provider.send(
bot_name=webhook["bot_name"],
server_name=args[0].name,
title=webhook["name"],
url=webhook["url"],
message=webhook["body"],
color=webhook["color"],
)
return res
return wrapper
# ********************************************************************************** # **********************************************************************************
# Minecraft Server Management # Minecraft Server Management
# ********************************************************************************** # **********************************************************************************

View File

@ -5,9 +5,8 @@ import threading
import asyncio import asyncio
import datetime import datetime
import json import json
from zoneinfo import ZoneInfoNotFoundError
from tzlocal import get_localzone from tzlocal import get_localzone
from tzlocal.utils import ZoneInfoNotFoundError
from apscheduler.events import EVENT_JOB_EXECUTED from apscheduler.events import EVENT_JOB_EXECUTED
from apscheduler.schedulers.background import BackgroundScheduler from apscheduler.schedulers.background import BackgroundScheduler
from apscheduler.triggers.cron import CronTrigger from apscheduler.triggers.cron import CronTrigger

View File

@ -7,6 +7,7 @@ import json
import logging import logging
import threading import threading
import urllib.parse import urllib.parse
from zoneinfo import ZoneInfoNotFoundError
import nh3 import nh3
import requests import requests
import tornado.web import tornado.web
@ -15,7 +16,6 @@ from tornado import iostream
# TZLocal is set as a hidden import on win pipeline # TZLocal is set as a hidden import on win pipeline
from tzlocal import get_localzone from tzlocal import get_localzone
from tzlocal.utils import ZoneInfoNotFoundError
from app.classes.models.servers import Servers from app.classes.models.servers import Servers
from app.classes.models.server_permissions import EnumPermissionsServer from app.classes.models.server_permissions import EnumPermissionsServer

View File

@ -1,22 +1,21 @@
apscheduler==3.8.1 apscheduler==3.10.4
argon2-cffi==21.3 argon2-cffi==23.1.0
cached_property==1.5.2 cached_property==1.5.2
colorama==0.4 colorama==0.4.6
croniter==1.3.5 croniter==1.4.1
cryptography==41.0.3 cryptography==41.0.4
libgravatar==1.0.0 libgravatar==1.0.4
nh3==0.2.14 nh3==0.2.14
packaging==23.1 packaging==23.2
peewee==3.13 peewee==3.16.3
pexpect==4.8
psutil==5.9.5 psutil==5.9.5
pyOpenSSL==23.2.0 pyOpenSSL==23.2.0
pyjwt==2.4.0 pyjwt==2.8.0
PyYAML==6.0.1 PyYAML==6.0.1
requests==2.31 requests==2.31.0
termcolor==1.1 termcolor==1.1
tornado==6.3.3 tornado==6.3.3
tzlocal==4.0 tzlocal==5.1
jsonschema==4.5.1 jsonschema==4.19.1
orjson==3.9.7 orjson==3.9.7