Pylint PyQt4 ошибка - PullRequest
       27

Pylint PyQt4 ошибка

1 голос
/ 26 декабря 2009

Я пишу программу:

from PyQt4.QtCore import *
from PyQt4.QtGui import *

def main():
    app = QApplication([])
    button = QPushButton("hello?")
    button.show()
    app.exec_()

if __name__=="__main__":
    main()

имя файла t.py, когда я бегу:

pylint t.py

в Ubuntu9.10, pyqt4, Я получил это:

pylint t.py
No config file found, using default configuration
error while building astng for /home/halida/data/workspace/test/t.py
Traceback (most recent call last):
  File "/usr/lib/pymodules/python2.6/logilab/astng/manager.py", line 126, in astng_from_file
    astng = ASTNGBuilder(self).file_build(filepath, modname)
  File "/usr/lib/pymodules/python2.6/logilab/astng/builder.py", line 118, in file_build
    node = self.string_build(data, modname, path)
  File "/usr/lib/pymodules/python2.6/logilab/astng/builder.py", line 128, in string_build
    return self.ast_build(parse(data + '\n'), modname, path)
  File "/usr/lib/pymodules/python2.6/logilab/astng/builder.py", line 147, in ast_build
    self.rebuilder.walk(node)
  File "/usr/lib/pymodules/python2.6/logilab/astng/rebuilder.py", line 89, in walk
    self._walk(node)
  File "/usr/lib/pymodules/python2.6/logilab/astng/rebuilder.py", line 109, in _walk
    self._walk(child, node)
  File "/usr/lib/pymodules/python2.6/logilab/astng/rebuilder.py", line 103, in _walk
    handle_leave = node.accept(self)
  File "/usr/lib/pymodules/python2.6/logilab/astng/nodes.py", line 159, in accept
    return func(self)
  File "/usr/lib/pymodules/python2.6/logilab/astng/rebuilder.py", line 188, in visit_from
    imported = node.root().import_module(node.modname)
  File "/usr/lib/pymodules/python2.6/logilab/astng/scoped_nodes.py", line 282, in import_module
    return MANAGER.astng_from_module_name(self.relative_name(modname, level))
  File "/usr/lib/pymodules/python2.6/logilab/astng/manager.py", line 172, in astng_from_module_name
    return self.astng_from_module(module, modname)
  File "/usr/lib/pymodules/python2.6/logilab/astng/manager.py", line 207, in astng_from_module
    astng = ASTNGBuilder(self).module_build(module, modname)
  File "/usr/lib/pymodules/python2.6/logilab/astng/builder.py", line 80, in module_build
    node = self.inspect_build(module, modname=modname, path=path)
  File "/usr/lib/pymodules/python2.6/logilab/astng/builder.py", line 95, in inspect_build
    self.object_build(node, module)
  File "/usr/lib/pymodules/python2.6/logilab/astng/builder.py", line 195, in object_build
    self.object_build(class_node, member)
  File "/usr/lib/pymodules/python2.6/logilab/astng/builder.py", line 198, in object_build
    object_build_methoddescriptor(node, member)
  File "/usr/lib/pymodules/python2.6/logilab/astng/raw_building.py", line 150, in object_build_methoddescriptor
    func = build_function(member.__name__, doc=member.__doc__)
AttributeError: 'PyQt4.QtCore.pyqtSignal' object has no attribute '__name__'
************* Module t
F:  1: <class 'logilab.astng._exceptions.ASTNGBuildingException'>: Unable to load module t ('PyQt4.QtCore.pyqtSignal' object has no attribute '__name__')

Compilation exited abnormally with code 1 at Sat Dec 26 10:43:54

в Windows XP, с pythonxy,

Я получил только сообщение об ошибке, почему?

Ответы [ 2 ]

1 голос
/ 28 декабря 2009

Похоже, ошибка в astng. Они пытаются прочитать имя функции, которая не публикует ее (встроенное расширение func). Я бы сообщил об ошибке в проектах astng и pyqt. Во-первых, они должны лучше справляться с ситуацией без имени. Вторым было бы то, что каждое вменяемое расширение должно публиковать как минимум имена функций.

0 голосов
/ 26 декабря 2009

Я бы проверил, используете ли вы самую последнюю версию astng, pylint и т. Д.

...