| OLD | NEW |
| (Empty) | |
| 1 Logilab's common library |
| 2 ======================== |
| 3 |
| 4 What's this ? |
| 5 ------------- |
| 6 |
| 7 This package contains some modules used by differents Logilab's projects. |
| 8 |
| 9 It is released under the GNU Lesser General Public License. |
| 10 |
| 11 There is no documentation available yet but the source code should be clean and |
| 12 well documented. |
| 13 |
| 14 Designed to ease: |
| 15 |
| 16 * handling command line options and configuration files |
| 17 * writing interactive command line tools |
| 18 * manipulation of files and character strings |
| 19 * manipulation of common structures such as graph, tree, and pattern such as vis
itor |
| 20 * generating text and HTML reports |
| 21 * accessing some external libraries such as OmniORB_, Pyro_... |
| 22 * more... |
| 23 |
| 24 |
| 25 Installation |
| 26 ------------ |
| 27 |
| 28 Extract the tarball, jump into the created directory and run :: |
| 29 |
| 30 python setup.py install |
| 31 |
| 32 For installation options, see :: |
| 33 |
| 34 python setup.py install --help |
| 35 |
| 36 |
| 37 Provided modules |
| 38 ---------------- |
| 39 |
| 40 Here is a brief description of the available modules. |
| 41 |
| 42 Modules providing high-level features |
| 43 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 44 |
| 45 * `cache`, a cache implementation with a least recently used algorithm. |
| 46 |
| 47 * `changelog`, a tiny library to manipulate our simplified ChangeLog file format
. |
| 48 |
| 49 * `clcommands`, high-level classes to define command line programs handling |
| 50 different subcommands. It is based on `configuration` to get easy command line |
| 51 / configuration file handling. |
| 52 |
| 53 * `cli`, a base class for interactive programs using the command line. |
| 54 |
| 55 * `configuration`, some classes to handle unified configuration from both |
| 56 command line (using optparse) and configuration file (using ConfigParser). |
| 57 |
| 58 * `dbf`, read Visual Fox Pro DBF files. |
| 59 |
| 60 * `proc`, interface to Linux /proc. |
| 61 |
| 62 * `umessage`, unicode email support. |
| 63 |
| 64 * `ureports`, micro-reports, a way to create simple reports using python objects |
| 65 without care of the final formatting. ReST and html formatters are provided. |
| 66 |
| 67 |
| 68 Modules providing low-level functions and structures |
| 69 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 70 |
| 71 * `compat`, provides a transparent compatibility layer between different python |
| 72 versions. |
| 73 |
| 74 * `date`, a set of date manipulation functions. |
| 75 |
| 76 * `daemon`, a daemon function and mix-in class to properly start an Unix daemon |
| 77 process. |
| 78 |
| 79 * `decorators`, function decorators such as cached, timed... |
| 80 |
| 81 * `deprecation`, decorator, metaclass & all to mark functions / classes as |
| 82 deprecated or moved |
| 83 |
| 84 * `fileutils`, some file / file path manipulation utilities. |
| 85 |
| 86 * `graph`, graph manipulations functions such as cycle detection, bases for dot |
| 87 file generation. |
| 88 |
| 89 * `modutils`, python module manipulation functions. |
| 90 |
| 91 * `shellutils`, some powerful shell like functions to replace shell scripts with |
| 92 python scripts. |
| 93 |
| 94 * `tasksqueue`, a prioritized tasks queue implementation. |
| 95 |
| 96 * `textutils`, some text manipulation functions (ansi colorization, line wrappin
g, |
| 97 rest support...). |
| 98 |
| 99 * `tree`, base class to represent tree structure, and some others to make it |
| 100 works with the visitor implementation (see below). |
| 101 |
| 102 * `visitor`, a generic visitor pattern implementation. |
| 103 |
| 104 |
| 105 Modules extending some standard modules |
| 106 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 107 |
| 108 * `debugger`, `pdb` customization. |
| 109 |
| 110 * `logging_ext`, extensions to `logging` module such as a colorized formatter |
| 111 and an easier initialization function. |
| 112 |
| 113 * `optik_ext`, defines some new option types (regexp, csv, color, date, etc.) |
| 114 for `optik` / `optparse` |
| 115 |
| 116 * `xmlrpcutils`, auth support for XML-RPC |
| 117 |
| 118 |
| 119 Modules extending some external modules |
| 120 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 121 |
| 122 * `corbautils`, useful functions for use with the OmniORB_ CORBA library. |
| 123 |
| 124 * `hg`, some Mercurial_ utility functions. |
| 125 |
| 126 * `pdf_ext`, pdf and fdf file manipulations, with pdftk. |
| 127 |
| 128 * `pyro_ext`, some Pyro_ utility functions. |
| 129 |
| 130 * `sphinx_ext`, Sphinx_ plugin defining a `autodocstring` directive. |
| 131 |
| 132 * `vcgutils` , utilities functions to generate file readable with Georg Sander's |
| 133 vcg tool (Visualization of Compiler Graphs). |
| 134 |
| 135 |
| 136 To be deprecated modules |
| 137 ~~~~~~~~~~~~~~~~~~~~~~~~ |
| 138 |
| 139 Those `logilab.common` modules will much probably be deprecated in future |
| 140 versions: |
| 141 |
| 142 * `testlib`: use `unittest2`_ instead |
| 143 * `pytest`: use `discover`_ instead |
| 144 * `interface`: use `zope.interface`_ if you really want this |
| 145 * `table`, `xmlutils`: is that used? |
| 146 * `sphinxutils`: we won't go that way imo (i == syt) |
| 147 |
| 148 |
| 149 Deprecated modules |
| 150 ~~~~~~~~~~~~~~~~~~ |
| 151 |
| 152 Those `logilab.common` modules are only there for backward compatibility. They |
| 153 can go away at anytime. |
| 154 |
| 155 * `optparser`: use `clcommands` instead |
| 156 |
| 157 * `adbh`, `db`, `sqlgen`: see `logilab.database`_ instead |
| 158 |
| 159 * `contexts`: content move to `shellutils` |
| 160 |
| 161 * `html`: deprecated without replacement |
| 162 |
| 163 |
| 164 Comments, support, bug reports |
| 165 ------------------------------ |
| 166 |
| 167 Project page http://www.logilab.org/project/logilab-common |
| 168 |
| 169 Use the python-projects@lists.logilab.org mailing list. Since we do not have |
| 170 publicly available bug tracker yet, bug reports should be emailed |
| 171 there too. |
| 172 |
| 173 You can subscribe to this mailing list at |
| 174 http://lists.logilab.org/mailman/listinfo/python-projects |
| 175 |
| 176 Archives are available at |
| 177 http://lists.logilab.org/pipermail/python-projects/ |
| 178 |
| 179 |
| 180 .. _Pyro: http://pyro.sourceforge.net/ |
| 181 .. _OmniORB: http://omniorb.sourceforge.net/ |
| 182 .. _Mercurial: http://mercurial.selenic.com |
| 183 .. _Sphinx: http://sphinx.pocoo.org/ |
| 184 .. _`logilab.database`: http://www.logilab.org/project/logilab-database/ |
| 185 .. _`unittest2`: http://pypi.python.org/pypi/unittest2 |
| 186 .. _`discover`: http://pypi.python.org/pypi/discover |
| 187 .. _`zope.interface`: http://pypi.python.org/pypi/zope.interface |
| OLD | NEW |