Skip to main content

wtpython

Project description

What The Python?!

Helping you find answers to the errors Python spits out.

Installation

You can find the source code on GitHub at: https://github.com/what-the-python/wtpython

To install directly please run:

pip install wtpython

Usage

When you are running a python script, you might eventually come across an error like so.

$ python example/runs_with_error.py
0
1
2
Traceback (most recent call last):
  File "/home/cohan/github/perceptive-porcupines/Perceptive-Porcupines-Code-Jam-8/example/runs_with_error.py", line 8, in <module>
    requests.get('badurl')
  File "/home/cohan/github/perceptive-porcupines/Perceptive-Porcupines-Code-Jam-8/.venv/lib/python3.9/site-packages/requests/api.py", line 76, in get
    return request('get', url, params=params, **kwargs)
  File "/home/cohan/github/perceptive-porcupines/Perceptive-Porcupines-Code-Jam-8/.venv/lib/python3.9/site-packages/requests/api.py", line 61, in request
    return session.request(method=method, url=url, **kwargs)
  File "/home/cohan/github/perceptive-porcupines/Perceptive-Porcupines-Code-Jam-8/.venv/lib/python3.9/site-packages/requests/sessions.py", line 528, in request
    prep = self.prepare_request(req)
  File "/home/cohan/github/perceptive-porcupines/Perceptive-Porcupines-Code-Jam-8/.venv/lib/python3.9/site-packages/requests/sessions.py", line 456, in prepare_request
    p.prepare(
  File "/home/cohan/github/perceptive-porcupines/Perceptive-Porcupines-Code-Jam-8/.venv/lib/python3.9/site-packages/requests/models.py", line 316, in prepare
    self.prepare_url(url, params)
  File "/home/cohan/github/perceptive-porcupines/Perceptive-Porcupines-Code-Jam-8/.venv/lib/python3.9/site-packages/requests/models.py", line 390, in prepare_url
    raise MissingSchema(error)
requests.exceptions.MissingSchema: Invalid URL 'badurl': No schema supplied. Perhaps you meant http://badurl?

In this case, simply replace python with wtpython and you will see the error message line as well as what installed packages were part of the stack trace.

$ wtpython example/runs_with_error.py

This will bring up something like below, the color scheme might be different based off how your terminal is setup.

wtpython TUI

Development Tools

  • Rich is a library to create styled text to the terminal. We'll use it for styling and formatting text.
  • Textual is a part of rich to further aid in TUI design. We'll use it to create widgets and adjust the change the layout of the TUI.
  • Flit is a simple way to develop Python packages. It's pretty lightweight but can do a lot. We'll use it to manage dependencies.
  • pre-commit will run a few tests before you can commit your code. Don't worry, it will make the changes for you. Worst case, you'll have to type the git add/commit lines twice.

Contribution instructions

To setup the system for development please fork the repository and do the below before submitting a pull request.

Create and activate a virtual environment

python -m venv .venv --prompt template
source .venv/bin/activate

Upgrade pip and install flit manually

python -m pip install -U pip flit

Install the package using symlinks

Run this command to install the package in your virtual environment. If you add dependencies to pyproject.toml, you'll have to run this command again to install the new dependencies. Make sure to pin the version in pyproject.toml.

flit install -s

Install pre-commit

The .pre-commit-config.yaml file is configured to perform the following tasks on each commit:

  • Validate yaml files
  • Validate toml files
  • Ensure a single new line on each file
  • Ensure trailing white spaces are removed
  • Format your code with black
  • Ensure your python imports are sorted consistently
pre-commit install

FAQ

  1. How do I clear all of the cached results?

You can clear the cache by using the --clear-cache param for the query or run delete the ~/.wtpython_cache.

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

wtpython-0.1.tar.gz (23.6 MB view hashes)

Uploaded Source

Built Distributions

wtpython-0.1.0-py3-none-any.whl (17.6 kB view hashes)

Uploaded Python 3

wtpython-0.1-py3-none-any.whl (10.5 kB view hashes)

Uploaded Python 3

Supported by

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