unrealon 2.0.27__py3-none-any.whl → 2.0.28__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.
- {unrealon-2.0.27.dist-info → unrealon-2.0.28.dist-info}/METADATA +1 -1
- {unrealon-2.0.27.dist-info → unrealon-2.0.28.dist-info}/RECORD +8 -8
- unrealon_installer/batch_templates/start.bat.j2 +31 -22
- unrealon_installer/platform.py +22 -7
- {unrealon-2.0.27.dist-info → unrealon-2.0.28.dist-info}/LICENSE +0 -0
- {unrealon-2.0.27.dist-info → unrealon-2.0.28.dist-info}/WHEEL +0 -0
- {unrealon-2.0.27.dist-info → unrealon-2.0.28.dist-info}/entry_points.txt +0 -0
- {unrealon-2.0.27.dist-info → unrealon-2.0.28.dist-info}/top_level.txt +0 -0
|
@@ -128,14 +128,14 @@ unrealon_driver/utils/time.py,sha256=Oxk1eicKeZl8ZWbf7gu1Ll716k6CpXmVj67FHSnPIsA
|
|
|
128
128
|
unrealon_installer/__init__.py,sha256=JxA2hKat5E6R6nt-batuAc-2Cr0nO2M0XW0vOFU_xy0,333
|
|
129
129
|
unrealon_installer/browser_fixes.py,sha256=f67T41e4vfOpDAu1hiDEZ5-BLJ663Bl7oWiHD83rR6E,8081
|
|
130
130
|
unrealon_installer/core.py,sha256=VvAi7iNBFUrJFUkANQ0gv4tyYCaf-cgtUboXVnrjr50,3826
|
|
131
|
-
unrealon_installer/platform.py,sha256=
|
|
131
|
+
unrealon_installer/platform.py,sha256=FNZKAtU8xQwK-Jh_8aNQchM_RSu9nXd3bd1ytmLTSS0,3948
|
|
132
132
|
unrealon_installer/templates.py,sha256=PBGfKWlrhtd92h2c68RhtXgICATmHkGObRn6nT0e2Jg,1920
|
|
133
133
|
unrealon_installer/batch_templates/quick_run.bat.j2,sha256=B5_vNI7qbds-uHA3rQGx77cle19wKRgerCDHafLaQwc,554
|
|
134
|
-
unrealon_installer/batch_templates/start.bat.j2,sha256=
|
|
134
|
+
unrealon_installer/batch_templates/start.bat.j2,sha256=_4M-iKJzcVuh7ORkJWcOE7Yd8X7gyCa5FMKwRhyRW2k,6529
|
|
135
135
|
unrealon_installer/batch_templates/test.bat.j2,sha256=eq_Bj-zN6jUZWLwgzPtYDCr4YbgjseMSIfDPYT5ODFw,1348
|
|
136
|
-
unrealon-2.0.
|
|
137
|
-
unrealon-2.0.
|
|
138
|
-
unrealon-2.0.
|
|
139
|
-
unrealon-2.0.
|
|
140
|
-
unrealon-2.0.
|
|
141
|
-
unrealon-2.0.
|
|
136
|
+
unrealon-2.0.28.dist-info/LICENSE,sha256=eEH8mWZW49YMpl4Sh5MtKqkZ8aVTzKQXiNPEnvL14ns,1070
|
|
137
|
+
unrealon-2.0.28.dist-info/METADATA,sha256=NHZvMXSGUrNUa-EcuEZaRFc9oCaPdsv239huf84KT3E,15718
|
|
138
|
+
unrealon-2.0.28.dist-info/WHEEL,sha256=pL8R0wFFS65tNSRnaOVrsw9EOkOqxLrlUPenUYnJKNo,91
|
|
139
|
+
unrealon-2.0.28.dist-info/entry_points.txt,sha256=tBJgozewpyuXznEYIsLwfE1s16VRjy3Wizhuyh26zb4,153
|
|
140
|
+
unrealon-2.0.28.dist-info/top_level.txt,sha256=qN6Q72fe4_i8mTOhYcO3fhGa3g4dmBgvZOsqmK4j8D8,66
|
|
141
|
+
unrealon-2.0.28.dist-info/RECORD,,
|
|
@@ -18,8 +18,18 @@ set PLAYWRIGHT_BROWSERS_PATH=0
|
|
|
18
18
|
set PYTHONUNBUFFERED=1
|
|
19
19
|
set UNREALON_PARSER_NAME={{ parser_name }}
|
|
20
20
|
|
|
21
|
-
REM Apply UnrealOn platform fixes
|
|
22
|
-
|
|
21
|
+
REM Apply UnrealOn platform fixes - CRITICAL for Windows asyncio
|
|
22
|
+
echo Applying Windows compatibility fixes...
|
|
23
|
+
python -c "
|
|
24
|
+
import sys
|
|
25
|
+
print(f'Python {sys.version_info.major}.{sys.version_info.minor}.{sys.version_info.micro} on {sys.platform}')
|
|
26
|
+
try:
|
|
27
|
+
from unrealon_installer.platform import apply_platform_fixes
|
|
28
|
+
fixes = apply_platform_fixes()
|
|
29
|
+
print(f'Applied fixes: {fixes}')
|
|
30
|
+
except Exception as e:
|
|
31
|
+
print(f'Platform fixes failed: {e}')
|
|
32
|
+
" 2>nul
|
|
23
33
|
|
|
24
34
|
:main_menu
|
|
25
35
|
echo Main Menu:
|
|
@@ -52,38 +62,37 @@ echo {{ parser_name }} Parser - Run Mode
|
|
|
52
62
|
echo {{ "=" * (parser_name|length + 25) }}
|
|
53
63
|
echo.
|
|
54
64
|
|
|
55
|
-
echo Choose
|
|
56
|
-
echo [1]
|
|
57
|
-
|
|
58
|
-
echo [3]
|
|
59
|
-
echo [4]
|
|
60
|
-
echo [5] CUSTOM mode
|
|
65
|
+
echo Choose run mode:
|
|
66
|
+
echo [1] QUICK RUN (default parameters)
|
|
67
|
+
echo [2] TEST RUN (minimal test)
|
|
68
|
+
{% if has_persistent %}echo [3] PERSISTENT mode (continuous){% endif %}
|
|
69
|
+
echo [4] CUSTOM mode (specify arguments)
|
|
61
70
|
echo.
|
|
62
|
-
set /p mode="Enter mode (1-
|
|
71
|
+
set /p mode="Enter mode (1-{% if has_persistent %}4{% else %}3{% endif %}): "
|
|
63
72
|
|
|
64
73
|
if "%mode%"=="1" (
|
|
65
|
-
echo Starting
|
|
66
|
-
python main.py
|
|
74
|
+
echo Starting default run...
|
|
75
|
+
python main.py
|
|
67
76
|
)
|
|
68
|
-
{% if has_persistent %}
|
|
69
77
|
if "%mode%"=="2" (
|
|
70
|
-
echo Starting
|
|
71
|
-
python main.py
|
|
78
|
+
echo Starting test run...
|
|
79
|
+
python main.py 1 1
|
|
72
80
|
)
|
|
73
|
-
{%
|
|
81
|
+
{% if has_persistent %}
|
|
74
82
|
if "%mode%"=="3" (
|
|
75
|
-
echo Starting
|
|
76
|
-
python main.py
|
|
83
|
+
echo Starting persistent mode...
|
|
84
|
+
python main.py --persistent
|
|
77
85
|
)
|
|
78
86
|
if "%mode%"=="4" (
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
if /i "%confirm%"=="Y" python main.py 100 10
|
|
87
|
+
set /p args="Enter arguments (e.g. 5 2): "
|
|
88
|
+
python main.py %args%
|
|
82
89
|
)
|
|
83
|
-
|
|
84
|
-
|
|
90
|
+
{% else %}
|
|
91
|
+
if "%mode%"=="3" (
|
|
92
|
+
set /p args="Enter arguments (e.g. 5 2): "
|
|
85
93
|
python main.py %args%
|
|
86
94
|
)
|
|
95
|
+
{% endif %}
|
|
87
96
|
|
|
88
97
|
echo.
|
|
89
98
|
echo Press any key to return to main menu...
|
unrealon_installer/platform.py
CHANGED
|
@@ -33,13 +33,26 @@ def _apply_windows_fixes():
|
|
|
33
33
|
"""Windows-specific fixes."""
|
|
34
34
|
fixes = []
|
|
35
35
|
|
|
36
|
-
# Asyncio event loop policy
|
|
36
|
+
# Asyncio event loop policy - CRITICAL for Windows
|
|
37
37
|
if sys.version_info >= (3, 8):
|
|
38
38
|
try:
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
39
|
+
# Force ProactorEventLoopPolicy to avoid pipe issues
|
|
40
|
+
policy = asyncio.WindowsProactorEventLoopPolicy()
|
|
41
|
+
asyncio.set_event_loop_policy(policy)
|
|
42
|
+
|
|
43
|
+
# Also set a new event loop to ensure clean state
|
|
44
|
+
loop = asyncio.new_event_loop()
|
|
45
|
+
asyncio.set_event_loop(loop)
|
|
46
|
+
|
|
47
|
+
fixes.append("ProactorEventLoop + new loop")
|
|
48
|
+
except Exception as e:
|
|
49
|
+
logger.warning(f"Failed to set Windows event loop policy: {e}")
|
|
50
|
+
# Fallback: try to at least set the policy
|
|
51
|
+
try:
|
|
52
|
+
asyncio.set_event_loop_policy(asyncio.WindowsProactorEventLoopPolicy())
|
|
53
|
+
fixes.append("ProactorEventLoop (fallback)")
|
|
54
|
+
except Exception:
|
|
55
|
+
pass
|
|
43
56
|
|
|
44
57
|
# Console encoding
|
|
45
58
|
try:
|
|
@@ -50,9 +63,11 @@ def _apply_windows_fixes():
|
|
|
50
63
|
except Exception:
|
|
51
64
|
pass
|
|
52
65
|
|
|
53
|
-
# Suppress warnings
|
|
66
|
+
# Suppress asyncio warnings that are common on Windows
|
|
54
67
|
warnings.filterwarnings("ignore", category=ResourceWarning)
|
|
55
|
-
|
|
68
|
+
warnings.filterwarnings("ignore", message=".*unclosed transport.*")
|
|
69
|
+
warnings.filterwarnings("ignore", message=".*I/O operation on closed pipe.*")
|
|
70
|
+
fixes.append("Windows warnings suppression")
|
|
56
71
|
|
|
57
72
|
return fixes
|
|
58
73
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|