Releases: MrBooks36/PyCompyle
1.2.1
1.2.0
PyCompyle v1.2.0 Release
Released: December 7 2025
Author: MrBooks36
Notice: there are a few bugs in the version that prevents it from working. Please use the latest version or hotfix 1.2.1 (Hang on we did this last release. I forgot to test the built version (I know, I suck))
What is PyCompyle?
PyCompyle is a lightweight Python packaging tool designed to convert .py scripts into standalone .exe files. It offers advanced control over how the build is generated, what files are included, and how the output behaves.
Key changes in v1.2.0
-
Adds
--midwaycommandargument to specify a cmd command to be executed before the wrapping phase -
Adds
--upx-threadsargument to control how many threads are used for upx compression -
Adds caching to upx compressed binaries to save compile time. (Cache file that are older then 30 days will be removed to same space)
-
Adds a debug option to the bootloader accessed with the environment variable
PYCOMPYLEDEBUGset to True -
Adds
--pyargargument that adds arguments to the startup of the python interpreter. (e.g.-m,-X,,-c "print('Hello world!')") -
Adds the
--include-scriptargument that adds a specified file located in PYTHONPATH/Scripts'. (e.g. '--include-script=pip.exe') -
Adds the
--copy-includeargument that will add PYTHONPATH/include to the build -
Changed license back to the BSD-3-Clause license
-
PLUGIN SUPPORT!!!!!!!!!
- New argument
--pluginor-plto specific a plugin to load. Works with relative or full paths and names for the built-in ones
More info on the below will be in the wiki when i get around to doing it
- Adds exec modules
init,midwayandend. - Adds the
plugindefault variable for exec modules, enabling access to other components of the plugin. - Adds import
special casesto support custom import-handling behavior. - Adds monkey-patch options for replacing and/or wrapping existing functions.
- New argument
-
Built-in plugins:
-
Other backend changes have been made as well but are not worth mentioning.
Roadmap (Future Plans)
- Linux support
- Rewrite of the bootloader in a different language (I'm looking into Nim)
📝 License
See LICENSE.md.
(c) 2025 MrBooks36. All rights reserved.
1.1.1
Release 1.1.0 hotfix 1 (1.1.1)
Released: September 23 2025
Author: MrBooks36
- Fixes the
--bootloaderflag - Fixes the problem when running the code as a module (
python -m PyCompyle)
Please note the the source code will be slightly different as there a few small fixes that do not change much where added later.
1.1.0
PyCompyle v1.1.0 Release
Released: September 14 2025
Author: MrBooks36
Notice: there are a few bugs in the version that prevents it from working. Please use the latest version or hotfix 1.1.1
What is PyCompyle?
PyCompyle is a lightweight Python packaging tool designed to convert .py scripts into standalone .exe files. It offers advanced control over how the build is generated, what files are included, and how the output behaves.
Key Features in v1.1.0
- New
--folderbuild option to build the python script into a folder instead of a onefile EXE. - New
--batbuild option to use a Windows Batchfile to start the created code instead of a EXE which can improve startup times and/or cli use. (Automatically implies--folder) - New
--zipbuild option to automatically zip a--folderbuild once done creating the build. (Automatically implies--folder) - Added AES encryption to the onefile bootloader help prevent being flagged by Window Defender. (Can be disabled with
--disable-password) - Compression: (All can be disabled with
--disable-compressing)- Added UPX com-pression to binary files
- Added a feature where files/folders that only contain raw python (no assets like images or json files etc.) will be moved to an embedded Zipfile called lib_c.zip to save space
Roadmap (Future Plans)
- Add generating PYD files while building to speed-up code and/or code security with Nuitka or Cython
- Plugin support
📝 License
See LICENSE.md.
(c) 2025 MrBooks36. All rights reserved.
1.0.0
PyCompyle v1.0.0 – Initial Release
Released: August 13, 2025
Author: MrBooks36
What is PyCompyle?
PyCompyle is a lightweight Python packaging tool designed to convert .py scripts into standalone .exe files. It offers advanced control over how the build is generated, what files are included, and how the output behaves.
Key Features in v1.0.0
- Package any
.pyfile into a.exe - Defender-friendly builds — avoids typical false-positive triggers.
- Optional icon injection (
--icon) for a professional appearance. - Force UAC elevation prompt with
--uac. - Support for GUI apps via
--windowedmode (no console window). - Custom post-processing:
- Copy arbitrary files/folders into the build dir (
--copy). - Auto-resolves local and standard library imports.
- Manual override support for missed packages (
--package). linked_imports.jsonsupport with optional--force-refresh.- Option to preserve intermediate build files (
--keepfiles). - Debugging & diagnostics:
- Verbose mode (
--verbose) - Debug mode (
--debug) = verbose + keep files - windowed
- Verbose mode (
- Clean CLI interface (
python -m PyCompyle)
Example Command
python -m PyCompyle --force-refresh --icon="myicon.ico" --verbose --windowed --package=numpy --package=ollama my_script.py
Known Limitations
- No support for one folder builds (yet).
- PyPy is not supported.
🔮 Roadmap (Future Plans)
--onefolderflag to build into a folder not a standalone exe- PyPy runtime embedding
Bug Reporting & Contributions
Found a bug? Import not detected?
Submit an issue at: https://github.com/MrBooks36/PyCompyle/issues
📝 License
BSD 3-Clause License – See LICENSE.md for full terms.
(c) 2025 MrBooks36. All rights reserved.