rigid 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (364) hide show
  1. checksums.yaml +7 -0
  2. data/bin/rigid +4 -0
  3. data/rigid +16 -0
  4. data/vendor/PyYAML-3.12.dist-info/DESCRIPTION.rst +12 -0
  5. data/vendor/PyYAML-3.12.dist-info/INSTALLER +1 -0
  6. data/vendor/PyYAML-3.12.dist-info/METADATA +35 -0
  7. data/vendor/PyYAML-3.12.dist-info/RECORD +42 -0
  8. data/vendor/PyYAML-3.12.dist-info/WHEEL +5 -0
  9. data/vendor/PyYAML-3.12.dist-info/metadata.json +1 -0
  10. data/vendor/PyYAML-3.12.dist-info/top_level.txt +2 -0
  11. data/vendor/_yaml.so +0 -0
  12. data/vendor/click/__init__.py +98 -0
  13. data/vendor/click/__init__.pyc +0 -0
  14. data/vendor/click/_bashcomplete.py +83 -0
  15. data/vendor/click/_bashcomplete.pyc +0 -0
  16. data/vendor/click/_compat.py +642 -0
  17. data/vendor/click/_compat.pyc +0 -0
  18. data/vendor/click/_termui_impl.py +547 -0
  19. data/vendor/click/_termui_impl.pyc +0 -0
  20. data/vendor/click/_textwrap.py +38 -0
  21. data/vendor/click/_textwrap.pyc +0 -0
  22. data/vendor/click/_unicodefun.py +119 -0
  23. data/vendor/click/_unicodefun.pyc +0 -0
  24. data/vendor/click/_winconsole.py +273 -0
  25. data/vendor/click/_winconsole.pyc +0 -0
  26. data/vendor/click/core.py +1738 -0
  27. data/vendor/click/core.pyc +0 -0
  28. data/vendor/click/decorators.py +304 -0
  29. data/vendor/click/decorators.pyc +0 -0
  30. data/vendor/click/exceptions.py +201 -0
  31. data/vendor/click/exceptions.pyc +0 -0
  32. data/vendor/click/formatting.py +256 -0
  33. data/vendor/click/formatting.pyc +0 -0
  34. data/vendor/click/globals.py +48 -0
  35. data/vendor/click/globals.pyc +0 -0
  36. data/vendor/click/parser.py +426 -0
  37. data/vendor/click/parser.pyc +0 -0
  38. data/vendor/click/termui.py +539 -0
  39. data/vendor/click/termui.pyc +0 -0
  40. data/vendor/click/testing.py +322 -0
  41. data/vendor/click/testing.pyc +0 -0
  42. data/vendor/click/types.py +550 -0
  43. data/vendor/click/types.pyc +0 -0
  44. data/vendor/click/utils.py +415 -0
  45. data/vendor/click/utils.pyc +0 -0
  46. data/vendor/click-6.6.dist-info/DESCRIPTION.rst +3 -0
  47. data/vendor/click-6.6.dist-info/INSTALLER +1 -0
  48. data/vendor/click-6.6.dist-info/METADATA +16 -0
  49. data/vendor/click-6.6.dist-info/RECORD +41 -0
  50. data/vendor/click-6.6.dist-info/WHEEL +6 -0
  51. data/vendor/click-6.6.dist-info/metadata.json +1 -0
  52. data/vendor/click-6.6.dist-info/top_level.txt +1 -0
  53. data/vendor/easy_install.py +5 -0
  54. data/vendor/easy_install.pyc +0 -0
  55. data/vendor/pip-9.0.1.dist-info/DESCRIPTION.rst +39 -0
  56. data/vendor/pip-9.0.1.dist-info/INSTALLER +1 -0
  57. data/vendor/pip-9.0.1.dist-info/METADATA +69 -0
  58. data/vendor/pip-9.0.1.dist-info/RECORD +501 -0
  59. data/vendor/pip-9.0.1.dist-info/WHEEL +6 -0
  60. data/vendor/pip-9.0.1.dist-info/entry_points.txt +5 -0
  61. data/vendor/pip-9.0.1.dist-info/metadata.json +1 -0
  62. data/vendor/pip-9.0.1.dist-info/top_level.txt +1 -0
  63. data/vendor/pkg_resources/__init__.py +3051 -0
  64. data/vendor/pkg_resources/__init__.pyc +0 -0
  65. data/vendor/pkg_resources/_vendor/__init__.py +0 -0
  66. data/vendor/pkg_resources/_vendor/__init__.pyc +0 -0
  67. data/vendor/pkg_resources/_vendor/appdirs.py +552 -0
  68. data/vendor/pkg_resources/_vendor/appdirs.pyc +0 -0
  69. data/vendor/pkg_resources/_vendor/packaging/__about__.py +21 -0
  70. data/vendor/pkg_resources/_vendor/packaging/__about__.pyc +0 -0
  71. data/vendor/pkg_resources/_vendor/packaging/__init__.py +14 -0
  72. data/vendor/pkg_resources/_vendor/packaging/__init__.pyc +0 -0
  73. data/vendor/pkg_resources/_vendor/packaging/_compat.py +30 -0
  74. data/vendor/pkg_resources/_vendor/packaging/_compat.pyc +0 -0
  75. data/vendor/pkg_resources/_vendor/packaging/_structures.py +68 -0
  76. data/vendor/pkg_resources/_vendor/packaging/_structures.pyc +0 -0
  77. data/vendor/pkg_resources/_vendor/packaging/markers.py +287 -0
  78. data/vendor/pkg_resources/_vendor/packaging/markers.pyc +0 -0
  79. data/vendor/pkg_resources/_vendor/packaging/requirements.py +127 -0
  80. data/vendor/pkg_resources/_vendor/packaging/requirements.pyc +0 -0
  81. data/vendor/pkg_resources/_vendor/packaging/specifiers.py +774 -0
  82. data/vendor/pkg_resources/_vendor/packaging/specifiers.pyc +0 -0
  83. data/vendor/pkg_resources/_vendor/packaging/utils.py +14 -0
  84. data/vendor/pkg_resources/_vendor/packaging/utils.pyc +0 -0
  85. data/vendor/pkg_resources/_vendor/packaging/version.py +393 -0
  86. data/vendor/pkg_resources/_vendor/packaging/version.pyc +0 -0
  87. data/vendor/pkg_resources/_vendor/pyparsing.py +5696 -0
  88. data/vendor/pkg_resources/_vendor/pyparsing.pyc +0 -0
  89. data/vendor/pkg_resources/_vendor/six.py +868 -0
  90. data/vendor/pkg_resources/_vendor/six.pyc +0 -0
  91. data/vendor/pkg_resources/extern/__init__.py +73 -0
  92. data/vendor/pkg_resources/extern/__init__.pyc +0 -0
  93. data/vendor/requests/__init__.py +86 -0
  94. data/vendor/requests/__init__.pyc +0 -0
  95. data/vendor/requests/adapters.py +503 -0
  96. data/vendor/requests/adapters.pyc +0 -0
  97. data/vendor/requests/api.py +148 -0
  98. data/vendor/requests/api.pyc +0 -0
  99. data/vendor/requests/auth.py +252 -0
  100. data/vendor/requests/auth.pyc +0 -0
  101. data/vendor/requests/cacert.pem +5616 -0
  102. data/vendor/requests/certs.py +25 -0
  103. data/vendor/requests/certs.pyc +0 -0
  104. data/vendor/requests/compat.py +66 -0
  105. data/vendor/requests/compat.pyc +0 -0
  106. data/vendor/requests/cookies.py +540 -0
  107. data/vendor/requests/cookies.pyc +0 -0
  108. data/vendor/requests/exceptions.py +114 -0
  109. data/vendor/requests/exceptions.pyc +0 -0
  110. data/vendor/requests/hooks.py +34 -0
  111. data/vendor/requests/hooks.pyc +0 -0
  112. data/vendor/requests/models.py +873 -0
  113. data/vendor/requests/models.pyc +0 -0
  114. data/vendor/requests/packages/__init__.py +36 -0
  115. data/vendor/requests/packages/__init__.pyc +0 -0
  116. data/vendor/requests/packages/chardet/__init__.py +32 -0
  117. data/vendor/requests/packages/chardet/__init__.pyc +0 -0
  118. data/vendor/requests/packages/chardet/big5freq.py +925 -0
  119. data/vendor/requests/packages/chardet/big5freq.pyc +0 -0
  120. data/vendor/requests/packages/chardet/big5prober.py +42 -0
  121. data/vendor/requests/packages/chardet/big5prober.pyc +0 -0
  122. data/vendor/requests/packages/chardet/chardetect.py +80 -0
  123. data/vendor/requests/packages/chardet/chardetect.pyc +0 -0
  124. data/vendor/requests/packages/chardet/chardistribution.py +231 -0
  125. data/vendor/requests/packages/chardet/chardistribution.pyc +0 -0
  126. data/vendor/requests/packages/chardet/charsetgroupprober.py +106 -0
  127. data/vendor/requests/packages/chardet/charsetgroupprober.pyc +0 -0
  128. data/vendor/requests/packages/chardet/charsetprober.py +62 -0
  129. data/vendor/requests/packages/chardet/charsetprober.pyc +0 -0
  130. data/vendor/requests/packages/chardet/codingstatemachine.py +61 -0
  131. data/vendor/requests/packages/chardet/codingstatemachine.pyc +0 -0
  132. data/vendor/requests/packages/chardet/compat.py +34 -0
  133. data/vendor/requests/packages/chardet/compat.pyc +0 -0
  134. data/vendor/requests/packages/chardet/constants.py +39 -0
  135. data/vendor/requests/packages/chardet/constants.pyc +0 -0
  136. data/vendor/requests/packages/chardet/cp949prober.py +44 -0
  137. data/vendor/requests/packages/chardet/cp949prober.pyc +0 -0
  138. data/vendor/requests/packages/chardet/escprober.py +86 -0
  139. data/vendor/requests/packages/chardet/escprober.pyc +0 -0
  140. data/vendor/requests/packages/chardet/escsm.py +242 -0
  141. data/vendor/requests/packages/chardet/escsm.pyc +0 -0
  142. data/vendor/requests/packages/chardet/eucjpprober.py +90 -0
  143. data/vendor/requests/packages/chardet/eucjpprober.pyc +0 -0
  144. data/vendor/requests/packages/chardet/euckrfreq.py +596 -0
  145. data/vendor/requests/packages/chardet/euckrfreq.pyc +0 -0
  146. data/vendor/requests/packages/chardet/euckrprober.py +42 -0
  147. data/vendor/requests/packages/chardet/euckrprober.pyc +0 -0
  148. data/vendor/requests/packages/chardet/euctwfreq.py +428 -0
  149. data/vendor/requests/packages/chardet/euctwfreq.pyc +0 -0
  150. data/vendor/requests/packages/chardet/euctwprober.py +41 -0
  151. data/vendor/requests/packages/chardet/euctwprober.pyc +0 -0
  152. data/vendor/requests/packages/chardet/gb2312freq.py +472 -0
  153. data/vendor/requests/packages/chardet/gb2312freq.pyc +0 -0
  154. data/vendor/requests/packages/chardet/gb2312prober.py +41 -0
  155. data/vendor/requests/packages/chardet/gb2312prober.pyc +0 -0
  156. data/vendor/requests/packages/chardet/hebrewprober.py +283 -0
  157. data/vendor/requests/packages/chardet/hebrewprober.pyc +0 -0
  158. data/vendor/requests/packages/chardet/jisfreq.py +569 -0
  159. data/vendor/requests/packages/chardet/jisfreq.pyc +0 -0
  160. data/vendor/requests/packages/chardet/jpcntx.py +227 -0
  161. data/vendor/requests/packages/chardet/jpcntx.pyc +0 -0
  162. data/vendor/requests/packages/chardet/langbulgarianmodel.py +229 -0
  163. data/vendor/requests/packages/chardet/langbulgarianmodel.pyc +0 -0
  164. data/vendor/requests/packages/chardet/langcyrillicmodel.py +329 -0
  165. data/vendor/requests/packages/chardet/langcyrillicmodel.pyc +0 -0
  166. data/vendor/requests/packages/chardet/langgreekmodel.py +225 -0
  167. data/vendor/requests/packages/chardet/langgreekmodel.pyc +0 -0
  168. data/vendor/requests/packages/chardet/langhebrewmodel.py +201 -0
  169. data/vendor/requests/packages/chardet/langhebrewmodel.pyc +0 -0
  170. data/vendor/requests/packages/chardet/langhungarianmodel.py +225 -0
  171. data/vendor/requests/packages/chardet/langhungarianmodel.pyc +0 -0
  172. data/vendor/requests/packages/chardet/langthaimodel.py +200 -0
  173. data/vendor/requests/packages/chardet/langthaimodel.pyc +0 -0
  174. data/vendor/requests/packages/chardet/latin1prober.py +139 -0
  175. data/vendor/requests/packages/chardet/latin1prober.pyc +0 -0
  176. data/vendor/requests/packages/chardet/mbcharsetprober.py +86 -0
  177. data/vendor/requests/packages/chardet/mbcharsetprober.pyc +0 -0
  178. data/vendor/requests/packages/chardet/mbcsgroupprober.py +54 -0
  179. data/vendor/requests/packages/chardet/mbcsgroupprober.pyc +0 -0
  180. data/vendor/requests/packages/chardet/mbcssm.py +572 -0
  181. data/vendor/requests/packages/chardet/mbcssm.pyc +0 -0
  182. data/vendor/requests/packages/chardet/sbcharsetprober.py +120 -0
  183. data/vendor/requests/packages/chardet/sbcharsetprober.pyc +0 -0
  184. data/vendor/requests/packages/chardet/sbcsgroupprober.py +69 -0
  185. data/vendor/requests/packages/chardet/sbcsgroupprober.pyc +0 -0
  186. data/vendor/requests/packages/chardet/sjisprober.py +91 -0
  187. data/vendor/requests/packages/chardet/sjisprober.pyc +0 -0
  188. data/vendor/requests/packages/chardet/universaldetector.py +170 -0
  189. data/vendor/requests/packages/chardet/universaldetector.pyc +0 -0
  190. data/vendor/requests/packages/chardet/utf8prober.py +76 -0
  191. data/vendor/requests/packages/chardet/utf8prober.pyc +0 -0
  192. data/vendor/requests/packages/urllib3/__init__.py +96 -0
  193. data/vendor/requests/packages/urllib3/__init__.pyc +0 -0
  194. data/vendor/requests/packages/urllib3/_collections.py +324 -0
  195. data/vendor/requests/packages/urllib3/_collections.pyc +0 -0
  196. data/vendor/requests/packages/urllib3/connection.py +330 -0
  197. data/vendor/requests/packages/urllib3/connection.pyc +0 -0
  198. data/vendor/requests/packages/urllib3/connectionpool.py +866 -0
  199. data/vendor/requests/packages/urllib3/connectionpool.pyc +0 -0
  200. data/vendor/requests/packages/urllib3/contrib/__init__.py +0 -0
  201. data/vendor/requests/packages/urllib3/contrib/__init__.pyc +0 -0
  202. data/vendor/requests/packages/urllib3/contrib/appengine.py +231 -0
  203. data/vendor/requests/packages/urllib3/contrib/appengine.pyc +0 -0
  204. data/vendor/requests/packages/urllib3/contrib/ntlmpool.py +115 -0
  205. data/vendor/requests/packages/urllib3/contrib/ntlmpool.pyc +0 -0
  206. data/vendor/requests/packages/urllib3/contrib/pyopenssl.py +358 -0
  207. data/vendor/requests/packages/urllib3/contrib/pyopenssl.pyc +0 -0
  208. data/vendor/requests/packages/urllib3/contrib/socks.py +172 -0
  209. data/vendor/requests/packages/urllib3/contrib/socks.pyc +0 -0
  210. data/vendor/requests/packages/urllib3/exceptions.py +209 -0
  211. data/vendor/requests/packages/urllib3/exceptions.pyc +0 -0
  212. data/vendor/requests/packages/urllib3/fields.py +178 -0
  213. data/vendor/requests/packages/urllib3/fields.pyc +0 -0
  214. data/vendor/requests/packages/urllib3/filepost.py +94 -0
  215. data/vendor/requests/packages/urllib3/filepost.pyc +0 -0
  216. data/vendor/requests/packages/urllib3/packages/__init__.py +5 -0
  217. data/vendor/requests/packages/urllib3/packages/__init__.pyc +0 -0
  218. data/vendor/requests/packages/urllib3/packages/ordered_dict.py +259 -0
  219. data/vendor/requests/packages/urllib3/packages/ordered_dict.pyc +0 -0
  220. data/vendor/requests/packages/urllib3/packages/six.py +868 -0
  221. data/vendor/requests/packages/urllib3/packages/six.pyc +0 -0
  222. data/vendor/requests/packages/urllib3/packages/ssl_match_hostname/__init__.py +13 -0
  223. data/vendor/requests/packages/urllib3/packages/ssl_match_hostname/__init__.pyc +0 -0
  224. data/vendor/requests/packages/urllib3/packages/ssl_match_hostname/_implementation.py +105 -0
  225. data/vendor/requests/packages/urllib3/packages/ssl_match_hostname/_implementation.pyc +0 -0
  226. data/vendor/requests/packages/urllib3/poolmanager.py +367 -0
  227. data/vendor/requests/packages/urllib3/poolmanager.pyc +0 -0
  228. data/vendor/requests/packages/urllib3/request.py +151 -0
  229. data/vendor/requests/packages/urllib3/request.pyc +0 -0
  230. data/vendor/requests/packages/urllib3/response.py +530 -0
  231. data/vendor/requests/packages/urllib3/response.pyc +0 -0
  232. data/vendor/requests/packages/urllib3/util/__init__.py +46 -0
  233. data/vendor/requests/packages/urllib3/util/__init__.pyc +0 -0
  234. data/vendor/requests/packages/urllib3/util/connection.py +144 -0
  235. data/vendor/requests/packages/urllib3/util/connection.pyc +0 -0
  236. data/vendor/requests/packages/urllib3/util/request.py +72 -0
  237. data/vendor/requests/packages/urllib3/util/request.pyc +0 -0
  238. data/vendor/requests/packages/urllib3/util/response.py +74 -0
  239. data/vendor/requests/packages/urllib3/util/response.pyc +0 -0
  240. data/vendor/requests/packages/urllib3/util/retry.py +300 -0
  241. data/vendor/requests/packages/urllib3/util/retry.pyc +0 -0
  242. data/vendor/requests/packages/urllib3/util/ssl_.py +320 -0
  243. data/vendor/requests/packages/urllib3/util/ssl_.pyc +0 -0
  244. data/vendor/requests/packages/urllib3/util/timeout.py +242 -0
  245. data/vendor/requests/packages/urllib3/util/timeout.pyc +0 -0
  246. data/vendor/requests/packages/urllib3/util/url.py +217 -0
  247. data/vendor/requests/packages/urllib3/util/url.pyc +0 -0
  248. data/vendor/requests/sessions.py +712 -0
  249. data/vendor/requests/sessions.pyc +0 -0
  250. data/vendor/requests/status_codes.py +91 -0
  251. data/vendor/requests/status_codes.pyc +0 -0
  252. data/vendor/requests/structures.py +105 -0
  253. data/vendor/requests/structures.pyc +0 -0
  254. data/vendor/requests/utils.py +817 -0
  255. data/vendor/requests/utils.pyc +0 -0
  256. data/vendor/requests-2.11.1.dist-info/DESCRIPTION.rst +1294 -0
  257. data/vendor/requests-2.11.1.dist-info/INSTALLER +1 -0
  258. data/vendor/requests-2.11.1.dist-info/METADATA +1323 -0
  259. data/vendor/requests-2.11.1.dist-info/RECORD +170 -0
  260. data/vendor/requests-2.11.1.dist-info/WHEEL +6 -0
  261. data/vendor/requests-2.11.1.dist-info/metadata.json +1 -0
  262. data/vendor/requests-2.11.1.dist-info/top_level.txt +1 -0
  263. data/vendor/rigid/__init__.py +1 -0
  264. data/vendor/rigid/__init__.pyc +0 -0
  265. data/vendor/rigid/api.py +129 -0
  266. data/vendor/rigid/api.pyc +0 -0
  267. data/vendor/rigid/commands/__init__.py +260 -0
  268. data/vendor/rigid/commands/__init__.pyc +0 -0
  269. data/vendor/rigid/commands/deploy.py +0 -0
  270. data/vendor/rigid/commands/deploy.pyc +0 -0
  271. data/vendor/rigid/deploy.py +70 -0
  272. data/vendor/rigid/deploy.pyc +0 -0
  273. data/vendor/rigid/file_scanner.py +63 -0
  274. data/vendor/rigid/file_scanner.pyc +0 -0
  275. data/vendor/rigid/utils.py +17 -0
  276. data/vendor/rigid/utils.pyc +0 -0
  277. data/vendor/rigid-0.2.0.dist-info/DESCRIPTION.rst +3 -0
  278. data/vendor/rigid-0.2.0.dist-info/INSTALLER +1 -0
  279. data/vendor/rigid-0.2.0.dist-info/METADATA +23 -0
  280. data/vendor/rigid-0.2.0.dist-info/RECORD +49 -0
  281. data/vendor/rigid-0.2.0.dist-info/WHEEL +5 -0
  282. data/vendor/rigid-0.2.0.dist-info/entry_points.txt +3 -0
  283. data/vendor/rigid-0.2.0.dist-info/metadata.json +1 -0
  284. data/vendor/rigid-0.2.0.dist-info/top_level.txt +2 -0
  285. data/vendor/setuptools-28.8.0.dist-info/DESCRIPTION.rst +243 -0
  286. data/vendor/setuptools-28.8.0.dist-info/INSTALLER +1 -0
  287. data/vendor/setuptools-28.8.0.dist-info/METADATA +272 -0
  288. data/vendor/setuptools-28.8.0.dist-info/RECORD +143 -0
  289. data/vendor/setuptools-28.8.0.dist-info/WHEEL +6 -0
  290. data/vendor/setuptools-28.8.0.dist-info/dependency_links.txt +2 -0
  291. data/vendor/setuptools-28.8.0.dist-info/entry_points.txt +63 -0
  292. data/vendor/setuptools-28.8.0.dist-info/metadata.json +1 -0
  293. data/vendor/setuptools-28.8.0.dist-info/top_level.txt +3 -0
  294. data/vendor/setuptools-28.8.0.dist-info/zip-safe +1 -0
  295. data/vendor/tests/__init__.py +0 -0
  296. data/vendor/tests/__init__.pyc +0 -0
  297. data/vendor/tests/integration/__init__.py +0 -0
  298. data/vendor/tests/integration/__init__.pyc +0 -0
  299. data/vendor/tests/integration/test_app.py +63 -0
  300. data/vendor/tests/integration/test_app.pyc +0 -0
  301. data/vendor/tests/integration/test_apps.py +27 -0
  302. data/vendor/tests/integration/test_apps.pyc +0 -0
  303. data/vendor/tests/integration/test_deploy.py +128 -0
  304. data/vendor/tests/integration/test_deploy.pyc +0 -0
  305. data/vendor/tests/integration/test_domains.py +35 -0
  306. data/vendor/tests/integration/test_domains.pyc +0 -0
  307. data/vendor/tests/integration/test_login.py +37 -0
  308. data/vendor/tests/integration/test_login.pyc +0 -0
  309. data/vendor/tests/integration/test_promote.py +24 -0
  310. data/vendor/tests/integration/test_promote.pyc +0 -0
  311. data/vendor/tests/integration/test_token.py +33 -0
  312. data/vendor/tests/integration/test_token.pyc +0 -0
  313. data/vendor/tests/integration/test_whoami.py +24 -0
  314. data/vendor/tests/integration/test_whoami.pyc +0 -0
  315. data/vendor/tests/test_deploy.py +33 -0
  316. data/vendor/tests/test_deploy.pyc +0 -0
  317. data/vendor/tests/test_file_scanner.py +89 -0
  318. data/vendor/tests/test_file_scanner.pyc +0 -0
  319. data/vendor/tests/utils.py +78 -0
  320. data/vendor/tests/utils.pyc +0 -0
  321. data/vendor/wheel-0.30.0a0.dist-info/DESCRIPTION.rst +325 -0
  322. data/vendor/wheel-0.30.0a0.dist-info/INSTALLER +1 -0
  323. data/vendor/wheel-0.30.0a0.dist-info/LICENSE.txt +22 -0
  324. data/vendor/wheel-0.30.0a0.dist-info/METADATA +357 -0
  325. data/vendor/wheel-0.30.0a0.dist-info/RECORD +86 -0
  326. data/vendor/wheel-0.30.0a0.dist-info/WHEEL +6 -0
  327. data/vendor/wheel-0.30.0a0.dist-info/entry_points.txt +6 -0
  328. data/vendor/wheel-0.30.0a0.dist-info/metadata.json +1 -0
  329. data/vendor/wheel-0.30.0a0.dist-info/top_level.txt +1 -0
  330. data/vendor/yaml/__init__.py +315 -0
  331. data/vendor/yaml/__init__.pyc +0 -0
  332. data/vendor/yaml/composer.py +139 -0
  333. data/vendor/yaml/composer.pyc +0 -0
  334. data/vendor/yaml/constructor.py +675 -0
  335. data/vendor/yaml/constructor.pyc +0 -0
  336. data/vendor/yaml/cyaml.py +85 -0
  337. data/vendor/yaml/cyaml.pyc +0 -0
  338. data/vendor/yaml/dumper.py +62 -0
  339. data/vendor/yaml/dumper.pyc +0 -0
  340. data/vendor/yaml/emitter.py +1140 -0
  341. data/vendor/yaml/emitter.pyc +0 -0
  342. data/vendor/yaml/error.py +75 -0
  343. data/vendor/yaml/error.pyc +0 -0
  344. data/vendor/yaml/events.py +86 -0
  345. data/vendor/yaml/events.pyc +0 -0
  346. data/vendor/yaml/loader.py +40 -0
  347. data/vendor/yaml/loader.pyc +0 -0
  348. data/vendor/yaml/nodes.py +49 -0
  349. data/vendor/yaml/nodes.pyc +0 -0
  350. data/vendor/yaml/parser.py +589 -0
  351. data/vendor/yaml/parser.pyc +0 -0
  352. data/vendor/yaml/reader.py +190 -0
  353. data/vendor/yaml/reader.pyc +0 -0
  354. data/vendor/yaml/representer.py +486 -0
  355. data/vendor/yaml/representer.pyc +0 -0
  356. data/vendor/yaml/resolver.py +227 -0
  357. data/vendor/yaml/resolver.pyc +0 -0
  358. data/vendor/yaml/scanner.py +1453 -0
  359. data/vendor/yaml/scanner.pyc +0 -0
  360. data/vendor/yaml/serializer.py +111 -0
  361. data/vendor/yaml/serializer.pyc +0 -0
  362. data/vendor/yaml/tokens.py +104 -0
  363. data/vendor/yaml/tokens.pyc +0 -0
  364. metadata +407 -0
