serverwatcher 5.8.dev23__tar.gz → 5.8.dev24__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.
Files changed (20) hide show
  1. {serverwatcher-5.8.dev23/src/serverwatcher.egg-info → serverwatcher-5.8.dev24}/PKG-INFO +1 -1
  2. {serverwatcher-5.8.dev23 → serverwatcher-5.8.dev24}/pyproject.toml +1 -1
  3. {serverwatcher-5.8.dev23 → serverwatcher-5.8.dev24}/src/serverwatcher/validator.py +0 -14
  4. {serverwatcher-5.8.dev23 → serverwatcher-5.8.dev24/src/serverwatcher.egg-info}/PKG-INFO +1 -1
  5. {serverwatcher-5.8.dev23 → serverwatcher-5.8.dev24}/LICENSE +0 -0
  6. {serverwatcher-5.8.dev23 → serverwatcher-5.8.dev24}/README.md +0 -0
  7. {serverwatcher-5.8.dev23 → serverwatcher-5.8.dev24}/setup.cfg +0 -0
  8. {serverwatcher-5.8.dev23 → serverwatcher-5.8.dev24}/src/serverwatcher/__init__.py +0 -0
  9. {serverwatcher-5.8.dev23 → serverwatcher-5.8.dev24}/src/serverwatcher/configclasses/__init__.py +0 -0
  10. {serverwatcher-5.8.dev23 → serverwatcher-5.8.dev24}/src/serverwatcher/configclasses/config.py +0 -0
  11. {serverwatcher-5.8.dev23 → serverwatcher-5.8.dev24}/src/serverwatcher/configclasses/messages.py +0 -0
  12. {serverwatcher-5.8.dev23 → serverwatcher-5.8.dev24}/src/serverwatcher/configclasses/watcher.py +0 -0
  13. {serverwatcher-5.8.dev23 → serverwatcher-5.8.dev24}/src/serverwatcher/defaultconfigs/config.yaml +0 -0
  14. {serverwatcher-5.8.dev23 → serverwatcher-5.8.dev24}/src/serverwatcher/defaultconfigs/messages.yaml +0 -0
  15. {serverwatcher-5.8.dev23 → serverwatcher-5.8.dev24}/src/serverwatcher/defaultconfigs/watcher.yaml +0 -0
  16. {serverwatcher-5.8.dev23 → serverwatcher-5.8.dev24}/src/serverwatcher/watcher.py +0 -0
  17. {serverwatcher-5.8.dev23 → serverwatcher-5.8.dev24}/src/serverwatcher.egg-info/SOURCES.txt +0 -0
  18. {serverwatcher-5.8.dev23 → serverwatcher-5.8.dev24}/src/serverwatcher.egg-info/dependency_links.txt +0 -0
  19. {serverwatcher-5.8.dev23 → serverwatcher-5.8.dev24}/src/serverwatcher.egg-info/requires.txt +0 -0
  20. {serverwatcher-5.8.dev23 → serverwatcher-5.8.dev24}/src/serverwatcher.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: serverwatcher
3
- Version: 5.8.dev23
3
+ Version: 5.8.dev24
4
4
  Summary: A HungerLib-powered Minecraft server automation engine.
5
5
  Author: iFamished
6
6
  License: GPL-3.0
@@ -7,7 +7,7 @@ build-backend = "setuptools.build_meta"
7
7
 
8
8
  [project]
9
9
  name = "serverwatcher"
10
- version = "5.8.dev23"
10
+ version = "5.8.dev24"
11
11
  description = "A HungerLib-powered Minecraft server automation engine."
12
12
  readme = "README.md"
13
13
  requires-python = ">=3.14"
@@ -17,22 +17,18 @@ def deep_get_attr(obj, dotted):
17
17
  cur = getattr(cur, p)
18
18
  return cur
19
19
 
20
-
21
20
  def validate_type(name, value, expected_type, errors):
22
21
  if not isinstance(value, expected_type):
23
22
  errors.append(f"{name}: expected {expected_type.__name__}, got {type(value).__name__}")
24
23
 
25
-
26
24
  def validate_positive(name, value, errors):
27
25
  if isinstance(value, (int, float)) and value < 0:
28
26
  errors.append(f"{name}: must be >= 0 (got {value})")
29
27
 
30
-
31
28
  def validate_nonempty(name, value, errors):
32
29
  if isinstance(value, str) and value.strip() == "":
33
30
  errors.append(f"{name}: cannot be empty")
34
31
 
35
-
36
32
  def validate_dataclass(config_obj, schema, errors):
37
33
  for f in fields(schema):
38
34
  name = f.name
@@ -47,18 +43,13 @@ def validate_dataclass(config_obj, schema, errors):
47
43
  if expected_type in (int, float):
48
44
  validate_positive(name, value, errors)
49
45
 
50
-
51
46
  def validate_global_config(config, errors):
52
- if config.watch_interval < 1:
53
- errors.append(f"watch_interval: must be >= 1 (got {watcher.watch_interval})")
54
-
55
47
  if config.server_port <= 0 or config.server_port > 65535:
56
48
  errors.append(f"server_port: must be 1–65535 (got {config.server_port})")
57
49
 
58
50
  if config.rcon_port <= 0 or config.rcon_port > 65535:
59
51
  errors.append(f"rcon_port: must be 1–65535 (got {config.rcon_port})")
60
52
 
61
-
62
53
  def validate_watcher_config(watcherconfig, errors):
63
54
  if watcherconfig.restart_wait_seconds < 1:
64
55
  errors.append(f"restart_wait_seconds: must be >= 1 (got {watcherconfig.restart_wait_seconds})")
@@ -72,13 +63,11 @@ def validate_watcher_config(watcherconfig, errors):
72
63
  if watcherconfig.threshold_tps <= 0 or watcherconfig.threshold_tps > 20:
73
64
  errors.append(f"threshold_tps: must be 1–20 (got {watcherconfig.threshold_tps})")
74
65
 
75
-
76
66
  def validate_messages_config(messages, errors):
77
67
  for name, value in vars(messages).items():
78
68
  if isinstance(value, str) and "{prefix}" not in value:
79
69
  pass
80
70
 
81
-
82
71
  def ensure_no_global_defaults(config, defaults):
83
72
  if config.panel_url == "https://example.com":
84
73
  defaults.append('panel_url')
@@ -98,12 +87,10 @@ def ensure_no_global_defaults(config, defaults):
98
87
  if config.rcon_password == 'password':
99
88
  defaults.append('rcon_password')
100
89
 
101
-
102
90
  def ensure_no_watcher_defaults(watcherconfig, defaults):
103
91
  if watcherconfig.schedule_control and watcherconfig.restart_soon_id == 0:
104
92
  defaults.append('restart_soon_id')
105
93
 
106
-
107
94
  def validate_all():
108
95
  errors = []
109
96
  defaults = []
@@ -139,6 +126,5 @@ def validate_all():
139
126
 
140
127
  print("✅ All configs are valid.")
141
128
 
142
-
143
129
  if __name__ == "__main__":
144
130
  validate_all()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: serverwatcher
3
- Version: 5.8.dev23
3
+ Version: 5.8.dev24
4
4
  Summary: A HungerLib-powered Minecraft server automation engine.
5
5
  Author: iFamished
6
6
  License: GPL-3.0