rigid 0.2.0

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 (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,148 @@
1
+ # -*- coding: utf-8 -*-
2
+
3
+ """
4
+ requests.api
5
+ ~~~~~~~~~~~~
6
+
7
+ This module implements the Requests API.
8
+
9
+ :copyright: (c) 2012 by Kenneth Reitz.
10
+ :license: Apache2, see LICENSE for more details.
11
+ """
12
+
13
+ from . import sessions
14
+
15
+
16
+ def request(method, url, **kwargs):
17
+ """Constructs and sends a :class:`Request <Request>`.
18
+
19
+ :param method: method for the new :class:`Request` object.
20
+ :param url: URL for the new :class:`Request` object.
21
+ :param params: (optional) Dictionary or bytes to be sent in the query string for the :class:`Request`.
22
+ :param data: (optional) Dictionary, bytes, or file-like object to send in the body of the :class:`Request`.
23
+ :param json: (optional) json data to send in the body of the :class:`Request`.
24
+ :param headers: (optional) Dictionary of HTTP Headers to send with the :class:`Request`.
25
+ :param cookies: (optional) Dict or CookieJar object to send with the :class:`Request`.
26
+ :param files: (optional) Dictionary of ``'name': file-like-objects`` (or ``{'name': file-tuple}``) for multipart encoding upload.
27
+ ``file-tuple`` can be a 2-tuple ``('filename', fileobj)``, 3-tuple ``('filename', fileobj, 'content_type')``
28
+ or a 4-tuple ``('filename', fileobj, 'content_type', custom_headers)``, where ``'content-type'`` is a string
29
+ defining the content type of the given file and ``custom_headers`` a dict-like object containing additional headers
30
+ to add for the file.
31
+ :param auth: (optional) Auth tuple to enable Basic/Digest/Custom HTTP Auth.
32
+ :param timeout: (optional) How long to wait for the server to send data
33
+ before giving up, as a float, or a :ref:`(connect timeout, read
34
+ timeout) <timeouts>` tuple.
35
+ :type timeout: float or tuple
36
+ :param allow_redirects: (optional) Boolean. Set to True if POST/PUT/DELETE redirect following is allowed.
37
+ :type allow_redirects: bool
38
+ :param proxies: (optional) Dictionary mapping protocol to the URL of the proxy.
39
+ :param verify: (optional) whether the SSL cert will be verified. A CA_BUNDLE path can also be provided. Defaults to ``True``.
40
+ :param stream: (optional) if ``False``, the response content will be immediately downloaded.
41
+ :param cert: (optional) if String, path to ssl client cert file (.pem). If Tuple, ('cert', 'key') pair.
42
+ :return: :class:`Response <Response>` object
43
+ :rtype: requests.Response
44
+
45
+ Usage::
46
+
47
+ >>> import requests
48
+ >>> req = requests.request('GET', 'http://httpbin.org/get')
49
+ <Response [200]>
50
+ """
51
+
52
+ # By using the 'with' statement we are sure the session is closed, thus we
53
+ # avoid leaving sockets open which can trigger a ResourceWarning in some
54
+ # cases, and look like a memory leak in others.
55
+ with sessions.Session() as session:
56
+ return session.request(method=method, url=url, **kwargs)
57
+
58
+
59
+ def get(url, params=None, **kwargs):
60
+ """Sends a GET request.
61
+
62
+ :param url: URL for the new :class:`Request` object.
63
+ :param params: (optional) Dictionary or bytes to be sent in the query string for the :class:`Request`.
64
+ :param \*\*kwargs: Optional arguments that ``request`` takes.
65
+ :return: :class:`Response <Response>` object
66
+ :rtype: requests.Response
67
+ """
68
+
69
+ kwargs.setdefault('allow_redirects', True)
70
+ return request('get', url, params=params, **kwargs)
71
+
72
+
73
+ def options(url, **kwargs):
74
+ """Sends a OPTIONS request.
75
+
76
+ :param url: URL for the new :class:`Request` object.
77
+ :param \*\*kwargs: Optional arguments that ``request`` takes.
78
+ :return: :class:`Response <Response>` object
79
+ :rtype: requests.Response
80
+ """
81
+
82
+ kwargs.setdefault('allow_redirects', True)
83
+ return request('options', url, **kwargs)
84
+
85
+
86
+ def head(url, **kwargs):
87
+ """Sends a HEAD request.
88
+
89
+ :param url: URL for the new :class:`Request` object.
90
+ :param \*\*kwargs: Optional arguments that ``request`` takes.
91
+ :return: :class:`Response <Response>` object
92
+ :rtype: requests.Response
93
+ """
94
+
95
+ kwargs.setdefault('allow_redirects', False)
96
+ return request('head', url, **kwargs)
97
+
98
+
99
+ def post(url, data=None, json=None, **kwargs):
100
+ """Sends a POST request.
101
+
102
+ :param url: URL for the new :class:`Request` object.
103
+ :param data: (optional) Dictionary, bytes, or file-like object to send in the body of the :class:`Request`.
104
+ :param json: (optional) json data to send in the body of the :class:`Request`.
105
+ :param \*\*kwargs: Optional arguments that ``request`` takes.
106
+ :return: :class:`Response <Response>` object
107
+ :rtype: requests.Response
108
+ """
109
+
110
+ return request('post', url, data=data, json=json, **kwargs)
111
+
112
+
113
+ def put(url, data=None, **kwargs):
114
+ """Sends a PUT request.
115
+
116
+ :param url: URL for the new :class:`Request` object.
117
+ :param data: (optional) Dictionary, bytes, or file-like object to send in the body of the :class:`Request`.
118
+ :param \*\*kwargs: Optional arguments that ``request`` takes.
119
+ :return: :class:`Response <Response>` object
120
+ :rtype: requests.Response
121
+ """
122
+
123
+ return request('put', url, data=data, **kwargs)
124
+
125
+
126
+ def patch(url, data=None, **kwargs):
127
+ """Sends a PATCH request.
128
+
129
+ :param url: URL for the new :class:`Request` object.
130
+ :param data: (optional) Dictionary, bytes, or file-like object to send in the body of the :class:`Request`.
131
+ :param \*\*kwargs: Optional arguments that ``request`` takes.
132
+ :return: :class:`Response <Response>` object
133
+ :rtype: requests.Response
134
+ """
135
+
136
+ return request('patch', url, data=data, **kwargs)
137
+
138
+
139
+ def delete(url, **kwargs):
140
+ """Sends a DELETE request.
141
+
142
+ :param url: URL for the new :class:`Request` object.
143
+ :param \*\*kwargs: Optional arguments that ``request`` takes.
144
+ :return: :class:`Response <Response>` object
145
+ :rtype: requests.Response
146
+ """
147
+
148
+ return request('delete', url, **kwargs)
Binary file
@@ -0,0 +1,252 @@
1
+ # -*- coding: utf-8 -*-
2
+
3
+ """
4
+ requests.auth
5
+ ~~~~~~~~~~~~~
6
+
7
+ This module contains the authentication handlers for Requests.
8
+ """
9
+
10
+ import os
11
+ import re
12
+ import time
13
+ import hashlib
14
+ import threading
15
+
16
+ from base64 import b64encode
17
+
18
+ from .compat import urlparse, str
19
+ from .cookies import extract_cookies_to_jar
20
+ from .utils import parse_dict_header, to_native_string
21
+ from .status_codes import codes
22
+
23
+ CONTENT_TYPE_FORM_URLENCODED = 'application/x-www-form-urlencoded'
24
+ CONTENT_TYPE_MULTI_PART = 'multipart/form-data'
25
+
26
+
27
+ def _basic_auth_str(username, password):
28
+ """Returns a Basic Auth string."""
29
+
30
+ authstr = 'Basic ' + to_native_string(
31
+ b64encode(('%s:%s' % (username, password)).encode('latin1')).strip()
32
+ )
33
+
34
+ return authstr
35
+
36
+
37
+ class AuthBase(object):
38
+ """Base class that all auth implementations derive from"""
39
+
40
+ def __call__(self, r):
41
+ raise NotImplementedError('Auth hooks must be callable.')
42
+
43
+
44
+ class HTTPBasicAuth(AuthBase):
45
+ """Attaches HTTP Basic Authentication to the given Request object."""
46
+
47
+ def __init__(self, username, password):
48
+ self.username = username
49
+ self.password = password
50
+
51
+ def __eq__(self, other):
52
+ return all([
53
+ self.username == getattr(other, 'username', None),
54
+ self.password == getattr(other, 'password', None)
55
+ ])
56
+
57
+ def __ne__(self, other):
58
+ return not self == other
59
+
60
+ def __call__(self, r):
61
+ r.headers['Authorization'] = _basic_auth_str(self.username, self.password)
62
+ return r
63
+
64
+
65
+ class HTTPProxyAuth(HTTPBasicAuth):
66
+ """Attaches HTTP Proxy Authentication to a given Request object."""
67
+
68
+ def __call__(self, r):
69
+ r.headers['Proxy-Authorization'] = _basic_auth_str(self.username, self.password)
70
+ return r
71
+
72
+
73
+ class HTTPDigestAuth(AuthBase):
74
+ """Attaches HTTP Digest Authentication to the given Request object."""
75
+
76
+ def __init__(self, username, password):
77
+ self.username = username
78
+ self.password = password
79
+ # Keep state in per-thread local storage
80
+ self._thread_local = threading.local()
81
+
82
+ def init_per_thread_state(self):
83
+ # Ensure state is initialized just once per-thread
84
+ if not hasattr(self._thread_local, 'init'):
85
+ self._thread_local.init = True
86
+ self._thread_local.last_nonce = ''
87
+ self._thread_local.nonce_count = 0
88
+ self._thread_local.chal = {}
89
+ self._thread_local.pos = None
90
+ self._thread_local.num_401_calls = None
91
+
92
+ def build_digest_header(self, method, url):
93
+ """
94
+ :rtype: str
95
+ """
96
+
97
+ realm = self._thread_local.chal['realm']
98
+ nonce = self._thread_local.chal['nonce']
99
+ qop = self._thread_local.chal.get('qop')
100
+ algorithm = self._thread_local.chal.get('algorithm')
101
+ opaque = self._thread_local.chal.get('opaque')
102
+ hash_utf8 = None
103
+
104
+ if algorithm is None:
105
+ _algorithm = 'MD5'
106
+ else:
107
+ _algorithm = algorithm.upper()
108
+ # lambdas assume digest modules are imported at the top level
109
+ if _algorithm == 'MD5' or _algorithm == 'MD5-SESS':
110
+ def md5_utf8(x):
111
+ if isinstance(x, str):
112
+ x = x.encode('utf-8')
113
+ return hashlib.md5(x).hexdigest()
114
+ hash_utf8 = md5_utf8
115
+ elif _algorithm == 'SHA':
116
+ def sha_utf8(x):
117
+ if isinstance(x, str):
118
+ x = x.encode('utf-8')
119
+ return hashlib.sha1(x).hexdigest()
120
+ hash_utf8 = sha_utf8
121
+
122
+ KD = lambda s, d: hash_utf8("%s:%s" % (s, d))
123
+
124
+ if hash_utf8 is None:
125
+ return None
126
+
127
+ # XXX not implemented yet
128
+ entdig = None
129
+ p_parsed = urlparse(url)
130
+ #: path is request-uri defined in RFC 2616 which should not be empty
131
+ path = p_parsed.path or "/"
132
+ if p_parsed.query:
133
+ path += '?' + p_parsed.query
134
+
135
+ A1 = '%s:%s:%s' % (self.username, realm, self.password)
136
+ A2 = '%s:%s' % (method, path)
137
+
138
+ HA1 = hash_utf8(A1)
139
+ HA2 = hash_utf8(A2)
140
+
141
+ if nonce == self._thread_local.last_nonce:
142
+ self._thread_local.nonce_count += 1
143
+ else:
144
+ self._thread_local.nonce_count = 1
145
+ ncvalue = '%08x' % self._thread_local.nonce_count
146
+ s = str(self._thread_local.nonce_count).encode('utf-8')
147
+ s += nonce.encode('utf-8')
148
+ s += time.ctime().encode('utf-8')
149
+ s += os.urandom(8)
150
+
151
+ cnonce = (hashlib.sha1(s).hexdigest()[:16])
152
+ if _algorithm == 'MD5-SESS':
153
+ HA1 = hash_utf8('%s:%s:%s' % (HA1, nonce, cnonce))
154
+
155
+ if not qop:
156
+ respdig = KD(HA1, "%s:%s" % (nonce, HA2))
157
+ elif qop == 'auth' or 'auth' in qop.split(','):
158
+ noncebit = "%s:%s:%s:%s:%s" % (
159
+ nonce, ncvalue, cnonce, 'auth', HA2
160
+ )
161
+ respdig = KD(HA1, noncebit)
162
+ else:
163
+ # XXX handle auth-int.
164
+ return None
165
+
166
+ self._thread_local.last_nonce = nonce
167
+
168
+ # XXX should the partial digests be encoded too?
169
+ base = 'username="%s", realm="%s", nonce="%s", uri="%s", ' \
170
+ 'response="%s"' % (self.username, realm, nonce, path, respdig)
171
+ if opaque:
172
+ base += ', opaque="%s"' % opaque
173
+ if algorithm:
174
+ base += ', algorithm="%s"' % algorithm
175
+ if entdig:
176
+ base += ', digest="%s"' % entdig
177
+ if qop:
178
+ base += ', qop="auth", nc=%s, cnonce="%s"' % (ncvalue, cnonce)
179
+
180
+ return 'Digest %s' % (base)
181
+
182
+ def handle_redirect(self, r, **kwargs):
183
+ """Reset num_401_calls counter on redirects."""
184
+ if r.is_redirect:
185
+ self._thread_local.num_401_calls = 1
186
+
187
+ def handle_401(self, r, **kwargs):
188
+ """
189
+ Takes the given response and tries digest-auth, if needed.
190
+
191
+ :rtype: requests.Response
192
+ """
193
+
194
+ if self._thread_local.pos is not None:
195
+ # Rewind the file position indicator of the body to where
196
+ # it was to resend the request.
197
+ r.request.body.seek(self._thread_local.pos)
198
+ s_auth = r.headers.get('www-authenticate', '')
199
+
200
+ if 'digest' in s_auth.lower() and self._thread_local.num_401_calls < 2:
201
+
202
+ self._thread_local.num_401_calls += 1
203
+ pat = re.compile(r'digest ', flags=re.IGNORECASE)
204
+ self._thread_local.chal = parse_dict_header(pat.sub('', s_auth, count=1))
205
+
206
+ # Consume content and release the original connection
207
+ # to allow our new request to reuse the same one.
208
+ r.content
209
+ r.close()
210
+ prep = r.request.copy()
211
+ extract_cookies_to_jar(prep._cookies, r.request, r.raw)
212
+ prep.prepare_cookies(prep._cookies)
213
+
214
+ prep.headers['Authorization'] = self.build_digest_header(
215
+ prep.method, prep.url)
216
+ _r = r.connection.send(prep, **kwargs)
217
+ _r.history.append(r)
218
+ _r.request = prep
219
+
220
+ return _r
221
+
222
+ self._thread_local.num_401_calls = 1
223
+ return r
224
+
225
+ def __call__(self, r):
226
+ # Initialize per-thread state, if needed
227
+ self.init_per_thread_state()
228
+ # If we have a saved nonce, skip the 401
229
+ if self._thread_local.last_nonce:
230
+ r.headers['Authorization'] = self.build_digest_header(r.method, r.url)
231
+ try:
232
+ self._thread_local.pos = r.body.tell()
233
+ except AttributeError:
234
+ # In the case of HTTPDigestAuth being reused and the body of
235
+ # the previous request was a file-like object, pos has the
236
+ # file position of the previous body. Ensure it's set to
237
+ # None.
238
+ self._thread_local.pos = None
239
+ r.register_hook('response', self.handle_401)
240
+ r.register_hook('response', self.handle_redirect)
241
+ self._thread_local.num_401_calls = 1
242
+
243
+ return r
244
+
245
+ def __eq__(self, other):
246
+ return all([
247
+ self.username == getattr(other, 'username', None),
248
+ self.password == getattr(other, 'password', None)
249
+ ])
250
+
251
+ def __ne__(self, other):
252
+ return not self == other
Binary file