com.googler.python 1.0.7 → 1.0.9

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 (354) hide show
  1. package/package.json +4 -2
  2. package/python3.4.2/lib/python3.4/site-packages/pip/__init__.py +1 -277
  3. package/python3.4.2/lib/python3.4/site-packages/pip/__main__.py +19 -7
  4. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/__init__.py +246 -0
  5. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/basecommand.py +373 -0
  6. package/python3.4.2/lib/python3.4/site-packages/pip/{baseparser.py → _internal/baseparser.py} +240 -224
  7. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/build_env.py +92 -0
  8. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/cache.py +202 -0
  9. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/cmdoptions.py +609 -0
  10. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/commands/__init__.py +79 -0
  11. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/commands/check.py +42 -0
  12. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/commands/completion.py +94 -0
  13. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/commands/configuration.py +227 -0
  14. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/commands/download.py +233 -0
  15. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/commands/freeze.py +96 -0
  16. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/commands/hash.py +57 -0
  17. package/python3.4.2/lib/python3.4/site-packages/pip/{commands → _internal/commands}/help.py +36 -33
  18. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/commands/install.py +477 -0
  19. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/commands/list.py +343 -0
  20. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/commands/search.py +135 -0
  21. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/commands/show.py +164 -0
  22. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/commands/uninstall.py +71 -0
  23. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/commands/wheel.py +179 -0
  24. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/compat.py +235 -0
  25. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/configuration.py +378 -0
  26. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/download.py +922 -0
  27. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/exceptions.py +249 -0
  28. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/index.py +1117 -0
  29. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/locations.py +194 -0
  30. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/models/__init__.py +4 -0
  31. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/models/index.py +15 -0
  32. package/python3.4.2/lib/python3.4/site-packages/pip/{_vendor/requests/packages/urllib3/contrib → _internal/operations}/__init__.py +0 -0
  33. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/operations/check.py +106 -0
  34. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/operations/freeze.py +252 -0
  35. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/operations/prepare.py +378 -0
  36. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/pep425tags.py +317 -0
  37. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/req/__init__.py +69 -0
  38. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/req/req_file.py +338 -0
  39. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/req/req_install.py +1115 -0
  40. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/req/req_set.py +164 -0
  41. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/req/req_uninstall.py +455 -0
  42. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/resolve.py +354 -0
  43. package/python3.4.2/lib/python3.4/site-packages/pip/{status_codes.py → _internal/status_codes.py} +8 -6
  44. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/__init__.py +0 -0
  45. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/appdirs.py +258 -0
  46. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/deprecation.py +77 -0
  47. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/encoding.py +33 -0
  48. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/filesystem.py +28 -0
  49. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/glibc.py +84 -0
  50. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/hashes.py +94 -0
  51. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/logging.py +132 -0
  52. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/misc.py +851 -0
  53. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/outdated.py +163 -0
  54. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/packaging.py +70 -0
  55. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/setuptools_build.py +8 -0
  56. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/temp_dir.py +82 -0
  57. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/typing.py +29 -0
  58. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/ui.py +421 -0
  59. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/vcs/__init__.py +471 -0
  60. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/vcs/bazaar.py +113 -0
  61. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/vcs/git.py +311 -0
  62. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/vcs/mercurial.py +105 -0
  63. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/vcs/subversion.py +271 -0
  64. package/python3.4.2/lib/python3.4/site-packages/pip/_internal/wheel.py +817 -0
  65. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/__init__.py +109 -8
  66. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/appdirs.py +604 -0
  67. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/cachecontrol/__init__.py +11 -0
  68. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/cachecontrol/_cmd.py +60 -0
  69. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/cachecontrol/adapter.py +134 -0
  70. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/cachecontrol/cache.py +39 -0
  71. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/cachecontrol/caches/__init__.py +2 -0
  72. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py +133 -0
  73. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py +43 -0
  74. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/cachecontrol/compat.py +29 -0
  75. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/cachecontrol/controller.py +373 -0
  76. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/cachecontrol/filewrapper.py +78 -0
  77. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/cachecontrol/heuristics.py +138 -0
  78. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/cachecontrol/serialize.py +194 -0
  79. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/cachecontrol/wrapper.py +27 -0
  80. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/certifi/__init__.py +3 -0
  81. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/certifi/__main__.py +2 -0
  82. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests → certifi}/cacert.pem +1765 -2358
  83. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/certifi/core.py +37 -0
  84. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/__init__.py +39 -32
  85. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/big5freq.py +386 -0
  86. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/big5prober.py +47 -42
  87. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/chardistribution.py +233 -231
  88. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/charsetgroupprober.py +106 -0
  89. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/charsetprober.py +145 -0
  90. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/cli/__init__.py +1 -0
  91. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/cli/chardetect.py +85 -0
  92. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/codingstatemachine.py +88 -0
  93. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/compat.py +34 -34
  94. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/cp949prober.py +49 -44
  95. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/enums.py +76 -0
  96. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/escprober.py +101 -0
  97. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/escsm.py +246 -0
  98. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/eucjpprober.py +92 -0
  99. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/euckrfreq.py +195 -0
  100. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/euckrprober.py +47 -42
  101. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/euctwfreq.py +387 -428
  102. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/euctwprober.py +46 -41
  103. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/gb2312freq.py +283 -472
  104. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/gb2312prober.py +46 -41
  105. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/hebrewprober.py +292 -283
  106. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/jisfreq.py +325 -569
  107. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/jpcntx.py +233 -219
  108. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/langbulgarianmodel.py +228 -229
  109. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/langcyrillicmodel.py +333 -329
  110. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/langgreekmodel.py +225 -225
  111. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/langhebrewmodel.py +200 -201
  112. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/langhungarianmodel.py +225 -225
  113. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/langthaimodel.py +199 -200
  114. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/langturkishmodel.py +193 -0
  115. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/latin1prober.py +145 -139
  116. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/mbcharsetprober.py +91 -0
  117. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/mbcsgroupprober.py +54 -54
  118. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/mbcssm.py +572 -0
  119. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/sbcharsetprober.py +132 -0
  120. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/sbcsgroupprober.py +73 -69
  121. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/sjisprober.py +92 -0
  122. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/universaldetector.py +286 -0
  123. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/utf8prober.py +82 -76
  124. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/version.py +9 -0
  125. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/colorama/__init__.py +7 -7
  126. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/colorama/ansi.py +102 -50
  127. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/colorama/ansitowin32.py +236 -190
  128. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/colorama/initialise.py +82 -56
  129. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/colorama/win32.py +156 -137
  130. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/colorama/winterm.py +162 -120
  131. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/__init__.py +23 -23
  132. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/__init__.py +6 -6
  133. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/misc.py +41 -41
  134. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/shutil.py +761 -761
  135. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/sysconfig.cfg +84 -84
  136. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/sysconfig.py +788 -788
  137. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/tarfile.py +2607 -2607
  138. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/compat.py +1117 -1064
  139. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/database.py +1318 -1301
  140. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/index.py +516 -488
  141. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/locators.py +1292 -1194
  142. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/manifest.py +393 -364
  143. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/markers.py +131 -190
  144. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/metadata.py +1068 -1026
  145. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/resources.py +355 -317
  146. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/scripts.py +415 -323
  147. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/t32.exe +0 -0
  148. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/t64.exe +0 -0
  149. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/util.py +1755 -1575
  150. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/version.py +736 -721
  151. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/w32.exe +0 -0
  152. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/w64.exe +0 -0
  153. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/wheel.py +984 -958
  154. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distro.py +1104 -0
  155. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/__init__.py +35 -23
  156. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/{ihatexml.py → _ihatexml.py} +288 -285
  157. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/{inputstream.py → _inputstream.py} +923 -881
  158. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/{tokenizer.py → _tokenizer.py} +1721 -1731
  159. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/{trie → _trie}/__init__.py +14 -12
  160. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/{trie → _trie}/_base.py +37 -37
  161. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/{trie → _trie}/datrie.py +44 -44
  162. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/{trie → _trie}/py.py +67 -67
  163. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/{utils.py → _utils.py} +124 -82
  164. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/constants.py +2947 -3104
  165. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/alphabeticalattributes.py +29 -20
  166. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/{_base.py → base.py} +12 -12
  167. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/inject_meta_charset.py +73 -65
  168. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/lint.py +93 -93
  169. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/optionaltags.py +207 -205
  170. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/sanitizer.py +896 -12
  171. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/whitespace.py +38 -38
  172. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/html5parser.py +2791 -2713
  173. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/serializer.py +409 -0
  174. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treeadapters/__init__.py +30 -0
  175. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treeadapters/genshi.py +54 -0
  176. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treeadapters/sax.py +50 -44
  177. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/__init__.py +88 -76
  178. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/{_base.py → base.py} +417 -377
  179. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.py +236 -227
  180. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/etree.py +340 -337
  181. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/etree_lxml.py +366 -369
  182. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/__init__.py +154 -57
  183. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/{_base.py → base.py} +252 -200
  184. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/dom.py +43 -46
  185. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/etree.py +130 -138
  186. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/{lxmletree.py → etree_lxml.py} +213 -208
  187. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/{genshistream.py → genshi.py} +69 -69
  188. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/idna/__init__.py +2 -0
  189. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/idna/codec.py +118 -0
  190. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/idna/compat.py +12 -0
  191. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/idna/core.py +387 -0
  192. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/idna/idnadata.py +1585 -0
  193. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/idna/intranges.py +53 -0
  194. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/idna/package_data.py +2 -0
  195. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/idna/uts46data.py +7634 -0
  196. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/ipaddress.py +2419 -0
  197. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/lockfile/__init__.py +347 -0
  198. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/lockfile/linklockfile.py +73 -0
  199. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/lockfile/mkdirlockfile.py +84 -0
  200. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/lockfile/pidlockfile.py +190 -0
  201. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/lockfile/sqlitelockfile.py +156 -0
  202. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/lockfile/symlinklockfile.py +70 -0
  203. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/msgpack/__init__.py +66 -0
  204. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/msgpack/_version.py +1 -0
  205. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/msgpack/exceptions.py +41 -0
  206. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/msgpack/fallback.py +971 -0
  207. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/packaging/__about__.py +21 -0
  208. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/packaging/__init__.py +14 -0
  209. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/packaging/_compat.py +30 -0
  210. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/packaging/_structures.py +70 -0
  211. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/packaging/markers.py +301 -0
  212. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/packaging/requirements.py +130 -0
  213. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/packaging/specifiers.py +774 -0
  214. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/packaging/utils.py +63 -0
  215. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/packaging/version.py +441 -0
  216. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{pkg_resources.py → pkg_resources/__init__.py} +3125 -2762
  217. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/pkg_resources/py31compat.py +22 -0
  218. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/progress/__init__.py +127 -0
  219. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/progress/bar.py +88 -0
  220. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/progress/counter.py +48 -0
  221. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/progress/helpers.py +91 -0
  222. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/progress/spinner.py +44 -0
  223. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/pyparsing.py +5720 -0
  224. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/pytoml/__init__.py +3 -0
  225. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/pytoml/core.py +13 -0
  226. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/pytoml/parser.py +374 -0
  227. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/pytoml/writer.py +127 -0
  228. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/__init__.py +123 -77
  229. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/__version__.py +14 -0
  230. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/_internal_utils.py +42 -0
  231. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/adapters.py +525 -388
  232. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/api.py +152 -120
  233. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/auth.py +293 -193
  234. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/certs.py +18 -24
  235. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/compat.py +73 -115
  236. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/cookies.py +542 -454
  237. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/exceptions.py +122 -75
  238. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/help.py +120 -0
  239. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/hooks.py +34 -45
  240. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/models.py +948 -803
  241. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages.py +16 -0
  242. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/sessions.py +737 -637
  243. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/status_codes.py +91 -88
  244. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/structures.py +105 -127
  245. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/utils.py +904 -673
  246. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/retrying.py +267 -0
  247. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/six.py +891 -646
  248. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/__init__.py +97 -0
  249. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/_collections.py +319 -0
  250. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/connection.py +373 -0
  251. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/urllib3 → urllib3}/connectionpool.py +905 -710
  252. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/contrib/__init__.py +0 -0
  253. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__init__.py +0 -0
  254. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/contrib/_securetransport/bindings.py +593 -0
  255. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/contrib/_securetransport/low_level.py +343 -0
  256. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/contrib/appengine.py +296 -0
  257. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/urllib3 → urllib3}/contrib/ntlmpool.py +112 -120
  258. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/contrib/pyopenssl.py +455 -0
  259. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/contrib/securetransport.py +810 -0
  260. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/contrib/socks.py +188 -0
  261. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/exceptions.py +246 -0
  262. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/urllib3 → urllib3}/fields.py +178 -177
  263. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/urllib3 → urllib3}/filepost.py +94 -100
  264. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/urllib3 → urllib3}/packages/__init__.py +5 -4
  265. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/packages/backports/__init__.py +0 -0
  266. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/packages/backports/makefile.py +53 -0
  267. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/urllib3 → urllib3}/packages/ordered_dict.py +259 -260
  268. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/packages/six.py +868 -0
  269. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/urllib3 → urllib3}/packages/ssl_match_hostname/__init__.py +19 -13
  270. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/urllib3 → urllib3}/packages/ssl_match_hostname/_implementation.py +157 -105
  271. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/poolmanager.py +440 -0
  272. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/urllib3 → urllib3}/request.py +148 -141
  273. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/response.py +626 -0
  274. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/util/__init__.py +54 -0
  275. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/util/connection.py +130 -0
  276. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/util/request.py +118 -0
  277. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/util/response.py +81 -0
  278. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/util/retry.py +401 -0
  279. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/util/selectors.py +581 -0
  280. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/util/ssl_.py +341 -0
  281. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/urllib3 → urllib3}/util/timeout.py +242 -234
  282. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/urllib3 → urllib3}/util/url.py +230 -162
  283. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/util/wait.py +40 -0
  284. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/webencodings/__init__.py +342 -0
  285. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/webencodings/labels.py +231 -0
  286. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/webencodings/mklabels.py +59 -0
  287. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/webencodings/tests.py +153 -0
  288. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/webencodings/x_user_defined.py +325 -0
  289. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/_markerlib/__init__.py +0 -16
  290. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/_markerlib/markers.py +0 -119
  291. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/sanitizer.py +0 -271
  292. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/serializer/__init__.py +0 -16
  293. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/serializer/htmlserializer.py +0 -320
  294. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/pulldom.py +0 -63
  295. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/re-vendor.py +0 -34
  296. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/__init__.py +0 -3
  297. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/big5freq.py +0 -925
  298. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/chardetect.py +0 -46
  299. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/charsetgroupprober.py +0 -106
  300. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/charsetprober.py +0 -62
  301. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/codingstatemachine.py +0 -61
  302. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/constants.py +0 -39
  303. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/escprober.py +0 -86
  304. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/escsm.py +0 -242
  305. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/eucjpprober.py +0 -90
  306. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/euckrfreq.py +0 -596
  307. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/mbcharsetprober.py +0 -86
  308. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/mbcssm.py +0 -575
  309. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/sbcharsetprober.py +0 -120
  310. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/sjisprober.py +0 -91
  311. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/universaldetector.py +0 -170
  312. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/__init__.py +0 -58
  313. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/_collections.py +0 -205
  314. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/connection.py +0 -204
  315. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/contrib/pyopenssl.py +0 -422
  316. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/exceptions.py +0 -126
  317. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/packages/six.py +0 -385
  318. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/poolmanager.py +0 -258
  319. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/response.py +0 -308
  320. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/__init__.py +0 -27
  321. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/connection.py +0 -45
  322. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/request.py +0 -68
  323. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/response.py +0 -13
  324. package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py +0 -133
  325. package/python3.4.2/lib/python3.4/site-packages/pip/backwardcompat/__init__.py +0 -138
  326. package/python3.4.2/lib/python3.4/site-packages/pip/basecommand.py +0 -201
  327. package/python3.4.2/lib/python3.4/site-packages/pip/cmdoptions.py +0 -371
  328. package/python3.4.2/lib/python3.4/site-packages/pip/commands/__init__.py +0 -88
  329. package/python3.4.2/lib/python3.4/site-packages/pip/commands/bundle.py +0 -42
  330. package/python3.4.2/lib/python3.4/site-packages/pip/commands/completion.py +0 -59
  331. package/python3.4.2/lib/python3.4/site-packages/pip/commands/freeze.py +0 -114
  332. package/python3.4.2/lib/python3.4/site-packages/pip/commands/install.py +0 -314
  333. package/python3.4.2/lib/python3.4/site-packages/pip/commands/list.py +0 -162
  334. package/python3.4.2/lib/python3.4/site-packages/pip/commands/search.py +0 -132
  335. package/python3.4.2/lib/python3.4/site-packages/pip/commands/show.py +0 -80
  336. package/python3.4.2/lib/python3.4/site-packages/pip/commands/uninstall.py +0 -59
  337. package/python3.4.2/lib/python3.4/site-packages/pip/commands/unzip.py +0 -7
  338. package/python3.4.2/lib/python3.4/site-packages/pip/commands/wheel.py +0 -195
  339. package/python3.4.2/lib/python3.4/site-packages/pip/commands/zip.py +0 -351
  340. package/python3.4.2/lib/python3.4/site-packages/pip/download.py +0 -644
  341. package/python3.4.2/lib/python3.4/site-packages/pip/exceptions.py +0 -46
  342. package/python3.4.2/lib/python3.4/site-packages/pip/index.py +0 -990
  343. package/python3.4.2/lib/python3.4/site-packages/pip/locations.py +0 -171
  344. package/python3.4.2/lib/python3.4/site-packages/pip/log.py +0 -276
  345. package/python3.4.2/lib/python3.4/site-packages/pip/pep425tags.py +0 -102
  346. package/python3.4.2/lib/python3.4/site-packages/pip/req.py +0 -1931
  347. package/python3.4.2/lib/python3.4/site-packages/pip/runner.py +0 -18
  348. package/python3.4.2/lib/python3.4/site-packages/pip/util.py +0 -720
  349. package/python3.4.2/lib/python3.4/site-packages/pip/vcs/__init__.py +0 -251
  350. package/python3.4.2/lib/python3.4/site-packages/pip/vcs/bazaar.py +0 -131
  351. package/python3.4.2/lib/python3.4/site-packages/pip/vcs/git.py +0 -194
  352. package/python3.4.2/lib/python3.4/site-packages/pip/vcs/mercurial.py +0 -151
  353. package/python3.4.2/lib/python3.4/site-packages/pip/vcs/subversion.py +0 -273
  354. package/python3.4.2/lib/python3.4/site-packages/pip/wheel.py +0 -560
