Changelogs » Auto-py-to-exe



Sometimes Eel will try to use an executable that doesn't exist (typically a blank string) to open Chrome. This makes sure the path exists before Eel tries to open Chrome.


When providing extra input at the bottom of the advanced tab, a space is now left before the file to be packaged.


Ignore PyInstaller version checks if the version cannot be converted to a float.
Commonly occurs when using a development branch of PyInstaller.


Fixed 58: Do not supply keyword arguments to os.startfile.


- File selection no longer freezes on MacOS (56)
- When the server stops, the UI now closes
- Saving configurations to a JSON file now asks to save the file as a .json


Configurations allow you to save a state that you had previously used so you don't have to configure the whole interface again and instead just make small changes. Supports JSON file and clipboard imports/exports.

Other changes:
- --key is not commasplit, it's a single value
- Now build additional file blocks using DOM operations
- Additional files now have sources checked that they exist
- Added some spacing in the UI advanced tab
- When calling the script with `--version` will print the version
- Executing `auto-py-to-exe` from the command line actually reads arguments now
- Requirements are now consistent


- Use absolute directories when packaging and opening the output folder
- Use os.startfile on Windows to open a folder in explorer
- Implemented changes for 54
- Added checks for folders
- Renamed "Search" buttons "Browse" buttons
- Don't capture sys.stderr until the UI has started
- Remove the directory after the bottle server stops, not after the whole script.


- Fixed Eel's breaking changes of relocation functions
- Inverted the recursion limit toggle - it is now set to 5000 by default
- When selecting specific files, provide the user with specific file type options
- Made the --debug input a drop-down


Due to a constant amount questions being asked related to this project, I provided a link to a help article that covers most of the common issues people face at the end of a build.

I have also added some CSS hover effects to "show" the user they are interactive.


- Use a temporary directory for builds (speeds up consecutive builds)
- Fix for ModuleNotFoundError not in Python 2
- Recursion limit assistance
- Show the command being executed in GUI output
- Make additional file destinations more dynamic on selection


This release contains general improvements to the interface.
- Allow section headers to be click-able to open/close a section (no longer highlight-able)
- Fixed header alignment
- Made header elements links to the GitHub repo (shine effect)


Support for Python 3.7 has been added now that PyInstaller 3.4 has been released.
\+ Uses the new debug argument
\+ Added --bootloader-ignore-signals and --key


Handle errors more gracefully and route them straight to the interface. Users no longer need to focus on the console as errors will hopefully be output straight to the textarea in the interface.


If imported, do not check arguments when run() is called.


I shouldn't force you to use chrome, so here is a solution.
- If chrome is not found, the default browser will open
- Chromes app mode can be ignored using --no-chrome; the default browser will be used
- argparse now handles arguments
- Values in --exclude-module and --hidden-import can be passed values that are separated by commas. Each item will be assigned to a flag of it's own.
*e.g. Input for --hidden-import: PyQt5, sip, my-module -> --hidden-import PyQt5 --hidden-import sip --hidden-import my-module*
- Added some notes


Instead of calling pyinstaller in another process, we now call it internally using
\~ Modified output passing
\+ Added handler for sys.stderr
\+ Filter using regular expressions in custom sys.stderr handler
\+ Check if all modules needed are installed (incl. tkinter)


Tested on Python 2 and Linux. Modifications complete and now working as expected.


\+ Add a note regarding how to put additional files in the projects root directory
~ Empty ports are now obtained by the OS
~ Fixed calling outside project root
~ When passing a file as an argument convert it to an absolute path
\+ Added support for non-utf-8 characters being transferred to the interface
~ Updated requirements.txt


This release is based of the improvement from issue 9 which revised how additional files are added. There are now three methods to add files.


Now that bugs have been found and fixed, this release should be ready to go.