components/logilab-common/logilab-common.3
changeset 1023 d2db2bc970c3
parent 181 87e11e685b1f
equal deleted inserted replaced
1022:6291fa546414 1023:d2db2bc970c3
     1 .\"
     1 .\"
     2 .\" Copyright (c) 2009, 2011, Oracle and/or its affiliates. All rights reserved.
     2 .\" Copyright (c) 2009, 2012, Oracle and/or its affiliates. All rights reserved.
     3 .\"
     3 .\"
     4 .\" logilab-common.3
     4 .\" logilab-common.3
     5 .\"
     5 .\"
     6 .TH logilab-common 3 "30 Apr 2009"
     6 .TH logilab-common 3 "30 Jul 2012" "logilab-common 0.58.2"
     7 .SH NAME
     7 .SH NAME
     8 logilab-common \- Common Modules used by Logilab projects
     8 logilab-common \- Common Modules used by Logilab projects
     9 .SH DESCRIPTION
     9 .SH DESCRIPTION
    10 The
    10 The
    11 .I logilab-common
    11 .I logilab-common
    14 
    14 
    15 .LP
    15 .LP
    16 .SH Provided modules
    16 .SH Provided modules
    17 .LP
    17 .LP
    18 
    18 
    19 A brief description of the available modules :
    19 A brief description of the available modules:
    20 .LP
    20 .LP
    21 
    21 
    22 * adbh.py:
    22 .SH Modules providing high-level features
    23 helper functions for using database advanced. Supported RDBMS
       
    24 include PostgreSQL, MySQL and sqlite. See also db.py. 
       
    25 .LP
    23 .LP
    26 
    24 
    27 * astutils:
    25 * `cache`, a cache implementation with a least recently used algorithm.
    28 Deprecated module. Use logilab.astng. 
       
    29 .LP
    26 .LP
    30 
    27 
    31 * bind.py :
    28 * `changelog`, a tiny library to manipulate our simplified ChangeLog file format.
    32 Deprecated module. 
       
    33 Provides a way to optimize globals in certain functions by binding
       
    34 their names to values provided in a dictionnary.
       
    35 .LP
    29 .LP
    36 
    30 
    37 * cache.py :
    31 * `clcommands`, high-level classes to define command line programs handling different subcommands. It is based on `configuration` to get easy command line / configuration file handling.
    38 A cache implementation with a least recently used algorithm.
       
    39 .LP
    32 .LP
    40 
    33 
    41 * clcommands.py:
    34 * `cli`, a base class for interactive programs using the command line.
    42 helper functions for command line programs handling different
       
    43 subcommands
       
    44 .LP
    35 .LP
    45 
    36 
    46 * cli.py :
    37 * `configuration`, some classes to handle unified configuration from both command line (using optparse) and configuration file (using ConfigParser).
    47 Command line interface helper classes (for interactive programs
       
    48 using the command line)
       
    49 .LP
    38 .LP
    50 
    39 
    51 * compat.py: 
    40 * `dbf`, read Visual Fox Pro DBF files.
    52 Transparent compatibility layer between different python version
       
    53 .LP
    41 .LP
    54 
    42 
    55 * configuration.py :
    43 * `proc`, interface to Linux /proc.
    56 Two mix-in classes to handle configuration from both command line 
       
    57 (using optik/optparse) and configuration file.
       
    58 .LP
    44 .LP
    59 
    45 
    60 * corbautils.py:
    46 * `umessage`, unicode email support.
    61 Usefull functions for use with the OmniORB CORBA library.
       
    62 .LP
    47 .LP
    63 
    48 
    64 * daemon.py :
    49 * `ureports`, micro-reports, a way to create simple reports using python objects without care of the final formatting. ReST and html formatters are provided.
    65 A daemon mix-in class.
       
    66 .LP
    50 .LP
    67 
    51 
    68 * date.py:
    52 .SH Modules providing low-level functions and structures
    69 date manipulation helper functions
       
    70 .LP
    53 .LP
    71 
    54 
    72 * db.py :
    55 * `compat`, provides a transparent compatibility layer between different python versions.
    73 A generic method to get a database connection. See also adbh.py.
       
    74 .LP
    56 .LP
    75 
    57 
    76 * debugger.py:
    58 * `date`, a set of date manipulation functions.
    77 pdb customization
       
    78 .LP
    59 .LP
    79 
    60 
    80 * decorators.py:
    61 * `daemon`, a daemon function and mix-in class to properly start an Unix daemon process.
    81 useful decorators (cached, timed...)
       
    82 .LP
    62 .LP
    83 
    63 
    84 * deprecation.py:
    64 * `decorators`, function decorators such as cached, timed...
    85 mark functions / classes as deprecated or moved
       
    86 .LP
    65 .LP
    87 
    66 
    88 * fileutils.py :
    67 * `deprecation`, decorator, metaclass & all to mark functions / classes as deprecated or moved
    89 Some file / file path manipulation utilities.
       
    90 .LP
    68 .LP
    91 
    69 
    92 * graph.py:
    70 * `fileutils`, some file / file path manipulation utilities.
    93 graph manipulations, dot file generation
       
    94 .LP
    71 .LP
    95 
    72 
    96 * html.py :
    73 * `graph`, graph manipulations functions such as cycle detection, bases for dot file generation.
    97 Deprecated module
       
    98 Return an html formatted traceback from python exception infos.
       
    99 .LP
    74 .LP
   100 
    75 
   101 * interface.py
    76 * `modutils`, python module manipulation functions.
   102 Bases class for interfaces.
       
   103 .LP
    77 .LP
   104 
    78 
   105 * logger.py :
    79 * `shellutils`, some powerful shell like functions to replace shell scripts with python scripts.
   106 Deprecated module : use logging from stdlib. 
       
   107 Define a logger interface and two concrete loggers : one which prints
       
   108 everything on stdout, the other using syslog.
       
   109 .LP
    80 .LP
   110 
    81 
   111 * logging_ext.py:
    82 * `tasksqueue`, a prioritized tasks queue implementation.
   112 extensions to stdlib's logging module
       
   113 .LP
    83 .LP
   114 
    84 
   115 * logservice.py:
    85 * `textutils`, some text manipulation functions (ansi colorization, line wrapping, rest support...).
   116 Deprecated module. Use logging from stdlib. 
       
   117 .LP
    86 .LP
   118 
    87 
   119 * modutils.py :
    88 * `tree`, base class to represent tree structure, and some others to make it works with the visitor implementation (see below).
   120 Module manipulation utilities.
       
   121 .LP
    89 .LP
   122 
    90 
   123 * monclient.py:
    91 * `visitor`, a generic visitor pattern implementation.
   124 Deprecated module
       
   125 .LP
    92 .LP
   126 
    93 
   127 * monserver.py:
    94 
   128 Deprecated module
    95 .SH Modules extending some standard modules
   129 .LP
    96 .LP
   130 
    97 
   131 * optik_ext :
    98 * `debugger`,  `pdb` customization.
   132 Add an abstraction level to transparently import optik classes from
       
   133 optparse (python >= 2.3) or the optik package. It also defines two
       
   134 new option types (regexp, csv, color, date...)
       
   135 .LP
    99 .LP
   136 
   100 
   137 * optparser.py:
   101 * `logging_ext`, extensions to `logging` module such as a colorized formatter and an easier initialization function.
   138 extend optparse's OptionParser to support commands 
       
   139 .LP
   102 .LP
   140 
   103 
   141 * patricia.py :
   104 * `optik_ext`, defines some new option types (regexp, csv, color, date, etc.) for `optik` / `optparse`
   142 A Python implementation of PATRICIA trie (Practical Algorithm to
       
   143 Retrieve Information Coded in Alphanumeric).
       
   144 .LP
   105 .LP
   145 
   106 
   146 * pdf_ext.py:
   107 * `xmlrpcutils`, auth support for XML-RPC
   147 pdf and fdf file manipulations, with pdftk. 
       
   148 .LP
   108 .LP
   149 
   109 
   150 * pytest.py:
   110 
   151 unittest runner. See testlib
   111 .SH Modules extending some external modules
   152 .LP
   112 .LP
   153 
   113 
   154 * shellutils.py:
   114 * `corbautils`, useful functions for use with the OmniORB_ CORBA library.
   155 Some utilities to replace shell scripts with python scripts.
       
   156 .LP
   115 .LP
   157 
   116 
   158 * sqlgen.py :
   117 * `hg`, some Mercurial_ utility functions.
   159 Helper class to generate SQL strings to use with python's DB-API.
       
   160 .LP
   118 .LP
   161 
   119 
   162 * table.py:
   120 * `pdf_ext`, pdf and fdf file manipulations, with pdftk.
   163 manage tabular data (supports column and row names, sorting, grouping...
       
   164 .LP
   121 .LP
   165 
   122 
   166 * testlib.py :
   123 * `pyro_ext`, some Pyro_ utility functions.
   167 Generic tests execution methods.
       
   168 .LP
   124 .LP
   169 
   125 
   170 * textutils.py:
   126 * `sphinx_ext`, Sphinx_ plugin defining a `autodocstring` directive.
   171 Some text manipulation utilities (ansi colorization, line wrapping,
       
   172 rest support...)
       
   173 .LP
   127 .LP
   174 
   128 
   175 * tree.py :
   129 * `vcgutils` , utilities functions to generate file readable with Georg Sander's vcg tool (Visualization of Compiler Graphs).
   176 Base class to represent tree structure, and some others to make it
       
   177 works with the visitor implementation (see below).
       
   178 .LP
   130 .LP
   179 
   131 
   180 * umessage.py:
   132 
   181 unicode email support
   133 .SH To be deprecated modules
   182 .LP
   134 .LP
   183 
   135 
   184 * ureports:
   136 These `logilab.common` modules will probably be deprecated in future versions:
   185 Provides a way to create simple reports using python objects
       
   186 without care of the final formatting. Some formatters text and html
       
   187 are provided.
       
   188 .LP
   137 .LP
   189 
   138 
   190 * vcgutils.py :
   139 * `testlib`: use `unittest2`_ instead
   191 utilities functions to generate file readable with Georg Sander's vcg
   140 .LP
   192 (Visualization of Compiler Graphs).
   141 * `pytest`: use `discover`_ instead
       
   142 .LP
       
   143 * `interface`: use `zope.interface`_ if you really want this
       
   144 .LP
       
   145 * `table`, `xmlutils`: is that used?
       
   146 .LP
       
   147 * `sphinxutils`: we won't go that way imo (i == syt)
   193 .LP
   148 .LP
   194 
   149 
   195 * visitor.py :
   150 
   196 A generic visitor pattern implementation.
   151 .SH Deprecated modules
   197 .LP
   152 .LP
   198 
   153 
   199 * twisted_distutils.py
   154 These `logilab.common` modules are only for backward compatibility. They can go away at anytime.
   200 This module enables the installation of plugins.tml files using standard
       
   201 distutils syntax. Note that you can use this to install files that
       
   202 are not twisted plugins in any package directory of your application.
       
   203 .LP
   155 .LP
   204 
   156 
   205 * xmlrpcutils.py:
   157 * `optparser`: use `clcommands` instead
   206 Auth support for XML RPC
   158 .LP
       
   159 
       
   160 * `adbh`, `db`, `sqlgen`: see `logilab.database`_ instead
       
   161 .LP
       
   162 
       
   163 * `contexts`: content move to `shellutils`
       
   164 .LP
       
   165 
       
   166 * `html`: deprecated without replacement
   207 
   167 
   208 .LP
   168 .LP
   209 
   169 
   210 .SH FILES
   170 .SH FILES
   211 .TP 2.2i
   171 .TP 2.2i
   212 .B /usr/lib/python2.6/vendor-packages/logilab/common
   172 .B /usr/lib/python2.6/vendor-packages/logilab/common
   213 shared object library files
   173 logilab-common python modules 
       
   174 .TP
       
   175 .B /usr/lib/python2.7/vendor-packages/logilab/common
       
   176 logilab-common python modules
   214 
   177 
   215 .SH AUTHORS
   178 .SH AUTHORS
   216 Sylvain Thenault ([email protected])
   179 Sylvain Thenault ([email protected])
   217 
   180 
   218 .SH SUPPORT
   181 .SH SUPPORT
   219 [email protected]
   182 Use the [email protected] mailing list. Since we do not have
       
   183 publicly available bug tracker yet, bug reports should be emailed
       
   184 there too.
       
   185 .LP
       
   186 
       
   187 You can subscribe to this mailing list at
       
   188 http://lists.logilab.org/mailman/listinfo/python-projects
       
   189 .LP
       
   190 
       
   191 Archives are available at
       
   192 http://lists.logilab.org/pipermail/python-projects/
       
   193 
       
   194 .LP
   220 
   195 
   221 .SH SEE ALSO
   196 .SH SEE ALSO
   222 .IR logilab-astng (3),
   197 .IR logilab-astng (3),
   223 .IR pylint (1)
   198 .IR pylint (1)