@@ -1,720 +0,0 @@
1
- import sys
2
- import shutil
3
- import os
4
- import stat
5
- import re
6
- import posixpath
7
- import zipfile
8
- import tarfile
9
- import subprocess
10
- import textwrap
11
-
12
- from pip.exceptions import InstallationError, BadCommand, PipError
13
- from pip.backwardcompat import(WindowsError, string_types, raw_input,
14
- console_to_str, user_site, PermissionError)
15
- from pip.locations import site_packages, running_under_virtualenv, virtualenv_no_global
16
- from pip.log import logger
17
- from pip._vendor import pkg_resources
18
- from pip._vendor.distlib import version
19
-
20
- __all__ = ['rmtree', 'display_path', 'backup_dir',
21
- 'find_command', 'ask', 'Inf',
22
- 'normalize_name', 'splitext',
23
- 'format_size', 'is_installable_dir',
24
- 'is_svn_page', 'file_contents',
25
- 'split_leading_dir', 'has_leading_dir',
26
- 'make_path_relative', 'normalize_path',
27
- 'renames', 'get_terminal_size', 'get_prog',
28
- 'unzip_file', 'untar_file', 'create_download_cache_folder',
29
- 'cache_download', 'unpack_file', 'call_subprocess']
30
-
31
-
32
- def get_prog():
33
- try:
34
- if os.path.basename(sys.argv[0]) in ('__main__.py', '-c'):
35
- return "%s -m pip" % sys.executable
36
- except (AttributeError, TypeError, IndexError):
37
- pass
38
- return 'pip'
39
-
40
-
41
- def rmtree(dir, ignore_errors=False):
42
- shutil.rmtree(dir, ignore_errors=ignore_errors,
43
- onerror=rmtree_errorhandler)
44
-
45
-
46
- def rmtree_errorhandler(func, path, exc_info):
47
- """On Windows, the files in .svn are read-only, so when rmtree() tries to
48
- remove them, an exception is thrown. We catch that here, remove the
49
- read-only attribute, and hopefully continue without problems."""
50
- exctype, value = exc_info[:2]
51
- if not ((exctype is WindowsError and value.args[0] == 5) or #others
52
- (exctype is OSError and value.args[0] == 13) or #python2.4
53
- (exctype is PermissionError and value.args[3] == 5) #python3.3
54
- ):
55
- raise
56
- # file type should currently be read only
57
- if ((os.stat(path).st_mode & stat.S_IREAD) != stat.S_IREAD):
58
- raise
59
- # convert to read/write
60
- os.chmod(path, stat.S_IWRITE)
61
- # use the original function to repeat the operation
62
- func(path)
63
-
64
-
65
- def display_path(path):
66
- """Gives the display value for a given path, making it relative to cwd
67
- if possible."""
68
- path = os.path.normcase(os.path.abspath(path))
69
- if path.startswith(os.getcwd() + os.path.sep):
70
- path = '.' + path[len(os.getcwd()):]
71
- return path
72
-
73
-
74
- def backup_dir(dir, ext='.bak'):
75
- """Figure out the name of a directory to back up the given dir to
76
- (adding .bak, .bak2, etc)"""
77
- n = 1
78
- extension = ext
79
- while os.path.exists(dir + extension):
80
- n += 1
81
- extension = ext + str(n)
82
- return dir + extension
83
-
84
-
85
- def find_command(cmd, paths=None, pathext=None):
86
- """Searches the PATH for the given command and returns its path"""
87
- if paths is None:
88
- paths = os.environ.get('PATH', '').split(os.pathsep)
89
- if isinstance(paths, string_types):
90
- paths = [paths]
91
- # check if there are funny path extensions for executables, e.g. Windows
92
- if pathext is None:
93
- pathext = get_pathext()
94
- pathext = [ext for ext in pathext.lower().split(os.pathsep) if len(ext)]
95
- # don't use extensions if the command ends with one of them
96
- if os.path.splitext(cmd)[1].lower() in pathext:
97
- pathext = ['']
98
- # check if we find the command on PATH
99
- for path in paths:
100
- # try without extension first
101
- cmd_path = os.path.join(path, cmd)
102
- for ext in pathext:
103
- # then including the extension
104
- cmd_path_ext = cmd_path + ext
105
- if os.path.isfile(cmd_path_ext):
106
- return cmd_path_ext
107
- if os.path.isfile(cmd_path):
108
- return cmd_path
109
- raise BadCommand('Cannot find command %r' % cmd)
110
-
111
-
112
- def get_pathext(default_pathext=None):
113
- """Returns the path extensions from environment or a default"""
114
- if default_pathext is None:
115
- default_pathext = os.pathsep.join(['.COM', '.EXE', '.BAT', '.CMD'])
116
- pathext = os.environ.get('PATHEXT', default_pathext)
117
- return pathext
118
-
119
-
120
- def ask_path_exists(message, options):
121
- for action in os.environ.get('PIP_EXISTS_ACTION', '').split():
122
- if action in options:
123
- return action
124
- return ask(message, options)
125
-
126
-
127
- def ask(message, options):
128
- """Ask the message interactively, with the given possible responses"""
129
- while 1:
130
- if os.environ.get('PIP_NO_INPUT'):
131
- raise Exception('No input was expected ($PIP_NO_INPUT set); question: %s' % message)
132
- response = raw_input(message)
133
- response = response.strip().lower()
134
- if response not in options:
135
- print('Your response (%r) was not one of the expected responses: %s' % (
136
- response, ', '.join(options)))
137
- else:
138
- return response
139
-
140
-
141
- class _Inf(object):
142
- """I am bigger than everything!"""
143
-
144
- def __eq__(self, other):
145
- if self is other:
146
- return True
147
- else:
148
- return False
149
-
150
- def __ne__(self, other):
151
- return not self.__eq__(other)
152
-
153
- def __lt__(self, other):
154
- return False
155
-
156
- def __le__(self, other):
157
- return False
158
-
159
- def __gt__(self, other):
160
- return True
161
-
162
- def __ge__(self, other):
163
- return True
164
-
165
- def __repr__(self):
166
- return 'Inf'
167
-
168
-
169
- Inf = _Inf() #this object is not currently used as a sortable in our code
170
- del _Inf
171
-
172
-
173
- _normalize_re = re.compile(r'[^a-z]', re.I)
174
-
175
-
176
- def normalize_name(name):
177
- return _normalize_re.sub('-', name.lower())
178
-
179
-
180
- def format_size(bytes):
181
- if bytes > 1000*1000:
182
- return '%.1fMB' % (bytes/1000.0/1000)
183
- elif bytes > 10*1000:
184
- return '%ikB' % (bytes/1000)
185
- elif bytes > 1000:
186
- return '%.1fkB' % (bytes/1000.0)
187
- else:
188
- return '%ibytes' % bytes
189
-
190
-
191
- def is_installable_dir(path):
192
- """Return True if `path` is a directory containing a setup.py file."""
193
- if not os.path.isdir(path):
194
- return False
195
- setup_py = os.path.join(path, 'setup.py')
196
- if os.path.isfile(setup_py):
197
- return True
198
- return False
199
-
200
-
201
- def is_svn_page(html):
202
- """Returns true if the page appears to be the index page of an svn repository"""
203
- return (re.search(r'<title>[^<]*Revision \d+:', html)
204
- and re.search(r'Powered by (?:<a[^>]*?>)?Subversion', html, re.I))
205
-
206
-
207
- def file_contents(filename):
208
- fp = open(filename, 'rb')
209
- try:
210
- return fp.read().decode('utf-8')
211
- finally:
212
- fp.close()
213
-
214
-
215
- def split_leading_dir(path):
216
- path = str(path)
217
- path = path.lstrip('/').lstrip('\\')
218
- if '/' in path and (('\\' in path and path.find('/') < path.find('\\'))
219
- or '\\' not in path):
220
- return path.split('/', 1)
221
- elif '\\' in path:
222
- return path.split('\\', 1)
223
- else:
224
- return path, ''
225
-
226
-
227
- def has_leading_dir(paths):
228
- """Returns true if all the paths have the same leading path name
229
- (i.e., everything is in one subdirectory in an archive)"""
230
- common_prefix = None
231
- for path in paths:
232
- prefix, rest = split_leading_dir(path)
233
- if not prefix:
234
- return False
235
- elif common_prefix is None:
236
- common_prefix = prefix
237
- elif prefix != common_prefix:
238
- return False
239
- return True
240
-
241
-
242
- def make_path_relative(path, rel_to):
243
- """
244
- Make a filename relative, where the filename path, and it is
245
- relative to rel_to
246
-
247
- >>> make_relative_path('/usr/share/something/a-file.pth',
248
- ... '/usr/share/another-place/src/Directory')
249
- '../../../something/a-file.pth'
250
- >>> make_relative_path('/usr/share/something/a-file.pth',
251
- ... '/home/user/src/Directory')
252
- '../../../usr/share/something/a-file.pth'
253
- >>> make_relative_path('/usr/share/a-file.pth', '/usr/share/')
254
- 'a-file.pth'
255
- """
256
- path_filename = os.path.basename(path)
257
- path = os.path.dirname(path)
258
- path = os.path.normpath(os.path.abspath(path))
259
- rel_to = os.path.normpath(os.path.abspath(rel_to))
260
- path_parts = path.strip(os.path.sep).split(os.path.sep)
261
- rel_to_parts = rel_to.strip(os.path.sep).split(os.path.sep)
262
- while path_parts and rel_to_parts and path_parts[0] == rel_to_parts[0]:
263
- path_parts.pop(0)
264
- rel_to_parts.pop(0)
265
- full_parts = ['..']*len(rel_to_parts) + path_parts + [path_filename]
266
- if full_parts == ['']:
267
- return '.' + os.path.sep
268
- return os.path.sep.join(full_parts)
269
-
270
-
271
- def normalize_path(path):
272
- """
273
- Convert a path to its canonical, case-normalized, absolute version.
274
-
275
- """
276
- return os.path.normcase(os.path.realpath(os.path.expanduser(path)))
277
-
278
-
279
- def splitext(path):
280
- """Like os.path.splitext, but take off .tar too"""
281
- base, ext = posixpath.splitext(path)
282
- if base.lower().endswith('.tar'):
283
- ext = base[-4:] + ext
284
- base = base[:-4]
285
- return base, ext
286
-
287
-
288
- def renames(old, new):
289
- """Like os.renames(), but handles renaming across devices."""
290
- # Implementation borrowed from os.renames().
291
- head, tail = os.path.split(new)
292
- if head and tail and not os.path.exists(head):
293
- os.makedirs(head)
294
-
295
- shutil.move(old, new)
296
-
297
- head, tail = os.path.split(old)
298
- if head and tail:
299
- try:
300
- os.removedirs(head)
301
- except OSError:
302
- pass
303
-
304
-
305
- def is_local(path):
306
- """
307
- Return True if path is within sys.prefix, if we're running in a virtualenv.
308
-
309
- If we're not in a virtualenv, all paths are considered "local."
310
-
311
- """
312
- if not running_under_virtualenv():
313
- return True
314
- return normalize_path(path).startswith(normalize_path(sys.prefix))
315
-
316
-
317
- def dist_is_local(dist):
318
- """
319
- Return True if given Distribution object is installed locally
320
- (i.e. within current virtualenv).
321
-
322
- Always True if we're not in a virtualenv.
323
-
324
- """
325
- return is_local(dist_location(dist))
326
-
327
-
328
- def dist_in_usersite(dist):
329
- """
330
- Return True if given Distribution is installed in user site.
331
- """
332
- if user_site:
333
- return normalize_path(dist_location(dist)).startswith(normalize_path(user_site))
334
- else:
335
- return False
336
-
337
- def dist_in_site_packages(dist):
338
- """
339
- Return True if given Distribution is installed in distutils.sysconfig.get_python_lib().
340
- """
341
- return normalize_path(dist_location(dist)).startswith(normalize_path(site_packages))
342
-
343
-
344
- def dist_is_editable(dist):
345
- """Is distribution an editable install?"""
346
- #TODO: factor out determining editableness out of FrozenRequirement
347
- from pip import FrozenRequirement
348
- req = FrozenRequirement.from_dist(dist, [])
349
- return req.editable
350
-
351
- def get_installed_distributions(local_only=True,
352
- skip=('setuptools', 'pip', 'python', 'distribute'),
353
- include_editables=True,
354
- editables_only=False):
355
- """
356
- Return a list of installed Distribution objects.
357
-
358
- If ``local_only`` is True (default), only return installations
359
- local to the current virtualenv, if in a virtualenv.
360
-
361
- ``skip`` argument is an iterable of lower-case project names to
362
- ignore; defaults to ('setuptools', 'pip', 'python'). [FIXME also
363
- skip virtualenv?]
364
-
365
- If ``editables`` is False, don't report editables.
366
-
367
- If ``editables_only`` is True , only report editables.
368
-
369
- """
370
- if local_only:
371
- local_test = dist_is_local
372
- else:
373
- local_test = lambda d: True
374
-
375
- if include_editables:
376
- editable_test = lambda d: True
377
- else:
378
- editable_test = lambda d: not dist_is_editable(d)
379
-
380
- if editables_only:
381
- editables_only_test = lambda d: dist_is_editable(d)
382
- else:
383
- editables_only_test = lambda d: True
384
-
385
- return [d for d in pkg_resources.working_set
386
- if local_test(d)
387
- and d.key not in skip
388
- and editable_test(d)
389
- and editables_only_test(d)
390
- ]
391
-
392
-
393
- def egg_link_path(dist):
394
- """
395
- Return the path for the .egg-link file if it exists, otherwise, None.
396
-
397
- There's 3 scenarios:
398
- 1) not in a virtualenv
399
- try to find in site.USER_SITE, then site_packages
400
- 2) in a no-global virtualenv
401
- try to find in site_packages
402
- 3) in a yes-global virtualenv
403
- try to find in site_packages, then site.USER_SITE (don't look in global location)
404
-
405
- For #1 and #3, there could be odd cases, where there's an egg-link in 2 locations.
406
- This method will just return the first one found.
407
- """
408
- sites = []
409
- if running_under_virtualenv():
410
- if virtualenv_no_global():
411
- sites.append(site_packages)
412
- else:
413
- sites.append(site_packages)
414
- if user_site:
415
- sites.append(user_site)
416
- else:
417
- if user_site:
418
- sites.append(user_site)
419
- sites.append(site_packages)
420
-
421
- for site in sites:
422
- egglink = os.path.join(site, dist.project_name) + '.egg-link'
423
- if os.path.isfile(egglink):
424
- return egglink
425
-
426
-
427
- def dist_location(dist):
428
- """
429
- Get the site-packages location of this distribution. Generally
430
- this is dist.location, except in the case of develop-installed
431
- packages, where dist.location is the source code location, and we
432
- want to know where the egg-link file is.
433
-
434
- """
435
- egg_link = egg_link_path(dist)
436
- if egg_link:
437
- return egg_link
438
- return dist.location
439
-
440
-
441
- def get_terminal_size():
442
- """Returns a tuple (x, y) representing the width(x) and the height(x)
443
- in characters of the terminal window."""
444
- def ioctl_GWINSZ(fd):
445
- try:
446
- import fcntl
447
- import termios
448
- import struct
449
- cr = struct.unpack('hh', fcntl.ioctl(fd, termios.TIOCGWINSZ,
450
- '1234'))
451
- except:
452
- return None
453
- if cr == (0, 0):
454
- return None
455
- if cr == (0, 0):
456
- return None
457
- return cr
458
- cr = ioctl_GWINSZ(0) or ioctl_GWINSZ(1) or ioctl_GWINSZ(2)
459
- if not cr:
460
- try:
461
- fd = os.open(os.ctermid(), os.O_RDONLY)
462
- cr = ioctl_GWINSZ(fd)
463
- os.close(fd)
464
- except:
465
- pass
466
- if not cr:
467
- cr = (os.environ.get('LINES', 25), os.environ.get('COLUMNS', 80))
468
- return int(cr[1]), int(cr[0])
469
-
470
-
471
- def current_umask():
472
- """Get the current umask which involves having to set it temporarily."""
473
- mask = os.umask(0)
474
- os.umask(mask)
475
- return mask
476
-
477
-
478
- def unzip_file(filename, location, flatten=True):
479
- """
480
- Unzip the file (with path `filename`) to the destination `location`. All
481
- files are written based on system defaults and umask (i.e. permissions are
482
- not preserved), except that regular file members with any execute
483
- permissions (user, group, or world) have "chmod +x" applied after being
484
- written. Note that for windows, any execute changes using os.chmod are
485
- no-ops per the python docs.
486
- """
487
- if not os.path.exists(location):
488
- os.makedirs(location)
489
- zipfp = open(filename, 'rb')
490
- try:
491
- zip = zipfile.ZipFile(zipfp)
492
- leading = has_leading_dir(zip.namelist()) and flatten
493
- for info in zip.infolist():
494
- name = info.filename
495
- data = zip.read(name)
496
- fn = name
497
- if leading:
498
- fn = split_leading_dir(name)[1]
499
- fn = os.path.join(location, fn)
500
- dir = os.path.dirname(fn)
501
- if not os.path.exists(dir):
502
- os.makedirs(dir)
503
- if fn.endswith('/') or fn.endswith('\\'):
504
- # A directory
505
- if not os.path.exists(fn):
506
- os.makedirs(fn)
507
- else:
508
- fp = open(fn, 'wb')
509
- try:
510
- fp.write(data)
511
- finally:
512
- fp.close()
513
- mode = info.external_attr >> 16
514
- # if mode and regular file and any execute permissions for user/group/world?
515
- if mode and stat.S_ISREG(mode) and mode & 0o111:
516
- # make dest file have execute for user/group/world (chmod +x)
517
- # no-op on windows per python docs
518
- os.chmod(fn, (0o777-current_umask() | 0o111))
519
- finally:
520
- zipfp.close()
521
-
522
-
523
- def untar_file(filename, location):
524
- """
525
- Untar the file (with path `filename`) to the destination `location`.
526
- All files are written based on system defaults and umask (i.e. permissions
527
- are not preserved), except that regular file members with any execute
528
- permissions (user, group, or world) have "chmod +x" applied after being
529
- written. Note that for windows, any execute changes using os.chmod are
530
- no-ops per the python docs.
531
- """
532
- if not os.path.exists(location):
533
- os.makedirs(location)
534
- if filename.lower().endswith('.gz') or filename.lower().endswith('.tgz'):
535
- mode = 'r:gz'
536
- elif filename.lower().endswith('.bz2') or filename.lower().endswith('.tbz'):
537
- mode = 'r:bz2'
538
- elif filename.lower().endswith('.tar'):
539
- mode = 'r'
540
- else:
541
- logger.warn('Cannot determine compression type for file %s' % filename)
542
- mode = 'r:*'
543
- tar = tarfile.open(filename, mode)
544
- try:
545
- # note: python<=2.5 doesnt seem to know about pax headers, filter them
546
- leading = has_leading_dir([
547
- member.name for member in tar.getmembers()
548
- if member.name != 'pax_global_header'
549
- ])
550
- for member in tar.getmembers():
551
- fn = member.name
552
- if fn == 'pax_global_header':
553
- continue
554
- if leading:
555
- fn = split_leading_dir(fn)[1]
556
- path = os.path.join(location, fn)
557
- if member.isdir():
558
- if not os.path.exists(path):
559
- os.makedirs(path)
560
- elif member.issym():
561
- try:
562
- tar._extract_member(member, path)
563
- except:
564
- e = sys.exc_info()[1]
565
- # Some corrupt tar files seem to produce this
566
- # (specifically bad symlinks)
567
- logger.warn(
568
- 'In the tar file %s the member %s is invalid: %s'
569
- % (filename, member.name, e))
570
- continue
571
- else:
572
- try:
573
- fp = tar.extractfile(member)
574
- except (KeyError, AttributeError):
575
- e = sys.exc_info()[1]
576
- # Some corrupt tar files seem to produce this
577
- # (specifically bad symlinks)
578
- logger.warn(
579
- 'In the tar file %s the member %s is invalid: %s'
580
- % (filename, member.name, e))
581
- continue
582
- if not os.path.exists(os.path.dirname(path)):
583
- os.makedirs(os.path.dirname(path))
584
- destfp = open(path, 'wb')
585
- try:
586
- shutil.copyfileobj(fp, destfp)
587
- finally:
588
- destfp.close()
589
- fp.close()
590
- # member have any execute permissions for user/group/world?
591
- if member.mode & 0o111:
592
- # make dest file have execute for user/group/world
593
- # no-op on windows per python docs
594
- os.chmod(path, (0o777-current_umask() | 0o111))
595
- finally:
596
- tar.close()
597
-
598
-
599
- def create_download_cache_folder(folder):
600
- logger.indent -= 2
601
- logger.notify('Creating supposed download cache at %s' % folder)
602
- logger.indent += 2
603
- os.makedirs(folder)
604
-
605
-
606
- def cache_download(target_file, temp_location, content_type):
607
- logger.notify('Storing download in cache at %s' % display_path(target_file))
608
- shutil.copyfile(temp_location, target_file)
609
- fp = open(target_file+'.content-type', 'w')
610
- fp.write(content_type)
611
- fp.close()
612
-
613
-
614
- def unpack_file(filename, location, content_type, link):
615
- filename = os.path.realpath(filename)
616
- if (content_type == 'application/zip'
617
- or filename.endswith('.zip')
618
- or filename.endswith('.pybundle')
619
- or filename.endswith('.whl')
620
- or zipfile.is_zipfile(filename)):
621
- unzip_file(filename, location, flatten=not filename.endswith(('.pybundle', '.whl')))
622
- elif (content_type == 'application/x-gzip'
623
- or tarfile.is_tarfile(filename)
624
- or splitext(filename)[1].lower() in ('.tar', '.tar.gz', '.tar.bz2', '.tgz', '.tbz')):
625
- untar_file(filename, location)
626
- elif (content_type and content_type.startswith('text/html')
627
- and is_svn_page(file_contents(filename))):
628
- # We don't really care about this
629
- from pip.vcs.subversion import Subversion
630
- Subversion('svn+' + link.url).unpack(location)
631
- else:
632
- ## FIXME: handle?
633
- ## FIXME: magic signatures?
634
- logger.fatal('Cannot unpack file %s (downloaded from %s, content-type: %s); cannot detect archive format'
635
- % (filename, location, content_type))
636
- raise InstallationError('Cannot determine archive format of %s' % location)
637
-
638
-
639
- def call_subprocess(cmd, show_stdout=True,
640
- filter_stdout=None, cwd=None,
641
- raise_on_returncode=True,
642
- command_level=logger.DEBUG, command_desc=None,
643
- extra_environ=None):
644
- if command_desc is None:
645
- cmd_parts = []
646
- for part in cmd:
647
- if ' ' in part or '\n' in part or '"' in part or "'" in part:
648
- part = '"%s"' % part.replace('"', '\\"')
649
- cmd_parts.append(part)
650
- command_desc = ' '.join(cmd_parts)
651
- if show_stdout:
652
- stdout = None
653
- else:
654
- stdout = subprocess.PIPE
655
- logger.log(command_level, "Running command %s" % command_desc)
656
- env = os.environ.copy()
657
- if extra_environ:
658
- env.update(extra_environ)
659
- try:
660
- proc = subprocess.Popen(
661
- cmd, stderr=subprocess.STDOUT, stdin=None, stdout=stdout,
662
- cwd=cwd, env=env)
663
- except Exception:
664
- e = sys.exc_info()[1]
665
- logger.fatal(
666
- "Error %s while executing command %s" % (e, command_desc))
667
- raise
668
- all_output = []
669
- if stdout is not None:
670
- stdout = proc.stdout
671
- while 1:
672
- line = console_to_str(stdout.readline())
673
- if not line:
674
- break
675
- line = line.rstrip()
676
- all_output.append(line + '\n')
677
- if filter_stdout:
678
- level = filter_stdout(line)
679
- if isinstance(level, tuple):
680
- level, line = level
681
- logger.log(level, line)
682
- if not logger.stdout_level_matches(level):
683
- logger.show_progress()
684
- else:
685
- logger.info(line)
686
- else:
687
- returned_stdout, returned_stderr = proc.communicate()
688
- all_output = [returned_stdout or '']
689
- proc.wait()
690
- if proc.returncode:
691
- if raise_on_returncode:
692
- if all_output:
693
- logger.notify('Complete output from command %s:' % command_desc)
694
- logger.notify('\n'.join(all_output) + '\n----------------------------------------')
695
- raise InstallationError(
696
- "Command %s failed with error code %s in %s"
697
- % (command_desc, proc.returncode, cwd))
698
- else:
699
- logger.warn(
700
- "Command %s had error code %s in %s"
701
- % (command_desc, proc.returncode, cwd))
702
- if stdout is not None:
703
- return ''.join(all_output)
704
-
705
-
706
- def is_prerelease(vers):
707
- """
708
- Attempt to determine if this is a pre-release using PEP386/PEP426 rules.
709
-
710
- Will return True if it is a pre-release and False if not. Versions are
711
- assumed to be a pre-release if they cannot be parsed.
712
- """
713
- normalized = version._suggest_normalized_version(vers)
714
-
715
- if normalized is None:
716
- # Cannot normalize, assume it is a pre-release
717
- return True
718
-
719
- parsed = version._normalized_key(normalized)
720
- return any([any([y in set(["a", "b", "c", "rc", "dev"]) for y in x]) for x in parsed])