root/trunk/doc/CHANGES.txt

Revision 555 (by giovannibajo, 11/20/08 16:05:54)

Document recent change

(+ user visible changes, * internal stuff)

Changes since PyInstaller 1.3
-----------------------------
 + Add support for new absolute imports in Python 2.5 (thanks to Arve
   Knudsen).
 + Add import hooks for PyQt4 (thanks to Pascal Veret)
 + Add import hooks for pyodbc (thanks to Don Dwiggins)
 + Add import hooks for cElementTree (both native version and Python
   2.5 version)
 + Add import hooks per SQLAlchemy (thanks to Greg Copeland)
 + Add import hooks for email in Python 2.5 (though it does not support
   the old-style Python 2.4 syntax with Python 2.5).
 + Add import hook for gadfly.
 + Improve import hooks for PyGTK (thanks to Marco Bonifazi and foxx).
 + Add fix for the very annoying "MSVCRT71 could not be extracted" bug,
   which was caused by the DLL being packaged twice (thanks to Idris
   Aykun).
 * Removed C++-style comments from the bootloader for compatibility
   with the AIX compiler.
 + Fix support for .py files with DOS line endings under Linux (fixes
   PyOpenGL).
 + Fix support for PIL when imported without top-level package ("import
   Image").
 + Fix PyXML import hook under NT (thanks to Lorenzo Mancini)
 * Improve correctness of the binary cache of UPX'd/strip'd files. This
   fixes problems when switching between multiple versions of the
   same third-party library (like e.g. wxPython allows to do).
 + Fix a stupid bug with modules importing optparse (under Linux) (thanks
   to Louai Al-Khanji).
 + Under Python 2.4+, if an exception is raised while importing a module
   inside a package, the module is now removed from the parent's
   namespace (to match the behaviour of Python itself).
 + Fix random race-condition at startup of one-file packages, that was
   causing this exception to be generated: "PYZ entry 'encodings' (0j)
   is not a valid code object".
 + Fix problem when having unicode strings among path elements.
 + Fix random exception ("bad file descriptor") with "prints" in non-console
   mode (actually a pythonw "bug" that's fixed in Python 3.0).
 * Sometimes the temporary directory did not get removed upon program
   exit, when running on Linux.


PyInstaller 1.3
---------------
 + Fix bug with user-provided icons disappearing from built executables
   when these were compressed with UPX.
 + Fix problems with packaging of applications using PIL (that was broken
   because of a bug in Python's import machinery, in recent Python
   versions). Also add a workaround including Tcl/Tk with PIL unless
   ImageTk is imported.
 + (Windows) When used under Windows XP, packaged programs now have
   the correct look & feel and follow user's themes (thanks to the manifest
   file being linked within the generated executable). This is especially
   useful for applications using wxPython.
 + Fix a buffer overrun in the bootloader (which could lead to a crash)
   when the built executable is run from within a deep directory (more than
   70-80 characters in the pathname).
 * Bootstrap modules are now compressed in the executable (so that they
   are not visible in plaintext by just looking at it with a hex editor).
 * Fixed a regression introduced in 1.1: under Linux, the bootloader does
   not depend on libpythonX.X.so anymore.


PyInstaller 1.2
---------------
 + Fix a crash when invoking UPX with certain kinds of builds.
 + Fix icon support by re-adding a resource section in the bootloader
   executable.


PyInstaller 1.1
---------------

 + (Windows) Make single-file packages not depend on MSVCRT71.DLL anymore,
   even under Python 2.4. You can eventually ship your programs really as
   single-file executables, even when using the newest Python version!
 + Fix problem with incorrect python path detection. Now using helpers from
   distutils.
 + Fix problem with rare encodings introduced in newer Python versions: now all
   the encodings are automatically found and included, so this problem should
   be gone forever.
 + Fix building of COM servers (was broken in 1.0 because of the new build
   system).
 + Mimic Python 2.4 behaviour with broken imports: sys.modules is cleaned up
   afterwise. This allows to package SQLObject applications under Windows
   with Python 2.4 and above.
 + Add import hook for the following packages:
     + GTK
     + PyOpenGL (tested 2.0.1.09)
     + dsnpython (tested 1.3.4)
     + KInterasDB (courtesy of Eugene Prigorodov)
 + Fix packaging of code using "time.strptime" under Python 2.3+.
 + (Linux) Ignore linux-gate.so while calculating dependencies (fix provided
   by Vikram Aggarwal).
 + (Windows) With Python 2.4, setup UPX properly so to be able to compress
   binaries generated with Visual Studio .NET 2003 (such as most of the
   extensions). UPX 1.92+ is needed for this.


PyInstaller 1.0 (with respect to McMillan's Python Installer 5b5):
---------------

 + Add support for Python 2.3 (fix packaging of codecs).
 + Add support for Python 2.4 (under Windows, needed to recompiled the
   bootloader with a different compiler version).
 + Fix support for Python 1.5.2, should be fully functional now (required
   to rewrite some parts of the string module for the bootloader).
 + Fix a rare bug in extracting the dependencies of a DLL (bug in PE header
   parser).
 + Fix packaging of PyQt programs (needed an import hook for a hidden import).
 + Fix imports calculation for modules using the "from __init__ import" syntax.
 + Fix a packaging bug when a module was being import both through binary
   dependency and direct import.

 * Restyle documentation (now using docutils and reStructuredText).
 * New Windows build system for automatic compilations of bootloader in all
   the required flavours (using Scons)
Note: See TracBrowser for help on using the browser.