KOOKIIEStudios / PalCON-Discord

A Python-based Discord bot for PalWorld server administration via RCON
MIT License
18 stars 3 forks source link

ModuleNotFoundError: No module named 'tomllib' #2

Closed MontyTheSoftwareEngineer closed 7 months ago

MontyTheSoftwareEngineer commented 7 months ago

After running ./setup.sh on ubuntu, ./start.sh fails with no module named tomllib venv or global.

ubuntu@ip-172-31-11-51:~/PalCON-Discord$ ./start.sh This script will launch the program. 1) Virtual Python Environment (recommended) 2) Global Python Environment 3) Quit Please select the environment to run the source code with: 2 [INFO] You have selected: 2) Global Python Environment Traceback (most recent call last): File "/home/ubuntu/PalCON-Discord/main.py", line 7, in from client import fetch_config, Client File "/home/ubuntu/PalCON-Discord/client.py", line 1, in import tomllib ModuleNotFoundError: No module named 'tomllib'

Bratah123 commented 7 months ago

Hey! This error is caused by an older version of python. The latest version of python AFAIK with tomllib is python 3.11 which is not currently natively supported in ubuntu as of now.

To add more salt to the wound discord.py uses multidict which is not on python3.12 on Linux as of typing this message.

We are currently hosting this bot on Ubuntu ourselves and had some workarounds, we will look into this issue further more later today though.

Although we may just use yaml or some sort of other data structure that has multi-platform compatibilities.

Workarounds

manually installed python 3.11 alongside distutils, pip, and venv for that instance https://github.com/deadsnakes builds for ubuntu!

Stay tuned though, hope this helps.

KOOKIIEStudios commented 7 months ago

Hi, it's as Brandon says. The way we got this working on Jammy was to install Python3.11 after adding PPA deadsnakes to apt list, and then manually installing disutils, pip, and venv for the Python3.11 installation.

We then modified the setup and start scripts to use Python3.11 instead of Python3.

We only tested running this on Linux yesterday, so we haven't updated our docs to reflect the current state of Python support in the latest build of Ubuntu. Rest assured, this isn't a bug and we'll update the instructions on the README soon.

KOOKIIEStudios commented 7 months ago

Check README for new instructions for Ubuntu!