Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Convert Python packages into a single script
Python
Tag: 0.1.8

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
scripts
stickytape
test_scripts
tests
.gitignore
LICENSE
MANIFEST.in
README.md
makefile
requirements.txt
setup.py

README.md

stickytape: Convert Python packages into a single script

Stickytape can be used to convert a Python script and any Python modules it depends into a single-file Python script. You can tell stickytape which directories to search using the --add-python-path argument. For instance:

stickytape scripts/blah --add-python-path . > /tmp/blah-standalone

Or to output directly to a file:

stickytape scripts/blah --add-python-path . --output-file /tmp/blah-standalone

You can also point stickytape towards a Python binary that it should use sys.path from, for instance the Python binary inside a virtualenv:

stickytape scripts/blah --python-binary _virtualenv/bin/python --output-file /tmp/blah-standalone

As you might expect with a program that munges source files, there are a few caveats:

  • Detection of imports is done using a fairly simple regex. For instance, things will go horribly wrong if you use have two import statements on the same line separated by a semi-colon. Similarly, imports using importlib won't be detected.

  • Anything that relies on the specific location of files will probably no longer work. In other words, __file__ probably isn't all that useful.

  • Any files that aren't imported won't be included. Static data that might be part of your project, such as other text files or images, won't be included.

Something went wrong with that request. Please try again.