Skip to main content

Trade time for space when debugging your code.

Project description

Space Tracer

Trade Time for Space When You Debug

The Space Tracer displays what happens to your code so you can read through it like a book, instead of stepping through it like most debuggers. For example, here's a simple script that assigns a variable, then loops a few times making changes to that variable, before printing out the final message.

message = 'Hello, World'
for i in range(3):
    message += '!'
print(message)

A regular debugger would let you set break points, look at variable values, and step through the code. Space Tracer shows you the code with all of the variable assignments, and the loop iterations in columns. Here, you see the script on the left, and the variable values and loops on the right, so you can read through what happened, like reading a book.

message = 'Hello, World' | message = 'Hello, World' 
for i in range(3):       | i = 0                     | i = 1                      | i = 2 
    message += '!'       | message = 'Hello, World!' | message = 'Hello, World!!' | message = 'Hello, World!!!' 
print(message)           | print('Hello, World!!!') 

You can run Space Tracer as a command-line tool, or you can use it in the Live Coding in Python plugins for PyCharm, Emacs, and Sublime Text. See the Getting Started page for a full introduction.

Installing Space Tracer

Space Tracer is a regular Python package, so you can install it with pip install space_tracer. If you haven't installed Python packages before, read Brett Cannon's quick-and-dirty guide.

Then copy the script above into a file called hello.py, and run it with the space_tracer command:

$ space_tracer hello.py
message = 'Hello, World' | message = 'Hello, World' 
for i in range(3):       | i = 0                     | i = 1                      | i = 2 
    message += '!'       | message = 'Hello, World!' | message = 'Hello, World!!' | message = 'Hello, World!!!' 
print(message)           | print('Hello, World!!!') 
$

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

space_tracer-4.12.0.tar.gz (80.2 kB view details)

Uploaded Source

Built Distribution

space_tracer-4.12.0-py3-none-any.whl (42.7 kB view details)

Uploaded Python 3

File details

Details for the file space_tracer-4.12.0.tar.gz.

File metadata

  • Download URL: space_tracer-4.12.0.tar.gz
  • Upload date:
  • Size: 80.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for space_tracer-4.12.0.tar.gz
Algorithm Hash digest
SHA256 755beb512bd9a4086b164010b875766dba8f8881e09fadcb90a0f1d038f9398a
MD5 f39ec9b36343b68fa9acb6ecffdcd86a
BLAKE2b-256 59d70938934195cfd044f57ec176aa0fadbecec84c4a158b8e0de20eb99ed823

See more details on using hashes here.

File details

Details for the file space_tracer-4.12.0-py3-none-any.whl.

File metadata

File hashes

Hashes for space_tracer-4.12.0-py3-none-any.whl
Algorithm Hash digest
SHA256 76f285012ca829a2ff4839f2fa4bf3df3a084efcfbe5208c6b1531ea6ee28d58
MD5 47098ea6d6e33875f9d3092f993305f6
BLAKE2b-256 826ac973ad7da4bcf241967bee28c105911bac3ca4897ec089848bf3bc2fef34

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