Files
pyinstaller/doc/CHANGES.txt
T
giovannibajo a7e04b85a6 Document recent changes
git-svn-id: http://svn.pyinstaller.org/trunk@643 8dd32b29-ccff-0310-8a9a-9233e24343b1
2009-03-04 14:52:35 +00:00

144 lines
7.1 KiB
Plaintext

(+ user visible changes, * internal stuff)
Changes since PyInstaller 1.3
-----------------------------
+ Preliminar Mac OSX support: both one-file and one-dir is supported;
for non-console applications, a bundle will be created. Thanks
to many people that worked on this across several months (Daniele
Zannotti, Matteo Bertini, Lorenzo Mancini).
* Add support for specifying data files in import hooks. PyInstaller
can now automatically bundle all data files or plugins required
for a certain 3rd-party package.
+ Add intelligent support for ctypes: PyInstaller is now able to
track all places in the source code where ctypes is used and
automatically bundle dynamic libraries accessed through ctypes.
(Thanks to Lorenzo Mancini for submitting this). This is very
useful when using ctypes with custom-made dynamic libraries.
+ Add support for new absolute imports in Python 2.5 (thanks to Arve
Knudsen).
+ Add support for cross-compilation: PyInstaller is now able to
build Windows executables when running under Linux. See documentation
for more details.
+ Add support for .egg files: PyInstaller is now able to bundle
.egg files as-is, and make them available at runtime through the
normal zipimport machinery.
+ Under Linux/Mac, it is now possible to build an executable even when
a system packages does not have .pyc or .pyo files available and the
system-directory can be written only by root. PyInstaller will in
fact generate the required .pyc/.pyo files on-the-fly within a
build-temporary directory.
+ Add import hooks for PyQt4 (thanks to Pascal Veret), with complete
plugin support.
+ 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)
+ Fixed problem with PyInstaller picking up the wrong copy of optparse.
* 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.
* Fixed random segfaults at startup on 64-bit platforms (like x86-64).
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)