summaryrefslogtreecommitdiff
path: root/README
blob: ea4565fde3dc68451528b0fe09d9a13658adbf67 (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
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
README for PyLint
=================

Dependencies
------------
Pylint requires the logilab-astng (version >= 0.14), logilab-common
(version >= 0.13) and the optik (only for python < 2.3) packages.

* http://www.logilab.org/projects/astng
* http://www.logilab.org/projects/common
* http://optik.sourceforge.net/


Distributions
-------------
The source tarball is available at ftp://ftp.logilab.fr/pub/pylint.

You may apt-get a debian package by adding ::

    deb ftp://ftp.logilab.org/pub/debian unstable/

to your /etc/apt/sources.list files. Pylint is also available in the standard Debian distribution 

Contributed RPM packages for pylint and logilab-common are available at
ftp://ftp.nest.pld-linux.org/test .

Pylint is also available in Gentoo, Fedora 4, Ubuntu, FreeBSD, Darwin. 


Install
-------
From the source distribution, extract the tarball and run ::

    python setup.py install

For debian and rpm packages, use your usual tools according to your Linux
distribution. 

Note for Windows users:
On Windows, once you have installed pylint, the command line usage is
pylint.bat [options] module_or_package

But this will only work if pylint.bat is either in the current
directory, or on your system path. (setup.py install install python.bat
to the Scripts subdirectory of your Python installation -- e.g.
C:\Python24\Scripts.) You can do any of the following to solve this:

1. change to the appropriate directory before running pylint.bat

2. add the Scripts directory to your path statement in your autoexec.bat
   file (this file is found in the root directory of your boot-drive)

3. create a 'redirect' batch file in a directory actually on your
   systems path

To effect (2), simply append the appropriate directory name to the PATH=
statement in autoexec.bat. Be sure to use the Windows directory
separator of ';' between entries. Then, once you have rebooted (this is
necessary so that the new path statement will take effect when
autoexec.bat is run), you will be able to invoke PyLint with
pylint.bat on the command line.

(3) is the best solution. Once done, you can call pylint at the command
line without the .bat, just as do non-Windows users by typing: ::

  pylint [options] module_or_package

To effect option (3), simply create a plain text file pylint.bat with
the single line: ::

  C:\PythonDirectory\Scripts\pylint.bat

(where PythonDirectory is replaced by the actual Python installation
directory on your system -- e.g. C:\Python24\Scripts\pylint.bat).


IDE integration
---------------

Pylint is integrated in the following editors/IDEs:

 * emacs (of course)

 * eric3

 * eclipse (using the pydev_ plugin, see also http://msdl.cs.mcgill.ca/MSDL/people/denis/meetings/pythonDev)

To use pylint from within vim, see http://www.gonzo.kiev.ua/projects/pylint.vim

_pydev: http://pydev.sourceforge.net

Some projects using Pylint
--------------------------

 * The CheeseCake kwalitee reporting tool uses pylint to analyze the source code.

The following projects use pylint to help develop better code:

 * http://browsershots.org 

 * OSAF Chandler (http://www.osafoundation.org/)

 * CPS (http://www.nuxeo.org)

 * Xen (http://www.xensource.com/)

 * pyxmpp (http://pyxmpp.jabberstudio.org/)

 * eXe (http://exelearning.org/)

 * PrimaGIS (http://www.primagis.org)

 * python-cdd (http://projetos.ossystems.com.br/python-cdd/)

 * CDSWare (http://cdsware.cern.ch/)

 * ASE (http://dcwww.camp.dtu.dk/campos/ASE/intro.html)

 * RunJob (http://projects.fnal.gov/runjob/)

 * Slugathon (http://slugathon.python-hosting.com/)

 * mercurial 

 * Topographica (http://topographica.org/Home/index.html) (at least they intend to do so)

 * ERP5 (http://www.erp5.org/)

 * many more... 

Documentation
-------------
Look in the doc/ subdirectory.


Comments, support, bug reports
------------------------------
Use the python-projects@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://www.logilab.org/mailinglists/python_projects/mailinglist_register_form

Archives are available at 
http://lists.logilab.org/pipermail/python-projects/

If you prefer speaking french instead of english, you can use the
generic forum-fr@logilab.org mailing list.

Contributors
------------
* Sylvain Thenault: main author / maintainer
* Alexandre Fayolle: TkInter gui, documentation, debian support
* Brian van den Broek: windows installation documentation
* Amaury Forgeot d'Arc: patch to check names imported from a module
  exists in the module
* Benjamin Niemann: patch to allow block level enabling/disabling of messages
* Wolfgang Grafen, Axel Muller, Fabio Zadrozny, Pierre Rouleau,  
  Maarten ter Huurne, Mirko Friedenhagen (among others): 
  bug reports, feedback, feature requests...
* All the Logilab's team: daily use, bug reports, feature requests
* Other people have contributed by their feedback, if I've forgotten
  you, send me a note !