I am new to deployment with Python. I have finished my python application and tested it too. I want to release it as an application (like the commonly used apps) for Windows (for now). I did look around other answers and also tried some blogs for the process.
At the time, I have tried py2exe, pyinstaller and also a simple self-extracting archive. But what I want is a simple distributable setup or application release which I can provide to the users and not requiring them to install python or any of my dependencies externally.
pyinstaller does the packaging and also fulfills my requirements but my code has some async functions (specifically awaiting the functions from requests module), and after the pyinstaller build finishes, my code does not wait for them and executes all along like synchronous code. This makes my program crash.
I need this solution to simple to implement, so that I may ship this system quickly.
Edit
These are the sequence of commands I am using to build my application. Both host and target platforms are Windows Machines (x64 preferably).
To build the application in the current directory using pyinstaller.
$ pyinstaller -i logo.ico -n Engine engine.py
engine.py is the entry point of my app and I read the docs of pyinstaller and Engine is the name of the App (just a fancy name).
This gives me two folders build/ and dist/ in the current working directory. I get the Engine.exe in the dist/ folder, but as stated does not wait for async methods to complete and exits before they even log their results to the console.