summaryrefslogtreecommitdiff
path: root/README
blob: aa35d2a3ffc0f5a47b89dcf17a6ad9f75c189396 (plain)
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
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.


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 :

* astutils:
  Some utilities function to manipulate Python's AST.

* bind.py :
  Provides a way to optimize globals in certain functions by binding
  their names to values provided in a dictionnary.

* cache.py :
  A cache implementation with a least recently used algorithm.

* cli.py :
  Command line interface helper classes.

* compat.py: 
  Transparent compatibility layer between different python version
  (actually 2.2 vs 2.3 for now)

* configuration.py :
  Two mix-in classes to handle configuration from both command line 
  (using optik) and configuration file.

* corbautils.py:
  Usefull functions for use with the OmniORB CORBA library.

* daemon.py :
  A daemon mix-in class.

* db.py :
  A generic method to get a database connection. 

* html.py :
  Return an html formatted traceback from python exception infos.

* fileutils.py :
  Some file / file path manipulation utilities.

* interface.py
  Bases class for interfaces.

* logger.py :
  Define a logger interface and two concrete loggers : one which prints
  everything on stdout, the other using syslog.

* modutils.py :
  Module manipulation utilities.

* 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 and csv.

* patricia.py :
  A Python implementation of PATRICIA trie (Practical Algorithm to
  Retrieve Information Coded in Alphanumeric).

* shellutils:
  Some utilities to replace shell scripts with python scripts.

* sqlgen.py :
  Helper class to generate SQL strings to use with python's DB-API.

* testlib.py :
  Generic tests execution methods.

* textutils.py:
  Some text manipulation utilities.

* tree.py :
  Base class to represent tree structure, and some others to make it
  works with the visitor implementation (see below).

* 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.


If you have any questions, please mail devel@logilab.fr for support. 

Sylvain Thénault
Apr 15, 2004