bee_python 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (488) hide show
  1. data/{build/README → README} +1 -1
  2. data/egg/egg/build.yml +11 -49
  3. data/egg/egg.yml +19 -27
  4. data/egg/http/build.erb +32 -36
  5. data/egg/http/libhttp.py +102 -0
  6. data/egg/http/pylint.cfg +236 -0
  7. data/egg/http/server.py +7 -0
  8. data/egg/http/test.erb +32 -0
  9. data/egg/http.yml +33 -29
  10. data/egg/mysql/mysql.py +8 -9
  11. data/egg/project/build.erb +21 -53
  12. data/egg/project/pylint.cfg +236 -0
  13. data/egg/project/test.py +2 -2
  14. data/egg/project.yml +23 -31
  15. data/egg/script/build.erb +18 -23
  16. data/egg/script/pylint.cfg +236 -0
  17. data/egg/script.yml +22 -18
  18. data/egg/source/source.py +6 -6
  19. data/egg/test/test.py +1 -1
  20. data/lib/bee_task_python.rb +3 -34
  21. data/python.yml +123 -0
  22. metadata +61 -503
  23. data/test/build.yml +0 -16
  24. data/test/tc_bee_task_python.rb +0 -27
  25. data/test/test_build.rb +0 -26
  26. data/test/test_build_listener.rb +0 -110
  27. data/test/ts_bee_python.rb +0 -26
  28. data/tools/common/__init__.py +0 -5
  29. data/tools/common/common/__init__.py +0 -140
  30. data/tools/common/common/__pkginfo__.py +0 -43
  31. data/tools/common/common/adbh.py +0 -35
  32. data/tools/common/common/cache.py +0 -114
  33. data/tools/common/common/changelog.py +0 -234
  34. data/tools/common/common/clcommands.py +0 -181
  35. data/tools/common/common/cli.py +0 -212
  36. data/tools/common/common/compat.py +0 -328
  37. data/tools/common/common/configuration.py +0 -1087
  38. data/tools/common/common/contexts.py +0 -58
  39. data/tools/common/common/corbautils.py +0 -117
  40. data/tools/common/common/daemon.py +0 -171
  41. data/tools/common/common/date.py +0 -279
  42. data/tools/common/common/db.py +0 -49
  43. data/tools/common/common/dbf.py +0 -229
  44. data/tools/common/common/debugger.py +0 -208
  45. data/tools/common/common/decorators.py +0 -190
  46. data/tools/common/common/deprecation.py +0 -118
  47. data/tools/common/common/fileutils.py +0 -409
  48. data/tools/common/common/graph.py +0 -259
  49. data/tools/common/common/html.py +0 -142
  50. data/tools/common/common/interface.py +0 -76
  51. data/tools/common/common/logging_ext.py +0 -166
  52. data/tools/common/common/modutils.py +0 -670
  53. data/tools/common/common/optik_ext.py +0 -383
  54. data/tools/common/common/optparser.py +0 -92
  55. data/tools/common/common/pdf_ext.py +0 -111
  56. data/tools/common/common/proc.py +0 -276
  57. data/tools/common/common/pyro_ext.py +0 -146
  58. data/tools/common/common/pytest.py +0 -754
  59. data/tools/common/common/shellutils.py +0 -383
  60. data/tools/common/common/sphinx_ext.py +0 -87
  61. data/tools/common/common/sphinxutils.py +0 -122
  62. data/tools/common/common/sqlgen.py +0 -31
  63. data/tools/common/common/table.py +0 -930
  64. data/tools/common/common/tasksqueue.py +0 -97
  65. data/tools/common/common/test/__init__.py +0 -1
  66. data/tools/common/common/test/data/ChangeLog +0 -184
  67. data/tools/common/common/test/data/MyPyPa-0.1.0-py2.5.egg +0 -0
  68. data/tools/common/common/test/data/__init__.py +0 -1
  69. data/tools/common/common/test/data/content_differ_dir/NOTHING +0 -0
  70. data/tools/common/common/test/data/content_differ_dir/README +0 -1
  71. data/tools/common/common/test/data/content_differ_dir/subdir/coin +0 -1
  72. data/tools/common/common/test/data/content_differ_dir/subdir/toto.txt +0 -53
  73. data/tools/common/common/test/data/file_differ_dir/NOTHING +0 -0
  74. data/tools/common/common/test/data/file_differ_dir/README +0 -1
  75. data/tools/common/common/test/data/file_differ_dir/subdir/toto.txt +0 -53
  76. data/tools/common/common/test/data/file_differ_dir/subdirtwo/Hello +0 -0
  77. data/tools/common/common/test/data/find_test/__init__.py +0 -0
  78. data/tools/common/common/test/data/find_test/foo.txt +0 -0
  79. data/tools/common/common/test/data/find_test/module.py +0 -0
  80. data/tools/common/common/test/data/find_test/module2.py +0 -0
  81. data/tools/common/common/test/data/find_test/newlines.txt +0 -0
  82. data/tools/common/common/test/data/find_test/noendingnewline.py +0 -0
  83. data/tools/common/common/test/data/find_test/nonregr.py +0 -0
  84. data/tools/common/common/test/data/find_test/normal_file.txt +0 -0
  85. data/tools/common/common/test/data/find_test/spam.txt +0 -0
  86. data/tools/common/common/test/data/find_test/sub/doc.txt +0 -0
  87. data/tools/common/common/test/data/find_test/sub/momo.py +0 -0
  88. data/tools/common/common/test/data/find_test/test.ini +0 -0
  89. data/tools/common/common/test/data/find_test/test1.msg +0 -0
  90. data/tools/common/common/test/data/find_test/test2.msg +0 -0
  91. data/tools/common/common/test/data/find_test/write_protected_file.txt +0 -0
  92. data/tools/common/common/test/data/foo.txt +0 -9
  93. data/tools/common/common/test/data/module.py +0 -88
  94. data/tools/common/common/test/data/module2.py +0 -77
  95. data/tools/common/common/test/data/newlines.txt +0 -3
  96. data/tools/common/common/test/data/noendingnewline.py +0 -36
  97. data/tools/common/common/test/data/nonregr.py +0 -14
  98. data/tools/common/common/test/data/normal_file.txt +0 -0
  99. data/tools/common/common/test/data/reference_dir/NOTHING +0 -0
  100. data/tools/common/common/test/data/reference_dir/README +0 -1
  101. data/tools/common/common/test/data/reference_dir/subdir/coin +0 -1
  102. data/tools/common/common/test/data/reference_dir/subdir/toto.txt +0 -53
  103. data/tools/common/common/test/data/same_dir/NOTHING +0 -0
  104. data/tools/common/common/test/data/same_dir/README +0 -1
  105. data/tools/common/common/test/data/same_dir/subdir/coin +0 -1
  106. data/tools/common/common/test/data/same_dir/subdir/toto.txt +0 -53
  107. data/tools/common/common/test/data/spam.txt +0 -9
  108. data/tools/common/common/test/data/sub/doc.txt +0 -1
  109. data/tools/common/common/test/data/sub/momo.py +0 -1
  110. data/tools/common/common/test/data/subdir_differ_dir/NOTHING +0 -0
  111. data/tools/common/common/test/data/subdir_differ_dir/README +0 -1
  112. data/tools/common/common/test/data/subdir_differ_dir/subdir/coin +0 -1
  113. data/tools/common/common/test/data/subdir_differ_dir/subdir/toto.txt +0 -53
  114. data/tools/common/common/test/data/test.ini +0 -20
  115. data/tools/common/common/test/data/test1.msg +0 -30
  116. data/tools/common/common/test/data/test2.msg +0 -42
  117. data/tools/common/common/test/data/write_protected_file.txt +0 -0
  118. data/tools/common/common/test/foomod.py +0 -17
  119. data/tools/common/common/test/unittest_cache.py +0 -129
  120. data/tools/common/common/test/unittest_changelog.py +0 -37
  121. data/tools/common/common/test/unittest_compat.py +0 -239
  122. data/tools/common/common/test/unittest_configuration.py +0 -348
  123. data/tools/common/common/test/unittest_date.py +0 -154
  124. data/tools/common/common/test/unittest_decorators.py +0 -62
  125. data/tools/common/common/test/unittest_deprecation.py +0 -76
  126. data/tools/common/common/test/unittest_fileutils.py +0 -133
  127. data/tools/common/common/test/unittest_graph.py +0 -50
  128. data/tools/common/common/test/unittest_html.py +0 -76
  129. data/tools/common/common/test/unittest_interface.py +0 -87
  130. data/tools/common/common/test/unittest_modutils.py +0 -244
  131. data/tools/common/common/test/unittest_pytest.py +0 -50
  132. data/tools/common/common/test/unittest_shellutils.py +0 -248
  133. data/tools/common/common/test/unittest_table.py +0 -448
  134. data/tools/common/common/test/unittest_taskqueue.py +0 -71
  135. data/tools/common/common/test/unittest_testlib.py +0 -956
  136. data/tools/common/common/test/unittest_textutils.py +0 -247
  137. data/tools/common/common/test/unittest_tree.py +0 -248
  138. data/tools/common/common/test/unittest_umessage.py +0 -55
  139. data/tools/common/common/test/unittest_ureports_html.py +0 -64
  140. data/tools/common/common/test/unittest_ureports_text.py +0 -105
  141. data/tools/common/common/test/unittest_xmlutils.py +0 -75
  142. data/tools/common/common/test/utils.py +0 -87
  143. data/tools/common/common/testlib.py +0 -1927
  144. data/tools/common/common/textutils.py +0 -476
  145. data/tools/common/common/tree.py +0 -372
  146. data/tools/common/common/umessage.py +0 -161
  147. data/tools/common/common/ureports/__init__.py +0 -174
  148. data/tools/common/common/ureports/docbook_writer.py +0 -139
  149. data/tools/common/common/ureports/html_writer.py +0 -131
  150. data/tools/common/common/ureports/nodes.py +0 -201
  151. data/tools/common/common/ureports/text_writer.py +0 -140
  152. data/tools/common/common/vcgutils.py +0 -216
  153. data/tools/common/common/visitor.py +0 -107
  154. data/tools/common/common/xmlrpcutils.py +0 -136
  155. data/tools/common/common/xmlutils.py +0 -61
  156. data/tools/coverage/coverage.py +0 -602
  157. data/tools/epydoc/__init__.py +0 -227
  158. data/tools/epydoc/__init__.pyc +0 -0
  159. data/tools/epydoc/apidoc.py +0 -2203
  160. data/tools/epydoc/apidoc.pyc +0 -0
  161. data/tools/epydoc/checker.py +0 -349
  162. data/tools/epydoc/checker.pyc +0 -0
  163. data/tools/epydoc/cli.py +0 -1470
  164. data/tools/epydoc/cli.pyc +0 -0
  165. data/tools/epydoc/compat.py +0 -250
  166. data/tools/epydoc/compat.pyc +0 -0
  167. data/tools/epydoc/docbuilder.py +0 -1358
  168. data/tools/epydoc/docbuilder.pyc +0 -0
  169. data/tools/epydoc/docintrospecter.py +0 -1056
  170. data/tools/epydoc/docintrospecter.pyc +0 -0
  171. data/tools/epydoc/docparser.py +0 -2113
  172. data/tools/epydoc/docparser.pyc +0 -0
  173. data/tools/epydoc/docstringparser.py +0 -1111
  174. data/tools/epydoc/docstringparser.pyc +0 -0
  175. data/tools/epydoc/docwriter/__init__.py +0 -12
  176. data/tools/epydoc/docwriter/__init__.pyc +0 -0
  177. data/tools/epydoc/docwriter/dotgraph.py +0 -1351
  178. data/tools/epydoc/docwriter/dotgraph.pyc +0 -0
  179. data/tools/epydoc/docwriter/html.py +0 -3491
  180. data/tools/epydoc/docwriter/html.pyc +0 -0
  181. data/tools/epydoc/docwriter/html_colorize.py +0 -909
  182. data/tools/epydoc/docwriter/html_colorize.pyc +0 -0
  183. data/tools/epydoc/docwriter/html_css.py +0 -550
  184. data/tools/epydoc/docwriter/html_css.pyc +0 -0
  185. data/tools/epydoc/docwriter/html_help.py +0 -190
  186. data/tools/epydoc/docwriter/html_help.pyc +0 -0
  187. data/tools/epydoc/docwriter/latex.py +0 -1187
  188. data/tools/epydoc/docwriter/latex.pyc +0 -0
  189. data/tools/epydoc/docwriter/plaintext.py +0 -276
  190. data/tools/epydoc/docwriter/plaintext.pyc +0 -0
  191. data/tools/epydoc/docwriter/xlink.py +0 -505
  192. data/tools/epydoc/docwriter/xlink.pyc +0 -0
  193. data/tools/epydoc/gui.py +0 -1148
  194. data/tools/epydoc/gui.pyc +0 -0
  195. data/tools/epydoc/log.py +0 -204
  196. data/tools/epydoc/log.pyc +0 -0
  197. data/tools/epydoc/markup/__init__.py +0 -623
  198. data/tools/epydoc/markup/__init__.pyc +0 -0
  199. data/tools/epydoc/markup/doctest.py +0 -311
  200. data/tools/epydoc/markup/doctest.pyc +0 -0
  201. data/tools/epydoc/markup/epytext.py +0 -2116
  202. data/tools/epydoc/markup/epytext.pyc +0 -0
  203. data/tools/epydoc/markup/javadoc.py +0 -250
  204. data/tools/epydoc/markup/javadoc.pyc +0 -0
  205. data/tools/epydoc/markup/plaintext.py +0 -78
  206. data/tools/epydoc/markup/plaintext.pyc +0 -0
  207. data/tools/epydoc/markup/pyval_repr.py +0 -532
  208. data/tools/epydoc/markup/pyval_repr.pyc +0 -0
  209. data/tools/epydoc/markup/restructuredtext.py +0 -906
  210. data/tools/epydoc/markup/restructuredtext.pyc +0 -0
  211. data/tools/epydoc/test/__init__.py +0 -97
  212. data/tools/epydoc/test/__init__.pyc +0 -0
  213. data/tools/epydoc/test/util.py +0 -226
  214. data/tools/epydoc/test/util.pyc +0 -0
  215. data/tools/epydoc/util.py +0 -289
  216. data/tools/epydoc/util.pyc +0 -0
  217. data/tools/logilab/logilab/__init__.py +0 -5
  218. data/tools/logilab/logilab/astng/__init__.py +0 -82
  219. data/tools/logilab/logilab/astng/__pkginfo__.py +0 -76
  220. data/tools/logilab/logilab/astng/_exceptions.py +0 -64
  221. data/tools/logilab/logilab/astng/_nodes_ast.py +0 -667
  222. data/tools/logilab/logilab/astng/_nodes_compiler.py +0 -758
  223. data/tools/logilab/logilab/astng/bases.py +0 -608
  224. data/tools/logilab/logilab/astng/builder.py +0 -239
  225. data/tools/logilab/logilab/astng/inference.py +0 -426
  226. data/tools/logilab/logilab/astng/inspector.py +0 -289
  227. data/tools/logilab/logilab/astng/manager.py +0 -421
  228. data/tools/logilab/logilab/astng/mixins.py +0 -165
  229. data/tools/logilab/logilab/astng/node_classes.py +0 -848
  230. data/tools/logilab/logilab/astng/nodes.py +0 -85
  231. data/tools/logilab/logilab/astng/nodes_as_string.py +0 -389
  232. data/tools/logilab/logilab/astng/patchcomptransformer.py +0 -159
  233. data/tools/logilab/logilab/astng/protocols.py +0 -333
  234. data/tools/logilab/logilab/astng/raw_building.py +0 -212
  235. data/tools/logilab/logilab/astng/rebuilder.py +0 -307
  236. data/tools/logilab/logilab/astng/scoped_nodes.py +0 -951
  237. data/tools/logilab/logilab/astng/test/__init__.py +0 -19
  238. data/tools/logilab/logilab/astng/test/data/MyPyPa-0.1.0-py2.5.egg +0 -0
  239. data/tools/logilab/logilab/astng/test/data/MyPyPa-0.1.0-py2.5.zip +0 -0
  240. data/tools/logilab/logilab/astng/test/data/SSL1/Connection1.py +0 -33
  241. data/tools/logilab/logilab/astng/test/data/SSL1/__init__.py +0 -20
  242. data/tools/logilab/logilab/astng/test/data/__init__.py +0 -20
  243. data/tools/logilab/logilab/astng/test/data/all.py +0 -29
  244. data/tools/logilab/logilab/astng/test/data/appl/__init__.py +0 -23
  245. data/tools/logilab/logilab/astng/test/data/appl/myConnection.py +0 -30
  246. data/tools/logilab/logilab/astng/test/data/format.py +0 -34
  247. data/tools/logilab/logilab/astng/test/data/module.py +0 -90
  248. data/tools/logilab/logilab/astng/test/data/module2.py +0 -112
  249. data/tools/logilab/logilab/astng/test/data/noendingnewline.py +0 -57
  250. data/tools/logilab/logilab/astng/test/data/nonregr.py +0 -76
  251. data/tools/logilab/logilab/astng/test/data/notall.py +0 -28
  252. data/tools/logilab/logilab/astng/test/data2/__init__.py +0 -20
  253. data/tools/logilab/logilab/astng/test/data2/clientmodule_test.py +0 -51
  254. data/tools/logilab/logilab/astng/test/data2/suppliermodule_test.py +0 -32
  255. data/tools/logilab/logilab/astng/test/regrtest.py +0 -135
  256. data/tools/logilab/logilab/astng/test/regrtest_data/absimport.py +0 -22
  257. data/tools/logilab/logilab/astng/test/regrtest_data/descriptor_crash.py +0 -31
  258. data/tools/logilab/logilab/astng/test/regrtest_data/import_package_subpackage_module.py +0 -68
  259. data/tools/logilab/logilab/astng/test/regrtest_data/package/__init__.py +0 -24
  260. data/tools/logilab/logilab/astng/test/regrtest_data/package/subpackage/__init__.py +0 -20
  261. data/tools/logilab/logilab/astng/test/regrtest_data/package/subpackage/module.py +0 -20
  262. data/tools/logilab/logilab/astng/test/unittest_builder.py +0 -684
  263. data/tools/logilab/logilab/astng/test/unittest_inference.py +0 -1112
  264. data/tools/logilab/logilab/astng/test/unittest_inspector.py +0 -105
  265. data/tools/logilab/logilab/astng/test/unittest_lookup.py +0 -302
  266. data/tools/logilab/logilab/astng/test/unittest_manager.py +0 -98
  267. data/tools/logilab/logilab/astng/test/unittest_nodes.py +0 -302
  268. data/tools/logilab/logilab/astng/test/unittest_scoped_nodes.py +0 -501
  269. data/tools/logilab/logilab/astng/test/unittest_utils.py +0 -104
  270. data/tools/logilab/logilab/astng/utils.py +0 -342
  271. data/tools/logilab/logilab/common/__init__.py +0 -140
  272. data/tools/logilab/logilab/common/__pkginfo__.py +0 -43
  273. data/tools/logilab/logilab/common/adbh.py +0 -35
  274. data/tools/logilab/logilab/common/cache.py +0 -114
  275. data/tools/logilab/logilab/common/changelog.py +0 -234
  276. data/tools/logilab/logilab/common/clcommands.py +0 -181
  277. data/tools/logilab/logilab/common/cli.py +0 -212
  278. data/tools/logilab/logilab/common/compat.py +0 -328
  279. data/tools/logilab/logilab/common/configuration.py +0 -1087
  280. data/tools/logilab/logilab/common/contexts.py +0 -58
  281. data/tools/logilab/logilab/common/corbautils.py +0 -117
  282. data/tools/logilab/logilab/common/daemon.py +0 -171
  283. data/tools/logilab/logilab/common/date.py +0 -279
  284. data/tools/logilab/logilab/common/db.py +0 -49
  285. data/tools/logilab/logilab/common/dbf.py +0 -229
  286. data/tools/logilab/logilab/common/debugger.py +0 -208
  287. data/tools/logilab/logilab/common/decorators.py +0 -190
  288. data/tools/logilab/logilab/common/deprecation.py +0 -118
  289. data/tools/logilab/logilab/common/fileutils.py +0 -409
  290. data/tools/logilab/logilab/common/graph.py +0 -259
  291. data/tools/logilab/logilab/common/html.py +0 -142
  292. data/tools/logilab/logilab/common/interface.py +0 -76
  293. data/tools/logilab/logilab/common/logging_ext.py +0 -166
  294. data/tools/logilab/logilab/common/modutils.py +0 -670
  295. data/tools/logilab/logilab/common/optik_ext.py +0 -383
  296. data/tools/logilab/logilab/common/optparser.py +0 -92
  297. data/tools/logilab/logilab/common/pdf_ext.py +0 -111
  298. data/tools/logilab/logilab/common/proc.py +0 -276
  299. data/tools/logilab/logilab/common/pyro_ext.py +0 -146
  300. data/tools/logilab/logilab/common/pytest.py +0 -754
  301. data/tools/logilab/logilab/common/shellutils.py +0 -383
  302. data/tools/logilab/logilab/common/sphinx_ext.py +0 -87
  303. data/tools/logilab/logilab/common/sphinxutils.py +0 -122
  304. data/tools/logilab/logilab/common/sqlgen.py +0 -31
  305. data/tools/logilab/logilab/common/table.py +0 -930
  306. data/tools/logilab/logilab/common/tasksqueue.py +0 -97
  307. data/tools/logilab/logilab/common/test/__init__.py +0 -1
  308. data/tools/logilab/logilab/common/test/data/ChangeLog +0 -184
  309. data/tools/logilab/logilab/common/test/data/MyPyPa-0.1.0-py2.5.egg +0 -0
  310. data/tools/logilab/logilab/common/test/data/__init__.py +0 -1
  311. data/tools/logilab/logilab/common/test/data/content_differ_dir/NOTHING +0 -0
  312. data/tools/logilab/logilab/common/test/data/content_differ_dir/README +0 -1
  313. data/tools/logilab/logilab/common/test/data/content_differ_dir/subdir/coin +0 -1
  314. data/tools/logilab/logilab/common/test/data/content_differ_dir/subdir/toto.txt +0 -53
  315. data/tools/logilab/logilab/common/test/data/file_differ_dir/NOTHING +0 -0
  316. data/tools/logilab/logilab/common/test/data/file_differ_dir/README +0 -1
  317. data/tools/logilab/logilab/common/test/data/file_differ_dir/subdir/toto.txt +0 -53
  318. data/tools/logilab/logilab/common/test/data/file_differ_dir/subdirtwo/Hello +0 -0
  319. data/tools/logilab/logilab/common/test/data/find_test/__init__.py +0 -0
  320. data/tools/logilab/logilab/common/test/data/find_test/foo.txt +0 -0
  321. data/tools/logilab/logilab/common/test/data/find_test/module.py +0 -0
  322. data/tools/logilab/logilab/common/test/data/find_test/module2.py +0 -0
  323. data/tools/logilab/logilab/common/test/data/find_test/newlines.txt +0 -0
  324. data/tools/logilab/logilab/common/test/data/find_test/noendingnewline.py +0 -0
  325. data/tools/logilab/logilab/common/test/data/find_test/nonregr.py +0 -0
  326. data/tools/logilab/logilab/common/test/data/find_test/normal_file.txt +0 -0
  327. data/tools/logilab/logilab/common/test/data/find_test/spam.txt +0 -0
  328. data/tools/logilab/logilab/common/test/data/find_test/sub/doc.txt +0 -0
  329. data/tools/logilab/logilab/common/test/data/find_test/sub/momo.py +0 -0
  330. data/tools/logilab/logilab/common/test/data/find_test/test.ini +0 -0
  331. data/tools/logilab/logilab/common/test/data/find_test/test1.msg +0 -0
  332. data/tools/logilab/logilab/common/test/data/find_test/test2.msg +0 -0
  333. data/tools/logilab/logilab/common/test/data/find_test/write_protected_file.txt +0 -0
  334. data/tools/logilab/logilab/common/test/data/foo.txt +0 -9
  335. data/tools/logilab/logilab/common/test/data/module.py +0 -88
  336. data/tools/logilab/logilab/common/test/data/module2.py +0 -77
  337. data/tools/logilab/logilab/common/test/data/newlines.txt +0 -3
  338. data/tools/logilab/logilab/common/test/data/noendingnewline.py +0 -36
  339. data/tools/logilab/logilab/common/test/data/nonregr.py +0 -14
  340. data/tools/logilab/logilab/common/test/data/normal_file.txt +0 -0
  341. data/tools/logilab/logilab/common/test/data/reference_dir/NOTHING +0 -0
  342. data/tools/logilab/logilab/common/test/data/reference_dir/README +0 -1
  343. data/tools/logilab/logilab/common/test/data/reference_dir/subdir/coin +0 -1
  344. data/tools/logilab/logilab/common/test/data/reference_dir/subdir/toto.txt +0 -53
  345. data/tools/logilab/logilab/common/test/data/same_dir/NOTHING +0 -0
  346. data/tools/logilab/logilab/common/test/data/same_dir/README +0 -1
  347. data/tools/logilab/logilab/common/test/data/same_dir/subdir/coin +0 -1
  348. data/tools/logilab/logilab/common/test/data/same_dir/subdir/toto.txt +0 -53
  349. data/tools/logilab/logilab/common/test/data/spam.txt +0 -9
  350. data/tools/logilab/logilab/common/test/data/sub/doc.txt +0 -1
  351. data/tools/logilab/logilab/common/test/data/sub/momo.py +0 -1
  352. data/tools/logilab/logilab/common/test/data/subdir_differ_dir/NOTHING +0 -0
  353. data/tools/logilab/logilab/common/test/data/subdir_differ_dir/README +0 -1
  354. data/tools/logilab/logilab/common/test/data/subdir_differ_dir/subdir/coin +0 -1
  355. data/tools/logilab/logilab/common/test/data/subdir_differ_dir/subdir/toto.txt +0 -53
  356. data/tools/logilab/logilab/common/test/data/test.ini +0 -20
  357. data/tools/logilab/logilab/common/test/data/test1.msg +0 -30
  358. data/tools/logilab/logilab/common/test/data/test2.msg +0 -42
  359. data/tools/logilab/logilab/common/test/data/write_protected_file.txt +0 -0
  360. data/tools/logilab/logilab/common/test/foomod.py +0 -17
  361. data/tools/logilab/logilab/common/test/unittest_cache.py +0 -129
  362. data/tools/logilab/logilab/common/test/unittest_changelog.py +0 -37
  363. data/tools/logilab/logilab/common/test/unittest_compat.py +0 -239
  364. data/tools/logilab/logilab/common/test/unittest_configuration.py +0 -348
  365. data/tools/logilab/logilab/common/test/unittest_date.py +0 -154
  366. data/tools/logilab/logilab/common/test/unittest_decorators.py +0 -62
  367. data/tools/logilab/logilab/common/test/unittest_deprecation.py +0 -76
  368. data/tools/logilab/logilab/common/test/unittest_fileutils.py +0 -133
  369. data/tools/logilab/logilab/common/test/unittest_graph.py +0 -50
  370. data/tools/logilab/logilab/common/test/unittest_html.py +0 -76
  371. data/tools/logilab/logilab/common/test/unittest_interface.py +0 -87
  372. data/tools/logilab/logilab/common/test/unittest_modutils.py +0 -244
  373. data/tools/logilab/logilab/common/test/unittest_pytest.py +0 -50
  374. data/tools/logilab/logilab/common/test/unittest_shellutils.py +0 -248
  375. data/tools/logilab/logilab/common/test/unittest_table.py +0 -448
  376. data/tools/logilab/logilab/common/test/unittest_taskqueue.py +0 -71
  377. data/tools/logilab/logilab/common/test/unittest_testlib.py +0 -956
  378. data/tools/logilab/logilab/common/test/unittest_textutils.py +0 -247
  379. data/tools/logilab/logilab/common/test/unittest_tree.py +0 -248
  380. data/tools/logilab/logilab/common/test/unittest_umessage.py +0 -55
  381. data/tools/logilab/logilab/common/test/unittest_ureports_html.py +0 -64
  382. data/tools/logilab/logilab/common/test/unittest_ureports_text.py +0 -105
  383. data/tools/logilab/logilab/common/test/unittest_xmlutils.py +0 -75
  384. data/tools/logilab/logilab/common/test/utils.py +0 -87
  385. data/tools/logilab/logilab/common/testlib.py +0 -1927
  386. data/tools/logilab/logilab/common/textutils.py +0 -476
  387. data/tools/logilab/logilab/common/tree.py +0 -372
  388. data/tools/logilab/logilab/common/umessage.py +0 -161
  389. data/tools/logilab/logilab/common/ureports/__init__.py +0 -174
  390. data/tools/logilab/logilab/common/ureports/docbook_writer.py +0 -139
  391. data/tools/logilab/logilab/common/ureports/html_writer.py +0 -131
  392. data/tools/logilab/logilab/common/ureports/nodes.py +0 -201
  393. data/tools/logilab/logilab/common/ureports/text_writer.py +0 -140
  394. data/tools/logilab/logilab/common/vcgutils.py +0 -216
  395. data/tools/logilab/logilab/common/visitor.py +0 -107
  396. data/tools/logilab/logilab/common/xmlrpcutils.py +0 -136
  397. data/tools/logilab/logilab/common/xmlutils.py +0 -61
  398. data/tools/pychecker/COPYRIGHT +0 -31
  399. data/tools/pychecker/ChangeLog +0 -349
  400. data/tools/pychecker/CodeChecks.py +0 -1969
  401. data/tools/pychecker/CodeChecks.pyc +0 -0
  402. data/tools/pychecker/CodeChecks.pyo +0 -0
  403. data/tools/pychecker/Config.py +0 -475
  404. data/tools/pychecker/Config.pyc +0 -0
  405. data/tools/pychecker/Config.pyo +0 -0
  406. data/tools/pychecker/KNOWN_BUGS +0 -100
  407. data/tools/pychecker/MAINTAINERS +0 -81
  408. data/tools/pychecker/NEWS +0 -406
  409. data/tools/pychecker/OP.py +0 -131
  410. data/tools/pychecker/OP.pyc +0 -0
  411. data/tools/pychecker/OP.pyo +0 -0
  412. data/tools/pychecker/OptionTypes.py +0 -117
  413. data/tools/pychecker/OptionTypes.pyc +0 -0
  414. data/tools/pychecker/OptionTypes.pyo +0 -0
  415. data/tools/pychecker/README +0 -152
  416. data/tools/pychecker/Stack.py +0 -115
  417. data/tools/pychecker/Stack.pyc +0 -0
  418. data/tools/pychecker/Stack.pyo +0 -0
  419. data/tools/pychecker/TODO +0 -101
  420. data/tools/pychecker/VERSION +0 -1
  421. data/tools/pychecker/Warning.py +0 -50
  422. data/tools/pychecker/Warning.pyc +0 -0
  423. data/tools/pychecker/Warning.pyo +0 -0
  424. data/tools/pychecker/__init__.py +0 -17
  425. data/tools/pychecker/__init__.pyc +0 -0
  426. data/tools/pychecker/__init__.pyo +0 -0
  427. data/tools/pychecker/checker.py +0 -961
  428. data/tools/pychecker/checker.pyc +0 -0
  429. data/tools/pychecker/checker.pyo +0 -0
  430. data/tools/pychecker/function.py +0 -159
  431. data/tools/pychecker/function.pyc +0 -0
  432. data/tools/pychecker/function.pyo +0 -0
  433. data/tools/pychecker/msgs.py +0 -175
  434. data/tools/pychecker/msgs.pyc +0 -0
  435. data/tools/pychecker/msgs.pyo +0 -0
  436. data/tools/pychecker/options.py +0 -275
  437. data/tools/pychecker/options.pyc +0 -0
  438. data/tools/pychecker/options.pyo +0 -0
  439. data/tools/pychecker/pcmodules.py +0 -19
  440. data/tools/pychecker/pcmodules.pyc +0 -0
  441. data/tools/pychecker/pcmodules.pyo +0 -0
  442. data/tools/pychecker/printer.py +0 -47
  443. data/tools/pychecker/printer.pyc +0 -0
  444. data/tools/pychecker/printer.pyo +0 -0
  445. data/tools/pychecker/python.py +0 -427
  446. data/tools/pychecker/python.pyc +0 -0
  447. data/tools/pychecker/python.pyo +0 -0
  448. data/tools/pychecker/utils.py +0 -102
  449. data/tools/pychecker/utils.pyc +0 -0
  450. data/tools/pychecker/utils.pyo +0 -0
  451. data/tools/pychecker/warn.py +0 -778
  452. data/tools/pychecker/warn.pyc +0 -0
  453. data/tools/pychecker/warn.pyo +0 -0
  454. data/tools/pylint2/pylint/__init__.py +0 -16
  455. data/tools/pylint2/pylint/__pkginfo__.py +0 -67
  456. data/tools/pylint2/pylint/checkers/__init__.py +0 -155
  457. data/tools/pylint2/pylint/checkers/base.py +0 -749
  458. data/tools/pylint2/pylint/checkers/classes.py +0 -527
  459. data/tools/pylint2/pylint/checkers/design_analysis.py +0 -344
  460. data/tools/pylint2/pylint/checkers/exceptions.py +0 -183
  461. data/tools/pylint2/pylint/checkers/format.py +0 -367
  462. data/tools/pylint2/pylint/checkers/imports.py +0 -379
  463. data/tools/pylint2/pylint/checkers/logging.py +0 -98
  464. data/tools/pylint2/pylint/checkers/misc.py +0 -128
  465. data/tools/pylint2/pylint/checkers/newstyle.py +0 -107
  466. data/tools/pylint2/pylint/checkers/raw_metrics.py +0 -125
  467. data/tools/pylint2/pylint/checkers/similar.py +0 -333
  468. data/tools/pylint2/pylint/checkers/string_format.py +0 -239
  469. data/tools/pylint2/pylint/checkers/typecheck.py +0 -364
  470. data/tools/pylint2/pylint/checkers/utils.py +0 -208
  471. data/tools/pylint2/pylint/checkers/variables.py +0 -498
  472. data/tools/pylint2/pylint/config.py +0 -149
  473. data/tools/pylint2/pylint/epylint.py +0 -149
  474. data/tools/pylint2/pylint/gui.py +0 -433
  475. data/tools/pylint2/pylint/interfaces.py +0 -98
  476. data/tools/pylint2/pylint/lint.py +0 -914
  477. data/tools/pylint2/pylint/pyreverse/__init__.py +0 -5
  478. data/tools/pylint2/pylint/pyreverse/diadefslib.py +0 -229
  479. data/tools/pylint2/pylint/pyreverse/diagrams.py +0 -247
  480. data/tools/pylint2/pylint/pyreverse/main.py +0 -123
  481. data/tools/pylint2/pylint/pyreverse/utils.py +0 -131
  482. data/tools/pylint2/pylint/pyreverse/writer.py +0 -196
  483. data/tools/pylint2/pylint/reporters/__init__.py +0 -67
  484. data/tools/pylint2/pylint/reporters/guireporter.py +0 -36
  485. data/tools/pylint2/pylint/reporters/html.py +0 -69
  486. data/tools/pylint2/pylint/reporters/text.py +0 -156
  487. data/tools/pylint2/pylint/utils.py +0 -518
  488. data/tools/pylint2/pylint.py +0 -16
