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,224 +1,240 @@
1
- """Base option parser setup"""
2
-
3
- import sys
4
- import optparse
5
- import os
6
- import textwrap
7
- from distutils.util import strtobool
8
-
9
- from pip.backwardcompat import ConfigParser, string_types
10
- from pip.locations import default_config_file
11
- from pip.util import get_terminal_size, get_prog
12
- from pip._vendor import pkg_resources
13
-
14
-
15
- class PrettyHelpFormatter(optparse.IndentedHelpFormatter):
16
- """A prettier/less verbose help formatter for optparse."""
17
-
18
- def __init__(self, *args, **kwargs):
19
- # help position must be aligned with __init__.parseopts.description
20
- kwargs['max_help_position'] = 30
21
- kwargs['indent_increment'] = 1
22
- kwargs['width'] = get_terminal_size()[0] - 2
23
- optparse.IndentedHelpFormatter.__init__(self, *args, **kwargs)
24
-
25
- def format_option_strings(self, option):
26
- return self._format_option_strings(option, ' <%s>', ', ')
27
-
28
- def _format_option_strings(self, option, mvarfmt=' <%s>', optsep=', '):
29
- """
30
- Return a comma-separated list of option strings and metavars.
31
-
32
- :param option: tuple of (short opt, long opt), e.g: ('-f', '--format')
33
- :param mvarfmt: metavar format string - evaluated as mvarfmt % metavar
34
- :param optsep: separator
35
- """
36
- opts = []
37
-
38
- if option._short_opts:
39
- opts.append(option._short_opts[0])
40
- if option._long_opts:
41
- opts.append(option._long_opts[0])
42
- if len(opts) > 1:
43
- opts.insert(1, optsep)
44
-
45
- if option.takes_value():
46
- metavar = option.metavar or option.dest.lower()
47
- opts.append(mvarfmt % metavar.lower())
48
-
49
- return ''.join(opts)
50
-
51
- def format_heading(self, heading):
52
- if heading == 'Options':
53
- return ''
54
- return heading + ':\n'
55
-
56
- def format_usage(self, usage):
57
- """
58
- Ensure there is only one newline between usage and the first heading
59
- if there is no description.
60
- """
61
- msg = '\nUsage: %s\n' % self.indent_lines(textwrap.dedent(usage), " ")
62
- return msg
63
-
64
- def format_description(self, description):
65
- # leave full control over description to us
66
- if description:
67
- if hasattr(self.parser, 'main'):
68
- label = 'Commands'
69
- else:
70
- label = 'Description'
71
- #some doc strings have inital newlines, some don't
72
- description = description.lstrip('\n')
73
- #some doc strings have final newlines and spaces, some don't
74
- description = description.rstrip()
75
- #dedent, then reindent
76
- description = self.indent_lines(textwrap.dedent(description), " ")
77
- description = '%s:\n%s\n' % (label, description)
78
- return description
79
- else:
80
- return ''
81
-
82
- def format_epilog(self, epilog):
83
- # leave full control over epilog to us
84
- if epilog:
85
- return epilog
86
- else:
87
- return ''
88
-
89
- def indent_lines(self, text, indent):
90
- new_lines = [indent + line for line in text.split('\n')]
91
- return "\n".join(new_lines)
92
-
93
-
94
- class UpdatingDefaultsHelpFormatter(PrettyHelpFormatter):
95
- """Custom help formatter for use in ConfigOptionParser that updates
96
- the defaults before expanding them, allowing them to show up correctly
97
- in the help listing"""
98
-
99
- def expand_default(self, option):
100
- if self.parser is not None:
101
- self.parser.update_defaults(self.parser.defaults)
102
- return optparse.IndentedHelpFormatter.expand_default(self, option)
103
-
104
-
105
- class CustomOptionParser(optparse.OptionParser):
106
- def insert_option_group(self, idx, *args, **kwargs):
107
- """Insert an OptionGroup at a given position."""
108
- group = self.add_option_group(*args, **kwargs)
109
-
110
- self.option_groups.pop()
111
- self.option_groups.insert(idx, group)
112
-
113
- return group
114
-
115
- @property
116
- def option_list_all(self):
117
- """Get a list of all options, including those in option groups."""
118
- res = self.option_list[:]
119
- for i in self.option_groups:
120
- res.extend(i.option_list)
121
-
122
- return res
123
-
124
-
125
- class ConfigOptionParser(CustomOptionParser):
126
- """Custom option parser which updates its defaults by checking the
127
- configuration files and environmental variables"""
128
-
129
- def __init__(self, *args, **kwargs):
130
- self.config = ConfigParser.RawConfigParser()
131
- self.name = kwargs.pop('name')
132
- self.files = self.get_config_files()
133
- if self.files:
134
- self.config.read(self.files)
135
- assert self.name
136
- optparse.OptionParser.__init__(self, *args, **kwargs)
137
-
138
- def get_config_files(self):
139
- config_file = os.environ.get('PIP_CONFIG_FILE', False)
140
- if config_file == os.devnull:
141
- return []
142
- if config_file and os.path.exists(config_file):
143
- return [config_file]
144
- return [default_config_file]
145
-
146
- def check_default(self, option, key, val):
147
- try:
148
- return option.check_value(key, val)
149
- except optparse.OptionValueError:
150
- e = sys.exc_info()[1]
151
- print("An error occurred during configuration: %s" % e)
152
- sys.exit(3)
153
-
154
- def update_defaults(self, defaults):
155
- """Updates the given defaults with values from the config files and
156
- the environ. Does a little special handling for certain types of
157
- options (lists)."""
158
- # Then go and look for the other sources of configuration:
159
- config = {}
160
- # 1. config files
161
- for section in ('global', self.name):
162
- config.update(self.normalize_keys(self.get_config_section(section)))
163
- # 2. environmental variables
164
- config.update(self.normalize_keys(self.get_environ_vars()))
165
- # Then set the options with those values
166
- for key, val in config.items():
167
- option = self.get_option(key)
168
- if option is not None:
169
- # ignore empty values
170
- if not val:
171
- continue
172
- if option.action in ('store_true', 'store_false', 'count'):
173
- val = strtobool(val)
174
- if option.action == 'append':
175
- val = val.split()
176
- val = [self.check_default(option, key, v) for v in val]
177
- else:
178
- val = self.check_default(option, key, val)
179
-
180
- defaults[option.dest] = val
181
- return defaults
182
-
183
- def normalize_keys(self, items):
184
- """Return a config dictionary with normalized keys regardless of
185
- whether the keys were specified in environment variables or in config
186
- files"""
187
- normalized = {}
188
- for key, val in items:
189
- key = key.replace('_', '-')
190
- if not key.startswith('--'):
191
- key = '--%s' % key # only prefer long opts
192
- normalized[key] = val
193
- return normalized
194
-
195
- def get_config_section(self, name):
196
- """Get a section of a configuration"""
197
- if self.config.has_section(name):
198
- return self.config.items(name)
199
- return []
200
-
201
- def get_environ_vars(self, prefix='PIP_'):
202
- """Returns a generator with all environmental vars with prefix PIP_"""
203
- for key, val in os.environ.items():
204
- if key.startswith(prefix):
205
- yield (key.replace(prefix, '').lower(), val)
206
-
207
- def get_default_values(self):
208
- """Overridding to make updating the defaults after instantiation of
209
- the option parser possible, update_defaults() does the dirty work."""
210
- if not self.process_default_values:
211
- # Old, pre-Optik 1.5 behaviour.
212
- return optparse.Values(self.defaults)
213
-
214
- defaults = self.update_defaults(self.defaults.copy()) # ours
215
- for option in self._get_all_options():
216
- default = defaults.get(option.dest)
217
- if isinstance(default, string_types):
218
- opt_str = option.get_opt_string()
219
- defaults[option.dest] = option.check_value(opt_str, default)
220
- return optparse.Values(defaults)
221
-
222
- def error(self, msg):
223
- self.print_usage(sys.stderr)
224
- self.exit(2, "%s\n" % msg)
1
+ """Base option parser setup"""
2
+ from __future__ import absolute_import
3
+
4
+ import logging
5
+ import optparse
6
+ import sys
7
+ import textwrap
8
+ from distutils.util import strtobool
9
+
10
+ from pip._vendor.six import string_types
11
+
12
+ from pip._internal.compat import get_terminal_size
13
+ from pip._internal.configuration import Configuration, ConfigurationError
14
+
15
+ logger = logging.getLogger(__name__)
16
+
17
+
18
+ class PrettyHelpFormatter(optparse.IndentedHelpFormatter):
19
+ """A prettier/less verbose help formatter for optparse."""
20
+
21
+ def __init__(self, *args, **kwargs):
22
+ # help position must be aligned with __init__.parseopts.description
23
+ kwargs['max_help_position'] = 30
24
+ kwargs['indent_increment'] = 1
25
+ kwargs['width'] = get_terminal_size()[0] - 2
26
+ optparse.IndentedHelpFormatter.__init__(self, *args, **kwargs)
27
+
28
+ def format_option_strings(self, option):
29
+ return self._format_option_strings(option, ' <%s>', ', ')
30
+
31
+ def _format_option_strings(self, option, mvarfmt=' <%s>', optsep=', '):
32
+ """
33
+ Return a comma-separated list of option strings and metavars.
34
+
35
+ :param option: tuple of (short opt, long opt), e.g: ('-f', '--format')
36
+ :param mvarfmt: metavar format string - evaluated as mvarfmt % metavar
37
+ :param optsep: separator
38
+ """
39
+ opts = []
40
+
41
+ if option._short_opts:
42
+ opts.append(option._short_opts[0])
43
+ if option._long_opts:
44
+ opts.append(option._long_opts[0])
45
+ if len(opts) > 1:
46
+ opts.insert(1, optsep)
47
+
48
+ if option.takes_value():
49
+ metavar = option.metavar or option.dest.lower()
50
+ opts.append(mvarfmt % metavar.lower())
51
+
52
+ return ''.join(opts)
53
+
54
+ def format_heading(self, heading):
55
+ if heading == 'Options':
56
+ return ''
57
+ return heading + ':\n'
58
+
59
+ def format_usage(self, usage):
60
+ """
61
+ Ensure there is only one newline between usage and the first heading
62
+ if there is no description.
63
+ """
64
+ msg = '\nUsage: %s\n' % self.indent_lines(textwrap.dedent(usage), " ")
65
+ return msg
66
+
67
+ def format_description(self, description):
68
+ # leave full control over description to us
69
+ if description:
70
+ if hasattr(self.parser, 'main'):
71
+ label = 'Commands'
72
+ else:
73
+ label = 'Description'
74
+ # some doc strings have initial newlines, some don't
75
+ description = description.lstrip('\n')
76
+ # some doc strings have final newlines and spaces, some don't
77
+ description = description.rstrip()
78
+ # dedent, then reindent
79
+ description = self.indent_lines(textwrap.dedent(description), " ")
80
+ description = '%s:\n%s\n' % (label, description)
81
+ return description
82
+ else:
83
+ return ''
84
+
85
+ def format_epilog(self, epilog):
86
+ # leave full control over epilog to us
87
+ if epilog:
88
+ return epilog
89
+ else:
90
+ return ''
91
+
92
+ def indent_lines(self, text, indent):
93
+ new_lines = [indent + line for line in text.split('\n')]
94
+ return "\n".join(new_lines)
95
+
96
+
97
+ class UpdatingDefaultsHelpFormatter(PrettyHelpFormatter):
98
+ """Custom help formatter for use in ConfigOptionParser.
99
+
100
+ This is updates the defaults before expanding them, allowing
101
+ them to show up correctly in the help listing.
102
+ """
103
+
104
+ def expand_default(self, option):
105
+ if self.parser is not None:
106
+ self.parser._update_defaults(self.parser.defaults)
107
+ return optparse.IndentedHelpFormatter.expand_default(self, option)
108
+
109
+
110
+ class CustomOptionParser(optparse.OptionParser):
111
+
112
+ def insert_option_group(self, idx, *args, **kwargs):
113
+ """Insert an OptionGroup at a given position."""
114
+ group = self.add_option_group(*args, **kwargs)
115
+
116
+ self.option_groups.pop()
117
+ self.option_groups.insert(idx, group)
118
+
119
+ return group
120
+
121
+ @property
122
+ def option_list_all(self):
123
+ """Get a list of all options, including those in option groups."""
124
+ res = self.option_list[:]
125
+ for i in self.option_groups:
126
+ res.extend(i.option_list)
127
+
128
+ return res
129
+
130
+
131
+ class ConfigOptionParser(CustomOptionParser):
132
+ """Custom option parser which updates its defaults by checking the
133
+ configuration files and environmental variables"""
134
+
135
+ def __init__(self, *args, **kwargs):
136
+ self.name = kwargs.pop('name')
137
+
138
+ isolated = kwargs.pop("isolated", False)
139
+ self.config = Configuration(isolated)
140
+
141
+ assert self.name
142
+ optparse.OptionParser.__init__(self, *args, **kwargs)
143
+
144
+ def check_default(self, option, key, val):
145
+ try:
146
+ return option.check_value(key, val)
147
+ except optparse.OptionValueError as exc:
148
+ print("An error occurred during configuration: %s" % exc)
149
+ sys.exit(3)
150
+
151
+ def _get_ordered_configuration_items(self):
152
+ # Configuration gives keys in an unordered manner. Order them.
153
+ override_order = ["global", self.name, ":env:"]
154
+
155
+ # Pool the options into different groups
156
+ section_items = {name: [] for name in override_order}
157
+ for section_key, val in self.config.items():
158
+ # ignore empty values
159
+ if not val:
160
+ logger.debug(
161
+ "Ignoring configuration key '%s' as it's value is empty.",
162
+ section_key
163
+ )
164
+ continue
165
+
166
+ section, key = section_key.split(".", 1)
167
+ if section in override_order:
168
+ section_items[section].append((key, val))
169
+
170
+ # Yield each group in their override order
171
+ for section in override_order:
172
+ for key, val in section_items[section]:
173
+ yield key, val
174
+
175
+ def _update_defaults(self, defaults):
176
+ """Updates the given defaults with values from the config files and
177
+ the environ. Does a little special handling for certain types of
178
+ options (lists)."""
179
+
180
+ # Accumulate complex default state.
181
+ self.values = optparse.Values(self.defaults)
182
+ late_eval = set()
183
+ # Then set the options with those values
184
+ for key, val in self._get_ordered_configuration_items():
185
+ # '--' because configuration supports only long names
186
+ option = self.get_option('--' + key)
187
+
188
+ # Ignore options not present in this parser. E.g. non-globals put
189
+ # in [global] by users that want them to apply to all applicable
190
+ # commands.
191
+ if option is None:
192
+ continue
193
+
194
+ if option.action in ('store_true', 'store_false', 'count'):
195
+ val = strtobool(val)
196
+ elif option.action == 'append':
197
+ val = val.split()
198
+ val = [self.check_default(option, key, v) for v in val]
199
+ elif option.action == 'callback':
200
+ late_eval.add(option.dest)
201
+ opt_str = option.get_opt_string()
202
+ val = option.convert_value(opt_str, val)
203
+ # From take_action
204
+ args = option.callback_args or ()
205
+ kwargs = option.callback_kwargs or {}
206
+ option.callback(option, opt_str, val, self, *args, **kwargs)
207
+ else:
208
+ val = self.check_default(option, key, val)
209
+
210
+ defaults[option.dest] = val
211
+
212
+ for key in late_eval:
213
+ defaults[key] = getattr(self.values, key)
214
+ self.values = None
215
+ return defaults
216
+
217
+ def get_default_values(self):
218
+ """Overriding to make updating the defaults after instantiation of
219
+ the option parser possible, _update_defaults() does the dirty work."""
220
+ if not self.process_default_values:
221
+ # Old, pre-Optik 1.5 behaviour.
222
+ return optparse.Values(self.defaults)
223
+
224
+ # Load the configuration, or error out in case of an error
225
+ try:
226
+ self.config.load()
227
+ except ConfigurationError as err:
228
+ self.exit(2, err.args[0])
229
+
230
+ defaults = self._update_defaults(self.defaults.copy()) # ours
231
+ for option in self._get_all_options():
232
+ default = defaults.get(option.dest)
233
+ if isinstance(default, string_types):
234
+ opt_str = option.get_opt_string()
235
+ defaults[option.dest] = option.check_value(opt_str, default)
236
+ return optparse.Values(defaults)
237
+
238
+ def error(self, msg):
239
+ self.print_usage(sys.stderr)
240
+ self.exit(2, "%s\n" % msg)
@@ -0,0 +1,92 @@
1
+ """Build Environment used for isolation during sdist building
2
+ """
3
+
4
+ import os
5
+ from distutils.sysconfig import get_python_lib
6
+ from sysconfig import get_paths
7
+
8
+ from pip._internal.utils.temp_dir import TempDirectory
9
+
10
+
11
+ class BuildEnvironment(object):
12
+ """Creates and manages an isolated environment to install build deps
13
+ """
14
+
15
+ def __init__(self, no_clean):
16
+ self._temp_dir = TempDirectory(kind="build-env")
17
+ self._no_clean = no_clean
18
+
19
+ @property
20
+ def path(self):
21
+ return self._temp_dir.path
22
+
23
+ def __enter__(self):
24
+ self._temp_dir.create()
25
+
26
+ self.save_path = os.environ.get('PATH', None)
27
+ self.save_pythonpath = os.environ.get('PYTHONPATH', None)
28
+ self.save_nousersite = os.environ.get('PYTHONNOUSERSITE', None)
29
+
30
+ install_scheme = 'nt' if (os.name == 'nt') else 'posix_prefix'
31
+ install_dirs = get_paths(install_scheme, vars={
32
+ 'base': self.path,
33
+ 'platbase': self.path,
34
+ })
35
+
36
+ scripts = install_dirs['scripts']
37
+ if self.save_path:
38
+ os.environ['PATH'] = scripts + os.pathsep + self.save_path
39
+ else:
40
+ os.environ['PATH'] = scripts + os.pathsep + os.defpath
41
+
42
+ # Note: prefer distutils' sysconfig to get the
43
+ # library paths so PyPy is correctly supported.
44
+ purelib = get_python_lib(plat_specific=0, prefix=self.path)
45
+ platlib = get_python_lib(plat_specific=1, prefix=self.path)
46
+ if purelib == platlib:
47
+ lib_dirs = purelib
48
+ else:
49
+ lib_dirs = purelib + os.pathsep + platlib
50
+ if self.save_pythonpath:
51
+ os.environ['PYTHONPATH'] = lib_dirs + os.pathsep + \
52
+ self.save_pythonpath
53
+ else:
54
+ os.environ['PYTHONPATH'] = lib_dirs
55
+
56
+ os.environ['PYTHONNOUSERSITE'] = '1'
57
+
58
+ return self.path
59
+
60
+ def __exit__(self, exc_type, exc_val, exc_tb):
61
+ if not self._no_clean:
62
+ self._temp_dir.cleanup()
63
+
64
+ def restore_var(varname, old_value):
65
+ if old_value is None:
66
+ os.environ.pop(varname, None)
67
+ else:
68
+ os.environ[varname] = old_value
69
+
70
+ restore_var('PATH', self.save_path)
71
+ restore_var('PYTHONPATH', self.save_pythonpath)
72
+ restore_var('PYTHONNOUSERSITE', self.save_nousersite)
73
+
74
+ def cleanup(self):
75
+ self._temp_dir.cleanup()
76
+
77
+
78
+ class NoOpBuildEnvironment(BuildEnvironment):
79
+ """A no-op drop-in replacement for BuildEnvironment
80
+ """
81
+
82
+ def __init__(self, no_clean):
83
+ pass
84
+
85
+ def __enter__(self):
86
+ pass
87
+
88
+ def __exit__(self, exc_type, exc_val, exc_tb):
89
+ pass
90
+
91
+ def cleanup(self):
92
+ pass