Skip to main content

Convenience functions for the python execution stack.

Project description

I find the supplied python traceback facilities quite awkward. These functions provide convenient facilities.

Latest release 20220429: caller: return None if the stack index is out of range.

Function caller(frame_index=-3)

Return the Frame of the caller's caller. Returns None if frame_index is out of range.

Useful frame_index values:

  • -1: caller, this function
  • -2: invoker, who wants to know the caller
  • -3: the calling function of the invoker

The default from_index value is -3.

Class Frame(Frame, builtins.tuple)

A namedtuple for stack frame contents.

Function frames()

Return the current stack as a list of Frame objects.

Function stack_dump(fp=None, indent=0, Fs=None, skip=None)

Recite current or supplied stack to fp, default sys.stderr.

Parameters:

  • fp: the output file object, default sys.stderr
  • indent: how many spaces to indent the stack lines, default 0
  • Fs: the stack Frames to write, default obtained from the current stack
  • skip: the number of Frames to trim from the end of Fs; if Fs is None this defaults to 2 to trim the Frames for the stack_dump function and its call to frames(), otherwise the default is 0 to use the supplied Frames as is

Release Log

Release 20220429: caller: return None if the stack index is out of range.

Release 20190812: stack_dump(): trim the last 2 frames from the listing by default (they are part of stack_dump's implementation).

Release 20190101:

  • _Frame: rename .functionname to .funcname; caller: turn raw frames into Frames.
  • caller(): accept optional frame_index, default -3.

Release 20160827: Add stack_dump().

Release 20150115: PyPI metadata fixups.

Release 20150111: Tag for initial PyPI release of cs.py.stack.

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

cs.py.stack-20220429.tar.gz (3.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cs.py.stack-20220429-py3-none-any.whl (3.3 kB view details)

Uploaded Python 3

File details

Details for the file cs.py.stack-20220429.tar.gz.

File metadata

  • Download URL: cs.py.stack-20220429.tar.gz
  • Upload date:
  • Size: 3.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.1 readme-renderer/30.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.7 tqdm/4.62.3 importlib-metadata/4.8.2 keyring/23.3.0 rfc3986/1.5.0 colorama/0.4.4 CPython/3.9.12

File hashes

Hashes for cs.py.stack-20220429.tar.gz
Algorithm Hash digest
SHA256 ed358999dc23cc4a66121b550488726d82e137f8599ee9d2574e9cac6ee5473f
MD5 8ad10fe1306fda534c0ae1ac1962534c
BLAKE2b-256 273212ad13faa4c5a36d98072e43463befa1ca7063be4353f17679ff34790dcb

See more details on using hashes here.

File details

Details for the file cs.py.stack-20220429-py3-none-any.whl.

File metadata

  • Download URL: cs.py.stack-20220429-py3-none-any.whl
  • Upload date:
  • Size: 3.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.1 readme-renderer/30.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.7 tqdm/4.62.3 importlib-metadata/4.8.2 keyring/23.3.0 rfc3986/1.5.0 colorama/0.4.4 CPython/3.9.12

File hashes

Hashes for cs.py.stack-20220429-py3-none-any.whl
Algorithm Hash digest
SHA256 1e91b0b88538e1f05227a2c3050ded1ead4f0368a4ae5d71774db1017fa3a20e
MD5 4dbd51b6baf31e529d5e0564df6e503f
BLAKE2b-256 419935f43cccc077c011c849dc5d7b5766e0b3ecec616db071768d96e4f0be01

See more details on using hashes here.

Supported by

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