@@ -0,0 +1,86 @@
1
+ wheel/__init__.py,sha256=dmboUDfpbWxercVXbbQELsT1L4ZQyOHQvJKjvcAKYtc,99
2
+ wheel/__main__.py,sha256=LbDDGId08qTxuhLYqX5mXO1MUs9D-Hhxb5NVc53ej0k,416
3
+ wheel/archive.py,sha256=O6uXk-zJ8y4Y-0rCoHP7CLKlPpWQBH44zeRegaK8FJo,2247
4
+ wheel/bdist_wheel.py,sha256=usdFkZvQopK-Sx_3l0TEM2Zm33Bw1C_obTIUz7JM7pI,18408
5
+ wheel/decorator.py,sha256=U2K77ZZ8x3x5vSIGCcEeh8GAxB6rABB7AlDwRukaoCk,541
6
+ wheel/egg2wheel.py,sha256=-7M2JFi23kZ-khbNwk1iVL8P14NFdbAhMc1SHhnZ2fA,3027
7
+ wheel/eggnames.txt,sha256=X6LYsOjMd8llrzLo3SB3FwJ-uN9IskJqYKJDq2zIcbs,2490
8
+ wheel/install.py,sha256=dCR7IHmeArLjgb0yF9YmMh3_qIj-C9j1p3uPSrpzZO8,18098
9
+ wheel/metadata.py,sha256=Oz8x2VD0xLbaWH06yTRCb3vSdWnWvpPOwY2o9D8iFGU,11676
10
+ wheel/paths.py,sha256=6AmG-MKx-NeJOC9zUJoSSZjYhZYGmX1UHG_N0IbkplI,1130
11
+ wheel/pep425tags.py,sha256=pA1eyb1HOAmwSiXTmfQhmAckfknhtEelLDZOcVKZaE0,5829
12
+ wheel/pkginfo.py,sha256=-gLOTuQrkRf4geOD04qm0IUkdYAbjg81j-5zNtvWA9A,1225
13
+ wheel/util.py,sha256=Pe2JZ9grNjmAcRRJay20FlDVJUbePWaR5ltySo3c6zQ,4890
14
+ wheel/wininst2wheel.py,sha256=xVfEEKbS4hMpv-wgOQib4n0pSpgrpjnrBDH2JDSNcrE,7863
15
+ wheel/signatures/__init__.py,sha256=kZpKNsmxBDZhuXf85_uyy5qBH40AxVT_0utbAiTp_yg,3779
16
+ wheel/signatures/djbec.py,sha256=53HTnlNlfqOHFDf8OY_6KL8sxR4swiLsWhUjtw3W3nI,6755
17
+ wheel/signatures/ed25519py.py,sha256=SeTxiMZ7kmoMdIurBSaKb8Ku-amGnf6ZTRGElLzV8iI,1695
18
+ wheel/signatures/keys.py,sha256=Q8FLVy5dixDiy-5o_RmlsDhgYdErTCp5c3Z8x70X1sg,3316
19
+ wheel/test/__init__.py,sha256=M0NZuQ7-112l8K2h1eayVvSmvQrufrOcD5AYKgIf_Is,1
20
+ wheel/test/conftest.py,sha256=S73nHtotRr6_OGBXmeWPVdjVmVKZaz4ui4LPYd0aP9U,1689
21
+ wheel/test/pydist-schema.json,sha256=ynEvNvThC1zRa7FioMsW3k-9nl98ytEoo1_3xbOP2eo,11483
22
+ wheel/test/test-1.0-py2.py3-none-win32.whl,sha256=JC_UXTN5KlLrdu43uH4caZSUyzrtPcUsRe-vTMunplE,5226
23
+ wheel/test/test_basic.py,sha256=a1uRu4MZPbEEKyUsKYvGtz4qj4KX3E77V6JmXJLdX-k,6509
24
+ wheel/test/test_install.py,sha256=c0EECXPkVIGhCD9V5ad2qsBPRPYb1ehhaS0k6Gv5JQc,1866
25
+ wheel/test/test_keys.py,sha256=5mBc9tf2TwC3TCpx1ySTYsCe5yvd6kMK64AlUUCcKEY,2575
26
+ wheel/test/test_paths.py,sha256=-QOVUDFJIpF9OPNRzCJ-Xf4nBibKlUe_g4aaZ6sm3wE,172
27
+ wheel/test/test_ranking.py,sha256=FSAQX4oHZ476jLddqVMlGmQFtbEel9a8SzOngJ03TJw,1496
28
+ wheel/test/test_signatures.py,sha256=Z4REXj62p28gbSDB2D_OxopA-TTXICTZ5e2yZ3ejEVc,1120
29
+ wheel/test/test_tagopt.py,sha256=t7A-iRbe3bH2Iz6NKdSEOpFFIFSF9I4ATmlrRBXoCcQ,5927
30
+ wheel/test/test_tool.py,sha256=yt5dAr8mp51WoDzt0MmlwPk0xf7FvXAedy-YlNZXv1I,656
31
+ wheel/test/test_wheelfile.py,sha256=x4exzQYuQB48YHqhU2NZyN76k-BSK6784-7rye0q6Ss,4585
32
+ wheel/test/complex-dist/setup.py,sha256=4i1_AJoJxo4i6ik-mvydo23AF8BHzjmAEQYa5J4YPK4,855
33
+ wheel/test/complex-dist/complexdist/__init__.py,sha256=PGDJWQTxjLXqnNrbqmTKK_yk6DVQBNeRp-YpP7w1rVk,23
34
+ wheel/test/extension.dist/setup.py,sha256=pdRl-wvq5OVMG043XrWZwz4fivFZWdWMNwL8dyKbT0c,456
35
+ wheel/test/headers.dist/header.h,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
36
+ wheel/test/headers.dist/headersdist.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
37
+ wheel/test/headers.dist/setup.py,sha256=p3d9TGy7NLX6TnkBHnNHzedqYoOkdGQvwheyDQjf-JQ,324
38
+ wheel/test/simple.dist/setup.py,sha256=8zWen71Um-iN_A5thot6VFogrkWs_RGVO-jr_MxkFog,383
39
+ wheel/test/simple.dist/simpledist/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
40
+ wheel/tool/__init__.py,sha256=p0unl9MgrbkZYVODVxEKMWRI9Ya1M_uXcqXnXHzI4Dk,13217
41
+ wheel-0.30.0a0.dist-info/DESCRIPTION.rst,sha256=JH6mogUIatQVQewIh4GB1ywCxuWbm7G4TjI_63dURp8,9813
42
+ wheel-0.30.0a0.dist-info/LICENSE.txt,sha256=zKniDGrx_Pv2lAjzd3aShsvuvN7TNhAMm0o_NfvmNeQ,1125
43
+ wheel-0.30.0a0.dist-info/METADATA,sha256=ix9zN5fa4jeODQrn64fUAQa_ulrmRphi4SKHAYUqtNw,11021
44
+ wheel-0.30.0a0.dist-info/RECORD,,
45
+ wheel-0.30.0a0.dist-info/WHEEL,sha256=5wvfB7GvgZAbKBSE9uX9Zbi6LCL-_KgezgHblXhCRnM,113
46
+ wheel-0.30.0a0.dist-info/entry_points.txt,sha256=pTyeGVsucyfr_BXe5OQKuA1Bp5YKaIAWy5pejkq4Qx0,109
47
+ wheel-0.30.0a0.dist-info/metadata.json,sha256=x_mZjLzOaYcezmnrSvG67d07ShpcRFdrgWeUe6zpL5Y,1626
48
+ wheel-0.30.0a0.dist-info/top_level.txt,sha256=HxSBIbgEstMPe4eFawhA66Mq-QYHMopXVoAncfjb_1c,6
49
+ /Users/kyle/Projects/cocode/static/cli/packages/venv/bin/wheel,sha256=apvD-3TtvJYI4UJ2KgSZIU7Sn0j3isN7oABa9YUVdd0,262
50
+ /Users/kyle/Projects/cocode/static/cli/packages/venv/lib/python2.7/site-packages/wheel-0.30.0a0.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
51
+ wheel/test/test_install.pyc,,
52
+ wheel/test/complex-dist/setup.pyc,,
53
+ wheel/signatures/__init__.pyc,,
54
+ wheel/egg2wheel.pyc,,
55
+ wheel/util.pyc,,
56
+ wheel/test/test_wheelfile.pyc,,
57
+ wheel/test/simple.dist/simpledist/__init__.pyc,,
58
+ wheel/install.pyc,,
59
+ wheel/test/extension.dist/setup.pyc,,
60
+ wheel/test/__init__.pyc,,
61
+ wheel/test/test_signatures.pyc,,
62
+ wheel/paths.pyc,,
63
+ wheel/wininst2wheel.pyc,,
64
+ wheel/test/test_ranking.pyc,,
65
+ wheel/__init__.pyc,,
66
+ wheel/signatures/djbec.pyc,,
67
+ wheel/test/test_basic.pyc,,
68
+ wheel/archive.pyc,,
69
+ wheel/test/headers.dist/setup.pyc,,
70
+ wheel/metadata.pyc,,
71
+ wheel/test/test_keys.pyc,,
72
+ wheel/bdist_wheel.pyc,,
73
+ wheel/__main__.pyc,,
74
+ wheel/pep425tags.pyc,,
75
+ wheel/test/conftest.pyc,,
76
+ wheel/signatures/ed25519py.pyc,,
77
+ wheel/signatures/keys.pyc,,
78
+ wheel/test/test_tool.pyc,,
79
+ wheel/decorator.pyc,,
80
+ wheel/test/headers.dist/headersdist.pyc,,
81
+ wheel/tool/__init__.pyc,,
82
+ wheel/test/test_paths.pyc,,
83
+ wheel/test/test_tagopt.pyc,,
84
+ wheel/test/complex-dist/complexdist/__init__.pyc,,
85
+ wheel/test/simple.dist/setup.pyc,,
86
+ wheel/pkginfo.pyc,,
@@ -0,0 +1,6 @@
1
+ Wheel-Version: 1.0
2
+ Generator: bdist_wheel (0.30.0.a0)
3
+ Root-Is-Purelib: true
4
+ Tag: py2-none-any
5
+ Tag: py3-none-any
6
+
@@ -0,0 +1,6 @@
1
+ [console_scripts]
2
+ wheel = wheel.tool:main
3
+
4
+ [distutils.commands]
5
+ bdist_wheel = wheel.bdist_wheel:bdist_wheel
6
+
@@ -0,0 +1 @@
1
+ {"classifiers": ["Development Status :: 4 - Beta", "Intended Audience :: Developers", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.2", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4"], "extensions": {"python.commands": {"wrap_console": {"wheel": "wheel.tool:main"}}, "python.details": {"contacts": [{"email": "dholth@fastmail.fm", "name": "Daniel Holth", "role": "author"}], "document_names": {"description": "DESCRIPTION.rst", "license": "LICENSE.txt"}, "project_urls": {"Home": "https://bitbucket.org/pypa/wheel/"}}, "python.exports": {"console_scripts": {"wheel": "wheel.tool:main"}, "distutils.commands": {"bdist_wheel": "wheel.bdist_wheel:bdist_wheel"}}}, "extras": ["faster-signatures", "signatures", "tool"], "generator": "bdist_wheel (0.30.0.a0)", "keywords": ["wheel", "packaging"], "license": "MIT", "metadata_version": "2.0", "name": "wheel", "run_requires": [{"extra": "faster-signatures", "requires": ["ed25519ll"]}, {"extra": "signatures", "requires": ["keyring", "keyrings.alt"]}, {"environment": "python_version==\"2.6\"", "requires": ["argparse"]}, {"environment": "python_version==\"2.6\"", "extra": "signatures", "requires": ["importlib"]}, {"environment": "sys_platform!=\"win32\"", "extra": "signatures", "requires": ["pyxdg"]}], "summary": "A built-package format for Python.", "test_requires": [{"requires": ["coverage", "jsonschema", "pytest", "pytest-cov"]}], "version": "0.30.0a0"}
@@ -0,0 +1 @@
1
+ wheel
@@ -0,0 +1,315 @@
1
+
2
+ from error import *
3
+
4
+ from tokens import *
5
+ from events import *
6
+ from nodes import *
7
+
8
+ from loader import *
9
+ from dumper import *
10
+
11
+ __version__ = '3.12'
12
+
13
+ try:
14
+ from cyaml import *
15
+ __with_libyaml__ = True
16
+ except ImportError:
17
+ __with_libyaml__ = False
18
+
19
+ def scan(stream, Loader=Loader):
20
+ """
21
+ Scan a YAML stream and produce scanning tokens.
22
+ """
23
+ loader = Loader(stream)
24
+ try:
25
+ while loader.check_token():
26
+ yield loader.get_token()
27
+ finally:
28
+ loader.dispose()
29
+
30
+ def parse(stream, Loader=Loader):
31
+ """
32
+ Parse a YAML stream and produce parsing events.
33
+ """
34
+ loader = Loader(stream)
35
+ try:
36
+ while loader.check_event():
37
+ yield loader.get_event()
38
+ finally:
39
+ loader.dispose()
40
+
41
+ def compose(stream, Loader=Loader):
42
+ """
43
+ Parse the first YAML document in a stream
44
+ and produce the corresponding representation tree.
45
+ """
46
+ loader = Loader(stream)
47
+ try:
48
+ return loader.get_single_node()
49
+ finally:
50
+ loader.dispose()
51
+
52
+ def compose_all(stream, Loader=Loader):
53
+ """
54
+ Parse all YAML documents in a stream
55
+ and produce corresponding representation trees.
56
+ """
57
+ loader = Loader(stream)
58
+ try:
59
+ while loader.check_node():
60
+ yield loader.get_node()
61
+ finally:
62
+ loader.dispose()
63
+
64
+ def load(stream, Loader=Loader):
65
+ """
66
+ Parse the first YAML document in a stream
67
+ and produce the corresponding Python object.
68
+ """
69
+ loader = Loader(stream)
70
+ try:
71
+ return loader.get_single_data()
72
+ finally:
73
+ loader.dispose()
74
+
75
+ def load_all(stream, Loader=Loader):
76
+ """
77
+ Parse all YAML documents in a stream
78
+ and produce corresponding Python objects.
79
+ """
80
+ loader = Loader(stream)
81
+ try:
82
+ while loader.check_data():
83
+ yield loader.get_data()
84
+ finally:
85
+ loader.dispose()
86
+
87
+ def safe_load(stream):
88
+ """
89
+ Parse the first YAML document in a stream
90
+ and produce the corresponding Python object.
91
+ Resolve only basic YAML tags.
92
+ """
93
+ return load(stream, SafeLoader)
94
+
95
+ def safe_load_all(stream):
96
+ """
97
+ Parse all YAML documents in a stream
98
+ and produce corresponding Python objects.
99
+ Resolve only basic YAML tags.
100
+ """
101
+ return load_all(stream, SafeLoader)
102
+
103
+ def emit(events, stream=None, Dumper=Dumper,
104
+ canonical=None, indent=None, width=None,
105
+ allow_unicode=None, line_break=None):
106
+ """
107
+ Emit YAML parsing events into a stream.
108
+ If stream is None, return the produced string instead.
109
+ """
110
+ getvalue = None
111
+ if stream is None:
112
+ from StringIO import StringIO
113
+ stream = StringIO()
114
+ getvalue = stream.getvalue
115
+ dumper = Dumper(stream, canonical=canonical, indent=indent, width=width,
116
+ allow_unicode=allow_unicode, line_break=line_break)
117
+ try:
118
+ for event in events:
119
+ dumper.emit(event)
120
+ finally:
121
+ dumper.dispose()
122
+ if getvalue:
123
+ return getvalue()
124
+
125
+ def serialize_all(nodes, stream=None, Dumper=Dumper,
126
+ canonical=None, indent=None, width=None,
127
+ allow_unicode=None, line_break=None,
128
+ encoding='utf-8', explicit_start=None, explicit_end=None,
129
+ version=None, tags=None):
130
+ """
131
+ Serialize a sequence of representation trees into a YAML stream.
132
+ If stream is None, return the produced string instead.
133
+ """
134
+ getvalue = None
135
+ if stream is None:
136
+ if encoding is None:
137
+ from StringIO import StringIO
138
+ else:
139
+ from cStringIO import StringIO
140
+ stream = StringIO()
141
+ getvalue = stream.getvalue
142
+ dumper = Dumper(stream, canonical=canonical, indent=indent, width=width,
143
+ allow_unicode=allow_unicode, line_break=line_break,
144
+ encoding=encoding, version=version, tags=tags,
145
+ explicit_start=explicit_start, explicit_end=explicit_end)
146
+ try:
147
+ dumper.open()
148
+ for node in nodes:
149
+ dumper.serialize(node)
150
+ dumper.close()
151
+ finally:
152
+ dumper.dispose()
153
+ if getvalue:
154
+ return getvalue()
155
+
156
+ def serialize(node, stream=None, Dumper=Dumper, **kwds):
157
+ """
158
+ Serialize a representation tree into a YAML stream.
159
+ If stream is None, return the produced string instead.
160
+ """
161
+ return serialize_all([node], stream, Dumper=Dumper, **kwds)
162
+
163
+ def dump_all(documents, stream=None, Dumper=Dumper,
164
+ default_style=None, default_flow_style=None,
165
+ canonical=None, indent=None, width=None,
166
+ allow_unicode=None, line_break=None,
167
+ encoding='utf-8', explicit_start=None, explicit_end=None,
168
+ version=None, tags=None):
169
+ """
170
+ Serialize a sequence of Python objects into a YAML stream.
171
+ If stream is None, return the produced string instead.
172
+ """
173
+ getvalue = None
174
+ if stream is None:
175
+ if encoding is None:
176
+ from StringIO import StringIO
177
+ else:
178
+ from cStringIO import StringIO
179
+ stream = StringIO()
180
+ getvalue = stream.getvalue
181
+ dumper = Dumper(stream, default_style=default_style,
182
+ default_flow_style=default_flow_style,
183
+ canonical=canonical, indent=indent, width=width,
184
+ allow_unicode=allow_unicode, line_break=line_break,
185
+ encoding=encoding, version=version, tags=tags,
186
+ explicit_start=explicit_start, explicit_end=explicit_end)
187
+ try:
188
+ dumper.open()
189
+ for data in documents:
190
+ dumper.represent(data)
191
+ dumper.close()
192
+ finally:
193
+ dumper.dispose()
194
+ if getvalue:
195
+ return getvalue()
196
+
197
+ def dump(data, stream=None, Dumper=Dumper, **kwds):
198
+ """
199
+ Serialize a Python object into a YAML stream.
200
+ If stream is None, return the produced string instead.
201
+ """
202
+ return dump_all([data], stream, Dumper=Dumper, **kwds)
203
+
204
+ def safe_dump_all(documents, stream=None, **kwds):
205
+ """
206
+ Serialize a sequence of Python objects into a YAML stream.
207
+ Produce only basic YAML tags.
208
+ If stream is None, return the produced string instead.
209
+ """
210
+ return dump_all(documents, stream, Dumper=SafeDumper, **kwds)
211
+
212
+ def safe_dump(data, stream=None, **kwds):
213
+ """
214
+ Serialize a Python object into a YAML stream.
215
+ Produce only basic YAML tags.
216
+ If stream is None, return the produced string instead.
217
+ """
218
+ return dump_all([data], stream, Dumper=SafeDumper, **kwds)
219
+
220
+ def add_implicit_resolver(tag, regexp, first=None,
221
+ Loader=Loader, Dumper=Dumper):
222
+ """
223
+ Add an implicit scalar detector.
224
+ If an implicit scalar value matches the given regexp,
225
+ the corresponding tag is assigned to the scalar.
226
+ first is a sequence of possible initial characters or None.
227
+ """
228
+ Loader.add_implicit_resolver(tag, regexp, first)
229
+ Dumper.add_implicit_resolver(tag, regexp, first)
230
+
231
+ def add_path_resolver(tag, path, kind=None, Loader=Loader, Dumper=Dumper):
232
+ """
233
+ Add a path based resolver for the given tag.
234
+ A path is a list of keys that forms a path
235
+ to a node in the representation tree.
236
+ Keys can be string values, integers, or None.
237
+ """
238
+ Loader.add_path_resolver(tag, path, kind)
239
+ Dumper.add_path_resolver(tag, path, kind)
240
+
241
+ def add_constructor(tag, constructor, Loader=Loader):
242
+ """
243
+ Add a constructor for the given tag.
244
+ Constructor is a function that accepts a Loader instance
245
+ and a node object and produces the corresponding Python object.
246
+ """
247
+ Loader.add_constructor(tag, constructor)
248
+
249
+ def add_multi_constructor(tag_prefix, multi_constructor, Loader=Loader):
250
+ """
251
+ Add a multi-constructor for the given tag prefix.
252
+ Multi-constructor is called for a node if its tag starts with tag_prefix.
253
+ Multi-constructor accepts a Loader instance, a tag suffix,
254
+ and a node object and produces the corresponding Python object.
255
+ """
256
+ Loader.add_multi_constructor(tag_prefix, multi_constructor)
257
+
258
+ def add_representer(data_type, representer, Dumper=Dumper):
259
+ """
260
+ Add a representer for the given type.
261
+ Representer is a function accepting a Dumper instance
262
+ and an instance of the given data type
263
+ and producing the corresponding representation node.
264
+ """
265
+ Dumper.add_representer(data_type, representer)
266
+
267
+ def add_multi_representer(data_type, multi_representer, Dumper=Dumper):
268
+ """
269
+ Add a representer for the given type.
270
+ Multi-representer is a function accepting a Dumper instance
271
+ and an instance of the given data type or subtype
272
+ and producing the corresponding representation node.
273
+ """
274
+ Dumper.add_multi_representer(data_type, multi_representer)
275
+
276
+ class YAMLObjectMetaclass(type):
277
+ """
278
+ The metaclass for YAMLObject.
279
+ """
280
+ def __init__(cls, name, bases, kwds):
281
+ super(YAMLObjectMetaclass, cls).__init__(name, bases, kwds)
282
+ if 'yaml_tag' in kwds and kwds['yaml_tag'] is not None:
283
+ cls.yaml_loader.add_constructor(cls.yaml_tag, cls.from_yaml)
284
+ cls.yaml_dumper.add_representer(cls, cls.to_yaml)
285
+
286
+ class YAMLObject(object):
287
+ """
288
+ An object that can dump itself to a YAML stream
289
+ and load itself from a YAML stream.
290
+ """
291
+
292
+ __metaclass__ = YAMLObjectMetaclass
293
+ __slots__ = () # no direct instantiation, so allow immutable subclasses
294
+
295
+ yaml_loader = Loader
296
+ yaml_dumper = Dumper
297
+
298
+ yaml_tag = None
299
+ yaml_flow_style = None
300
+
301
+ def from_yaml(cls, loader, node):
302
+ """
303
+ Convert a representation node to a Python object.
304
+ """
305
+ return loader.construct_yaml_object(node, cls)
306
+ from_yaml = classmethod(from_yaml)
307
+
308
+ def to_yaml(cls, dumper, data):
309
+ """
310
+ Convert a Python object to a representation node.
311
+ """
312
+ return dumper.represent_yaml_object(cls.yaml_tag, data, cls,
313
+ flow_style=cls.yaml_flow_style)
314
+ to_yaml = classmethod(to_yaml)
315
+
Binary file
@@ -0,0 +1,139 @@
1
+
2
+ __all__ = ['Composer', 'ComposerError']
3
+
4
+ from error import MarkedYAMLError
5
+ from events import *
6
+ from nodes import *
7
+
8
+ class ComposerError(MarkedYAMLError):
9
+ pass
10
+
11
+ class Composer(object):
12
+
13
+ def __init__(self):
14
+ self.anchors = {}
15
+
16
+ def check_node(self):
17
+ # Drop the STREAM-START event.
18
+ if self.check_event(StreamStartEvent):
19
+ self.get_event()
20
+
21
+ # If there are more documents available?
22
+ return not self.check_event(StreamEndEvent)
23
+
24
+ def get_node(self):
25
+ # Get the root node of the next document.
26
+ if not self.check_event(StreamEndEvent):
27
+ return self.compose_document()
28
+
29
+ def get_single_node(self):
30
+ # Drop the STREAM-START event.
31
+ self.get_event()
32
+
33
+ # Compose a document if the stream is not empty.
34
+ document = None
35
+ if not self.check_event(StreamEndEvent):
36
+ document = self.compose_document()
37
+
38
+ # Ensure that the stream contains no more documents.
39
+ if not self.check_event(StreamEndEvent):
40
+ event = self.get_event()
41
+ raise ComposerError("expected a single document in the stream",
42
+ document.start_mark, "but found another document",
43
+ event.start_mark)
44
+
45
+ # Drop the STREAM-END event.
46
+ self.get_event()
47
+
48
+ return document
49
+
50
+ def compose_document(self):
51
+ # Drop the DOCUMENT-START event.
52
+ self.get_event()
53
+
54
+ # Compose the root node.
55
+ node = self.compose_node(None, None)
56
+
57
+ # Drop the DOCUMENT-END event.
58
+ self.get_event()
59
+
60
+ self.anchors = {}
61
+ return node
62
+
63
+ def compose_node(self, parent, index):
64
+ if self.check_event(AliasEvent):
65
+ event = self.get_event()
66
+ anchor = event.anchor
67
+ if anchor not in self.anchors:
68
+ raise ComposerError(None, None, "found undefined alias %r"
69
+ % anchor.encode('utf-8'), event.start_mark)
70
+ return self.anchors[anchor]
71
+ event = self.peek_event()
72
+ anchor = event.anchor
73
+ if anchor is not None:
74
+ if anchor in self.anchors:
75
+ raise ComposerError("found duplicate anchor %r; first occurence"
76
+ % anchor.encode('utf-8'), self.anchors[anchor].start_mark,
77
+ "second occurence", event.start_mark)
78
+ self.descend_resolver(parent, index)
79
+ if self.check_event(ScalarEvent):
80
+ node = self.compose_scalar_node(anchor)
81
+ elif self.check_event(SequenceStartEvent):
82
+ node = self.compose_sequence_node(anchor)
83
+ elif self.check_event(MappingStartEvent):
84
+ node = self.compose_mapping_node(anchor)
85
+ self.ascend_resolver()
86
+ return node
87
+
88
+ def compose_scalar_node(self, anchor):
89
+ event = self.get_event()
90
+ tag = event.tag
91
+ if tag is None or tag == u'!':
92
+ tag = self.resolve(ScalarNode, event.value, event.implicit)
93
+ node = ScalarNode(tag, event.value,
94
+ event.start_mark, event.end_mark, style=event.style)
95
+ if anchor is not None:
96
+ self.anchors[anchor] = node
97
+ return node
98
+
99
+ def compose_sequence_node(self, anchor):
100
+ start_event = self.get_event()
101
+ tag = start_event.tag
102
+ if tag is None or tag == u'!':
103
+ tag = self.resolve(SequenceNode, None, start_event.implicit)
104
+ node = SequenceNode(tag, [],
105
+ start_event.start_mark, None,
106
+ flow_style=start_event.flow_style)
107
+ if anchor is not None:
108
+ self.anchors[anchor] = node
109
+ index = 0
110
+ while not self.check_event(SequenceEndEvent):
111
+ node.value.append(self.compose_node(node, index))
112
+ index += 1
113
+ end_event = self.get_event()
114
+ node.end_mark = end_event.end_mark
115
+ return node
116
+
117
+ def compose_mapping_node(self, anchor):
118
+ start_event = self.get_event()
119
+ tag = start_event.tag
120
+ if tag is None or tag == u'!':
121
+ tag = self.resolve(MappingNode, None, start_event.implicit)
122
+ node = MappingNode(tag, [],
123
+ start_event.start_mark, None,
124
+ flow_style=start_event.flow_style)
125
+ if anchor is not None:
126
+ self.anchors[anchor] = node
127
+ while not self.check_event(MappingEndEvent):
128
+ #key_event = self.peek_event()
129
+ item_key = self.compose_node(node, None)
130
+ #if item_key in node.value:
131
+ # raise ComposerError("while composing a mapping", start_event.start_mark,
132
+ # "found duplicate key", key_event.start_mark)
133
+ item_value = self.compose_node(node, item_key)
134
+ #node.value[item_key] = item_value
135
+ node.value.append((item_key, item_value))
136
+ end_event = self.get_event()
137
+ node.end_mark = end_event.end_mark
138
+ return node
139
+
Binary file