Skip to main content

Erratum

code

travis coveralls

pypi

PyPI Package latest release Supported versions

Erratum is a python package that aims to make it easy to build in user friendly error messages into your project. Let’s look at the following example:

>>> my_square_root(-1)
<ipython-input-3-a8d1f1b285c7> in my_square_root(n)
      5
      6     if n < 0:
----> 7         raise ValueError("You can only take the square root of a positive number")
      8
      9     return math.sqrt(n)

ValueError: You can only take the square root of a positive number
More info --> https://github.com/alcarney/erratum

As you can see we get the error message as passed to the exception but we also get a link to a webpage where we can find more information about the error and what we need to do to fix it.

How? Well let’s look at the implementation of my_square_root

import math
from erratum import Error

class SqrtError(Error):
    url = "https://github.com/alcarney/erratum"

@SqrtError
def my_square_root(n):

    if n < 0:
        raise ValueError("You can only take the square root of a positive number")

    return math.sqrt(n)

Here we declare our error SqrtError by subclassing the Error class which allows us to set the url the user gets sent to find out more about the error. Then it is simply of decorating any function we want the function to apply to with the annotate method. This will cause any exception that is thrown from within the function to be tagged with the more info link.

Metadata

Release files for erratum 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for erratum 0.1.1
File Size Uploaded
erratum-0.1.1.tar.gz 5.2 kB Details

Release files / erratum-0.1.1.tar.gz

Download URL erratum-0.1.1.tar.gz
Size 5.2 kB
Tags Source
SHA-256 checksum
How to use checksums
ff01185b565557d1c9a4a27036cd528178873c4ad7ee7c5532aaceb9cfd88bf3
BLAKE2b-256 checksum
How to use checksums
6b8088482789be505975c585ea1f48f30a4a40ef6c812b11ad31a23b4ae0bfa3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.1.1 This release

1 release file

0.1.0

1 release file

0.0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page