Skip to main content

Convert Python packages into a single script

Project description

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

stickytape-0.1.2.tar.gz (3.5 kB view details)

Uploaded Source

File details

Details for the file stickytape-0.1.2.tar.gz.

File metadata

  • Download URL: stickytape-0.1.2.tar.gz
  • Upload date:
  • Size: 3.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for stickytape-0.1.2.tar.gz
Algorithm Hash digest
SHA256 ac917d879cc970b928623eb6ccaa62b2c33f45d6a5394a17fe1967bc68b88837
MD5 9f84bc585c94e92b4d24f479020299f8
BLAKE2b-256 c391c318ca14b3cad2324f8c1b20b22c66613038c427351cb482b9ee7374b649

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page