Python Forum
[redistribution] Reduce number + size of dependencies? - Printable Version

+- Python Forum (https://python-forum.io)
+-- Forum: Python Coding (https://python-forum.io/forum-7.html)
+--- Forum: General Coding Help (https://python-forum.io/forum-8.html)
+--- Thread: [redistribution] Reduce number + size of dependencies? (/thread-43953.html)



[redistribution] Reduce number + size of dependencies? - Winfried - Jan-31-2025

Hello,

Using…
pyinstaller --clean myscript.py
… I notice that a simple script running Python 3.12.0 that just reads a URL from the clipboard and then launches a CLI application to download a video from the Net needs 100MB worth of dependencies :-/

Is there a way to trim the fat, or are they necessarily all neeeded? For instance, why does a command-line Python script requires PyQt5 and its 80MB module?

FWIW, here's the modules the script imports:
import subprocess
import shlex
import sys
import pyperclip
from os import system
import re
Thank you.

The sub-directory _internal contains those files + subdirs:
api-ms-win-core-console-l1-1-0.dll
api-ms-win-core-datetime-l1-1-0.dll
api-ms-win-core-debug-l1-1-0.dll
api-ms-win-core-errorhandling-l1-1-0.dll
api-ms-win-core-fibers-l1-1-0.dll
api-ms-win-core-file-l1-1-0.dll
api-ms-win-core-file-l1-2-0.dll
api-ms-win-core-file-l2-1-0.dll
api-ms-win-core-handle-l1-1-0.dll
api-ms-win-core-heap-l1-1-0.dll
api-ms-win-core-interlocked-l1-1-0.dll
api-ms-win-core-libraryloader-l1-1-0.dll
api-ms-win-core-localization-l1-2-0.dll
api-ms-win-core-memory-l1-1-0.dll
api-ms-win-core-namedpipe-l1-1-0.dll
api-ms-win-core-processenvironment-l1-1-0.dll
api-ms-win-core-processthreads-l1-1-0.dll
api-ms-win-core-processthreads-l1-1-1.dll
api-ms-win-core-profile-l1-1-0.dll
api-ms-win-core-rtlsupport-l1-1-0.dll
api-ms-win-core-string-l1-1-0.dll
api-ms-win-core-synch-l1-1-0.dll
api-ms-win-core-synch-l1-2-0.dll
api-ms-win-core-sysinfo-l1-1-0.dll
api-ms-win-core-timezone-l1-1-0.dll
api-ms-win-core-util-l1-1-0.dll
api-ms-win-crt-conio-l1-1-0.dll
api-ms-win-crt-convert-l1-1-0.dll
api-ms-win-crt-environment-l1-1-0.dll
api-ms-win-crt-filesystem-l1-1-0.dll
api-ms-win-crt-heap-l1-1-0.dll
api-ms-win-crt-locale-l1-1-0.dll
api-ms-win-crt-math-l1-1-0.dll
api-ms-win-crt-process-l1-1-0.dll
api-ms-win-crt-runtime-l1-1-0.dll
api-ms-win-crt-stdio-l1-1-0.dll
api-ms-win-crt-string-l1-1-0.dll
api-ms-win-crt-time-l1-1-0.dll
api-ms-win-crt-utility-l1-1-0.dll
base_library.zip
libcrypto-3.dll
libffi-8.dll
list.txt
PyQt5
python3.dll
python312.dll
select.pyd
ucrtbase.dll
unicodedata.pyd
VCRUNTIME140.dll
VCRUNTIME140_1.dll
_bz2.pyd
_ctypes.pyd
_decimal.pyd
_hashlib.pyd
_lzma.pyd
_socket.pyd
_wmi.pyd


RE: [redistribution] Reduce number + size of dependencies? - Winfried - Jan-31-2025

Uninstalling the PyQT5 module which I installed once but never used removed most of the cruft (80MB), although pyinstaller shouldn't have included it in the first place.


RE: [redistribution] Reduce number + size of dependencies? - snippsat - Jan-31-2025

Always build in virtual environment with only needed packages.
Same as advice as i give here a long time ago.