Metadata-Version: 2.1
Name: pyaux
Version: 2.8.0
Summary: pyaux
Home-page: https://gitlab.com/hoverhell/pyaux
Author: HoverHell
Author-email: hoverhell@gmail.com
License: UNKNOWN
Download-URL: https://gitlab.com/hoverhell/pyaux/-/archive/2.8.0/pyaux-2.8.0.tar.bz2
Description: 
        Collection of helpers and useful things for Python
        
        pyaux
        =====
        
        Personal collection of helpers and often-useful snippets for Python
        
        Install the latest version with
        `pip install -U "git+https://gitlab.com/hoverhell/pyaux.git#egg=pyaux"`
        
        
        Contains:
        
        * **bubble**: syntactic sugar for super(...)
        * **window**: iterator over a 'window' of N adjacent elements
        * **SmartDict**: attr→item dict subclass (e.g. for `d.key` instead of
          `d['key']`)
        * **DebugPlug**: recursive duck-object for debug and testing
          purposes
        * **repr_call**: convenient syntactically-appropriate representation of
          call arguments (also used in DebugPlug)
        * **fxrange**, **frange**, **dxrange**, **drange**: `xrange()` / `range()`
          equivalents for float (without error accumulation) and Decimal
        * **dict_fget**, **dict_fsetdefault**: versions of `dict.get` and
          `dict.setdefault` with lazy-computation of the default value
        * **interp**, **edi**: two versions (simplified and format-supporting) of
          convenient string interpolation (or simplified templating)
        * **split_list**: simple one-pass splitting of list into two by a condition
        * **use_cdecimal**: forced instance-wide use (by monkey-hack) of `cdecimal`
          instead of `decimal` (for performance)
        * **use_exc_ipdb**: set unhandled exception handler to run `ipdb.pm()`
        * **use_exc_log**: set unhandled exception handler to log (by `logging`) the
          exception and the stack trace including (when possible) the local
          variables.
        * **use_colorer**: monkey-patch `logging` for colored logging
        * **obj2dict**: recursive converter of tree-structure of classes into a
          tree-structure of dicts, e.g. for pretty-printing the result
        * **mk_logging_property**: make a property that debug-logs the value and
          caller info when set
        * Some other things that are too minor to be listed here.
        
        Also, in separate submodules:
        
        * **psql**: helpers for saving Django ORM objects into an SQL 'COPY'-like
          file and loading it in one SQL command (for high-performance loading of
          large amounts of data into the database)
        * **lzmah**: lzma compress (as function and as an executable file); also
          provides a function `unjsllzma` to stream-read (json) lines from a
          pylzma-compressed file
        * **lzcat**: lzcat for pylzma-specific format (as function and as an
          executale file)
        * **runlib**: various things for runscripts:
        
          * **init_logging**: logging.basicConfig with useful defaults (for
            development runscripts).
          * **sigeventer**: list-based signal handler for SIGINT and SIGTERM (for
            appending handler functions, similarly to `atexit`)
          * **make_manhole**: init a Twisted SSH manhole with set up locals,
            key-based auth, etc.
        
        * **twisted_aux**: use_exc_log-equivalent for twisted (and a helper to
          remove the default logger).
        
Platform: UNKNOWN
Provides-Extra: known
Provides-Extra: recommended
Provides-Extra: req
