hungerlib 2.2.4.dev0__py3-none-any.whl → 2.3.dev0__py3-none-any.whl

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.
examples/Config.py CHANGED
@@ -1,29 +1,8 @@
1
- from hungerlib import Config
1
+ from hungerlib import Config, Panel
2
2
  from pathlib import Path
3
3
  from hungerlib.addons.colormap import ASCI_COLOR_MAP, MC_COLOR_MAP
4
4
 
5
5
  ExampleConfig = Config(
6
- # --- Panel settings ---
7
- panel_name="My Panel",
8
- panel_url="https://example.com",
9
- panel_api_key='API_KEY_HERE',
10
-
11
- # --- Generic server settings ---
12
- gs_name='My Server',
13
- gs_panel_url='https://example.com',
14
- gs_panel_api_key='API_KEY_HERE',
15
- gs_server_id='SERVER_ID_HERE',
16
-
17
- # --- Minecraft server settings ---
18
- mc_name='My Minecraft Server',
19
- mc_panel_url='https://example.com',
20
- mc_panel_api_key='API_KEY_HERE',
21
- mc_server_id='SERVER_ID_HERE',
22
- mc_server_domain='mc.example.com',
23
- mc_server_port=25565,
24
- mc_rcon_port=25575,
25
- mc_rcon_password='RCON_PASSWORD_HERE',
26
- mc_tpsCommand='tt20 tps',
27
6
 
28
7
  # Color maps
29
8
  file_color_map=None,
hungerlib/__init__.py CHANGED
@@ -25,19 +25,19 @@ _EXPORTS = {
25
25
  "minsUntil": ("scheduler", "minsUntil"),
26
26
 
27
27
  # servers
28
- "GenericServer": ("servers._generic", "GenericServer"),
28
+ "GenericServer": ("servers.generic", "GenericServer"),
29
29
  "MinecraftServer": ("servers.minecraft", "MinecraftServer"),
30
30
 
31
31
  # addons
32
- "genericAddons": ("addons._generic", None),
32
+ "genericAddons": ("addons.generic", None),
33
33
  "minecraftAddons": ("addons.minecraft", None),
34
34
  "colormap": ("addons.colormap", None),
35
35
 
36
36
  # addon utilities
37
- "runCountdownEvents": ("addons._generic", "runCountdownEvents"),
38
- "validateAll": ("addons._generic", "validateAll"),
39
- "waitForOnline": ("addons._generic", "waitForOnline"),
40
- "waitForOffline": ("addons._generic", "waitForOffline"),
37
+ "runCountdownEvents": ("addons.generic", "runCountdownEvents"),
38
+ "validateAll": ("addons.generic", "validateAll"),
39
+ "waitForOnline": ("addons.generic", "waitForOnline"),
40
+ "waitForOffline": ("addons.generic", "waitForOffline"),
41
41
  "checkLag": ("addons.minecraft", "checkLag"),
42
42
  "MC_COLOR_MAP": ("addons.colormap", "MC_COLOR_MAP"),
43
43
  "ASCI_COLOR_MAP": ("addons.colormap", "ASCI_COLOR_MAP"),
hungerlib/config.py CHANGED
@@ -10,27 +10,6 @@ from hungerlib.addons.colormap import *
10
10
 
11
11
  @dataclass
12
12
  class Config:
13
- # panel defaults
14
- panel_name: str | None = None
15
- panel_url: str | None = None
16
- panel_api_key: str | None = None
17
-
18
- # generic server defaults
19
- gs_name: str | None = None
20
- gs_panel_url: str | None = None
21
- gs_panel_api_key: str | None = None
22
- gs_server_id: str | None = None
23
-
24
- # minecraft server defaults
25
- mc_name: str | None = None
26
- mc_panel_url: str | None = None
27
- mc_panel_api_key: str | None = None
28
- mc_server_id: str | None = None
29
- mc_server_domain: str | None = None
30
- mc_server_port: int = 25565
31
- mc_rcon_port: int = 25575
32
- mc_rcon_password: str | None = None
33
- mc_tpsCommand: str = 'tt20 tps'
34
13
 
35
14
  # Color maps
36
15
  file_color_map: dict | None = None
@@ -48,4 +27,4 @@ class Config:
48
27
  log_path: Path = Path("/home/container/logs")
49
28
  log_destination_method: str = 'rcon'
50
29
 
51
- _internal_config = Config
30
+ _internal_config = Config()
hungerlib/panel.py CHANGED
@@ -6,18 +6,14 @@ from hungerlib.api.filemanager import FileManagerAPI
6
6
  from hungerlib.api.backups import BackupsAPI
7
7
  from hungerlib.api.databases import DatabasesAPI
8
8
  from hungerlib.api.startup import StartupAPI
9
- from hungerlib.config import Config
10
9
 
11
10
 
12
11
  class Panel:
13
12
  """High-level panel object"""
14
- def __init__(self, name=None, url=None, api_key=None, Config=None):
15
- self.Config = Config
16
-
17
- # If Config is provided, use its defaults
18
- self.name = name or Config.panel_name
19
- self.url = (url or Config.panel_url).rstrip("/")
20
- self.api_key = api_key or Config.panel_api_key
13
+ def __init__(self, name, url, api_key):
14
+ self.name = name
15
+ self.url = url.rstrip("/")
16
+ self.api_key = api_key
21
17
 
22
18
  # API modules
23
19
  self.schedules = ScheduleAPI(self)
@@ -5,27 +5,15 @@ from hungerlib.panel import Panel
5
5
  class GenericServer:
6
6
  def __init__(
7
7
  self,
8
- name=None,
9
- panel=None,
10
- server_id=None,
11
- Config=None
8
+ name='Unnamed Server',
9
+ panel,
10
+ server_id
12
11
  ):
13
12
  '''Generic server class'''
14
- self.Config = Config
15
13
 
16
- # name
17
- self.name = name or Config.gs_name or "Unnamed Server"
18
-
19
- # panel (must be explicit)
14
+ self.name = name
20
15
  self.panel = panel
21
- if not isinstance(self.panel, Panel):
22
- raise TypeError("GenericServer requires a Panel instance")
23
-
24
- # server_id (must be explicit or valid default)
25
- self.server_id = server_id or Config.gs_server_id
26
- if not isinstance(self.server_id, str):
27
- raise TypeError("GenericServer requires a server_id string")
28
-
16
+ self.server_id = server_id
29
17
  self._cached_resources = None
30
18
 
31
19
  # internal helpers
@@ -3,29 +3,28 @@ import time
3
3
  import re
4
4
  import mcrcon
5
5
  from hungerlib.panel import Panel
6
- from hungerlib.servers._generic import GenericServer
6
+ from hungerlib.servers.generic import GenericServer
7
7
 
8
8
 
9
9
  class MinecraftServer(GenericServer):
10
10
  def __init__(
11
11
  self,
12
- name=None,
13
- panel=None,
14
- server_id=None,
15
- server_domain=None,
16
- server_port=None,
17
- rcon_port=None,
18
- rcon_password=None,
19
- tpsCommand=None,
20
- Config=None
12
+ name,
13
+ panel,
14
+ server_id,
15
+ server_domain,
16
+ server_port=25565,
17
+ rcon_port=25575,
18
+ rcon_password,
19
+ tpsCommand='tt20 tps'
21
20
  ):
22
- super().__init__(name, panel, server_id, Config)
21
+ super().__init__(name, panel, server_id)
23
22
 
24
- self.server_domain = server_domain or Config.mc_server_domain
25
- self.server_port = server_port or Config.mc_server_port
26
- self.rcon_port = rcon_port or Config.mc_rcon_port
27
- self.rcon_password = rcon_password or Config.mc_rcon_password
28
- self.tpsCommand = tpsCommand or Config.mc_tpsCommand
23
+ self.server_domain = server_domain
24
+ self.server_port = server_port
25
+ self.rcon_port = rcon_port
26
+ self.rcon_password = rcon_password
27
+ self.tpsCommand = tpsCommand
29
28
 
30
29
 
31
30
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: hungerlib
3
- Version: 2.2.4.dev0
3
+ Version: 2.3.dev0
4
4
  Summary: Powerful automation library for Pterodactyl.
5
5
  Author: iFamished
6
6
  License: MIT
@@ -0,0 +1,24 @@
1
+ examples/Config.py,sha256=3sgbcahc0H6PWcFV9WQ0Ykc_QayYYWWAt2EAzchKPso,591
2
+ hungerlib/__init__.py,sha256=owBo4YCdX29GFuAXX1-kzbYYbeqGLDgryBDKjvChsDQ,2254
3
+ hungerlib/config.py,sha256=NWEj4C8SetNOwQMXKuuPRQ0OWEe8S4M3QWmEI5OW8R8,1026
4
+ hungerlib/logger.py,sha256=ba7nbizkvcxQtiVtsICwicoTGjPp57Bs96BRArgrUHo,3681
5
+ hungerlib/mchelpers.py,sha256=PuENTlzwPIBHymlmdynMK28CCy_l8x8yzJSzaguvMMM,3789
6
+ hungerlib/panel.py,sha256=H0B6Ohshombsz2w3dFjJTbOfyRgcO-l-DARRfo0PVqQ,2178
7
+ hungerlib/scheduler.py,sha256=40WcKF5Bc4Fmx-pviZuWA4GkNwrn8RP_TupA00SwD2A,890
8
+ hungerlib/addons/colormap.py,sha256=s3GGE2g6xfRTsJdGnevFJ9tyaY0pDpX8pnxvv013fl8,1072
9
+ hungerlib/addons/generic.py,sha256=jUuoV7nlvApQBmtOkVbD2B5SkA2b2SUx5fGlpfZRT9Y,2851
10
+ hungerlib/addons/minecraft.py,sha256=Ch-E781HRcmCl9CNb3Wx2rg9NyMQ_30tTYLP2RPXONU,963
11
+ hungerlib/api/__init__.py,sha256=xuPbWBXVTkr9Jtcmvk8PPiVvi8HDxrIOmb_gOcDZy-M,336
12
+ hungerlib/api/backups.py,sha256=P_3b4_UPF7y9LDpfyKPh3TpHDIrTm8k_Z3xGmvBE5Qk,730
13
+ hungerlib/api/command.py,sha256=OvqzEmqMbDFnlhecxzJ2z_NxVoybEHq94fcGAk383_0,328
14
+ hungerlib/api/databases.py,sha256=xxPGMsqZQZ8eP0tSgNVB3i9m-3tdR5ws2aqbMmJDH2c,849
15
+ hungerlib/api/filemanager.py,sha256=kB5NP3ELQzY1uW6JWVN1g4dekVl8Kk-u9cK7N5dsg3w,2050
16
+ hungerlib/api/schedule.py,sha256=3gdl0jiIOScdVXWy4aOef-KIoKqUopbI8b1dPgXf5Vg,953
17
+ hungerlib/api/startup.py,sha256=hKhBjpLMVYa3jjq6ahqm2N32B_fu-bZnOJTZ-P57v4M,434
18
+ hungerlib/servers/generic.py,sha256=ROlzBRtQtL8ssMHOIAnFQmxevWG0x-bcYa75RuVl80Y,6552
19
+ hungerlib/servers/minecraft.py,sha256=qgK9ccltKn2LOT_LljO1AYoTtFCcCUMfZEVem_m0a24,2567
20
+ hungerlib-2.3.dev0.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
21
+ hungerlib-2.3.dev0.dist-info/METADATA,sha256=8_4N-d1sDyqgJjlZSq0PdMXDKXGyIZSqwzJ3cWak7P4,1514
22
+ hungerlib-2.3.dev0.dist-info/WHEEL,sha256=aeYiig01lYGDzBgS8HxWXOg3uV61G9ijOsup-k9o1sk,91
23
+ hungerlib-2.3.dev0.dist-info/top_level.txt,sha256=-oFAkOTGMfuvp0CBu82Ltag3EZwIqb663p_fymgcaqI,19
24
+ hungerlib-2.3.dev0.dist-info/RECORD,,
@@ -1,24 +0,0 @@
1
- examples/Config.py,sha256=YTMs4T1aIVfxxbOHBUCLHq_XfSs7f4Vq1NwbuHjMNKI,1241
2
- hungerlib/__init__.py,sha256=Od5O_iSCT5KX3iIaOBCUiTzsdSMTS44aYry71fvymZQ,2260
3
- hungerlib/config.py,sha256=2u8AiFhqd770fInrqnA1bA20qcGh40TMZwJKtaFoyLE,1677
4
- hungerlib/logger.py,sha256=ba7nbizkvcxQtiVtsICwicoTGjPp57Bs96BRArgrUHo,3681
5
- hungerlib/mchelpers.py,sha256=PuENTlzwPIBHymlmdynMK28CCy_l8x8yzJSzaguvMMM,3789
6
- hungerlib/panel.py,sha256=RCcS41qxzSWChX6AiB68VKRuWTR0r2Q4KTPa087WaxE,2390
7
- hungerlib/scheduler.py,sha256=40WcKF5Bc4Fmx-pviZuWA4GkNwrn8RP_TupA00SwD2A,890
8
- hungerlib/addons/_generic.py,sha256=jUuoV7nlvApQBmtOkVbD2B5SkA2b2SUx5fGlpfZRT9Y,2851
9
- hungerlib/addons/colormap.py,sha256=s3GGE2g6xfRTsJdGnevFJ9tyaY0pDpX8pnxvv013fl8,1072
10
- hungerlib/addons/minecraft.py,sha256=Ch-E781HRcmCl9CNb3Wx2rg9NyMQ_30tTYLP2RPXONU,963
11
- hungerlib/api/__init__.py,sha256=xuPbWBXVTkr9Jtcmvk8PPiVvi8HDxrIOmb_gOcDZy-M,336
12
- hungerlib/api/backups.py,sha256=P_3b4_UPF7y9LDpfyKPh3TpHDIrTm8k_Z3xGmvBE5Qk,730
13
- hungerlib/api/command.py,sha256=OvqzEmqMbDFnlhecxzJ2z_NxVoybEHq94fcGAk383_0,328
14
- hungerlib/api/databases.py,sha256=xxPGMsqZQZ8eP0tSgNVB3i9m-3tdR5ws2aqbMmJDH2c,849
15
- hungerlib/api/filemanager.py,sha256=kB5NP3ELQzY1uW6JWVN1g4dekVl8Kk-u9cK7N5dsg3w,2050
16
- hungerlib/api/schedule.py,sha256=3gdl0jiIOScdVXWy4aOef-KIoKqUopbI8b1dPgXf5Vg,953
17
- hungerlib/api/startup.py,sha256=hKhBjpLMVYa3jjq6ahqm2N32B_fu-bZnOJTZ-P57v4M,434
18
- hungerlib/servers/_generic.py,sha256=zFHw42IdlJ3cnbrDYd7q6lVfJRwSrk0igddR5aZe_M8,7008
19
- hungerlib/servers/minecraft.py,sha256=UmIEOn4w6RMUR1Gkpc5-DcHJONzavjvV2unQVvUC9Mk,2740
20
- hungerlib-2.2.4.dev0.dist-info/licenses/LICENSE,sha256=OXLcl0T2SZ8Pmy2_dmlvKuetivmyPd5m1q-Gyd-zaYY,35149
21
- hungerlib-2.2.4.dev0.dist-info/METADATA,sha256=sDmHfAUbLS5cIi41etYucyQLsukIt9WhCxY9-9FjMps,1516
22
- hungerlib-2.2.4.dev0.dist-info/WHEEL,sha256=aeYiig01lYGDzBgS8HxWXOg3uV61G9ijOsup-k9o1sk,91
23
- hungerlib-2.2.4.dev0.dist-info/top_level.txt,sha256=-oFAkOTGMfuvp0CBu82Ltag3EZwIqb663p_fymgcaqI,19
24
- hungerlib-2.2.4.dev0.dist-info/RECORD,,
File without changes