You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Describe the bug
I have been maintaining an Arch Linux package for Specter Desktop. Arch recently moved to Python 3.12 and I suspect the Python upgrade is responsible for a behavior change in random.py which breaks the run process.
To Reproduce
Steps to reproduce the behavior:
Run Specter Desktop with this command on Arch Linux running Python 3.12: python -m cryptoadvance.specter server --debug
Expected behavior
Specter Desktop should run normally as it did in Python 3.11 on Arch Linux
Desktop (please complete the following information):
Arch Linux
Running at Arch Linux CLI
Specter Version 2.0.5
Additional context
Here is the full error message:
$ python -m cryptoadvance.specter server --debug
Traceback (most recent call last):
File "", line 198, in _run_module_as_main
File "", line 88, in _run_code
File "/usr/lib/python3.12/site-packages/cryptoadvance/specter/main.py", line 2, in
from .cli import entry_point
File "/usr/lib/python3.12/site-packages/cryptoadvance/specter/cli/init.py", line 6, in
from ..server import setup_logging
File "/usr/lib/python3.12/site-packages/cryptoadvance/specter/server.py", line 31, in
from .hwi_server import hwi_server
File "/usr/lib/python3.12/site-packages/cryptoadvance/specter/hwi_server.py", line 14, in
rand = random.randint(0, 1e32) # to force style refresh
^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/random.py", line 336, in randint
return self.randrange(a, b+1)
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/random.py", line 312, in randrange
istop = _index(stop)
^^^^^^^^^^^^
TypeError: 'float' object cannot be interpreted as an integer
The text was updated successfully, but these errors were encountered:
It seems that in Python 3.12 there was a change to the random library. "random.randint" will not accept "1e32" because the python exponent function returns an float instead of an integer. A work around would be to change the offending line to:
rand = random.randint(0, int(1e32))
This line is used in a number of spots in Specter.
Describe the bug
I have been maintaining an Arch Linux package for Specter Desktop. Arch recently moved to Python 3.12 and I suspect the Python upgrade is responsible for a behavior change in random.py which breaks the run process.
To Reproduce
Steps to reproduce the behavior:
Run Specter Desktop with this command on Arch Linux running Python 3.12:
python -m cryptoadvance.specter server --debug
Expected behavior
Specter Desktop should run normally as it did in Python 3.11 on Arch Linux
Desktop (please complete the following information):
Additional context
Here is the full error message:
$ python -m cryptoadvance.specter server --debug
Traceback (most recent call last):
File "", line 198, in _run_module_as_main
File "", line 88, in _run_code
File "/usr/lib/python3.12/site-packages/cryptoadvance/specter/main.py", line 2, in
from .cli import entry_point
File "/usr/lib/python3.12/site-packages/cryptoadvance/specter/cli/init.py", line 6, in
from ..server import setup_logging
File "/usr/lib/python3.12/site-packages/cryptoadvance/specter/server.py", line 31, in
from .hwi_server import hwi_server
File "/usr/lib/python3.12/site-packages/cryptoadvance/specter/hwi_server.py", line 14, in
rand = random.randint(0, 1e32) # to force style refresh
^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/random.py", line 336, in randint
return self.randrange(a, b+1)
^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.12/random.py", line 312, in randrange
istop = _index(stop)
^^^^^^^^^^^^
TypeError: 'float' object cannot be interpreted as an integer
The text was updated successfully, but these errors were encountered: