Emulates sanity for other people's dirty ass non-pep compliant code via only the /dirtiest/ of means.
Project description
Emulates sanity for other people’s dirty ass non-pep compliant code via only the /dirtiest/ of means.
Tested with Python 2.7, 3.5.
And that means?
Hi! I’m pysanity and I turn:
import logging
log = logging.getLogger(__name__)
Into the much less brain numbing:
from pysanity import logging
log = logging.get_logger(__name__)
All the while keeping your precious code completion working as expected thanks to a not grossly over-dynamic nature.
You’re welcome for my existence on PyPi.
Logging you say?
Hint: Try this out and stop accepting needless boilerplate in your code, stdlib or not:
import logging
import logging.config
import inspect
def _namespace_from_calling_context():
"""
Derive a namespace from the module containing the caller's caller.
:return str: the fully qualified python name of a module.
"""
return inspect.currentframe().f_back.f_back.f_globals['__name__']
def get_logger(name=None):
"""
Gets a logger instance with sensible defaults according to caller context.
:param str name: Logger name. Defaults to caller's `__name__`.
:return logging.Logger: Logger instance
"""
if not name:
name = _namespace_from_calling_context()
return logging.getLogger(name)
Installation
pip install pysanity
Running tests
Tox is used to handle testing multiple python versions.
tox
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pysanity-0.0.1.tar.gz
(18.3 kB
view hashes)