ANNOUNCE: VendorID-1.0.0

Ulrich Berning ulrich.berning at
Mon Jan 31 12:03:19 CET 2005

I'm pleased to announce the first public release of VendorID-1.0.0.

You can download it from


What is it?

VendorID is a Python package, that contains functionality to restrict
the availability of dynamic loadable extension modules to specific
Python interpreters. Only specific Python interpreters are allowed to
import such extension modules. A generic Python interpreter will fail to
import such extensions.

By the term specific Python interpreter, we mean a binary executable
that runs a single specific Python application, something you create
with tools like freeze or py2exe.



The motivation for the VendorID package was the following condition in
Trolltech's commercial Qt license agreement.

"Applications may not pass on functionality which in any way makes it
possible for others to create software with the Licensed Software;"

This software provides a simple mechanism for conforming to this

Because I want to create commercial applications based on Python, Qt
and PyQt, I either had to make the PyQt modules builtin into the
specific interpreter (resulting in huge executables), or I had to find
a solution to prevent the import of these modules from a generic Python


Contents of the Package

The VendorID package contains a distutils setup script that generates
the necessary code and builds a static library and a shared module. The
package also contains a Python script named that you can use to
create application specific executables. See the documentation in the
doc directory of the package.



VendorID is licensed under the same terms and conditions as Python
itself. See the file LICENSE.txt of the package for more details.
VendorID places no restrictions on the license you may apply to
interpreters and extension modules that make use of the VendorID


If you have any questions or enhancement suggestions, either contact me
directly (ulrich.berning at or use the PyKDE mailing list.

Thanks to Phil Thompson for hosting the package at

Ulli Berning

More information about the Python-announce-list mailing list