bee_python 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (503) hide show
  1. data/LICENSE +202 -0
  2. data/build/README +23 -0
  3. data/egg/egg/build.yml +70 -0
  4. data/egg/egg/ez_setup.py +280 -0
  5. data/egg/egg/script.py +12 -0
  6. data/egg/egg/setup.erb +11 -0
  7. data/egg/egg/suite.py +37 -0
  8. data/egg/egg/test.py +31 -0
  9. data/egg/egg.yml +69 -0
  10. data/egg/http/build.erb +53 -0
  11. data/egg/http/server.py +34 -0
  12. data/egg/http.yml +50 -0
  13. data/egg/mysql/mysql.py +43 -0
  14. data/egg/mysql.yml +44 -0
  15. data/egg/project/build.erb +77 -0
  16. data/egg/project/script.py +42 -0
  17. data/egg/project/test.py +31 -0
  18. data/egg/project.yml +59 -0
  19. data/egg/script/build.erb +35 -0
  20. data/egg/script/script.py +42 -0
  21. data/egg/script.yml +50 -0
  22. data/egg/soap/build.erb +52 -0
  23. data/egg/soap/client.py +18 -0
  24. data/egg/soap/server.py +30 -0
  25. data/egg/soap.yml +58 -0
  26. data/egg/source/source.py +42 -0
  27. data/egg/source.yml +47 -0
  28. data/egg/test/test.py +28 -0
  29. data/egg/test.yml +44 -0
  30. data/egg/xmlrpc/build.erb +52 -0
  31. data/egg/xmlrpc/client.py +22 -0
  32. data/egg/xmlrpc/server.py +24 -0
  33. data/egg/xmlrpc.yml +51 -0
  34. data/lib/bee_task_python.rb +390 -0
  35. data/test/build.yml +16 -0
  36. data/test/tc_bee_task_python.rb +27 -0
  37. data/test/test_build.rb +26 -0
  38. data/test/test_build_listener.rb +62 -0
  39. data/test/ts_bee_python.rb +26 -0
  40. data/tools/common/__init__.py +5 -0
  41. data/tools/common/common/__init__.py +140 -0
  42. data/tools/common/common/__pkginfo__.py +43 -0
  43. data/tools/common/common/adbh.py +35 -0
  44. data/tools/common/common/cache.py +114 -0
  45. data/tools/common/common/changelog.py +234 -0
  46. data/tools/common/common/clcommands.py +181 -0
  47. data/tools/common/common/cli.py +212 -0
  48. data/tools/common/common/compat.py +328 -0
  49. data/tools/common/common/configuration.py +1087 -0
  50. data/tools/common/common/contexts.py +58 -0
  51. data/tools/common/common/corbautils.py +117 -0
  52. data/tools/common/common/daemon.py +171 -0
  53. data/tools/common/common/date.py +279 -0
  54. data/tools/common/common/db.py +49 -0
  55. data/tools/common/common/dbf.py +229 -0
  56. data/tools/common/common/debugger.py +208 -0
  57. data/tools/common/common/decorators.py +190 -0
  58. data/tools/common/common/deprecation.py +118 -0
  59. data/tools/common/common/fileutils.py +409 -0
  60. data/tools/common/common/graph.py +259 -0
  61. data/tools/common/common/html.py +142 -0
  62. data/tools/common/common/interface.py +76 -0
  63. data/tools/common/common/logging_ext.py +166 -0
  64. data/tools/common/common/modutils.py +670 -0
  65. data/tools/common/common/optik_ext.py +383 -0
  66. data/tools/common/common/optparser.py +92 -0
  67. data/tools/common/common/pdf_ext.py +111 -0
  68. data/tools/common/common/proc.py +276 -0
  69. data/tools/common/common/pyro_ext.py +146 -0
  70. data/tools/common/common/pytest.py +754 -0
  71. data/tools/common/common/shellutils.py +383 -0
  72. data/tools/common/common/sphinx_ext.py +87 -0
  73. data/tools/common/common/sphinxutils.py +122 -0
  74. data/tools/common/common/sqlgen.py +31 -0
  75. data/tools/common/common/table.py +930 -0
  76. data/tools/common/common/tasksqueue.py +97 -0
  77. data/tools/common/common/test/__init__.py +1 -0
  78. data/tools/common/common/test/data/ChangeLog +184 -0
  79. data/tools/common/common/test/data/MyPyPa-0.1.0-py2.5.egg +0 -0
  80. data/tools/common/common/test/data/__init__.py +1 -0
  81. data/tools/common/common/test/data/content_differ_dir/NOTHING +0 -0
  82. data/tools/common/common/test/data/content_differ_dir/README +1 -0
  83. data/tools/common/common/test/data/content_differ_dir/subdir/coin +1 -0
  84. data/tools/common/common/test/data/content_differ_dir/subdir/toto.txt +53 -0
  85. data/tools/common/common/test/data/file_differ_dir/NOTHING +0 -0
  86. data/tools/common/common/test/data/file_differ_dir/README +1 -0
  87. data/tools/common/common/test/data/file_differ_dir/subdir/toto.txt +53 -0
  88. data/tools/common/common/test/data/file_differ_dir/subdirtwo/Hello +0 -0
  89. data/tools/common/common/test/data/find_test/__init__.py +0 -0
  90. data/tools/common/common/test/data/find_test/foo.txt +0 -0
  91. data/tools/common/common/test/data/find_test/module.py +0 -0
  92. data/tools/common/common/test/data/find_test/module2.py +0 -0
  93. data/tools/common/common/test/data/find_test/newlines.txt +0 -0
  94. data/tools/common/common/test/data/find_test/noendingnewline.py +0 -0
  95. data/tools/common/common/test/data/find_test/nonregr.py +0 -0
  96. data/tools/common/common/test/data/find_test/normal_file.txt +0 -0
  97. data/tools/common/common/test/data/find_test/spam.txt +0 -0
  98. data/tools/common/common/test/data/find_test/sub/doc.txt +0 -0
  99. data/tools/common/common/test/data/find_test/sub/momo.py +0 -0
  100. data/tools/common/common/test/data/find_test/test.ini +0 -0
  101. data/tools/common/common/test/data/find_test/test1.msg +0 -0
  102. data/tools/common/common/test/data/find_test/test2.msg +0 -0
  103. data/tools/common/common/test/data/find_test/write_protected_file.txt +0 -0
  104. data/tools/common/common/test/data/foo.txt +9 -0
  105. data/tools/common/common/test/data/module.py +88 -0
  106. data/tools/common/common/test/data/module2.py +77 -0
  107. data/tools/common/common/test/data/newlines.txt +3 -0
  108. data/tools/common/common/test/data/noendingnewline.py +36 -0
  109. data/tools/common/common/test/data/nonregr.py +14 -0
  110. data/tools/common/common/test/data/normal_file.txt +0 -0
  111. data/tools/common/common/test/data/reference_dir/NOTHING +0 -0
  112. data/tools/common/common/test/data/reference_dir/README +1 -0
  113. data/tools/common/common/test/data/reference_dir/subdir/coin +1 -0
  114. data/tools/common/common/test/data/reference_dir/subdir/toto.txt +53 -0
  115. data/tools/common/common/test/data/same_dir/NOTHING +0 -0
  116. data/tools/common/common/test/data/same_dir/README +1 -0
  117. data/tools/common/common/test/data/same_dir/subdir/coin +1 -0
  118. data/tools/common/common/test/data/same_dir/subdir/toto.txt +53 -0
  119. data/tools/common/common/test/data/spam.txt +9 -0
  120. data/tools/common/common/test/data/sub/doc.txt +1 -0
  121. data/tools/common/common/test/data/sub/momo.py +1 -0
  122. data/tools/common/common/test/data/subdir_differ_dir/NOTHING +0 -0
  123. data/tools/common/common/test/data/subdir_differ_dir/README +1 -0
  124. data/tools/common/common/test/data/subdir_differ_dir/subdir/coin +1 -0
  125. data/tools/common/common/test/data/subdir_differ_dir/subdir/toto.txt +53 -0
  126. data/tools/common/common/test/data/test.ini +20 -0
  127. data/tools/common/common/test/data/test1.msg +30 -0
  128. data/tools/common/common/test/data/test2.msg +42 -0
  129. data/tools/common/common/test/data/write_protected_file.txt +0 -0
  130. data/tools/common/common/test/foomod.py +17 -0
  131. data/tools/common/common/test/unittest_cache.py +129 -0
  132. data/tools/common/common/test/unittest_changelog.py +37 -0
  133. data/tools/common/common/test/unittest_compat.py +239 -0
  134. data/tools/common/common/test/unittest_configuration.py +348 -0
  135. data/tools/common/common/test/unittest_date.py +154 -0
  136. data/tools/common/common/test/unittest_decorators.py +62 -0
  137. data/tools/common/common/test/unittest_deprecation.py +76 -0
  138. data/tools/common/common/test/unittest_fileutils.py +133 -0
  139. data/tools/common/common/test/unittest_graph.py +50 -0
  140. data/tools/common/common/test/unittest_html.py +76 -0
  141. data/tools/common/common/test/unittest_interface.py +87 -0
  142. data/tools/common/common/test/unittest_modutils.py +244 -0
  143. data/tools/common/common/test/unittest_pytest.py +50 -0
  144. data/tools/common/common/test/unittest_shellutils.py +248 -0
  145. data/tools/common/common/test/unittest_table.py +448 -0
  146. data/tools/common/common/test/unittest_taskqueue.py +71 -0
  147. data/tools/common/common/test/unittest_testlib.py +956 -0
  148. data/tools/common/common/test/unittest_textutils.py +247 -0
  149. data/tools/common/common/test/unittest_tree.py +248 -0
  150. data/tools/common/common/test/unittest_umessage.py +55 -0
  151. data/tools/common/common/test/unittest_ureports_html.py +64 -0
  152. data/tools/common/common/test/unittest_ureports_text.py +105 -0
  153. data/tools/common/common/test/unittest_xmlutils.py +75 -0
  154. data/tools/common/common/test/utils.py +87 -0
  155. data/tools/common/common/testlib.py +1927 -0
  156. data/tools/common/common/textutils.py +476 -0
  157. data/tools/common/common/tree.py +372 -0
  158. data/tools/common/common/umessage.py +161 -0
  159. data/tools/common/common/ureports/__init__.py +174 -0
  160. data/tools/common/common/ureports/docbook_writer.py +139 -0
  161. data/tools/common/common/ureports/html_writer.py +131 -0
  162. data/tools/common/common/ureports/nodes.py +201 -0
  163. data/tools/common/common/ureports/text_writer.py +140 -0
  164. data/tools/common/common/vcgutils.py +216 -0
  165. data/tools/common/common/visitor.py +107 -0
  166. data/tools/common/common/xmlrpcutils.py +136 -0
  167. data/tools/common/common/xmlutils.py +61 -0
  168. data/tools/compile/compile.py +16 -0
  169. data/tools/coverage/coverage.py +602 -0
  170. data/tools/epydoc/__init__.py +227 -0
  171. data/tools/epydoc/__init__.pyc +0 -0
  172. data/tools/epydoc/apidoc.py +2203 -0
  173. data/tools/epydoc/apidoc.pyc +0 -0
  174. data/tools/epydoc/checker.py +349 -0
  175. data/tools/epydoc/checker.pyc +0 -0
  176. data/tools/epydoc/cli.py +1470 -0
  177. data/tools/epydoc/cli.pyc +0 -0
  178. data/tools/epydoc/compat.py +250 -0
  179. data/tools/epydoc/compat.pyc +0 -0
  180. data/tools/epydoc/docbuilder.py +1358 -0
  181. data/tools/epydoc/docbuilder.pyc +0 -0
  182. data/tools/epydoc/docintrospecter.py +1056 -0
  183. data/tools/epydoc/docintrospecter.pyc +0 -0
  184. data/tools/epydoc/docparser.py +2113 -0
  185. data/tools/epydoc/docparser.pyc +0 -0
  186. data/tools/epydoc/docstringparser.py +1111 -0
  187. data/tools/epydoc/docstringparser.pyc +0 -0
  188. data/tools/epydoc/docwriter/__init__.py +12 -0
  189. data/tools/epydoc/docwriter/__init__.pyc +0 -0
  190. data/tools/epydoc/docwriter/dotgraph.py +1351 -0
  191. data/tools/epydoc/docwriter/dotgraph.pyc +0 -0
  192. data/tools/epydoc/docwriter/html.py +3491 -0
  193. data/tools/epydoc/docwriter/html.pyc +0 -0
  194. data/tools/epydoc/docwriter/html_colorize.py +909 -0
  195. data/tools/epydoc/docwriter/html_colorize.pyc +0 -0
  196. data/tools/epydoc/docwriter/html_css.py +550 -0
  197. data/tools/epydoc/docwriter/html_css.pyc +0 -0
  198. data/tools/epydoc/docwriter/html_help.py +190 -0
  199. data/tools/epydoc/docwriter/html_help.pyc +0 -0
  200. data/tools/epydoc/docwriter/latex.py +1187 -0
  201. data/tools/epydoc/docwriter/latex.pyc +0 -0
  202. data/tools/epydoc/docwriter/plaintext.py +276 -0
  203. data/tools/epydoc/docwriter/plaintext.pyc +0 -0
  204. data/tools/epydoc/docwriter/xlink.py +505 -0
  205. data/tools/epydoc/docwriter/xlink.pyc +0 -0
  206. data/tools/epydoc/gui.py +1148 -0
  207. data/tools/epydoc/gui.pyc +0 -0
  208. data/tools/epydoc/log.py +204 -0
  209. data/tools/epydoc/log.pyc +0 -0
  210. data/tools/epydoc/markup/__init__.py +623 -0
  211. data/tools/epydoc/markup/__init__.pyc +0 -0
  212. data/tools/epydoc/markup/doctest.py +311 -0
  213. data/tools/epydoc/markup/doctest.pyc +0 -0
  214. data/tools/epydoc/markup/epytext.py +2116 -0
  215. data/tools/epydoc/markup/epytext.pyc +0 -0
  216. data/tools/epydoc/markup/javadoc.py +250 -0
  217. data/tools/epydoc/markup/javadoc.pyc +0 -0
  218. data/tools/epydoc/markup/plaintext.py +78 -0
  219. data/tools/epydoc/markup/plaintext.pyc +0 -0
  220. data/tools/epydoc/markup/pyval_repr.py +532 -0
  221. data/tools/epydoc/markup/pyval_repr.pyc +0 -0
  222. data/tools/epydoc/markup/restructuredtext.py +906 -0
  223. data/tools/epydoc/markup/restructuredtext.pyc +0 -0
  224. data/tools/epydoc/test/__init__.py +97 -0
  225. data/tools/epydoc/test/__init__.pyc +0 -0
  226. data/tools/epydoc/test/util.py +226 -0
  227. data/tools/epydoc/test/util.pyc +0 -0
  228. data/tools/epydoc/util.py +289 -0
  229. data/tools/epydoc/util.pyc +0 -0
  230. data/tools/logilab/logilab/__init__.py +5 -0
  231. data/tools/logilab/logilab/astng/__init__.py +82 -0
  232. data/tools/logilab/logilab/astng/__pkginfo__.py +76 -0
  233. data/tools/logilab/logilab/astng/_exceptions.py +64 -0
  234. data/tools/logilab/logilab/astng/_nodes_ast.py +667 -0
  235. data/tools/logilab/logilab/astng/_nodes_compiler.py +758 -0
  236. data/tools/logilab/logilab/astng/bases.py +608 -0
  237. data/tools/logilab/logilab/astng/builder.py +239 -0
  238. data/tools/logilab/logilab/astng/inference.py +426 -0
  239. data/tools/logilab/logilab/astng/inspector.py +289 -0
  240. data/tools/logilab/logilab/astng/manager.py +421 -0
  241. data/tools/logilab/logilab/astng/mixins.py +165 -0
  242. data/tools/logilab/logilab/astng/node_classes.py +848 -0
  243. data/tools/logilab/logilab/astng/nodes.py +85 -0
  244. data/tools/logilab/logilab/astng/nodes_as_string.py +389 -0
  245. data/tools/logilab/logilab/astng/patchcomptransformer.py +159 -0
  246. data/tools/logilab/logilab/astng/protocols.py +333 -0
  247. data/tools/logilab/logilab/astng/raw_building.py +212 -0
  248. data/tools/logilab/logilab/astng/rebuilder.py +307 -0
  249. data/tools/logilab/logilab/astng/scoped_nodes.py +951 -0
  250. data/tools/logilab/logilab/astng/test/__init__.py +19 -0
  251. data/tools/logilab/logilab/astng/test/data/MyPyPa-0.1.0-py2.5.egg +0 -0
  252. data/tools/logilab/logilab/astng/test/data/MyPyPa-0.1.0-py2.5.zip +0 -0
  253. data/tools/logilab/logilab/astng/test/data/SSL1/Connection1.py +33 -0
  254. data/tools/logilab/logilab/astng/test/data/SSL1/__init__.py +20 -0
  255. data/tools/logilab/logilab/astng/test/data/__init__.py +20 -0
  256. data/tools/logilab/logilab/astng/test/data/all.py +29 -0
  257. data/tools/logilab/logilab/astng/test/data/appl/__init__.py +23 -0
  258. data/tools/logilab/logilab/astng/test/data/appl/myConnection.py +30 -0
  259. data/tools/logilab/logilab/astng/test/data/format.py +34 -0
  260. data/tools/logilab/logilab/astng/test/data/module.py +90 -0
  261. data/tools/logilab/logilab/astng/test/data/module2.py +112 -0
  262. data/tools/logilab/logilab/astng/test/data/noendingnewline.py +57 -0
  263. data/tools/logilab/logilab/astng/test/data/nonregr.py +76 -0
  264. data/tools/logilab/logilab/astng/test/data/notall.py +28 -0
  265. data/tools/logilab/logilab/astng/test/data2/__init__.py +20 -0
  266. data/tools/logilab/logilab/astng/test/data2/clientmodule_test.py +51 -0
  267. data/tools/logilab/logilab/astng/test/data2/suppliermodule_test.py +32 -0
  268. data/tools/logilab/logilab/astng/test/regrtest.py +135 -0
  269. data/tools/logilab/logilab/astng/test/regrtest_data/absimport.py +22 -0
  270. data/tools/logilab/logilab/astng/test/regrtest_data/descriptor_crash.py +31 -0
  271. data/tools/logilab/logilab/astng/test/regrtest_data/import_package_subpackage_module.py +68 -0
  272. data/tools/logilab/logilab/astng/test/regrtest_data/package/__init__.py +24 -0
  273. data/tools/logilab/logilab/astng/test/regrtest_data/package/subpackage/__init__.py +20 -0
  274. data/tools/logilab/logilab/astng/test/regrtest_data/package/subpackage/module.py +20 -0
  275. data/tools/logilab/logilab/astng/test/unittest_builder.py +684 -0
  276. data/tools/logilab/logilab/astng/test/unittest_inference.py +1112 -0
  277. data/tools/logilab/logilab/astng/test/unittest_inspector.py +105 -0
  278. data/tools/logilab/logilab/astng/test/unittest_lookup.py +302 -0
  279. data/tools/logilab/logilab/astng/test/unittest_manager.py +98 -0
  280. data/tools/logilab/logilab/astng/test/unittest_nodes.py +302 -0
  281. data/tools/logilab/logilab/astng/test/unittest_scoped_nodes.py +501 -0
  282. data/tools/logilab/logilab/astng/test/unittest_utils.py +104 -0
  283. data/tools/logilab/logilab/astng/utils.py +342 -0
  284. data/tools/logilab/logilab/common/__init__.py +140 -0
  285. data/tools/logilab/logilab/common/__pkginfo__.py +43 -0
  286. data/tools/logilab/logilab/common/adbh.py +35 -0
  287. data/tools/logilab/logilab/common/cache.py +114 -0
  288. data/tools/logilab/logilab/common/changelog.py +234 -0
  289. data/tools/logilab/logilab/common/clcommands.py +181 -0
  290. data/tools/logilab/logilab/common/cli.py +212 -0
  291. data/tools/logilab/logilab/common/compat.py +328 -0
  292. data/tools/logilab/logilab/common/configuration.py +1087 -0
  293. data/tools/logilab/logilab/common/contexts.py +58 -0
  294. data/tools/logilab/logilab/common/corbautils.py +117 -0
  295. data/tools/logilab/logilab/common/daemon.py +171 -0
  296. data/tools/logilab/logilab/common/date.py +279 -0
  297. data/tools/logilab/logilab/common/db.py +49 -0
  298. data/tools/logilab/logilab/common/dbf.py +229 -0
  299. data/tools/logilab/logilab/common/debugger.py +208 -0
  300. data/tools/logilab/logilab/common/decorators.py +190 -0
  301. data/tools/logilab/logilab/common/deprecation.py +118 -0
  302. data/tools/logilab/logilab/common/fileutils.py +409 -0
  303. data/tools/logilab/logilab/common/graph.py +259 -0
  304. data/tools/logilab/logilab/common/html.py +142 -0
  305. data/tools/logilab/logilab/common/interface.py +76 -0
  306. data/tools/logilab/logilab/common/logging_ext.py +166 -0
  307. data/tools/logilab/logilab/common/modutils.py +670 -0
  308. data/tools/logilab/logilab/common/optik_ext.py +383 -0
  309. data/tools/logilab/logilab/common/optparser.py +92 -0
  310. data/tools/logilab/logilab/common/pdf_ext.py +111 -0
  311. data/tools/logilab/logilab/common/proc.py +276 -0
  312. data/tools/logilab/logilab/common/pyro_ext.py +146 -0
  313. data/tools/logilab/logilab/common/pytest.py +754 -0
  314. data/tools/logilab/logilab/common/shellutils.py +383 -0
  315. data/tools/logilab/logilab/common/sphinx_ext.py +87 -0
  316. data/tools/logilab/logilab/common/sphinxutils.py +122 -0
  317. data/tools/logilab/logilab/common/sqlgen.py +31 -0
  318. data/tools/logilab/logilab/common/table.py +930 -0
  319. data/tools/logilab/logilab/common/tasksqueue.py +97 -0
  320. data/tools/logilab/logilab/common/test/__init__.py +1 -0
  321. data/tools/logilab/logilab/common/test/data/ChangeLog +184 -0
  322. data/tools/logilab/logilab/common/test/data/MyPyPa-0.1.0-py2.5.egg +0 -0
  323. data/tools/logilab/logilab/common/test/data/__init__.py +1 -0
  324. data/tools/logilab/logilab/common/test/data/content_differ_dir/NOTHING +0 -0
  325. data/tools/logilab/logilab/common/test/data/content_differ_dir/README +1 -0
  326. data/tools/logilab/logilab/common/test/data/content_differ_dir/subdir/coin +1 -0
  327. data/tools/logilab/logilab/common/test/data/content_differ_dir/subdir/toto.txt +53 -0
  328. data/tools/logilab/logilab/common/test/data/file_differ_dir/NOTHING +0 -0
  329. data/tools/logilab/logilab/common/test/data/file_differ_dir/README +1 -0
  330. data/tools/logilab/logilab/common/test/data/file_differ_dir/subdir/toto.txt +53 -0
  331. data/tools/logilab/logilab/common/test/data/file_differ_dir/subdirtwo/Hello +0 -0
  332. data/tools/logilab/logilab/common/test/data/find_test/__init__.py +0 -0
  333. data/tools/logilab/logilab/common/test/data/find_test/foo.txt +0 -0
  334. data/tools/logilab/logilab/common/test/data/find_test/module.py +0 -0
  335. data/tools/logilab/logilab/common/test/data/find_test/module2.py +0 -0
  336. data/tools/logilab/logilab/common/test/data/find_test/newlines.txt +0 -0
  337. data/tools/logilab/logilab/common/test/data/find_test/noendingnewline.py +0 -0
  338. data/tools/logilab/logilab/common/test/data/find_test/nonregr.py +0 -0
  339. data/tools/logilab/logilab/common/test/data/find_test/normal_file.txt +0 -0
  340. data/tools/logilab/logilab/common/test/data/find_test/spam.txt +0 -0
  341. data/tools/logilab/logilab/common/test/data/find_test/sub/doc.txt +0 -0
  342. data/tools/logilab/logilab/common/test/data/find_test/sub/momo.py +0 -0
  343. data/tools/logilab/logilab/common/test/data/find_test/test.ini +0 -0
  344. data/tools/logilab/logilab/common/test/data/find_test/test1.msg +0 -0
  345. data/tools/logilab/logilab/common/test/data/find_test/test2.msg +0 -0
  346. data/tools/logilab/logilab/common/test/data/find_test/write_protected_file.txt +0 -0
  347. data/tools/logilab/logilab/common/test/data/foo.txt +9 -0
  348. data/tools/logilab/logilab/common/test/data/module.py +88 -0
  349. data/tools/logilab/logilab/common/test/data/module2.py +77 -0
  350. data/tools/logilab/logilab/common/test/data/newlines.txt +3 -0
  351. data/tools/logilab/logilab/common/test/data/noendingnewline.py +36 -0
  352. data/tools/logilab/logilab/common/test/data/nonregr.py +14 -0
  353. data/tools/logilab/logilab/common/test/data/normal_file.txt +0 -0
  354. data/tools/logilab/logilab/common/test/data/reference_dir/NOTHING +0 -0
  355. data/tools/logilab/logilab/common/test/data/reference_dir/README +1 -0
  356. data/tools/logilab/logilab/common/test/data/reference_dir/subdir/coin +1 -0
  357. data/tools/logilab/logilab/common/test/data/reference_dir/subdir/toto.txt +53 -0
  358. data/tools/logilab/logilab/common/test/data/same_dir/NOTHING +0 -0
  359. data/tools/logilab/logilab/common/test/data/same_dir/README +1 -0
  360. data/tools/logilab/logilab/common/test/data/same_dir/subdir/coin +1 -0
  361. data/tools/logilab/logilab/common/test/data/same_dir/subdir/toto.txt +53 -0
  362. data/tools/logilab/logilab/common/test/data/spam.txt +9 -0
  363. data/tools/logilab/logilab/common/test/data/sub/doc.txt +1 -0
  364. data/tools/logilab/logilab/common/test/data/sub/momo.py +1 -0
  365. data/tools/logilab/logilab/common/test/data/subdir_differ_dir/NOTHING +0 -0
  366. data/tools/logilab/logilab/common/test/data/subdir_differ_dir/README +1 -0
  367. data/tools/logilab/logilab/common/test/data/subdir_differ_dir/subdir/coin +1 -0
  368. data/tools/logilab/logilab/common/test/data/subdir_differ_dir/subdir/toto.txt +53 -0
  369. data/tools/logilab/logilab/common/test/data/test.ini +20 -0
  370. data/tools/logilab/logilab/common/test/data/test1.msg +30 -0
  371. data/tools/logilab/logilab/common/test/data/test2.msg +42 -0
  372. data/tools/logilab/logilab/common/test/data/write_protected_file.txt +0 -0
  373. data/tools/logilab/logilab/common/test/foomod.py +17 -0
  374. data/tools/logilab/logilab/common/test/unittest_cache.py +129 -0
  375. data/tools/logilab/logilab/common/test/unittest_changelog.py +37 -0
  376. data/tools/logilab/logilab/common/test/unittest_compat.py +239 -0
  377. data/tools/logilab/logilab/common/test/unittest_configuration.py +348 -0
  378. data/tools/logilab/logilab/common/test/unittest_date.py +154 -0
  379. data/tools/logilab/logilab/common/test/unittest_decorators.py +62 -0
  380. data/tools/logilab/logilab/common/test/unittest_deprecation.py +76 -0
  381. data/tools/logilab/logilab/common/test/unittest_fileutils.py +133 -0
  382. data/tools/logilab/logilab/common/test/unittest_graph.py +50 -0
  383. data/tools/logilab/logilab/common/test/unittest_html.py +76 -0
  384. data/tools/logilab/logilab/common/test/unittest_interface.py +87 -0
  385. data/tools/logilab/logilab/common/test/unittest_modutils.py +244 -0
  386. data/tools/logilab/logilab/common/test/unittest_pytest.py +50 -0
  387. data/tools/logilab/logilab/common/test/unittest_shellutils.py +248 -0
  388. data/tools/logilab/logilab/common/test/unittest_table.py +448 -0
  389. data/tools/logilab/logilab/common/test/unittest_taskqueue.py +71 -0
  390. data/tools/logilab/logilab/common/test/unittest_testlib.py +956 -0
  391. data/tools/logilab/logilab/common/test/unittest_textutils.py +247 -0
  392. data/tools/logilab/logilab/common/test/unittest_tree.py +248 -0
  393. data/tools/logilab/logilab/common/test/unittest_umessage.py +55 -0
  394. data/tools/logilab/logilab/common/test/unittest_ureports_html.py +64 -0
  395. data/tools/logilab/logilab/common/test/unittest_ureports_text.py +105 -0
  396. data/tools/logilab/logilab/common/test/unittest_xmlutils.py +75 -0
  397. data/tools/logilab/logilab/common/test/utils.py +87 -0
  398. data/tools/logilab/logilab/common/testlib.py +1927 -0
  399. data/tools/logilab/logilab/common/textutils.py +476 -0
  400. data/tools/logilab/logilab/common/tree.py +372 -0
  401. data/tools/logilab/logilab/common/umessage.py +161 -0
  402. data/tools/logilab/logilab/common/ureports/__init__.py +174 -0
  403. data/tools/logilab/logilab/common/ureports/docbook_writer.py +139 -0
  404. data/tools/logilab/logilab/common/ureports/html_writer.py +131 -0
  405. data/tools/logilab/logilab/common/ureports/nodes.py +201 -0
  406. data/tools/logilab/logilab/common/ureports/text_writer.py +140 -0
  407. data/tools/logilab/logilab/common/vcgutils.py +216 -0
  408. data/tools/logilab/logilab/common/visitor.py +107 -0
  409. data/tools/logilab/logilab/common/xmlrpcutils.py +136 -0
  410. data/tools/logilab/logilab/common/xmlutils.py +61 -0
  411. data/tools/pychecker/COPYRIGHT +31 -0
  412. data/tools/pychecker/ChangeLog +349 -0
  413. data/tools/pychecker/CodeChecks.py +1969 -0
  414. data/tools/pychecker/CodeChecks.pyc +0 -0
  415. data/tools/pychecker/CodeChecks.pyo +0 -0
  416. data/tools/pychecker/Config.py +475 -0
  417. data/tools/pychecker/Config.pyc +0 -0
  418. data/tools/pychecker/Config.pyo +0 -0
  419. data/tools/pychecker/KNOWN_BUGS +100 -0
  420. data/tools/pychecker/MAINTAINERS +81 -0
  421. data/tools/pychecker/NEWS +406 -0
  422. data/tools/pychecker/OP.py +131 -0
  423. data/tools/pychecker/OP.pyc +0 -0
  424. data/tools/pychecker/OP.pyo +0 -0
  425. data/tools/pychecker/OptionTypes.py +117 -0
  426. data/tools/pychecker/OptionTypes.pyc +0 -0
  427. data/tools/pychecker/OptionTypes.pyo +0 -0
  428. data/tools/pychecker/README +152 -0
  429. data/tools/pychecker/Stack.py +115 -0
  430. data/tools/pychecker/Stack.pyc +0 -0
  431. data/tools/pychecker/Stack.pyo +0 -0
  432. data/tools/pychecker/TODO +101 -0
  433. data/tools/pychecker/VERSION +1 -0
  434. data/tools/pychecker/Warning.py +50 -0
  435. data/tools/pychecker/Warning.pyc +0 -0
  436. data/tools/pychecker/Warning.pyo +0 -0
  437. data/tools/pychecker/__init__.py +17 -0
  438. data/tools/pychecker/__init__.pyc +0 -0
  439. data/tools/pychecker/__init__.pyo +0 -0
  440. data/tools/pychecker/checker.py +961 -0
  441. data/tools/pychecker/checker.pyc +0 -0
  442. data/tools/pychecker/checker.pyo +0 -0
  443. data/tools/pychecker/function.py +159 -0
  444. data/tools/pychecker/function.pyc +0 -0
  445. data/tools/pychecker/function.pyo +0 -0
  446. data/tools/pychecker/msgs.py +175 -0
  447. data/tools/pychecker/msgs.pyc +0 -0
  448. data/tools/pychecker/msgs.pyo +0 -0
  449. data/tools/pychecker/options.py +275 -0
  450. data/tools/pychecker/options.pyc +0 -0
  451. data/tools/pychecker/options.pyo +0 -0
  452. data/tools/pychecker/pcmodules.py +19 -0
  453. data/tools/pychecker/pcmodules.pyc +0 -0
  454. data/tools/pychecker/pcmodules.pyo +0 -0
  455. data/tools/pychecker/printer.py +47 -0
  456. data/tools/pychecker/printer.pyc +0 -0
  457. data/tools/pychecker/printer.pyo +0 -0
  458. data/tools/pychecker/python.py +427 -0
  459. data/tools/pychecker/python.pyc +0 -0
  460. data/tools/pychecker/python.pyo +0 -0
  461. data/tools/pychecker/utils.py +102 -0
  462. data/tools/pychecker/utils.pyc +0 -0
  463. data/tools/pychecker/utils.pyo +0 -0
  464. data/tools/pychecker/warn.py +778 -0
  465. data/tools/pychecker/warn.pyc +0 -0
  466. data/tools/pychecker/warn.pyo +0 -0
  467. data/tools/pylint2/pylint/__init__.py +16 -0
  468. data/tools/pylint2/pylint/__pkginfo__.py +67 -0
  469. data/tools/pylint2/pylint/checkers/__init__.py +155 -0
  470. data/tools/pylint2/pylint/checkers/base.py +749 -0
  471. data/tools/pylint2/pylint/checkers/classes.py +527 -0
  472. data/tools/pylint2/pylint/checkers/design_analysis.py +344 -0
  473. data/tools/pylint2/pylint/checkers/exceptions.py +183 -0
  474. data/tools/pylint2/pylint/checkers/format.py +367 -0
  475. data/tools/pylint2/pylint/checkers/imports.py +379 -0
  476. data/tools/pylint2/pylint/checkers/logging.py +98 -0
  477. data/tools/pylint2/pylint/checkers/misc.py +128 -0
  478. data/tools/pylint2/pylint/checkers/newstyle.py +107 -0
  479. data/tools/pylint2/pylint/checkers/raw_metrics.py +125 -0
  480. data/tools/pylint2/pylint/checkers/similar.py +333 -0
  481. data/tools/pylint2/pylint/checkers/string_format.py +239 -0
  482. data/tools/pylint2/pylint/checkers/typecheck.py +364 -0
  483. data/tools/pylint2/pylint/checkers/utils.py +208 -0
  484. data/tools/pylint2/pylint/checkers/variables.py +498 -0
  485. data/tools/pylint2/pylint/config.py +149 -0
  486. data/tools/pylint2/pylint/epylint.py +149 -0
  487. data/tools/pylint2/pylint/gui.py +433 -0
  488. data/tools/pylint2/pylint/interfaces.py +98 -0
  489. data/tools/pylint2/pylint/lint.py +914 -0
  490. data/tools/pylint2/pylint/pyreverse/__init__.py +5 -0
  491. data/tools/pylint2/pylint/pyreverse/diadefslib.py +229 -0
  492. data/tools/pylint2/pylint/pyreverse/diagrams.py +247 -0
  493. data/tools/pylint2/pylint/pyreverse/main.py +123 -0
  494. data/tools/pylint2/pylint/pyreverse/utils.py +131 -0
  495. data/tools/pylint2/pylint/pyreverse/writer.py +196 -0
  496. data/tools/pylint2/pylint/reporters/__init__.py +67 -0
  497. data/tools/pylint2/pylint/reporters/guireporter.py +36 -0
  498. data/tools/pylint2/pylint/reporters/html.py +69 -0
  499. data/tools/pylint2/pylint/reporters/text.py +156 -0
  500. data/tools/pylint2/pylint/utils.py +518 -0
  501. data/tools/pylint2/pylint.py +16 -0
  502. data/tools/test/suite.py +35 -0
  503. metadata +566 -0
