My app auto-updates by:
- regularly checking for new versions of my app on PyPi,
- downloading and extracting the latest one,
- replacing the source files, and restarting.
My project has the following structure:
app.py
project/
utils.py
core.py
New versions are automatically downloaded from PyPi with pip download --no-deps --no-binary :all: project==X.X.X
, this downloads the project-X.X.X.tar.gz
which is extracted and replaces the above project/
folder. The app is then restarted.
Now when I package my project with PyInstaller, it compiles everything into an executable so there are no sources to be replaced.
Is it possible to have the project sources in the _internal
folder created by PyInstaller, and have them used, instead of having everything compiled in the executable?