view roundup/exceptions.py @ 8519:19152fd94fcf

bug: move import findargspec out of Permission __init__ method We have a few places where imports are done inside a method/function. For methods that are called once it's not an issue but the Permissions __init__ method is called often and accounts for > 10% of the time in the __init__ function when looking at wsgi-lineprof output. So move it to the module level.
author John Rouillard <rouilj@ieee.org>
date Mon, 02 Feb 2026 23:41:36 -0500
parents e882a5d52ae5
children
line wrap: on
line source

"""Exceptions for use across all Roundup components.
"""

__docformat__ = 'restructuredtext'


class RoundupException(Exception):
    pass


class LoginError(RoundupException):
    pass


class Unauthorised(RoundupException):
    pass


class RejectBase(RoundupException):
    pass


class Reject(RejectBase):
    """An auditor may raise this exception when the current create or set
    operation should be stopped.

    It is up to the specific interface invoking the create or set to
    handle this exception sanely. For example:

    - mailgw will trap and ignore Reject for file attachments and messages
    - cgi will trap and present the exception in a nice format
    """
    pass


class RejectRaw(Reject):
    """
    Performs the same function as Reject, except HTML in the message is not
    escaped when displayed to the user.
    """
    pass


class UsageError(ValueError):
    pass

# vim: set filetype=python ts=4 sw=4 et si

Roundup Issue Tracker: http://roundup-tracker.org/