@@ -0,0 +1,550 @@
1
+ #
2
+ # epydoc.css: default epydoc CSS stylesheets
3
+ # Edward Loper
4
+ #
5
+ # Created [01/30/01 05:18 PM]
6
+ # $Id: html_css.py,v 1.1 2009/11/26 13:20:45 casa Exp $
7
+ #
8
+
9
+ """
10
+ Predefined CSS stylesheets for the HTML outputter (L{epydoc.docwriter.html}).
11
+
12
+ @type STYLESHEETS: C{dictionary} from C{string} to C{(string, string)}
13
+ @var STYLESHEETS: A dictionary mapping from stylesheet names to CSS
14
+ stylesheets and descriptions. A single stylesheet may have
15
+ multiple names. Currently, the following stylesheets are defined:
16
+ - C{default}: The default stylesheet (synonym for C{white}).
17
+ - C{white}: Black on white, with blue highlights (similar to
18
+ javadoc).
19
+ - C{blue}: Black on steel blue.
20
+ - C{green}: Black on green.
21
+ - C{black}: White on black, with blue highlights
22
+ - C{grayscale}: Grayscale black on white.
23
+ - C{none}: An empty stylesheet.
24
+ """
25
+ __docformat__ = 'epytext en'
26
+
27
+ import re
28
+
29
+ ############################################################
30
+ ## Basic stylesheets
31
+ ############################################################
32
+
33
+ # [xx] Should I do something like:
34
+ #
35
+ # @import url(html4css1.css);
36
+ #
37
+ # But then where do I get that css file from? Hm.
38
+ # Also, in principle I'm mangling classes, but it looks like I'm
39
+ # failing.
40
+ #
41
+
42
+ # Black on white, with blue highlights. This is similar to how
43
+ # javadoc looks.
44
+ TEMPLATE = """
45
+
46
+ /* Epydoc CSS Stylesheet
47
+ *
48
+ * This stylesheet can be used to customize the appearance of epydoc's
49
+ * HTML output.
50
+ *
51
+ */
52
+
53
+ /* Default Colors & Styles
54
+ * - Set the default foreground & background color with 'body'; and
55
+ * link colors with 'a:link' and 'a:visited'.
56
+ * - Use bold for decision list terms.
57
+ * - The heading styles defined here are used for headings *within*
58
+ * docstring descriptions. All headings used by epydoc itself use
59
+ * either class='epydoc' or class='toc' (CSS styles for both
60
+ * defined below).
61
+ */
62
+ body { background: $body_bg; color: $body_fg; }
63
+ p { margin-top: 0.5em; margin-bottom: 0.5em; }
64
+ a:link { color: $body_link; }
65
+ a:visited { color: $body_visited_link; }
66
+ dt { font-weight: bold; }
67
+ h1 { font-size: +140%; font-style: italic;
68
+ font-weight: bold; }
69
+ h2 { font-size: +125%; font-style: italic;
70
+ font-weight: bold; }
71
+ h3 { font-size: +110%; font-style: italic;
72
+ font-weight: normal; }
73
+ code { font-size: 100%; }
74
+ /* N.B.: class, not pseudoclass */
75
+ a.link { font-family: monospace; }
76
+
77
+ /* Page Header & Footer
78
+ * - The standard page header consists of a navigation bar (with
79
+ * pointers to standard pages such as 'home' and 'trees'); a
80
+ * breadcrumbs list, which can be used to navigate to containing
81
+ * classes or modules; options links, to show/hide private
82
+ * variables and to show/hide frames; and a page title (using
83
+ * <h1>). The page title may be followed by a link to the
84
+ * corresponding source code (using 'span.codelink').
85
+ * - The footer consists of a navigation bar, a timestamp, and a
86
+ * pointer to epydoc's homepage.
87
+ */
88
+ h1.epydoc { margin: 0; font-size: +140%; font-weight: bold; }
89
+ h2.epydoc { font-size: +130%; font-weight: bold; }
90
+ h3.epydoc { font-size: +115%; font-weight: bold;
91
+ margin-top: 0.2em; }
92
+ td h3.epydoc { font-size: +115%; font-weight: bold;
93
+ margin-bottom: 0; }
94
+ table.navbar { background: $navbar_bg; color: $navbar_fg;
95
+ border: $navbar_border; }
96
+ table.navbar table { color: $navbar_fg; }
97
+ th.navbar-select { background: $navbar_select_bg;
98
+ color: $navbar_select_fg; }
99
+ table.navbar a { text-decoration: none; }
100
+ table.navbar a:link { color: $navbar_link; }
101
+ table.navbar a:visited { color: $navbar_visited_link; }
102
+ span.breadcrumbs { font-size: 85%; font-weight: bold; }
103
+ span.options { font-size: 70%; }
104
+ span.codelink { font-size: 85%; }
105
+ td.footer { font-size: 85%; }
106
+
107
+ /* Table Headers
108
+ * - Each summary table and details section begins with a 'header'
109
+ * row. This row contains a section title (marked by
110
+ * 'span.table-header') as well as a show/hide private link
111
+ * (marked by 'span.options', defined above).
112
+ * - Summary tables that contain user-defined groups mark those
113
+ * groups using 'group header' rows.
114
+ */
115
+ td.table-header { background: $table_hdr_bg; color: $table_hdr_fg;
116
+ border: $table_border; }
117
+ td.table-header table { color: $table_hdr_fg; }
118
+ td.table-header table a:link { color: $table_hdr_link; }
119
+ td.table-header table a:visited { color: $table_hdr_visited_link; }
120
+ span.table-header { font-size: 120%; font-weight: bold; }
121
+ th.group-header { background: $group_hdr_bg; color: $group_hdr_fg;
122
+ text-align: left; font-style: italic;
123
+ font-size: 115%;
124
+ border: $table_border; }
125
+
126
+ /* Summary Tables (functions, variables, etc)
127
+ * - Each object is described by a single row of the table with
128
+ * two cells. The left cell gives the object's type, and is
129
+ * marked with 'code.summary-type'. The right cell gives the
130
+ * object's name and a summary description.
131
+ * - CSS styles for the table's header and group headers are
132
+ * defined above, under 'Table Headers'
133
+ */
134
+ table.summary { border-collapse: collapse;
135
+ background: $table_bg; color: $table_fg;
136
+ border: $table_border;
137
+ margin-bottom: 0.5em; }
138
+ td.summary { border: $table_border; }
139
+ code.summary-type { font-size: 85%; }
140
+ table.summary a:link { color: $table_link; }
141
+ table.summary a:visited { color: $table_visited_link; }
142
+
143
+
144
+ /* Details Tables (functions, variables, etc)
145
+ * - Each object is described in its own div.
146
+ * - A single-row summary table w/ table-header is used as
147
+ * a header for each details section (CSS style for table-header
148
+ * is defined above, under 'Table Headers').
149
+ */
150
+ table.details { border-collapse: collapse;
151
+ background: $table_bg; color: $table_fg;
152
+ border: $table_border;
153
+ margin: .2em 0 0 0; }
154
+ table.details table { color: $table_fg; }
155
+ table.details a:link { color: $table_link; }
156
+ table.details a:visited { color: $table_visited_link; }
157
+
158
+ /* Fields */
159
+ dl.fields { margin-left: 2em; margin-top: 1em;
160
+ margin-bottom: 1em; }
161
+ dl.fields dd ul { margin-left: 0em; padding-left: 0em; }
162
+ dl.fields dd ul li ul { margin-left: 2em; padding-left: 0em; }
163
+ div.fields { margin-left: 2em; }
164
+ div.fields p { margin-bottom: 0.5em; }
165
+
166
+ /* Index tables (identifier index, term index, etc)
167
+ * - link-index is used for indices containing lists of links
168
+ * (namely, the identifier index & term index).
169
+ * - index-where is used in link indices for the text indicating
170
+ * the container/source for each link.
171
+ * - metadata-index is used for indices containing metadata
172
+ * extracted from fields (namely, the bug index & todo index).
173
+ */
174
+ table.link-index { border-collapse: collapse;
175
+ background: $table_bg; color: $table_fg;
176
+ border: $table_border; }
177
+ td.link-index { border-width: 0px; }
178
+ table.link-index a:link { color: $table_link; }
179
+ table.link-index a:visited { color: $table_visited_link; }
180
+ span.index-where { font-size: 70%; }
181
+ table.metadata-index { border-collapse: collapse;
182
+ background: $table_bg; color: $table_fg;
183
+ border: $table_border;
184
+ margin: .2em 0 0 0; }
185
+ td.metadata-index { border-width: 1px; border-style: solid; }
186
+ table.metadata-index a:link { color: $table_link; }
187
+ table.metadata-index a:visited { color: $table_visited_link; }
188
+
189
+ /* Function signatures
190
+ * - sig* is used for the signature in the details section.
191
+ * - .summary-sig* is used for the signature in the summary
192
+ * table, and when listing property accessor functions.
193
+ * */
194
+ .sig-name { color: $sig_name; }
195
+ .sig-arg { color: $sig_arg; }
196
+ .sig-default { color: $sig_default; }
197
+ .summary-sig { font-family: monospace; }
198
+ .summary-sig-name { color: $summary_sig_name; font-weight: bold; }
199
+ table.summary a.summary-sig-name:link
200
+ { color: $summary_sig_name; font-weight: bold; }
201
+ table.summary a.summary-sig-name:visited
202
+ { color: $summary_sig_name; font-weight: bold; }
203
+ .summary-sig-arg { color: $summary_sig_arg; }
204
+ .summary-sig-default { color: $summary_sig_default; }
205
+
206
+ /* Subclass list
207
+ */
208
+ ul.subclass-list { display: inline; }
209
+ ul.subclass-list li { display: inline; }
210
+
211
+ /* To render variables, classes etc. like functions */
212
+ table.summary .summary-name { color: $summary_sig_name; font-weight: bold;
213
+ font-family: monospace; }
214
+ table.summary
215
+ a.summary-name:link { color: $summary_sig_name; font-weight: bold;
216
+ font-family: monospace; }
217
+ table.summary
218
+ a.summary-name:visited { color: $summary_sig_name; font-weight: bold;
219
+ font-family: monospace; }
220
+
221
+ /* Variable values
222
+ * - In the 'variable details' sections, each varaible's value is
223
+ * listed in a 'pre.variable' box. The width of this box is
224
+ * restricted to 80 chars; if the value's repr is longer than
225
+ * this it will be wrapped, using a backslash marked with
226
+ * class 'variable-linewrap'. If the value's repr is longer
227
+ * than 3 lines, the rest will be ellided; and an ellipsis
228
+ * marker ('...' marked with 'variable-ellipsis') will be used.
229
+ * - If the value is a string, its quote marks will be marked
230
+ * with 'variable-quote'.
231
+ * - If the variable is a regexp, it is syntax-highlighted using
232
+ * the re* CSS classes.
233
+ */
234
+ pre.variable { padding: .5em; margin: 0;
235
+ background: $variable_bg; color: $variable_fg;
236
+ border: $variable_border; }
237
+ .variable-linewrap { color: $variable_linewrap; font-weight: bold; }
238
+ .variable-ellipsis { color: $variable_ellipsis; font-weight: bold; }
239
+ .variable-quote { color: $variable_quote; font-weight: bold; }
240
+ .variable-group { color: $variable_group; font-weight: bold; }
241
+ .variable-op { color: $variable_op; font-weight: bold; }
242
+ .variable-string { color: $variable_string; }
243
+ .variable-unknown { color: $variable_unknown; font-weight: bold; }
244
+ .re { color: $re; }
245
+ .re-char { color: $re_char; }
246
+ .re-op { color: $re_op; }
247
+ .re-group { color: $re_group; }
248
+ .re-ref { color: $re_ref; }
249
+
250
+ /* Base tree
251
+ * - Used by class pages to display the base class hierarchy.
252
+ */
253
+ pre.base-tree { font-size: 80%; margin: 0; }
254
+
255
+ /* Frames-based table of contents headers
256
+ * - Consists of two frames: one for selecting modules; and
257
+ * the other listing the contents of the selected module.
258
+ * - h1.toc is used for each frame's heading
259
+ * - h2.toc is used for subheadings within each frame.
260
+ */
261
+ h1.toc { text-align: center; font-size: 105%;
262
+ margin: 0; font-weight: bold;
263
+ padding: 0; }
264
+ h2.toc { font-size: 100%; font-weight: bold;
265
+ margin: 0.5em 0 0 -0.3em; }
266
+
267
+ /* Syntax Highlighting for Source Code
268
+ * - doctest examples are displayed in a 'pre.py-doctest' block.
269
+ * If the example is in a details table entry, then it will use
270
+ * the colors specified by the 'table pre.py-doctest' line.
271
+ * - Source code listings are displayed in a 'pre.py-src' block.
272
+ * Each line is marked with 'span.py-line' (used to draw a line
273
+ * down the left margin, separating the code from the line
274
+ * numbers). Line numbers are displayed with 'span.py-lineno'.
275
+ * The expand/collapse block toggle button is displayed with
276
+ * 'a.py-toggle' (Note: the CSS style for 'a.py-toggle' should not
277
+ * modify the font size of the text.)
278
+ * - If a source code page is opened with an anchor, then the
279
+ * corresponding code block will be highlighted. The code
280
+ * block's header is highlighted with 'py-highlight-hdr'; and
281
+ * the code block's body is highlighted with 'py-highlight'.
282
+ * - The remaining py-* classes are used to perform syntax
283
+ * highlighting (py-string for string literals, py-name for names,
284
+ * etc.)
285
+ */
286
+ pre.py-doctest { padding: .5em; margin: 1em;
287
+ background: $doctest_bg; color: $doctest_fg;
288
+ border: $doctest_border; }
289
+ table pre.py-doctest { background: $doctest_in_table_bg;
290
+ color: $doctest_in_table_fg; }
291
+ pre.py-src { border: $pysrc_border;
292
+ background: $pysrc_bg; color: $pysrc_fg; }
293
+ .py-line { border-left: $pysrc_sep_border;
294
+ margin-left: .2em; padding-left: .4em; }
295
+ .py-lineno { font-style: italic; font-size: 90%;
296
+ padding-left: .5em; }
297
+ a.py-toggle { text-decoration: none; }
298
+ div.py-highlight-hdr { border-top: $pysrc_border;
299
+ border-bottom: $pysrc_border;
300
+ background: $pysrc_highlight_hdr_bg; }
301
+ div.py-highlight { border-bottom: $pysrc_border;
302
+ background: $pysrc_highlight_bg; }
303
+ .py-prompt { color: $py_prompt; font-weight: bold;}
304
+ .py-more { color: $py_more; font-weight: bold;}
305
+ .py-string { color: $py_string; }
306
+ .py-comment { color: $py_comment; }
307
+ .py-keyword { color: $py_keyword; }
308
+ .py-output { color: $py_output; }
309
+ .py-name { color: $py_name; }
310
+ .py-name:link { color: $py_name !important; }
311
+ .py-name:visited { color: $py_name !important; }
312
+ .py-number { color: $py_number; }
313
+ .py-defname { color: $py_def_name; font-weight: bold; }
314
+ .py-def-name { color: $py_def_name; font-weight: bold; }
315
+ .py-base-class { color: $py_base_class; }
316
+ .py-param { color: $py_param; }
317
+ .py-docstring { color: $py_docstring; }
318
+ .py-decorator { color: $py_decorator; }
319
+ /* Use this if you don't want links to names underlined: */
320
+ /*a.py-name { text-decoration: none; }*/
321
+
322
+ /* Graphs & Diagrams
323
+ * - These CSS styles are used for graphs & diagrams generated using
324
+ * Graphviz dot. 'img.graph-without-title' is used for bare
325
+ * diagrams (to remove the border created by making the image
326
+ * clickable).
327
+ */
328
+ img.graph-without-title { border: none; }
329
+ img.graph-with-title { border: $graph_border; }
330
+ span.graph-title { font-weight: bold; }
331
+ span.graph-caption { }
332
+
333
+ /* General-purpose classes
334
+ * - 'p.indent-wrapped-lines' defines a paragraph whose first line
335
+ * is not indented, but whose subsequent lines are.
336
+ * - The 'nomargin-top' class is used to remove the top margin (e.g.
337
+ * from lists). The 'nomargin' class is used to remove both the
338
+ * top and bottom margin (but not the left or right margin --
339
+ * for lists, that would cause the bullets to disappear.)
340
+ */
341
+ p.indent-wrapped-lines { padding: 0 0 0 7em; text-indent: -7em;
342
+ margin: 0; }
343
+ .nomargin-top { margin-top: 0; }
344
+ .nomargin { margin-top: 0; margin-bottom: 0; }
345
+
346
+ /* HTML Log */
347
+ div.log-block { padding: 0; margin: .5em 0 .5em 0;
348
+ background: $log_bg; color: $log_fg;
349
+ border: $log_border; }
350
+ div.log-error { padding: .1em .3em .1em .3em; margin: 4px;
351
+ background: $log_error_bg; color: $log_error_fg;
352
+ border: $log_error_border; }
353
+ div.log-warning { padding: .1em .3em .1em .3em; margin: 4px;
354
+ background: $log_warn_bg; color: $log_warn_fg;
355
+ border: $log_warn_border; }
356
+ div.log-info { padding: .1em .3em .1em .3em; margin: 4px;
357
+ background: $log_info_bg; color: $log_info_fg;
358
+ border: $log_info_border; }
359
+ h2.log-hdr { background: $log_hdr_bg; color: $log_hdr_fg;
360
+ margin: 0; padding: 0em 0.5em 0em 0.5em;
361
+ border-bottom: $log_border; font-size: 110%; }
362
+ p.log { font-weight: bold; margin: .5em 0 .5em 0; }
363
+ tr.opt-changed { color: $opt_changed_fg; font-weight: bold; }
364
+ tr.opt-default { color: $opt_default_fg; }
365
+ pre.log { margin: 0; padding: 0; padding-left: 1em; }
366
+ """
367
+
368
+ ############################################################
369
+ ## Derived stylesheets
370
+ ############################################################
371
+ # Use some simple manipulations to produce a wide variety of color
372
+ # schemes. In particular, use th _COLOR_RE regular expression to
373
+ # search for colors, and to transform them in various ways.
374
+
375
+ _COLOR_RE = re.compile(r'#(..)(..)(..)')
376
+
377
+ def _set_colors(template, *dicts):
378
+ colors = dicts[0].copy()
379
+ for d in dicts[1:]: colors.update(d)
380
+ return re.sub(r'\$(\w+)', lambda m:colors[m.group(1)], template)
381
+
382
+ def _rv(match):
383
+ """
384
+ Given a regexp match for a color, return the reverse-video version
385
+ of that color.
386
+
387
+ @param match: A regular expression match.
388
+ @type match: C{Match}
389
+ @return: The reverse-video color.
390
+ @rtype: C{string}
391
+ """
392
+ rgb = [int(grp, 16) for grp in match.groups()]
393
+ return '#' + ''.join(['%02x' % (255-c) for c in rgb])
394
+
395
+ def _darken_darks(match):
396
+ rgb = [int(grp, 16) for grp in match.groups()]
397
+ return '#' + ''.join(['%02x' % (((c/255.)**2) * 255) for c in rgb])
398
+
399
+ _WHITE_COLORS = dict(
400
+ # Defaults:
401
+ body_bg = '#ffffff',
402
+ body_fg = '#000000',
403
+ body_link = '#0000ff',
404
+ body_visited_link = '#204080',
405
+ # Navigation bar:
406
+ navbar_bg = '#a0c0ff',
407
+ navbar_fg = '#000000',
408
+ navbar_border = '2px groove #c0d0d0',
409
+ navbar_select_bg = '#70b0ff',
410
+ navbar_select_fg = '#000000',
411
+ navbar_link = '#0000ff',
412
+ navbar_visited_link = '#204080',
413
+ # Tables (summary tables, details tables, indices):
414
+ table_bg = '#e8f0f8',
415
+ table_fg = '#000000',
416
+ table_link = '#0000ff',
417
+ table_visited_link = '#204080',
418
+ table_border = '1px solid #608090',
419
+ table_hdr_bg = '#70b0ff',
420
+ table_hdr_fg = '#000000',
421
+ table_hdr_link = '#0000ff',
422
+ table_hdr_visited_link = '#204080',
423
+ group_hdr_bg = '#c0e0f8',
424
+ group_hdr_fg = '#000000',
425
+ # Function signatures:
426
+ sig_name = '#006080',
427
+ sig_arg = '#008060',
428
+ sig_default = '#602000',
429
+ summary_sig_name = '#006080',
430
+ summary_sig_arg = '#006040',
431
+ summary_sig_default = '#501800',
432
+ # Variable values:
433
+ variable_bg = '#dce4ec',
434
+ variable_fg = '#000000',
435
+ variable_border = '1px solid #708890',
436
+ variable_linewrap = '#604000',
437
+ variable_ellipsis = '#604000',
438
+ variable_quote = '#604000',
439
+ variable_group = '#008000',
440
+ variable_string = '#006030',
441
+ variable_op = '#604000',
442
+ variable_unknown = '#a00000',
443
+ re = '#000000',
444
+ re_char = '#006030',
445
+ re_op = '#600000',
446
+ re_group = '#003060',
447
+ re_ref = '#404040',
448
+ # Python source code:
449
+ doctest_bg = '#e8f0f8',
450
+ doctest_fg = '#000000',
451
+ doctest_border = '1px solid #708890',
452
+ doctest_in_table_bg = '#dce4ec',
453
+ doctest_in_table_fg = '#000000',
454
+ pysrc_border = '2px solid #000000',
455
+ pysrc_sep_border = '2px solid #000000',
456
+ pysrc_bg = '#f0f0f0',
457
+ pysrc_fg = '#000000',
458
+ pysrc_highlight_hdr_bg = '#d8e8e8',
459
+ pysrc_highlight_bg = '#d0e0e0',
460
+ py_prompt = '#005050',
461
+ py_more = '#005050',
462
+ py_string = '#006030',
463
+ py_comment = '#003060',
464
+ py_keyword = '#600000',
465
+ py_output = '#404040',
466
+ py_name = '#000050',
467
+ py_number = '#005000',
468
+ py_def_name = '#000060',
469
+ py_base_class = '#000060',
470
+ py_param = '#000060',
471
+ py_docstring = '#006030',
472
+ py_decorator = '#804020',
473
+ # Graphs
474
+ graph_border = '1px solid #000000',
475
+ # Log block
476
+ log_bg = '#e8f0f8',
477
+ log_fg = '#000000',
478
+ log_border = '1px solid #000000',
479
+ log_hdr_bg = '#70b0ff',
480
+ log_hdr_fg = '#000000',
481
+ log_error_bg = '#ffb0b0',
482
+ log_error_fg = '#000000',
483
+ log_error_border = '1px solid #000000',
484
+ log_warn_bg = '#ffffb0',
485
+ log_warn_fg = '#000000',
486
+ log_warn_border = '1px solid #000000',
487
+ log_info_bg = '#b0ffb0',
488
+ log_info_fg = '#000000',
489
+ log_info_border = '1px solid #000000',
490
+ opt_changed_fg = '#000000',
491
+ opt_default_fg = '#606060',
492
+ )
493
+
494
+ _BLUE_COLORS = _WHITE_COLORS.copy()
495
+ _BLUE_COLORS.update(dict(
496
+ # Body: white text on a dark blue background
497
+ body_bg = '#000070',
498
+ body_fg = '#ffffff',
499
+ body_link = '#ffffff',
500
+ body_visited_link = '#d0d0ff',
501
+ # Tables: cyan headers, black on white bodies
502
+ table_bg = '#ffffff',
503
+ table_fg = '#000000',
504
+ table_hdr_bg = '#70b0ff',
505
+ table_hdr_fg = '#000000',
506
+ table_hdr_link = '#000000',
507
+ table_hdr_visited_link = '#000000',
508
+ table_border = '1px solid #000000',
509
+ # Navigation bar: blue w/ cyan selection
510
+ navbar_bg = '#0000ff',
511
+ navbar_fg = '#ffffff',
512
+ navbar_link = '#ffffff',
513
+ navbar_visited_link = '#ffffff',
514
+ navbar_select_bg = '#70b0ff',
515
+ navbar_select_fg = '#000000',
516
+ navbar_border = '1px solid #70b0ff',
517
+ # Variable values & doctest blocks: cyan
518
+ variable_bg = '#c0e0f8',
519
+ variable_fg = '#000000',
520
+ doctest_bg = '#c0e0f8',
521
+ doctest_fg = '#000000',
522
+ doctest_in_table_bg = '#c0e0f8',
523
+ doctest_in_table_fg = '#000000',
524
+ ))
525
+
526
+ _WHITE = _set_colors(TEMPLATE, _WHITE_COLORS)
527
+ _BLUE = _set_colors(TEMPLATE, _BLUE_COLORS)
528
+
529
+ # Black-on-green
530
+ _GREEN = _COLOR_RE.sub(_darken_darks, _COLOR_RE.sub(r'#\1\3\2', _BLUE))
531
+
532
+ # White-on-black, with blue highlights.
533
+ _BLACK = _COLOR_RE.sub(r'#\3\2\1', _COLOR_RE.sub(_rv, _WHITE))
534
+
535
+ # Grayscale
536
+ _GRAYSCALE = _COLOR_RE.sub(r'#\2\2\2', _WHITE)
537
+
538
+ ############################################################
539
+ ## Stylesheet table
540
+ ############################################################
541
+
542
+ STYLESHEETS = {
543
+ 'white': (_WHITE, "Black on white, with blue highlights"),
544
+ 'blue': (_BLUE, "Black on steel blue"),
545
+ 'green': (_GREEN, "Black on green"),
546
+ 'black': (_BLACK, "White on black, with blue highlights"),
547
+ 'grayscale': (_GRAYSCALE, "Grayscale black on white"),
548
+ 'default': (_WHITE, "Default stylesheet (=white)"),
549
+ # 'none': (_LAYOUT, "A base stylesheet (no color modifications)"),
550
+ }
Binary file