Metadata-Version: 1.1
Name: prettyexc
Version: 0.6.0
Summary: Toolkit for human-friendly exception interface.
Home-page: https://github.com/youknowone/prettyexc
Author: Jeong YunWon
Author-email: jeong+prettyexc@youknowone.org
License: UNKNOWN
Description: Pretty-Exception for Python
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~
        
        .. image:: https://travis-ci.org/youknowone/prettyexc.svg?branch=master
            :target: https://travis-ci.org/youknowone/prettyexc
        
        prettyexc provides common exception representation to make human-readable exception in easy way.
        
        You can install the package from PyPI
        
            $ pip install prettyexc
        
        
        Example
        -------
        
        Prelude::
        	>>> from prettyexc import PrettyException
        
        Put and get your arguments always::
        	>>> class SimpleException(PrettyException):
        	...     pass
        	...
        	>>> e = SimpleException('any', 'plain', 'args', code=200, description='OK')
        	>>> raise e
        	Traceback (most recent call last):
        	  File "<stdin>", line 1, in <module>
        	__main__.SimpleException: "any","plain","args",code=200,description="OK"
        	SimpleException("any","plain","args",code=200,description="OK")
        	>>> print [e, e]
        	[<SimpleException("any","plain","args",code=200,description="OK")>, <SimpleException("any","plain","args",code=200,description="OK")>]
        
        Set default message::
            >>> class MessageException(PrettyException):
            ...     message = u'You should select a user'
            ...
            >>> e = MessageException(user_id=10)
            >>> raise e
            Traceback (most recent call last):
              File "<stdin>", line 1, in <module>
            __main__.MessageException: You should select a user
            >>> print [e, e]
            [<MessageException(user_id=10)>, <MessageException(user_id=10)>]
        
        Set message formatter::
            >>> class FormatException(PrettyException):
            ...     message_format = u'User {user_id} has no permission.'
            ...
            >>> e = FormatException(user_id=10)
            >>> raise e
            Traceback (most recent call last):
              File "<stdin>", line 1, in <module>
            __main__.FormatException: User 10 has no permission.
            >>> print e.message
            User 10 has no permission.
        
        Patch existing exceptions::
            >>> from prettyexc import patch
            >>> class AnException(Exception): pass
            ...
            >>> patch(AnException, PrettyException)
            >>> raise AnException(status=404)
            Traceback (most recent call last):
              File "<stdin>", line 1, in <module>
            __main__.AnException: status=404
Platform: UNKNOWN
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.6
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
