We need to upgrade because the current version we use is 2.6.0 which won't work with Python 3.8.
However, our latest attempts to upgrade to version 3.0.2 failed. It appears there is a problem for cx_Freeze to package jsonschema.
Traceback (most recent call last):
File "C:\Python36-x64\lib\site-packages\cx_Freeze\initscripts\__startup__.py", line 14, in run
File "C:\Python36-x64\lib\site-packages\cx_Freeze\initscripts\Console.py", line 26, in run
File "gns3-gui/gns3/main.py", line 55, in <module>
File "<frozen importlib._bootstrap>", line 971, in _find_and_load
File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 656, in _load_unlocked
File "<frozen importlib._bootstrap>", line 626, in _load_backward_compatible
File "./gns3-gui\gns3\main_window.py", line 53, in <module>
File "<frozen importlib._bootstrap>", line 971, in _find_and_load
File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 656, in _load_unlocked
File "<frozen importlib._bootstrap>", line 626, in _load_backward_compatible
File "./gns3-gui\gns3\dialogs\appliance_wizard.py", line 27, in <module>
File "<frozen importlib._bootstrap>", line 971, in _find_and_load
File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 656, in _load_unlocked
File "<frozen importlib._bootstrap>", line 626, in _load_backward_compatible
File "./gns3-gui\gns3\registry\appliance.py", line 23, in <module>
File "<frozen importlib._bootstrap>", line 971, in _find_and_load
File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 656, in _load_unlocked
File "<frozen importlib._bootstrap>", line 626, in _load_backward_compatible
File "C:\Python36-x64\lib\site-packages\jsonschema\__init__.py", line 33, in <module>
File "C:\Python36-x64\lib\site-packages\pkg_resources\__init__.py", line 561, in get_distribution
File "C:\Python36-x64\lib\site-packages\pkg_resources\__init__.py", line 441, in get_provider
File "C:\Python36-x64\lib\site-packages\pkg_resources\__init__.py", line 962, in require
File "C:\Python36-x64\lib\site-packages\pkg_resources\__init__.py", line 849, in resolve
pkg_resources.DistributionNotFound: The 'jsonschema' distribution was not found and is required by the application
A workaround is to stick to jsonschema 2.6.0 for Windows and macOS since we control the embedded version of Python.
Just tested, looks like jsonschema 2.6.0 still work fine on Python 3.8...
Hello, I'm gns3 maintainer for gentoo, would be great to see this jsonschema version bump revisited, for the same reasons mentioned above, we need to see python3.8 compatibility in order to maintain it in our portage tree.
Thanks
This should work in our next release. Thanks :+1:
jsonschema version 3.2.0 will be installed with Python >= 3.8
jsonschema version 2.6.0 will be installed with Python < 3.8
Most helpful comment
Hello, I'm gns3 maintainer for gentoo, would be great to see this jsonschema version bump revisited, for the same reasons mentioned above, we need to see python3.8 compatibility in order to maintain it in our portage tree.
Thanks