1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205
|
Logilab's common library
========================
What's this ?
-------------
This package contains some modules used by differents Logilab's
projects.
It is released under the GNU Public License.
There is no documentation available yet but the source code should be
clean and well documented.
Designed to ease:
* handling command line options and configuration files
* writing interactive command line tools
* manipulation files and character strings
* interfacing to OmniORB
* generating SQL queries
* running unit tests
* manipulating tree structures
* generating text and HTML reports
* logging
* parsing XML processing instructions
* more...
Installation
------------
Extract the tarball, jump into the created directory and run ::
python setup.py install
For installation options, see ::
python setup.py install --help
Provided modules
----------------
Here is a brief description of the available modules :
* adbh.py:
helper functions for using database advanced. Supported RDBMS
include PostgreSQL, MySQL and sqlite. See also db.py.
* astutils:
Deprecated module. Use logilab.astng.
* bind.py :
Deprecated module.
Provides a way to optimize globals in certain functions by binding
their names to values provided in a dictionary.
* cache.py :
A cache implementation with a least recently used algorithm.
* clcommands.py:
helper functions for command line programs handling different
subcommands
* cli.py :
Command line interface helper classes (for interactive programs
using the command line)
* compat.py:
Transparent compatibility layer between different python version
* configuration.py :
Two mix-in classes to handle configuration from both command line
(using optik/optparse) and configuration file.
* corbautils.py:
Useful functions for use with the OmniORB CORBA library.
* daemon.py :
A daemon mix-in class.
* date.py:
date manipulation helper functions
* db.py :
A generic method to get a database connection. See also adbh.py.
* debugger.py:
pdb customization
* decorators.py:
useful decorators (cached, timed...)
* deprecation.py:
mark functions / classes as deprecated or moved
* fileutils.py :
Some file / file path manipulation utilities.
* graph.py:
graph manipulations, dot file generation
* html.py :
Deprecated module
Return an html formatted traceback from python exception infos.
* interface.py
Bases class for interfaces.
* logger.py :
Deprecated module : use logging from stdlib.
Define a logger interface and two concrete loggers : one which prints
everything on stdout, the other using syslog.
* logging_ext.py:
extensions to stdlib's logging module
* logservice.py:
Deprecated module. Use logging from stdlib.
* modutils.py :
Module manipulation utilities.
* monclient.py:
Deprecated module
* monserver.py:
Deprecated module
* optik_ext :
Add an abstraction level to transparently import optik classes from
optparse (python >= 2.3) or the optik package. It also defines two
new option types (regexp, csv, color, date...)
* optparser.py:
extend optparse's OptionParser to support commands
* patricia.py :
A Python implementation of PATRICIA trie (Practical Algorithm to
Retrieve Information Coded in Alphanumeric).
* pdf_ext.py:
pdf and fdf file manipulations, with pdftk.
* pytest.py:
unittest runner. See testlib
* shellutils.py:
Some utilities to replace shell scripts with python scripts.
* sqlgen.py :
Helper class to generate SQL strings to use with python's DB-API.
* table.py:
manage tabular data (supports column and row names, sorting, grouping...
* testlib.py :
Generic tests execution methods.
* textutils.py:
Some text manipulation utilities (ansi colorization, line wrapping,
rest support...)
* tree.py :
Base class to represent tree structure, and some others to make it
works with the visitor implementation (see below).
* umessage.py:
unicode email support
* ureports:
Provides a way to create simple reports using python objects
without care of the final formatting. Some formatters text and html
are provided.
* vcgutils.py :
utilities functions to generate file readable with Georg Sander's vcg
(Visualization of Compiler Graphs).
* visitor.py :
A generic visitor pattern implementation.
* twisted_distutils.py
This module enables the installation of plugins.tml files using standard
distutils syntax. Note that you can use this to install files that
are not twisted plugins in any package directory of your application.
* xmlrpcutils.py:
Auth support for XML RPC
Comments, support, bug reports
------------------------------
Project page http://www.logilab.org/project/logilab-common
Use the python-projects@lists.logilab.org mailing list. Since we do not have
publicly available bug tracker yet, bug reports should be emailed
there too.
You can subscribe to this mailing list at
http://lists.logilab.org/mailman/listinfo/python-projects
Archives are available at
http://lists.logilab.org/pipermail/python-projects/
|