In february 2009, pylint became easy_installable. Just try $ easy_install pylint For those interested in pylint's history, let it be known that the first easy_installation of pylint was provided by Tarek Ziade under the name logilab.pylintinstaller (commands were 'easy_install http://release.ingeniweb.com/third-party-dist/logilab.installer-0.1.tgz' or 'easy_install logilab.pylintinstaller') |


Comments
(add comment)Ops, it'b broken
Downloading http://release.ingeniweb.com/third-party-dist/logilab.installer-0.1.tgz
Processing logilab.installer-0.1.tgz
Running logilab.installer/setup.py -q bdist_egg --dist-dir /tmp/easy_install-mRJqpK/logilab.installer/egg-dist-tmp-l9CyMJ
logilab.installer 0.1dev is already the active version in easy-install.pth
Installed /usr/lib/python2.5/site-packages/logilab.installer-0.1dev-py2.5.egg
Processing dependencies for logilab.installer==0.1dev
Searching for pylint==0.14
Reading http://pypi.python.org/simple/pylint/
Reading http://www.logilab.org/project/name/pylint
Reading http://www.logilab.org/projects/pylint
No local packages or download links found for pylint==0.14
error: Could not find suitable distribution for Requirement.parse('pylint==0.14')
use instead:
$ easy_install logilab.pylintinstaller
cheers, Tarek
Still broken,
On windows, python 2.5.2, it reads:
error: Setup script exited with error: file 'bin\epylint.bat' does not existI'm not sure if this is all correct, it works without error message.
Create a new file "epylint.bat" with the following content:
@echo off rem = """-*-Python-*- script rem -------------------- DOS section -------------------- rem You could set PYTHONPATH or TK environment variables here python -x %~f0 %* goto exit """ # -------------------- Python section -------------------- import re import sys from popen2 import popen3 p, _in, _err = popen3("pylint -f parseable -r n --disable-msg-cat=C,R %s" % sys.argv[1]) for line in p: match = re.search("\\[([WE])(, (.+?))?\\]", line) if match: kind = match.group(1) func = match.group(3) if kind == "W": msg = "Warning" else: msg = "Error" if func: line = re.sub("\\[([WE])(, (.+?))?\\]", "%s (%s):" % (msg, func), line) else: line = re.sub("\\[([WE])?\\]", "%s:" % msg, line) print line, p.close() DosExitLabel = """ :exit rem """
I'm not sure if this is all correct, it works without error message.
Create a new file "epylint.bat" with the following content:
@echo off
rem = """-*-Python-*- script
rem -------------------- DOS section --------------------
rem You could set PYTHONPATH or TK environment variables here
python -x %~f0 %*
goto exit
"""
# -------------------- Python section --------------------
import re
import sys
from popen2 import popen3
p, _in, _err = popen3("pylint -f parseable -r n --disable-msg-cat=C,R %s" % sys.argv[1])
for line in p:
match = re.search("\\[([WE])(, (.+?))?\\]", line)
if match:
kind = match.group(1)
func = match.group(3)
if kind == "W":
msg = "Warning"
else:
msg = "Error"
if func:
line = re.sub("\\[([WE])(, (.+?))?\\]",
"%s (%s):" % (msg, func), line)
else:
line = re.sub("\\[([WE])?\\]", "%s:" % msg, line)
print line,
p.close()
DosExitLabel = """
:exit
rem """
Same with V2.4.3 on windows. Very bad news :-(
sorry, with better trace error:
copying .\test\rpythoninput\__init__.py -> build\lib\pylint\test\rpythoninput
package init file '.\test\__init__.py' not found (or not a regular file)
running build_scripts
creating build\scripts-2.4
copying bin\pylint.bat -> build\scripts-2.4
copying bin\pylint-gui.bat -> build\scripts-2.4
copying bin\symilar.bat -> build\scripts-2.4
error: file 'bin\epylint.bat' does not exist
build script exit and next steps fails
As I am a smart guy, a fix is:
Remove "epylint" in the file __pkginfo__.py ligne 53 we don't care of the doc :-p
Thanks to Stephan
I followed you advice. Now I get this message:
error: Setup script exited with error: file 'bin\pylint.bat' does not exist
MORE INFO:
Extracting pylint-0.16.0-py2.5.egg to c:\python25\lib\site-packages
File "c:\python25\lib\site-packages\pylint-0.16.0-py2.5.egg\pylint\test\input\func_continue_not_in_loop.py", line 8
continue
SyntaxError: 'continue' not properly in loop
File "c:\python25\lib\site-packages\pylint-0.16.0-py2.5.egg\pylint\test\input\func_return_outside_func.py", line 3
return
SyntaxError: 'return' outside function
SyntaxError: ("'return' with argument inside generator",)
SyntaxError: ("'return' with argument inside generator",)
File "c:\python25\lib\site-packages\pylint-0.16.0-py2.5.egg\pylint\test\input\func_syntax_error.py", line 1
def toto
^
SyntaxError: invalid syntax
File "c:\python25\lib\site-packages\pylint-0.16.0-py2.5.egg\pylint\test\input\func_unknown_encoding.py", line 0
SyntaxError: ('unknown encoding: IBO-8859-1', ('c:\\python25\\lib\\site-packages\\pylint-0.16.0-py2.5.egg\\pylint\\test\\input\\func_unknown_encoding.py',
0, 0, None))
File "c:\python25\lib\site-packages\pylint-0.16.0-py2.5.egg\pylint\test\input\func_w0705.py", line 28
__revision__ += 1
SyntaxError: default 'except:' must be last
File "c:\python25\lib\site-packages\pylint-0.16.0-py2.5.egg\pylint\test\input\func_yield_outside_func.py", line 3
yield 1
SyntaxError: 'yield' outside function
File "c:\python25\lib\site-packages\pylint-0.16.0-py2.5.egg\pylint\test\input\func___future___import_not_first_stmt.py", line 4
from __future__ import generators
SyntaxError: from __future__ imports must occur at the beginning of the file
pylint 0.16.0 is already the active version in easy-install.pth
Installing epylint.bat script to C:\Python25\Scripts
Installing pylint-gui.bat script to C:\Python25\Scripts
Installing pylint.bat script to C:\Python25\Scripts
Installing pyreverse.bat script to C:\Python25\Scripts
Installing symilar.bat script to C:\Python25\Scripts
Installed c:\python25\lib\site-packages\pylint-0.16.0-py2.5.egg
Processing dependencies for pylint==0.16.0
Searching for logilab-common
Reading http://pypi.python.org/simple/logilab-common/
Reading http://www.logilab.org/project/logilab-common
Best match: logilab-common 0.38.0
Downloading http://ftp.logilab.org/pub/common/logilab-common-0.38.0.tar.gz
Processing logilab-common-0.38.0.tar.gz
Running logilab-common-0.38.0\setup.py -q bdist_egg --dist-dir c:\docume~1\robert~1\locals~1\temp\easy_install-vpcx3q\logilab-common-0.38.0\egg-dist-tmp-xg
ea8u
package init file '.\test\__init__.py' not found (or not a regular file)
warning: no files found matching '*' under directory 'doc\html'
Creating missing __init__.py for pylint.test
error: Setup script exited with error: file 'bin\pylint.bat' does not exist
Very few people read comments here. If you want your problem to be solved quickly, use the main communication channel, which is the mailing list: http://lists.logilab.org/mailman/listinfo/python-projects
I attempted today to install pylint using $ easy_install logilab.pylintinstaller on a Windows box with Python 2.5.4 and consistently get an error.
error: The directory is not empty <built-in function rmdir> c:\users\chaim\appdata\local\temp\easy_install-s9ajqd\pylint-0.15.2\build\bdist.win32\egg\pylint\test\messages
The directory changes, but the error is always the same.
I have also tried $ python setup.py install using version 0.16.0 and get errors as well. I can provide a logfile if that helps.
-Chaim Krause chaim at chaim dot com
I've also just tried installing on Windows XP, with Python 2.5.4 as my base, and get lots of errors during the install. WTF????
Processing pylint-0.16.0-py2.5.egg creating c:\python25\lib\site-packages\pylint-0.16.0-py2.5.egg Extracting pylint-0.16.0-py2.5.egg to c:\python25\lib\site-packages File "c:\python25\lib\site-packages\pylint-0.16.0-py2.5.egg\pylint\test\input\func_continue_not_in_loop.py", line 8 continue SyntaxError: 'continue' not properly in loop
File "c:\python25\lib\site-packages\pylint-0.16.0-py2.5.egg\pylint\test\input\func_return_outside_func.py", line 3 return SyntaxError: 'return' outside function
SyntaxError: ("'return' with argument inside generator",)
SyntaxError: ("'return' with argument inside generator",)
File "c:\python25\lib\site-packages\pylint-0.16.0-py2.5.egg\pylint\test\input\func_syntax_error.py", line 1 def toto
^ SyntaxError: invalid syntax
File "c:\python25\lib\site-packages\pylint-0.16.0-py2.5.egg\pylint\test\input\func_unknown_encoding.py", line 0 SyntaxError: ('unknown encoding: IBO-8859-1', ('c:\\python25\\lib\\site-packages\\pylint-0.16.0-py2.5.egg\\pylint\\test\\input\\func_unknown_encoding. py', 0, 0, None))
File "c:\python25\lib\site-packages\pylint-0.16.0-py2.5.egg\pylint\test\input\func_w0705.py", line 28 __revision__ += 1 SyntaxError: default 'except:' must be last
File "c:\python25\lib\site-packages\pylint-0.16.0-py2.5.egg\pylint\test\input\func_yield_outside_func.py", line 3 yield 1 SyntaxError: 'yield' outside function
File "c:\python25\lib\site-packages\pylint-0.16.0-py2.5.egg\pylint\test\input\func___future___import_not_first_stmt.py", line 4 from __future__ import generators SyntaxError: from __future__ imports must occur at the beginning of the file
Adding pylint 0.16.0 to easy-install.pth file Installing epylint.bat script to C:\PYTHON25\Scripts Installing pylint-gui.bat script to C:\PYTHON25\Scripts Installing pylint.bat script to C:\PYTHON25\Scripts Installing pyreverse.bat script to C:\PYTHON25\Scripts Installing symilar.bat script to C:\PYTHON25\Scripts
Installed c:\python25\lib\site-packages\pylint-0.16.0-py2.5.egg Processing dependencies for pylint==0.16.0 Searching for logilab-astng==0.17.4 Best match: logilab-astng 0.17.4 Adding logilab-astng 0.17.4 to easy-install.pth file
Using c:\python25\lib\site-packages Searching for logilab-common==0.38.1 Best match: logilab-common 0.38.1 Processing logilab_common-0.38.1-py2.5.egg logilab-common 0.38.1 is already the active version in easy-install.pth Installing pytest.bat script to C:\PYTHON25\Scripts
Using c:\python25\lib\site-packages\logilab_common-0.38.1-py2.5.egg Finished processing dependencies for pylint==0.16.0
I have just gotten the same experience with my XP. If someone has actually solved this issue, help would be much appreciated.
Have you tried ignoring the errors and running
easy_install logilab-common
easy_install logilab-astng
as described on http://lists.logilab.org/pipermail/python-projects/2009-March/001707.html (and filed on https://www.logilab.net/elo/ticket/8337)
(See also http://lists.logilab.org/pipermail/python-projects/2009-March/001743.html)
That worked great for me with Python 2.5, Pylint 0.18, on Vista SP2.
That is much better then before. Should make sure that Windows user know about this before they try and install.
well, this looks interesting, but like much open source software, documentation leaves a lot to be desired. WTF is "easy_install"?
have you ever tried a great web site named "google" ?
http://www.google.com/search?q=easy_install
The existence of google does not excuse lack of documentation but for anything other than a single shell line. It would appear that "easy_install" is some sort of python script installer, that is, in and of itself, fairly difficult to get installed into a functional state.
Every day I try and use more open source software, that I am not directly involved with in the creation of, I realise more and more, that nearly all of it is fucking garbage, and if the software itself isn't fucking garbage, the user interface is fucking garbage.
Read this page, from the vantage point of a user that has an extensive knowledge of python, and nothing else that is discussed on it. See if you can understand it. At all.
ok, i guess level of difficulty is somewhat subjective - when i googled for "easy_install" and "windows", i got a hit that describes the process as complicated. I didn't actually load the page and read through it because it's a ridiculously long page that tells you how to set your damn path variable. Still, a single line of documentation for "how to install" that consists entirely of a single shell line, is absolutely inexcuseable.
... add to that that there is no version of setuptools for python 2.6. So, where's the "long" install instructions?
http://www.logilab.org/project/pylint has a green box that says "download" in the top right corner. Download, untar, run. The dependencies you need to install are logilab-common and logilab-astng.
Tried installing under python 2.5 (virtualenv)
Best match: pylint 0.15.2 Downloading http://ftp.logilab.org/pub/pylint/pylint-0.15.2.tar.gz Processing pylint-0.15.2.tar.gz Running pylint-0.15.2/setup.py -q bdist_egg --dist-dir /tmp/easy_install-uj0rWy/pylint-0.15.2/egg-dist-tmp-fa5Bcm package init file './test/__init__.py' not found (or not a regular file) SyntaxError: ("'return' with argument inside generator",)
File "build/bdist.linux-i686/egg/pylint/test/input/func_return_outside_func.py", line 3 return SyntaxError: 'return' outside function
File "build/bdist.linux-i686/egg/pylint/test/input/func_yield_outside_func.py", line 3 yield 1 SyntaxError: 'yield' outside function
File "build/bdist.linux-i686/egg/pylint/test/input/func_w0705.py", line 28 __revision__ += 1 SyntaxError: default 'except:' must be last
SyntaxError: ("'return' with argument inside generator",)
File "build/bdist.linux-i686/egg/pylint/test/input/func___future___import_not_first_stmt.py", line 4 from __future__ import generators SyntaxError: from __future__ imports must occur at the beginning of the file
File "build/bdist.linux-i686/egg/pylint/test/input/func_unknown_encoding.py", line 0 SyntaxError: ('unknown encoding: IBO-8859-1', ('build/bdist.linux-i686/egg/pylint/test/input/func_unknown_encoding.py', 0, 0, None))
File "build/bdist.linux-i686/egg/pylint/test/input/func_continue_not_in_loop.py", line 8 continue SyntaxError: 'continue' not properly in loop
File "build/bdist.linux-i686/egg/pylint/test/input/func_syntax_error.py", line 1 def toto
^
however installation seems to work fine ...
The failures reported are tests data, used to validate pylint. They are not supposed to be byte compiled.
Yeah, I thought that something like that is going on ... however from installers point of view this looks like a installation failure. Perhaps packaging could use some fixing ...
Hey, you probably know this already, but 'pip install pylint' grabs an old version of logilab-common (0.44). Just a heads-up in case this isn't deliberate. Thanks!