data/tools/pychecker/NEWS DELETED
@@ -1,406 +0,0 @@
1
- Version 0.8.18 - XXX
2
- * Fixed SF Bug [ 1827412 ] pychecker.bat only handles 9 cmdline args
3
- * Fix warning about comparison checking with bool false alert for 'in' and 'not in'
4
- * Add warning for using __set__, __get__, and __delete__ in an old-style class
5
- * Fix spurious warning about __set__, __get__, and __delete__ not being special
6
- methods.
7
- * Fix inability to disable Warning about constant setattr()/getattr()
8
- * Fix spurious warning on min/max not accepting kwarg of key in Python 2.5
9
- * Add some __special__ pickling methods that were missing
10
- * Add --missingattrs option to ignore some (but not all) attribute names
11
- * Fix crash when using keyword arguments with builtin methods
12
- * Add --keepgoing option to ignore import errors
13
- * Add --findevil option to make it easier to find objects that crash the interpreter
14
- * Add support for Python 2.5
15
-
16
- Version 0.8.17 - 3 February 2006
17
- * Fix spurious warning for Statement with no effect using bit shifts
18
- * Add -#/--limit command line option to set the max # of warnings to show
19
- * Remove broken command line options: -e/--errors, --complexity
20
- * Add -e/--level command line options which allows the error level
21
- to be specified: error, security, warning, unused, deprecated, style.
22
- These names map to numbers: 90, 90, 70, 50, 40, 10 (error == security).
23
- Specifying a value means all levels equal to or greater than it.
24
- * Add --only option which displays warnings only for files specified
25
- on the command line
26
- * Add --evil option for users to prevent the interpreter from crashing
27
- due to broken C extensions
28
- * Fix wrong file name when warning about returning values from
29
- __init__ functions. (#1291116)
30
- * Fix a few more glitches with setup.py.
31
- * Suppress warning about integer division when the code is: int(x / y)
32
- * Add code to skip testing objects from extension modules that are
33
- known to crash the interpreter. Currently, the list includes old versions of
34
- matplotlib.axes.BinOpType and wx.TheClipboard.
35
- * Support ROT_THREE and ROT_FOUR opcodes
36
-
37
- Version 0.8.16 - 4 September 2005
38
- * Fix problems installing on Windows and running setup.py build
39
-
40
- Version 0.8.15 - 31 August 2005
41
- * Fix spurious warning about catching string exceptions
42
- * Don't barf if there is # -*- encoding: ... -*- lines and unicode strings
43
- * setup.py was rewritten to honor --root, --home, etc options
44
- * Fix internal error on processing nested scopes
45
- * Fix constant tuples in Python 2.4
46
- * Don't warn about implicit/explicit returns in Python 2.4, we can't tell
47
- * Fix crash when __slots__ was an instance w/o __len__
48
- * Fix bug that declared {}.pop to only take one argument, it takes 1 or 2
49
- * Fix spurious warning when using tuples for exceptions
50
- * Fix spurious warning <stack> / <stack>
51
- * Fix spurious warnings for sets module about __cmp__, __hash__
52
- * Changed abstract check to require raising NotImplementedError
53
- rather than raising any error
54
- * Fix spurious warnings in Python 2.4 for Using is (not) None warnings
55
- * Fix spurious warnings for some instances of No class attribute found
56
- * Fix spurious warnings for implicit returns when using nested functions
57
-
58
- Version 0.8.14 - 6 June 2004
59
- * Fix spurious warning in Python 2.3+ when doing a,b = 1,2
60
- * Add warning to check for "if s.find(str):"
61
- this should be "if s.find(str) >= 0:" when s is a string
62
- * Fix spurious warning when using augmented assignment (e.g., x += x)
63
- * Fix spurious warning when doing x = not x
64
- * Fix spurious warning for invalid arg count when calling a staticmethod
65
- * Fix spurious warning for setting a variable to itself when: x, y, z = x
66
- * Fix spurious warning when doing some binary operations: self.a ^ self.b
67
- * Fix crash in STORE_ATTR with some list comprehensions in Python 2.2
68
- e.g., a.a = [x for x in range(2) if x > 1]
69
- * Support Tk 8.4 and above in the GUI (change col= to column=)
70
-
71
- Version 0.8.13 - 18 November 2003
72
- * Add -s/--shadowbuiltin option to warn when overriding a builtin
73
- * Add warning when assigning a variable to itself
74
- * Add warning when dividing a variable by itself
75
- * Add warnings when using a bit-wise operator with the same variable (a & a)
76
- * Add warning when passing a constant string to getattr()/setattr()
77
- * Add --special option to check for __special__ (reserved) method names
78
- and that their signature (argument count) is correct
79
- * Add warning for using __getattribute__ in an old-style class
80
- * Suppress 'self as first argument' warning for static and class methods
81
- * Add --classmethodargs option to specify first argument name
82
- for class methods
83
-
84
- Version 0.8.12 - 23 December 2002
85
- * Add --isliteral option to warn when using is/is not against literal
86
- (e.g., XXX is 5 YYY is not 'abcdef', etc)
87
- * Add --modulo1 option to warn when using (expr % 1),
88
- which is constant when expr is an integer or string
89
- * Add -4/--noeffect option to disable warnings for 'Statement has no effect'
90
- * self is not first argument warning can be disabled with -S/--self ''
91
- * Don't print duplicate warnings when importing pychecker
92
- * Fix other spurious warnings when importing pychecker
93
- * Fix bug for spurious invalid arguments when passing a dict inline
94
- * Fix bug for spurious Statement has no effect when print >> x, ... ,
95
- * Add @option_file command line argument to read options from a file
96
- (used on platforms which can't have too many options, ie Windows)
97
- * Fix several crashes
98
- * Line numbers should be close for Python 2.3 and if run on optimized code
99
-
100
- Version 0.8.11 - 06 June 2002
101
- * Improve error message for syntax errors from user files
102
- * Fix pychecker.bat so it should work now
103
- * Add a warning for using __coerce__ in new-style classes
104
- * Add --deprecated option for using deprecated modules or functions
105
- * Add a warning for using functions with security problems (os.t[e]mpnam)
106
- * Add a warning for comparing against True/False or defining True/False
107
- * Add --badexcept option to warn when using string exceptions or
108
- classes not derived from Exception to raise/catch exceptions
109
- * Fix spurious warnings from using (test and 'true' or 'false)
110
-
111
- Version 0.8.10 - 20 March 2002
112
- * Add --unpack option to warn when unpacking a non-sequence
113
- * Add --unpacklen option to warn when unpacking sequence of wrong size
114
- * Add --changetypes option to warn when setting a variable to different types
115
- * Add --stringiter option to warn when iterating over a string
116
- * Add --input option to warn when using input()
117
- * Fix crash with checking properties or deriving from objects (2.2 only)
118
- * Fix crash with nested scopes and lambdas
119
- * Fix spurious warnings for constant conditionals when using ('%s' % value)
120
- * Fix spurious warnings for unused identifiers caused by from XXX import *
121
- * Add more information when module cannot be imported
122
- * Fix spurious warnings for implicit returns when using while 1:
123
- * Fix spurious warnings for implicit returns when using try/finally:
124
- * Fix spurious warning with globals that start w/__
125
- * Fix spurious warnings for modifying default arguments
126
- when calling {}.get(), {}.has_key(), [].index(), [].count(), etc.
127
- * Fix spurious warnings in Python 1.5.2 when using from/import
128
-
129
- Version 0.8.9 - 02 February 2002
130
- * Add -3/--properties warning when using properties with classic classes
131
- * Add more warnings for statements with no effect
132
- * Fix crash due to import module problems
133
- * Fix crash with nested scopes
134
- * Fix spurious warnings about module attributes and importing
135
- * Fix spurious warnings in Python 2.2 when using builtin classes (eg, socket)
136
- * Fix spurious warning for format string problem when using % at module scope
137
- * Fix spurious warning for implicit returns when doing while 1:
138
- * Fix spurious warning for inconsistent return types
139
- when objects are subclasses
140
- * Don't warn about inconsistent return types from __getattr[ibute]__
141
- * Always assume readline module is used if input/raw_input is used
142
-
143
- Version 0.8.8 - 13 January 2002
144
- * Add -F/--config option to specify pycheckrc file to use
145
- Always read $HOME/.pycheckrc, .pycheckrc, and -F options in that order
146
- * Add -0/--abstract option to warn that subclass should override
147
- a base class whose method(s) only raise exceptions
148
- * Add -6/--exec option to warn when using the exec statement
149
- * Add -7/--slots option to warn about __slots__ usage problems
150
- * Add --emptyslots option to warn about empty __slots__
151
- * Add check if __getattr[ibute]__ returns None, should raise an exception
152
- * Allow pychecker to be imported (in your code do: import pychecker.check)
153
- * Using vars() for format string argument works like locals()
154
- * Make unusedNames a prefix, so emptyVal, unusedVal, etc are also ignored
155
- * Fix -a/--initattr warning to actually warn when attributes
156
- are set outside of __init__(), but not in __init__()
157
- * Fix case where an implicit return did not generate a warning
158
- * Fix spurious warnings when using nested scopes, code should be checked now
159
- * Fix spurious warnings for unreachable code (not enough to enable, yet)
160
- * Fix spurious warnings for integer division from: (x + 100.0) / 10
161
- * Fix spurious warnings for implicit returns when raise in except: clause
162
- * Fix various spurious warnings when using Python 2.2
163
- * Fix spurious warning for overridden method mismatch when using exec
164
- * Fix spurious warning when doing len(filter(lambda x: ..., ...))
165
- * Fix spurious warnings from some from ... import ... and deriving classes
166
-
167
- Version 0.8.7 - 05 January 2002
168
- * Add -2/--constcond option to warn if using a constant
169
- in a conditional statement (if '': ; while 'str': ; etc)
170
- * Add -1/--constant1 option to warn when using if 1: or while 1: etc.
171
- * Add -8/--unreachable option to warn about unreachable code
172
- * Add -9/--members option to warn about unused data members
173
- * Add -w/--shadow for local variable shadowing global variable
174
- * Add warning statements with no effect (load var, but do nothing)
175
- * Handle string multiplication (helps format strings)
176
- code like this doesn't generate a warning now: '%d ' * 3 % (1, 2, 3)
177
- * Fix -C/--implicitreturns option so it works, turn it on by default
178
- * Fix spurious warning when accessing 'static' class members that are methods
179
- (e.g. class C(B): __super_init = B.__init__) (still a problem w/2.2)
180
- * Fix some strange spurious warnings and exceptions
181
- * Handle nested scopes better, includes fixing a crash and
182
- eliminating some spurious warnings
183
-
184
- Version 0.8.6 - 16 November 2001
185
- * Add -5/--maxrefs for maximum # of identifier references (Law of Demeter)
186
- * Fix problem where user defined classes weren't checked for valid attributes
187
- * Allow use of __pychecker__ in class scope
188
- * Fix a lot of global function arg counts for Python 2.2
189
- (many constructors can take no arguments now)
190
- * Fix spurious warning (Function return types are inconsistent)
191
- when multiple returns w/a constant & a local variable of same type
192
- * Fix spurious warning for format strings when using a dict local variable
193
- * Rename pychecker.sh script to pychecker on Unix
194
-
195
- Version 0.8.5 - 17 October 2001
196
- * Add check for using builtin function/method const (None) return value
197
- (e.g., not_a_new_list = [].sort())
198
- * Add check for builtin object method calls for right # args
199
- (e.g., [].count(), {}.keys(), file.seek(0))
200
- * Add check for object method calls for right # args
201
- (calling object when type is known, ie instatiated locally)
202
- * Add check for modifying a parameter that has a default value
203
- (e.g., def func(mutable = []): mutable.append(0))
204
- * Add check for using future keywords (e.g., yield)
205
- * Add check for using unary positive on variables (e.g., +x)
206
- * Add check for recursive calls to __repr__ implementations (`self`)
207
- * Add -X/--reimport option to turn off various module reimport warnings
208
- * Add -V/--version option for printing PyChecker version
209
- * Fix some spurious warnings for inconsistent return value types
210
- * Fix spurious warning from calling functions like: zip(*args)
211
- * Fix -F/--rcfile option so it really works
212
-
213
- Version 0.8.4 - 24 September 2001
214
- * Allow warning suppressions to be specified as regular expressions
215
- * Add -z/--no-varargsused to ignore *args for functions w/variable args
216
- * Add warning checks when deleting variables
217
- * Add check for except Error1, Error2 : # should be except (Error1, Error2) :
218
- * Fix spurious warning when using parameter as dict for format string
219
- * Fix spurious warning when using lambda in __init__
220
- * Add check that pychecker/checker.py is same version as other files
221
- * Get setup.py to work on windows, etc. if don't have /tmp
222
-
223
- Version 0.8.3 - 12 August 2001
224
- * Fix internal errors when doing % on non-strings and other format problems
225
- * Fix spurious warning when using a constant {} with a format mapping
226
-
227
- Version 0.8.2 - 12 August 2001
228
- * Check format strings even if using global & local constants
229
- * Add check that [].append() only takes one argument
230
- * Add check that # parameters are correct for builtin functions
231
- * Add warnings for --, ++, ~~:
232
- "Operator (%s) doesn't exist, statement has no effect"
233
- * Add -Q/--quiet to be real quiet, only output warning msgs, nothing else
234
- * Add -y/--classattr config option (warning was not configurable before)
235
- (warn if class attribute doesn't exist)
236
- * Add -x/--miximport config option (warning was not configurable before)
237
- (warn if mixing: import/from ... import)
238
- * Add -u/--callinit config option (warning was not configurable before)
239
- (warn if Subclass.__init__() not called)
240
- * Add constants together on stack when get + to avoid some spurious warnings
241
- * Fix method and attribute checks for None and Ellipsis
242
- * Fix spurious warnings when doing a local import and use module in lambda
243
- * Fix spurious warnings when object attribute has same name as class
244
- * Fix Object (x) has no attribute warnings for Python 2.2a1 built-in types
245
- * Change default behaviour to not warn about missing doc strings
246
-
247
- Version 0.8.1 - 9 August 2001
248
- * Fix internal error when referencing a list constant: [1,2,3][1]
249
- * Fix internal error for Python 1.5 not catching unicode syntax error
250
- * Fix deprecation warning for Python 2.2a1 with xrange
251
- * Fix spurious warning (No module attribute) when doing import x.y as y
252
- * Fix spurious warning (Base __init__() not called) when using *args or **kw
253
- * Fix 'No module attribute' warning when doing: import foo.bar as bar
254
- * Spell overridden write
255
-
256
- Version 0.8 - 6 August 2001
257
- * Add check for accessing list as list[1,2], should be slice 1:2
258
- * Add -J/maxargs to warn when using too many arguments
259
- * Add -K/maxlocals to warn when using too many local variables
260
- * Add -D/intdivide to warn when using integer division
261
- * Add -O/objattrs to warn when using object.attribute that doesn't exist
262
- * Add -M/reimportself to warn when a module imports itself
263
- * Add -E/unusednames to provide a list of unused names to ignore
264
- (default is: [ '_', 'empty', 'unused' ])
265
- * Major refactoring of warn.py -> utils, msgs, Warning, CodeChecks
266
- * Fix spurious warnings for No class attribute for dynamic classes
267
- * Fix spurious warnings when using objects from blacklisted modules
268
- (Instantiating object with arguments, but no constructor, etc)
269
- * Fix spurious warnings when using lambdas
270
- * Fix spurious warning (No global Y) when using: from X import Y
271
- (problem in python 1.5/1.6 only)
272
-
273
- Version 0.7.5 - 22 July 2001
274
- * Suppress warnings on a per module/function/class/method basis
275
- with new suppressions = {} in .pycheckrc
276
- * Suppress warnings by setting __pychecker__ in source code
277
- * Change long argument behaviour --arg sets arg to true,
278
- --no-arg sets arg to false (also works for warning suppression)
279
- * Add -U/--reuseattr check if function/class/method names are reused
280
- * Add -T/--argsused check for unused method/function arguments
281
- * Add -G/--selfused ignore if self is unused in a method
282
- (requires --argsused)
283
- * Add -q/--stdlib to disable warnings from the standard library
284
- * Add -o/--override warning when a method has different signature
285
- than one being overridden in a base class
286
- * Add -F/--rcfile to generate a .pycheckrc file
287
- * Fix checking files in standard library before local file
288
- * Fix spurious warning when using from X import Y and imports in methods
289
- (Module (m) re-imported)
290
- * Fix spurious warning when doing: from X import Y, Z
291
- * Fix spurious warning when deriving from Exception() and
292
- instantiating object with multiple arguments
293
- * Fix method argument checks when calling base class methods
294
- * Fix error msg to base constructors (msg count was wrong)
295
- * Fix access to builtin module attributes (e.g., sys.exc_value)
296
- generating 'No attribute warnings'
297
- * Fix tests (forgot to add : after line number in expected results)
298
-
299
- Version 0.7 - 16 July 2001
300
- * Improve import warning messages, add from checks
301
- * checker.py -h prints defaults after processing .pycheckrc file
302
- * Add config option -k/--pkgimport to disable unused imports from __init__.py
303
- * Add warning for variable used before being set
304
- * Improve format string checks/warnings
305
- * Check arguments to constructors
306
- * Check that self is first arg to base constructor
307
- * Add -e/--errors option to only warn about likely errors
308
- * Make 'self' configurable as the first argument to methods
309
- * Add check that there is a c'tor when instantiating an object and
310
- passing arguments
311
- * Add config option (-N/--initreturn) to turn off warnings
312
- when returning None from __init__()
313
- * Fix internal error with python 2.1 which defines a new op: LOAD_DEREF
314
- * Check in lambda functions for module/variable use
315
- * Fix inability to evaluate { 1: 'a' } inline,
316
- led to incorrect __init__() not called warnings
317
- * Fix exception when class overrides __special__() methods & raise exception
318
- * Fix check in format strings when using '%*g %*.*g', etc
319
- * Add check for static class attributes
320
- * Fix checking of module attributes
321
- * Fix wrong filename in 'Base class (xxx) __init__() not called'
322
- when doing a from X import *
323
- * Fix 'No attribute found' for very dynamic classes
324
- (may also work for classes that use __getattr__)
325
-
326
- Version 0.6.1 - 27 June 2001
327
- * Fix bug which caused an exception from some import code
328
- * Fix bug in determining if there is an implicit return
329
-
330
- Version 0.6 - 25 June 2001
331
- * Check format strings: "%s %s %s" % (v1, v2, v3, v4) for arg counts
332
- * Warn when format strings do: '%(var) %(var2)'
333
- * Fix Local variable (xxx) not used, when have: "%(xxx)s" % locals()
334
- * Warn when local variable (xxx) doesn't exist and have: "%(xxx)s" % locals()
335
- * Install script in /usr/local/bin to invoke PyChecker
336
- * Don't produce unused global warnings when using a module in parameters
337
- * Don't produce unused global warnings when using a module in class variables
338
- * Add check when using method as an attribute (if self.method and x == y:)
339
- * Add check for right # of args to object construction
340
- * Add check for right # of args to function calls in other modules
341
- * Check for returning a value from __init__
342
- * Fix using from XX import YY ; from XX import ZZ causing re-import warning
343
- * Fix UNABLE TO IMPORT errors for files that don't end with a newline
344
- * Support for checking consistent return values -- not complete
345
- produces too many false positives
346
-
347
- Version 0.5 - 29 May 2001
348
- * Catch internal errors "gracefully" and turn into a warning
349
- * Add checking of most module scoped code
350
- * Add pychecker subdir to imports to prevent filename conflicts
351
- * Don't produce unused local variable warning if variable name == '_'
352
- * Add -g/--allglobals option to report all global warnings, not just first
353
- * Add -V/--varlist option to selectively ignore variable not used warnings
354
- * Add test script and expected results
355
- * Print all instructions when using debug (-d/--debug)
356
- * Overhaul internal stack handling so we can look for more problems
357
- * Fix glob'ing problems (all args after glob were ignored)
358
- * Fix spurious Base class __init__ not called
359
- * Fix exception on code like: ['xxx'].index('xxx')
360
- * Fix exception on code like: func(kw=(a < b))
361
- * Fix line numbers for import statements
362
-
363
- Version 0.4 - 23 April 2001
364
- * Add .pycheckrc file processing to specify options (like on command line)
365
- * Add new warning if module.Attribute doesn't exist
366
- * Add new warning: Module (%s) re-imported locally
367
- * Add glob'ing support for windows
368
- * Handle apply(BaseClass.__init__(self, args))
369
- * Fix command line handling so you can pass module, package, or filename
370
- * Fix **kwArgs warning if named parameter is not first
371
- * Don't exit from checker when import checker from interpreter
372
-
373
- Version 0.3 - 17 April 2001
374
- * Fix some checker crashes (oops)
375
- * Add warnings for code complexity (lines/branches/returns per function)
376
- * Add more configuration options
377
- * Don't produce spurious warning for: x(y, { 'a': 'b' })
378
- * Fix warnings that indicate they are from a base class file,
379
- rather than real file
380
- * Fix warnings for **kwArgs not allowed, but using named args
381
- * Add configuration option for warning when using attribute as a function
382
- (off by default, old behaviour was on)
383
-
384
- Version 0.2.5 - 12 April 2001
385
- * Add back support for Python 1.5.2 (again)
386
- (I sure like 2.0 more with the [ for ] and string methods.)
387
- * Add new warning for unused local variables
388
- * Add command line switches
389
-
390
- Version 0.2 - 10 April 2001
391
- * Move tests into a sub-directory so import test doesn't import
392
- pychecker/test
393
- * Add more test files
394
- * Add '.' to the python path so it doesn't need to be done in env't
395
- * Print a warning at the end for each file that couldn't be import'ed
396
- * Improve stack handling to improve error handling
397
- * Try to get base class __init__ checking to work for both:
398
- import X.Y
399
- from X import Y
400
-
401
- Version 0.1.1 - 8 April 2001
402
- * Add support for Python 1.5.2
403
-
404
- Version 0.1 - 7 April 2001
405
- * Initial release
406
-
@@ -1,131 +0,0 @@
1
- #!/usr/bin/env python
2
-
3
- # Copyright (c) 2001-2004, MetaSlash Inc. All rights reserved.
4
- # Portions Copyright (c) 2005, Google, Inc. All rights reserved.
5
-
6
- """
7
- Python byte code operations.
8
-
9
- Very similar to the dis module, but dis does not exist in Jython,
10
- so recreate the small portion we need here.
11
- """
12
-
13
- def LINE_NUM(op): return op == 127
14
- def LOAD_GLOBAL(op): return op == 116
15
- def LOAD_CONST(op): return op == 100
16
- def LOAD_FAST(op): return op == 124
17
- def LOAD_ATTR(op): return op == 105
18
- def LOAD_DEREF(op): return op == 136
19
- def STORE_ATTR(op): return op == 95
20
- def POP_TOP(op): return op == 1
21
- def IMPORT_FROM(op): return op == 108
22
- def IMPORT_STAR(op): return op == 84
23
- def UNARY_POSITIVE(op): return op == 10
24
- def UNARY_NEGATIVE(op): return op == 11
25
- def UNARY_INVERT(op): return op == 15
26
- def RETURN_VALUE(op): return op == 83
27
- def JUMP_FORWARD(op): return op == 110
28
- def JUMP_ABSOLUTE(op): return op == 113
29
- def FOR_ITER(op): return op == 93
30
- def FOR_LOOP(op): return op == 114
31
- def SETUP_LOOP(op): return op == 120
32
- def BREAK_LOOP(op): return op == 80
33
- def RAISE_VARARGS(op): return op == 130
34
- def POP_BLOCK(op): return op == 87
35
- def END_FINALLY(op): return op == 88
36
- def CALL_FUNCTION(op): return op == 131
37
-
38
- def UNPACK_SEQUENCE(op) :
39
- "Deal w/Python 1.5.2 (UNPACK_[LIST|TUPLE]) or 2.0 (UNPACK_SEQUENCE)"
40
- return op in (92, 93,)
41
-
42
- def IS_CONDITIONAL_JUMP(op):
43
- return op in (111, 112)
44
-
45
- def IS_NOT(op):
46
- return op == 12
47
-
48
- HAVE_ARGUMENT = 90
49
- EXTENDED_ARG = 143
50
-
51
- _HAS_NAME = (90, 91, 95, 96, 97, 98, 101, 105, 107, 108, 116,)
52
- _HAS_LOCAL = (124, 125, 126,)
53
- _HAS_CONST = (100,)
54
- _HAS_COMPARE = (106,)
55
- _HAS_JREL = (110, 111, 112, 114, 120, 121, 122,)
56
- _HAS_JABS = (113, 119,)
57
-
58
- _CMP_OP = ('<', '<=', '==', '!=', '>', '>=', 'in', 'not in', 'is',
59
- 'is not', 'exception match', 'BAD')
60
-
61
- EXCEPT_COMPARISON = 10
62
- IS_COMPARISON = 8
63
- IN_COMPARISON = 6
64
- NOT_IN_COMPARISON = 7
65
-
66
- def getOperand(op, func_code, oparg) :
67
- if op in _HAS_NAME :
68
- return func_code.co_names[oparg]
69
- elif op in _HAS_LOCAL :
70
- return func_code.co_varnames[oparg]
71
- elif op in _HAS_CONST :
72
- return func_code.co_consts[oparg]
73
- elif op in _HAS_COMPARE :
74
- return _CMP_OP[oparg]
75
- return None
76
-
77
- def getLabel(op, oparg, i) :
78
- if op in _HAS_JREL :
79
- return i + oparg
80
- elif op in _HAS_JABS :
81
- return oparg
82
- return None
83
-
84
- def getInfo(code, index, extended_arg) :
85
- """Returns (op, oparg, index, extended_arg) based on code
86
- this is a helper function while looping through byte code,
87
- refer to the standard module dis.disassemble() for more info"""
88
-
89
- # get the operation we are performing
90
- op = ord(code[index])
91
- index = index + 1
92
- if op >= HAVE_ARGUMENT :
93
- # get the argument to the operation
94
- oparg = ord(code[index]) + ord(code[index+1])*256 + extended_arg
95
- index = index + 2
96
- extended_arg = 0
97
- if op == EXTENDED_ARG :
98
- extended_arg = oparg * 65536L
99
- else :
100
- oparg, extended_arg = 0, 0
101
- return op, oparg, index, extended_arg
102
-
103
- def initFuncCode(func) :
104
- """Returns (func_code, code, i, maxCode, extended_arg) based on func,
105
- this is a helper function to setup looping through byte code"""
106
-
107
- func_code = func.func_code
108
- code = func_code.co_code
109
- return func_code, code, 0, len(code), 0
110
-
111
- def conditional(op):
112
- "returns true if the code results in conditional execution"
113
- return op in [83, # return
114
- 93, # for_iter
115
- 111, 112, 114, # conditional jump
116
- 121, # setup_exec
117
- 130 # raise_varargs
118
- ]
119
-
120
- # this code is here for debugging purposes.
121
- # Jython doesn't support dis, so don't rely on it
122
- try :
123
- import dis
124
- name = dis.opname
125
- except ImportError :
126
- class Name:
127
- 'Turn name[x] into x'
128
- def __getitem__(self, x):
129
- from pychecker import utils
130
- return utils.safestr(x)
131
- name = Name()
Binary file
Binary file
@@ -1,117 +0,0 @@
1
- import Tkinter
2
-
3
- def bool(value):
4
- if value:
5
- return 1
6
- return 0
7
-
8
- class Base:
9
- "Base class for all OptionTypes"
10
-
11
- def __init__(self, name, default):
12
- self._name = name
13
- self._default = default
14
- self._var = None
15
-
16
- def name(self):
17
- return self._name
18
-
19
- def set(self, value):
20
- self._var.set(value)
21
-
22
- class Boolean(Base):
23
- "A option type for editing boolean values"
24
-
25
- def __init__(self, name, default):
26
- Base.__init__(self, name, default)
27
-
28
- def field(self, w):
29
- self._var = Tkinter.BooleanVar()
30
- if self._default:
31
- self._var.set(1)
32
- else:
33
- self._var.set(0)
34
- frame = Tkinter.Frame(w, name = self._name + "Frame")
35
- result = Tkinter.Checkbutton(frame,
36
- name=self._name,
37
- text=self._name,
38
- variable=self._var)
39
- result.grid(sticky=Tkinter.W)
40
- frame.columnconfigure(0, weight=1)
41
- return frame
42
-
43
- def arg(self):
44
- if bool(self._var.get()) != bool(self._default):
45
- if bool(self._var.get()):
46
- return "--" + self._name
47
- return "--no-" + self._name
48
- return None
49
-
50
- class Number(Base):
51
- "OptionType for editing numbers"
52
-
53
- def __init__(self, name, default):
54
- Base.__init__(self, name, default)
55
-
56
- def field(self, w):
57
- self._var = Tkinter.IntVar()
58
- self._var.set(self._default)
59
- frame = Tkinter.Frame(w, name = self._name + "Frame")
60
- label = Tkinter.Label(frame, text=self._name + ":")
61
- label.grid(row=0, column=0, sticky=Tkinter.W)
62
- entry = Tkinter.Entry(frame,
63
- name=self._name,
64
- textvariable=self._var,
65
- width=4)
66
- entry.grid(row=0, column=1, sticky=Tkinter.E)
67
- for i in range(2):
68
- frame.columnconfigure(i, weight=1)
69
- return frame
70
-
71
- def arg(self):
72
- if self._var.get() != self._default:
73
- return "--%s=%d" % (self._name, self._var.get())
74
- return None
75
-
76
- class Text(Base):
77
- "OptionType for editing a little bit of text"
78
-
79
- def __init__(self, name, default):
80
- Base.__init__(self, name, default)
81
-
82
- def width(self):
83
- return int(min(15, len(self._default) * 1.20))
84
-
85
- def field(self, w):
86
- self._var = Tkinter.StringVar()
87
- self._var.set(self._default)
88
- frame = Tkinter.Frame(w, name = self._name + "Frame")
89
- label = Tkinter.Label(frame, text=self._name + ":")
90
- label.grid(row=0, column=0, sticky=Tkinter.W)
91
- entry = Tkinter.Entry(frame,
92
- name=self._name,
93
- textvariable=self._var,
94
- width=self.width())
95
- entry.grid(row=0, column=1, sticky=Tkinter.E)
96
- for i in range(2):
97
- frame.columnconfigure(i, weight=1)
98
- return frame
99
-
100
- def arg(self):
101
- if self._var.get() != self._default:
102
- return "--%s=%s" % (self._name, self._var.get())
103
- return None
104
-
105
- def join(list):
106
- import string
107
- return string.join(list, ", ")
108
-
109
- class List(Text):
110
- "OptionType for editing a list of values"
111
-
112
- def __init__(self, name, default):
113
- Text.__init__(self, name, join(default))
114
-
115
- def set(self, value):
116
- self._var.set(join(value))
117
-
Binary file
Binary file