Cale-Torino / FreeTAKServer_Manager

A Windows FreeTakServer Installer/Uninstaller GUI written in C# for the Windows OS.
MIT License
21 stars 2 forks source link

Start Server Error #4

Closed arazi2021 closed 2 years ago

arazi2021 commented 2 years ago

Traceback (most recent call last): File "c:\software\python\lib\runpy.py", line 194, in _run_module_as_main return _run_code(code, main_globals, None, File "c:\software\python\lib\runpy.py", line 87, in _run_code exec(code, run_globals) File "C:\Software\python\Scripts\flask.exe__main.py", line 4, in File "c:\software\python\lib\site-packages\flask__init.py", line 14, in from jinja2 import escape File "c:\software\python\lib\site-packages\jinja2\init__.py", line 12, in from .environment import Environment File "c:\software\python\lib\site-packages\jinja2\environment.py", line 25, in from .defaults import BLOCK_END_STRING File "c:\software\python\lib\site-packages\jinja2\defaults.py", line 3, in from .filters import FILTERS as DEFAULT_FILTERS # noqa: F401 File "c:\software\python\lib\site-packages\jinja2\filters.py", line 13, in from markupsafe import soft_unicode ImportError: cannot import name 'soft_unicode' from 'markupsafe' (c:\software\python\lib\site-packages\markupsafe\init__.py)

also get this error

Traceback (most recent call last): File "C:\Software\python\lib\runpy.py", line 194, in _run_module_as_main return _run_code(code, main_globals, None, File "C:\Software\python\lib\runpy.py", line 87, in _run_code exec(code, run_globals) File "C:\Software\python\lib\site-packages\FreeTAKServer\controllers\services\FTS.py", line 13, in from FreeTAKServer.controllers.services.TCPDataPackageService import TCPDataPackageService as TCPFlaskFunctions File "C:\Software\python\lib\site-packages\FreeTAKServer\controllers\services\TCPDataPackageService.py", line 1, in from .DataPackageServer import FlaskFunctions, Path, dp_directory, os, app, eventlet, const File "C:\Software\python\lib\site-packages\FreeTAKServer\controllers\services\DataPackageServer.py", line 13, in from FreeTAKServer.controllers.DatabaseControllers.DatabaseController import DatabaseController File "C:\Software\python\lib\site-packages\FreeTAKServer\controllers\DatabaseControllers\DatabaseController.py", line 1, in import FreeTAKServer.controllers.DatabaseControllers.table_controllers File "C:\Software\python\lib\site-packages\FreeTAKServer\controllers\DatabaseControllers\table_controllers.py", line 3, in from FreeTAKServer.model.SQLAlchemy.User import User File "C:\Software\python\lib\site-packages\FreeTAKServer\model\SQLAlchemy\User.py", line 18, in from FreeTAKServer.model.SQLAlchemy.system_user import SystemUser File "C:\Software\python\lib\site-packages\FreeTAKServer\model\SQLAlchemy\system_user.py", line 6, in from flask_login import UserMixin File "C:\Software\python\lib\site-packages\flask_login__init.py", line 16, in from .login_manager import LoginManager File "C:\Software\python\lib\site-packages\flask_login\login_manager.py", line 12, in from flask import (_request_ctx_stack, abort, current_app, flash, redirect, File "C:\Software\python\lib\site-packages\flask__init.py", line 14, in from jinja2 import escape File "C:\Software\python\lib\site-packages\jinja2\init__.py", line 12, in from .environment import Environment File "C:\Software\python\lib\site-packages\jinja2\environment.py", line 25, in from .defaults import BLOCK_END_STRING File "C:\Software\python\lib\site-packages\jinja2\defaults.py", line 3, in from .filters import FILTERS as DEFAULT_FILTERS # noqa: F401 File "C:\Software\python\lib\site-packages\jinja2\filters.py", line 13, in from markupsafe import soft_unicode ImportError: cannot import name 'soft_unicode' from 'markupsafe' (C:\Software\python\lib\site-packages\markupsafe\init__.py)

Please guide me

Cale-Torino commented 2 years ago

Looks like a Python issue. Check which version of Python are you using, also which version of the FreeTAKServer_Manager are you using?

Double check the MainConfig.py and the config.py files if there's no Python conflict usually the error is in those files.

arazi2021 commented 2 years ago

I'm using Python 3.8.9

lonewaffle commented 2 years ago

Did you ever figure this out? I'm having the same issue. Python 3.8.9, FreeTAKServer_Manager v1.0.0.5. My MainConfig.py and config.py are bone stock, so I'm not sure what to look for.

Cale-Torino commented 2 years ago

@lonewaffle @arazi2021 Strange I have tested my releases and can't reproduce.

What version of windows and are you using the WinForms or WPF Version?

Also check if you selected the .yaml option *Note you will have to setup the .yaml file if this is the case.

( I made a note on the repo page about selecting the .yaml file. https://github.com/Cale-Torino/FreeTAKServer_Manager)

You select the config when you first run the server. image

Also please note I tested the software using Python 3.8.10

lonewaffle commented 2 years ago

I'm using the WinForms version on a clean install of Windows 10 LTSC 2021 (21H2). I don't remember being prompted to choose to use the YAML file or not. Perhaps it's not getting that far in starting the server for the first time?

I will switch to Python 3.8.10 and see if that helps.

Cale-Torino commented 2 years ago

@lonewaffle @arazi2021 Let me know if it works

lonewaffle commented 2 years ago

Unfortunately 3.8.10 didn't help. Out of curiosity, what version of Windows are you testing with? I'm also seeing the same issue when I test on a Windows 11 computer, so I'm wondering if something changed in later builds of Windows that's causing this issue.

lonewaffle commented 2 years ago

I just found that the issue is with markupsafe. They apparently removed soft_unicode from the current release and now you have to specify 2.0.1 when installing to still have support for it. Removing the installed version and installing 2.0.1 removes this error and instead give the error: ImportError: cannot import name 'json' from 'itsdangerous'

This lead me to this page: https://itsmycode.com/importerror-cannot-import-name-json-from-itsdangerous/

I followed the advice and installed Flask 1.1.4 and now it's working.

So, in summary, I did the following:

pip uninstall markupsafe
pip install markupsafe==2.0.1
pip install Flask==1.1.4

and now the server starts.

Cale-Torino commented 2 years ago

@lonewaffle That's good news. There's a list of all the required Python libraries in the requirements.txt file if you are interested they are automatically installed with the server.