hungerlib 2.17.dev4__tar.gz → 2.18__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {hungerlib-2.17.dev4/src/hungerlib.egg-info → hungerlib-2.18}/PKG-INFO +1 -1
- {hungerlib-2.17.dev4 → hungerlib-2.18}/pyproject.toml +1 -1
- {hungerlib-2.17.dev4 → hungerlib-2.18}/src/hungerlib/addons/__init__.py +0 -1
- {hungerlib-2.17.dev4 → hungerlib-2.18}/src/hungerlib/addons/scheduler.py +0 -6
- {hungerlib-2.17.dev4 → hungerlib-2.18/src/hungerlib.egg-info}/PKG-INFO +1 -1
- {hungerlib-2.17.dev4 → hungerlib-2.18}/src/hungerlib.egg-info/SOURCES.txt +0 -1
- hungerlib-2.17.dev4/src/hungerlib/addons/countdown.py +0 -94
- {hungerlib-2.17.dev4 → hungerlib-2.18}/LICENSE +0 -0
- {hungerlib-2.17.dev4 → hungerlib-2.18}/README.md +0 -0
- {hungerlib-2.17.dev4 → hungerlib-2.18}/setup.cfg +0 -0
- {hungerlib-2.17.dev4 → hungerlib-2.18}/src/hungerlib/__init__.py +0 -0
- {hungerlib-2.17.dev4 → hungerlib-2.18}/src/hungerlib/addons/colormap.py +0 -0
- {hungerlib-2.17.dev4 → hungerlib-2.18}/src/hungerlib/addons/configloader.py +0 -0
- {hungerlib-2.17.dev4 → hungerlib-2.18}/src/hungerlib/addons/mchelpers.py +0 -0
- {hungerlib-2.17.dev4 → hungerlib-2.18}/src/hungerlib/addons/snapshot.py +0 -0
- {hungerlib-2.17.dev4 → hungerlib-2.18}/src/hungerlib/addons/utils.py +0 -0
- {hungerlib-2.17.dev4 → hungerlib-2.18}/src/hungerlib/api/__init__.py +0 -0
- {hungerlib-2.17.dev4 → hungerlib-2.18}/src/hungerlib/api/backups.py +0 -0
- {hungerlib-2.17.dev4 → hungerlib-2.18}/src/hungerlib/api/command.py +0 -0
- {hungerlib-2.17.dev4 → hungerlib-2.18}/src/hungerlib/api/databases.py +0 -0
- {hungerlib-2.17.dev4 → hungerlib-2.18}/src/hungerlib/api/filemanager.py +0 -0
- {hungerlib-2.17.dev4 → hungerlib-2.18}/src/hungerlib/api/schedule.py +0 -0
- {hungerlib-2.17.dev4 → hungerlib-2.18}/src/hungerlib/api/startup.py +0 -0
- {hungerlib-2.17.dev4 → hungerlib-2.18}/src/hungerlib/logger.py +0 -0
- {hungerlib-2.17.dev4 → hungerlib-2.18}/src/hungerlib/panel.py +0 -0
- {hungerlib-2.17.dev4 → hungerlib-2.18}/src/hungerlib/servers/__init__.py +0 -0
- {hungerlib-2.17.dev4 → hungerlib-2.18}/src/hungerlib/servers/generic.py +0 -0
- {hungerlib-2.17.dev4 → hungerlib-2.18}/src/hungerlib/servers/minecraft.py +0 -0
- {hungerlib-2.17.dev4 → hungerlib-2.18}/src/hungerlib.egg-info/dependency_links.txt +0 -0
- {hungerlib-2.17.dev4 → hungerlib-2.18}/src/hungerlib.egg-info/requires.txt +0 -0
- {hungerlib-2.17.dev4 → hungerlib-2.18}/src/hungerlib.egg-info/top_level.txt +0 -0
|
@@ -80,12 +80,6 @@ def runCountdownEvents(
|
|
|
80
80
|
|
|
81
81
|
|
|
82
82
|
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
# ============================================================
|
|
86
|
-
# SERVER STATE HELPERS
|
|
87
|
-
# ============================================================
|
|
88
|
-
|
|
89
83
|
def waitForOnline(server, timeout=60, interval=2):
|
|
90
84
|
"""
|
|
91
85
|
Wait until the server reports status 'running'.
|
|
@@ -12,7 +12,6 @@ src/hungerlib.egg-info/top_level.txt
|
|
|
12
12
|
src/hungerlib/addons/__init__.py
|
|
13
13
|
src/hungerlib/addons/colormap.py
|
|
14
14
|
src/hungerlib/addons/configloader.py
|
|
15
|
-
src/hungerlib/addons/countdown.py
|
|
16
15
|
src/hungerlib/addons/mchelpers.py
|
|
17
16
|
src/hungerlib/addons/scheduler.py
|
|
18
17
|
src/hungerlib/addons/snapshot.py
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
import time
|
|
2
|
-
from datetime import datetime
|
|
3
|
-
|
|
4
|
-
# Special use case helper functions that operate on server objects
|
|
5
|
-
def runCountdownEvents(
|
|
6
|
-
target_time,
|
|
7
|
-
minute_callbacks=None,
|
|
8
|
-
second_callbacks=None,
|
|
9
|
-
tick_interval=1
|
|
10
|
-
):
|
|
11
|
-
"""
|
|
12
|
-
A simple, readable countdown engine.
|
|
13
|
-
|
|
14
|
-
- Counts down until `target_time`
|
|
15
|
-
- When the countdown hits a configured minute mark, it runs that callback
|
|
16
|
-
- When the countdown hits a configured second mark, it runs that callback
|
|
17
|
-
|
|
18
|
-
Parameters:
|
|
19
|
-
target_time (datetime):
|
|
20
|
-
The time we are counting down to.
|
|
21
|
-
|
|
22
|
-
minute_callbacks (dict[int, callable]):
|
|
23
|
-
Example: {5: func, 1: func}
|
|
24
|
-
|
|
25
|
-
second_callbacks (dict[int, callable]):
|
|
26
|
-
Example: {10: func, 5: func, 1: func}
|
|
27
|
-
|
|
28
|
-
tick_interval (int):
|
|
29
|
-
How often to check the countdown (in seconds).
|
|
30
|
-
"""
|
|
31
|
-
|
|
32
|
-
# Default to empty dicts if none provided
|
|
33
|
-
minute_callbacks = minute_callbacks or {}
|
|
34
|
-
second_callbacks = second_callbacks or {}
|
|
35
|
-
|
|
36
|
-
# Track which events we've already fired
|
|
37
|
-
fired_minutes = set()
|
|
38
|
-
fired_seconds = set()
|
|
39
|
-
|
|
40
|
-
while True:
|
|
41
|
-
now = datetime.now()
|
|
42
|
-
seconds_left = int((target_time - now).total_seconds())
|
|
43
|
-
minutes_left = seconds_left // 60
|
|
44
|
-
|
|
45
|
-
# Countdown finished
|
|
46
|
-
if seconds_left <= 0:
|
|
47
|
-
return
|
|
48
|
-
|
|
49
|
-
# Fire minute-based events
|
|
50
|
-
if minutes_left in minute_callbacks and minutes_left not in fired_minutes:
|
|
51
|
-
fired_minutes.add(minutes_left)
|
|
52
|
-
minute_callbacks[minutes_left]()
|
|
53
|
-
|
|
54
|
-
# Fire second-based events
|
|
55
|
-
if seconds_left in second_callbacks and seconds_left not in fired_seconds:
|
|
56
|
-
fired_seconds.add(seconds_left)
|
|
57
|
-
second_callbacks[seconds_left]()
|
|
58
|
-
|
|
59
|
-
time.sleep(tick_interval)
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
# ============================================================
|
|
66
|
-
# SERVER STATE HELPERS
|
|
67
|
-
# ============================================================
|
|
68
|
-
|
|
69
|
-
def waitForOnline(server, timeout=60, interval=2):
|
|
70
|
-
"""
|
|
71
|
-
Wait until the server reports status 'running'.
|
|
72
|
-
Returns True if online before timeout.
|
|
73
|
-
"""
|
|
74
|
-
elapsed = 0
|
|
75
|
-
while elapsed < timeout:
|
|
76
|
-
if server.isOnline():
|
|
77
|
-
return True
|
|
78
|
-
time.sleep(interval)
|
|
79
|
-
elapsed += interval
|
|
80
|
-
return False
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
def waitForOffline(server, timeout=60, interval=2):
|
|
84
|
-
"""
|
|
85
|
-
Wait until the server reports status 'offline'.
|
|
86
|
-
Returns True if offline before timeout.
|
|
87
|
-
"""
|
|
88
|
-
elapsed = 0
|
|
89
|
-
while elapsed < timeout:
|
|
90
|
-
if server.isOffline():
|
|
91
|
-
return True
|
|
92
|
-
time.sleep(interval)
|
|
93
|
-
elapsed += interval
|
|
94
|
-
return False
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|