cement.utils.misc
¶
Misc utilities.
-
cement.utils.misc.
init_defaults
(*sections)[source]¶ Returns a standard dictionary object to use for application defaults. If sections are given, it will create a nested dict for each section name. This is sometimes more useful, or cleaner than creating an entire dict set (often used in testing).
Parameters: sections – Section keys to create nested dictionaries for. Returns: Dictionary of nested dictionaries (sections) Return type: dict Example
from cement import App, init_defaults defaults = init_defaults('myapp', 'section2', 'section3') defaults['myapp']['debug'] = False defaults['section2']['foo'] = 'bar defaults['section3']['foo2'] = 'bar2' app = App('myapp', config_defaults=defaults)
-
cement.utils.misc.
is_true
(item)[source]¶ Given a value, determine if it is one of
[True, 'true', 'yes', 'y', 'on', '1', 1,]
(note: strings are converted to lowercase before comparison).Parameters: item – The item to convert to a boolean. Returns: True
ifitem
equates to a true-ish value,False
- otherwise
Return type: bool
-
cement.utils.misc.
minimal_logger
(namespace, debug=False)[source]¶ Setup just enough for cement to be able to do debug logging. This is the logger used by the Cement framework, which is setup and accessed before the application is functional (and more importantly before the applications log handler is usable).
Parameters: namespace (str) – The logging namespace. This is generally __name__
or anything you want.Keyword Arguments: debug (bool) – Toggle debug output. Returns: A Logger object Return type: object Example
from cement.utils.misc import minimal_logger LOG = minimal_logger('cement') LOG.debug('This is a debug message')
-
cement.utils.misc.
rando
(salt=None)[source]¶ Generate a random hash for whatever purpose. Useful for testing or any other time that something random is required.
Parameters: salt (str) – Optional salt
, ifNone
thenrandom.random()
is used.Returns: Random hash Return type: str Example
from cement.utils.misc import rando rando('dAhn49amvnah3m')
-
cement.utils.misc.
random
() → x in the interval [0, 1).¶
-
cement.utils.misc.
wrap
(text, width=77, indent='', long_words=False, hyphens=False)[source]¶ Wrap text for cleaner output (this is a simple wrapper around
textwrap.TextWrapper
in the standard library).Parameters: text (str) – The text to wrap
Keyword Arguments: Returns: The wrapped string
Return type: