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.
- package/package.json +4 -2
- package/python3.4.2/lib/python3.4/site-packages/pip/__init__.py +1 -277
- package/python3.4.2/lib/python3.4/site-packages/pip/__main__.py +19 -7
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/__init__.py +246 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/basecommand.py +373 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/{baseparser.py → _internal/baseparser.py} +240 -224
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/build_env.py +92 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/cache.py +202 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/cmdoptions.py +609 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/commands/__init__.py +79 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/commands/check.py +42 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/commands/completion.py +94 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/commands/configuration.py +227 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/commands/download.py +233 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/commands/freeze.py +96 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/commands/hash.py +57 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/{commands → _internal/commands}/help.py +36 -33
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/commands/install.py +477 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/commands/list.py +343 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/commands/search.py +135 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/commands/show.py +164 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/commands/uninstall.py +71 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/commands/wheel.py +179 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/compat.py +235 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/configuration.py +378 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/download.py +922 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/exceptions.py +249 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/index.py +1117 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/locations.py +194 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/models/__init__.py +4 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/models/index.py +15 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/{_vendor/requests/packages/urllib3/contrib → _internal/operations}/__init__.py +0 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/operations/check.py +106 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/operations/freeze.py +252 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/operations/prepare.py +378 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/pep425tags.py +317 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/req/__init__.py +69 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/req/req_file.py +338 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/req/req_install.py +1115 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/req/req_set.py +164 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/req/req_uninstall.py +455 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/resolve.py +354 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/{status_codes.py → _internal/status_codes.py} +8 -6
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/__init__.py +0 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/appdirs.py +258 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/deprecation.py +77 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/encoding.py +33 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/filesystem.py +28 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/glibc.py +84 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/hashes.py +94 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/logging.py +132 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/misc.py +851 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/outdated.py +163 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/packaging.py +70 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/setuptools_build.py +8 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/temp_dir.py +82 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/typing.py +29 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/utils/ui.py +421 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/vcs/__init__.py +471 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/vcs/bazaar.py +113 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/vcs/git.py +311 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/vcs/mercurial.py +105 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/vcs/subversion.py +271 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_internal/wheel.py +817 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/__init__.py +109 -8
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/appdirs.py +604 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/cachecontrol/__init__.py +11 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/cachecontrol/_cmd.py +60 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/cachecontrol/adapter.py +134 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/cachecontrol/cache.py +39 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/cachecontrol/caches/__init__.py +2 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py +133 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py +43 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/cachecontrol/compat.py +29 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/cachecontrol/controller.py +373 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/cachecontrol/filewrapper.py +78 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/cachecontrol/heuristics.py +138 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/cachecontrol/serialize.py +194 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/cachecontrol/wrapper.py +27 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/certifi/__init__.py +3 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/certifi/__main__.py +2 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests → certifi}/cacert.pem +1765 -2358
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/certifi/core.py +37 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/__init__.py +39 -32
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/big5freq.py +386 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/big5prober.py +47 -42
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/chardistribution.py +233 -231
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/charsetgroupprober.py +106 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/charsetprober.py +145 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/cli/__init__.py +1 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/cli/chardetect.py +85 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/codingstatemachine.py +88 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/compat.py +34 -34
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/cp949prober.py +49 -44
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/enums.py +76 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/escprober.py +101 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/escsm.py +246 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/eucjpprober.py +92 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/euckrfreq.py +195 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/euckrprober.py +47 -42
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/euctwfreq.py +387 -428
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/euctwprober.py +46 -41
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/gb2312freq.py +283 -472
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/gb2312prober.py +46 -41
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/hebrewprober.py +292 -283
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/jisfreq.py +325 -569
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/jpcntx.py +233 -219
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/langbulgarianmodel.py +228 -229
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/langcyrillicmodel.py +333 -329
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/langgreekmodel.py +225 -225
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/langhebrewmodel.py +200 -201
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/langhungarianmodel.py +225 -225
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/langthaimodel.py +199 -200
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/langturkishmodel.py +193 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/latin1prober.py +145 -139
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/mbcharsetprober.py +91 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/mbcsgroupprober.py +54 -54
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/mbcssm.py +572 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/sbcharsetprober.py +132 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/sbcsgroupprober.py +73 -69
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/sjisprober.py +92 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/universaldetector.py +286 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/chardet → chardet}/utf8prober.py +82 -76
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/chardet/version.py +9 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/colorama/__init__.py +7 -7
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/colorama/ansi.py +102 -50
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/colorama/ansitowin32.py +236 -190
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/colorama/initialise.py +82 -56
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/colorama/win32.py +156 -137
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/colorama/winterm.py +162 -120
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/__init__.py +23 -23
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/__init__.py +6 -6
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/misc.py +41 -41
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/shutil.py +761 -761
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/sysconfig.cfg +84 -84
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/sysconfig.py +788 -788
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/_backport/tarfile.py +2607 -2607
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/compat.py +1117 -1064
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/database.py +1318 -1301
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/index.py +516 -488
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/locators.py +1292 -1194
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/manifest.py +393 -364
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/markers.py +131 -190
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/metadata.py +1068 -1026
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/resources.py +355 -317
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/scripts.py +415 -323
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/t32.exe +0 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/t64.exe +0 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/util.py +1755 -1575
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/version.py +736 -721
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/w32.exe +0 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/w64.exe +0 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distlib/wheel.py +984 -958
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/distro.py +1104 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/__init__.py +35 -23
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/{ihatexml.py → _ihatexml.py} +288 -285
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/{inputstream.py → _inputstream.py} +923 -881
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/{tokenizer.py → _tokenizer.py} +1721 -1731
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/{trie → _trie}/__init__.py +14 -12
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/{trie → _trie}/_base.py +37 -37
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/{trie → _trie}/datrie.py +44 -44
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/{trie → _trie}/py.py +67 -67
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/{utils.py → _utils.py} +124 -82
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/constants.py +2947 -3104
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/alphabeticalattributes.py +29 -20
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/{_base.py → base.py} +12 -12
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/inject_meta_charset.py +73 -65
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/lint.py +93 -93
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/optionaltags.py +207 -205
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/sanitizer.py +896 -12
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/filters/whitespace.py +38 -38
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/html5parser.py +2791 -2713
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/serializer.py +409 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treeadapters/__init__.py +30 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treeadapters/genshi.py +54 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treeadapters/sax.py +50 -44
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/__init__.py +88 -76
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/{_base.py → base.py} +417 -377
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/dom.py +236 -227
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/etree.py +340 -337
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treebuilders/etree_lxml.py +366 -369
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/__init__.py +154 -57
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/{_base.py → base.py} +252 -200
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/dom.py +43 -46
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/etree.py +130 -138
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/{lxmletree.py → etree_lxml.py} +213 -208
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/{genshistream.py → genshi.py} +69 -69
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/idna/__init__.py +2 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/idna/codec.py +118 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/idna/compat.py +12 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/idna/core.py +387 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/idna/idnadata.py +1585 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/idna/intranges.py +53 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/idna/package_data.py +2 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/idna/uts46data.py +7634 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/ipaddress.py +2419 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/lockfile/__init__.py +347 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/lockfile/linklockfile.py +73 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/lockfile/mkdirlockfile.py +84 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/lockfile/pidlockfile.py +190 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/lockfile/sqlitelockfile.py +156 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/lockfile/symlinklockfile.py +70 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/msgpack/__init__.py +66 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/msgpack/_version.py +1 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/msgpack/exceptions.py +41 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/msgpack/fallback.py +971 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/packaging/__about__.py +21 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/packaging/__init__.py +14 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/packaging/_compat.py +30 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/packaging/_structures.py +70 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/packaging/markers.py +301 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/packaging/requirements.py +130 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/packaging/specifiers.py +774 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/packaging/utils.py +63 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/packaging/version.py +441 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{pkg_resources.py → pkg_resources/__init__.py} +3125 -2762
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/pkg_resources/py31compat.py +22 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/progress/__init__.py +127 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/progress/bar.py +88 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/progress/counter.py +48 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/progress/helpers.py +91 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/progress/spinner.py +44 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/pyparsing.py +5720 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/pytoml/__init__.py +3 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/pytoml/core.py +13 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/pytoml/parser.py +374 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/pytoml/writer.py +127 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/__init__.py +123 -77
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/__version__.py +14 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/_internal_utils.py +42 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/adapters.py +525 -388
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/api.py +152 -120
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/auth.py +293 -193
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/certs.py +18 -24
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/compat.py +73 -115
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/cookies.py +542 -454
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/exceptions.py +122 -75
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/help.py +120 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/hooks.py +34 -45
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/models.py +948 -803
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages.py +16 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/sessions.py +737 -637
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/status_codes.py +91 -88
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/structures.py +105 -127
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/utils.py +904 -673
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/retrying.py +267 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/six.py +891 -646
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/__init__.py +97 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/_collections.py +319 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/connection.py +373 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/urllib3 → urllib3}/connectionpool.py +905 -710
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/contrib/__init__.py +0 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__init__.py +0 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/contrib/_securetransport/bindings.py +593 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/contrib/_securetransport/low_level.py +343 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/contrib/appengine.py +296 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/urllib3 → urllib3}/contrib/ntlmpool.py +112 -120
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/contrib/pyopenssl.py +455 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/contrib/securetransport.py +810 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/contrib/socks.py +188 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/exceptions.py +246 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/urllib3 → urllib3}/fields.py +178 -177
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/urllib3 → urllib3}/filepost.py +94 -100
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/urllib3 → urllib3}/packages/__init__.py +5 -4
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/packages/backports/__init__.py +0 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/packages/backports/makefile.py +53 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/urllib3 → urllib3}/packages/ordered_dict.py +259 -260
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/packages/six.py +868 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/urllib3 → urllib3}/packages/ssl_match_hostname/__init__.py +19 -13
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/urllib3 → urllib3}/packages/ssl_match_hostname/_implementation.py +157 -105
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/poolmanager.py +440 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/urllib3 → urllib3}/request.py +148 -141
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/response.py +626 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/util/__init__.py +54 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/util/connection.py +130 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/util/request.py +118 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/util/response.py +81 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/util/retry.py +401 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/util/selectors.py +581 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/util/ssl_.py +341 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/urllib3 → urllib3}/util/timeout.py +242 -234
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/{requests/packages/urllib3 → urllib3}/util/url.py +230 -162
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/urllib3/util/wait.py +40 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/webencodings/__init__.py +342 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/webencodings/labels.py +231 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/webencodings/mklabels.py +59 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/webencodings/tests.py +153 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/webencodings/x_user_defined.py +325 -0
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/_markerlib/__init__.py +0 -16
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/_markerlib/markers.py +0 -119
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/sanitizer.py +0 -271
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/serializer/__init__.py +0 -16
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/serializer/htmlserializer.py +0 -320
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/html5lib/treewalkers/pulldom.py +0 -63
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/re-vendor.py +0 -34
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/__init__.py +0 -3
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/big5freq.py +0 -925
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/chardetect.py +0 -46
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/charsetgroupprober.py +0 -106
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/charsetprober.py +0 -62
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/codingstatemachine.py +0 -61
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/constants.py +0 -39
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/escprober.py +0 -86
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/escsm.py +0 -242
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/eucjpprober.py +0 -90
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/euckrfreq.py +0 -596
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/mbcharsetprober.py +0 -86
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/mbcssm.py +0 -575
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/sbcharsetprober.py +0 -120
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/sjisprober.py +0 -91
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/chardet/universaldetector.py +0 -170
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/__init__.py +0 -58
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/_collections.py +0 -205
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/connection.py +0 -204
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/contrib/pyopenssl.py +0 -422
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/exceptions.py +0 -126
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/packages/six.py +0 -385
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/poolmanager.py +0 -258
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/response.py +0 -308
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/__init__.py +0 -27
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/connection.py +0 -45
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/request.py +0 -68
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/response.py +0 -13
- package/python3.4.2/lib/python3.4/site-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py +0 -133
- package/python3.4.2/lib/python3.4/site-packages/pip/backwardcompat/__init__.py +0 -138
- package/python3.4.2/lib/python3.4/site-packages/pip/basecommand.py +0 -201
- package/python3.4.2/lib/python3.4/site-packages/pip/cmdoptions.py +0 -371
- package/python3.4.2/lib/python3.4/site-packages/pip/commands/__init__.py +0 -88
- package/python3.4.2/lib/python3.4/site-packages/pip/commands/bundle.py +0 -42
- package/python3.4.2/lib/python3.4/site-packages/pip/commands/completion.py +0 -59
- package/python3.4.2/lib/python3.4/site-packages/pip/commands/freeze.py +0 -114
- package/python3.4.2/lib/python3.4/site-packages/pip/commands/install.py +0 -314
- package/python3.4.2/lib/python3.4/site-packages/pip/commands/list.py +0 -162
- package/python3.4.2/lib/python3.4/site-packages/pip/commands/search.py +0 -132
- package/python3.4.2/lib/python3.4/site-packages/pip/commands/show.py +0 -80
- package/python3.4.2/lib/python3.4/site-packages/pip/commands/uninstall.py +0 -59
- package/python3.4.2/lib/python3.4/site-packages/pip/commands/unzip.py +0 -7
- package/python3.4.2/lib/python3.4/site-packages/pip/commands/wheel.py +0 -195
- package/python3.4.2/lib/python3.4/site-packages/pip/commands/zip.py +0 -351
- package/python3.4.2/lib/python3.4/site-packages/pip/download.py +0 -644
- package/python3.4.2/lib/python3.4/site-packages/pip/exceptions.py +0 -46
- package/python3.4.2/lib/python3.4/site-packages/pip/index.py +0 -990
- package/python3.4.2/lib/python3.4/site-packages/pip/locations.py +0 -171
- package/python3.4.2/lib/python3.4/site-packages/pip/log.py +0 -276
- package/python3.4.2/lib/python3.4/site-packages/pip/pep425tags.py +0 -102
- package/python3.4.2/lib/python3.4/site-packages/pip/req.py +0 -1931
- package/python3.4.2/lib/python3.4/site-packages/pip/runner.py +0 -18
- package/python3.4.2/lib/python3.4/site-packages/pip/util.py +0 -720
- package/python3.4.2/lib/python3.4/site-packages/pip/vcs/__init__.py +0 -251
- package/python3.4.2/lib/python3.4/site-packages/pip/vcs/bazaar.py +0 -131
- package/python3.4.2/lib/python3.4/site-packages/pip/vcs/git.py +0 -194
- package/python3.4.2/lib/python3.4/site-packages/pip/vcs/mercurial.py +0 -151
- package/python3.4.2/lib/python3.4/site-packages/pip/vcs/subversion.py +0 -273
- package/python3.4.2/lib/python3.4/site-packages/pip/wheel.py +0 -560
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
class TomlError(RuntimeError):
|
|
2
|
+
def __init__(self, message, line, col, filename):
|
|
3
|
+
RuntimeError.__init__(self, message, line, col, filename)
|
|
4
|
+
self.message = message
|
|
5
|
+
self.line = line
|
|
6
|
+
self.col = col
|
|
7
|
+
self.filename = filename
|
|
8
|
+
|
|
9
|
+
def __str__(self):
|
|
10
|
+
return '{}({}, {}): {}'.format(self.filename, self.line, self.col, self.message)
|
|
11
|
+
|
|
12
|
+
def __repr__(self):
|
|
13
|
+
return 'TomlError({!r}, {!r}, {!r}, {!r})'.format(self.message, self.line, self.col, self.filename)
|
|
@@ -0,0 +1,374 @@
|
|
|
1
|
+
import string, re, sys, datetime
|
|
2
|
+
from .core import TomlError
|
|
3
|
+
|
|
4
|
+
if sys.version_info[0] == 2:
|
|
5
|
+
_chr = unichr
|
|
6
|
+
else:
|
|
7
|
+
_chr = chr
|
|
8
|
+
|
|
9
|
+
def load(fin, translate=lambda t, x, v: v):
|
|
10
|
+
return loads(fin.read(), translate=translate, filename=getattr(fin, 'name', repr(fin)))
|
|
11
|
+
|
|
12
|
+
def loads(s, filename='<string>', translate=lambda t, x, v: v):
|
|
13
|
+
if isinstance(s, bytes):
|
|
14
|
+
s = s.decode('utf-8')
|
|
15
|
+
|
|
16
|
+
s = s.replace('\r\n', '\n')
|
|
17
|
+
|
|
18
|
+
root = {}
|
|
19
|
+
tables = {}
|
|
20
|
+
scope = root
|
|
21
|
+
|
|
22
|
+
src = _Source(s, filename=filename)
|
|
23
|
+
ast = _p_toml(src)
|
|
24
|
+
|
|
25
|
+
def error(msg):
|
|
26
|
+
raise TomlError(msg, pos[0], pos[1], filename)
|
|
27
|
+
|
|
28
|
+
def process_value(v):
|
|
29
|
+
kind, text, value, pos = v
|
|
30
|
+
if kind == 'str' and value.startswith('\n'):
|
|
31
|
+
value = value[1:]
|
|
32
|
+
if kind == 'array':
|
|
33
|
+
if value and any(k != value[0][0] for k, t, v, p in value[1:]):
|
|
34
|
+
error('array-type-mismatch')
|
|
35
|
+
value = [process_value(item) for item in value]
|
|
36
|
+
elif kind == 'table':
|
|
37
|
+
value = dict([(k, process_value(value[k])) for k in value])
|
|
38
|
+
return translate(kind, text, value)
|
|
39
|
+
|
|
40
|
+
for kind, value, pos in ast:
|
|
41
|
+
if kind == 'kv':
|
|
42
|
+
k, v = value
|
|
43
|
+
if k in scope:
|
|
44
|
+
error('duplicate_keys. Key "{0}" was used more than once.'.format(k))
|
|
45
|
+
scope[k] = process_value(v)
|
|
46
|
+
else:
|
|
47
|
+
is_table_array = (kind == 'table_array')
|
|
48
|
+
cur = tables
|
|
49
|
+
for name in value[:-1]:
|
|
50
|
+
if isinstance(cur.get(name), list):
|
|
51
|
+
d, cur = cur[name][-1]
|
|
52
|
+
else:
|
|
53
|
+
d, cur = cur.setdefault(name, (None, {}))
|
|
54
|
+
|
|
55
|
+
scope = {}
|
|
56
|
+
name = value[-1]
|
|
57
|
+
if name not in cur:
|
|
58
|
+
if is_table_array:
|
|
59
|
+
cur[name] = [(scope, {})]
|
|
60
|
+
else:
|
|
61
|
+
cur[name] = (scope, {})
|
|
62
|
+
elif isinstance(cur[name], list):
|
|
63
|
+
if not is_table_array:
|
|
64
|
+
error('table_type_mismatch')
|
|
65
|
+
cur[name].append((scope, {}))
|
|
66
|
+
else:
|
|
67
|
+
if is_table_array:
|
|
68
|
+
error('table_type_mismatch')
|
|
69
|
+
old_scope, next_table = cur[name]
|
|
70
|
+
if old_scope is not None:
|
|
71
|
+
error('duplicate_tables')
|
|
72
|
+
cur[name] = (scope, next_table)
|
|
73
|
+
|
|
74
|
+
def merge_tables(scope, tables):
|
|
75
|
+
if scope is None:
|
|
76
|
+
scope = {}
|
|
77
|
+
for k in tables:
|
|
78
|
+
if k in scope:
|
|
79
|
+
error('key_table_conflict')
|
|
80
|
+
v = tables[k]
|
|
81
|
+
if isinstance(v, list):
|
|
82
|
+
scope[k] = [merge_tables(sc, tbl) for sc, tbl in v]
|
|
83
|
+
else:
|
|
84
|
+
scope[k] = merge_tables(v[0], v[1])
|
|
85
|
+
return scope
|
|
86
|
+
|
|
87
|
+
return merge_tables(root, tables)
|
|
88
|
+
|
|
89
|
+
class _Source:
|
|
90
|
+
def __init__(self, s, filename=None):
|
|
91
|
+
self.s = s
|
|
92
|
+
self._pos = (1, 1)
|
|
93
|
+
self._last = None
|
|
94
|
+
self._filename = filename
|
|
95
|
+
self.backtrack_stack = []
|
|
96
|
+
|
|
97
|
+
def last(self):
|
|
98
|
+
return self._last
|
|
99
|
+
|
|
100
|
+
def pos(self):
|
|
101
|
+
return self._pos
|
|
102
|
+
|
|
103
|
+
def fail(self):
|
|
104
|
+
return self._expect(None)
|
|
105
|
+
|
|
106
|
+
def consume_dot(self):
|
|
107
|
+
if self.s:
|
|
108
|
+
self._last = self.s[0]
|
|
109
|
+
self.s = self[1:]
|
|
110
|
+
self._advance(self._last)
|
|
111
|
+
return self._last
|
|
112
|
+
return None
|
|
113
|
+
|
|
114
|
+
def expect_dot(self):
|
|
115
|
+
return self._expect(self.consume_dot())
|
|
116
|
+
|
|
117
|
+
def consume_eof(self):
|
|
118
|
+
if not self.s:
|
|
119
|
+
self._last = ''
|
|
120
|
+
return True
|
|
121
|
+
return False
|
|
122
|
+
|
|
123
|
+
def expect_eof(self):
|
|
124
|
+
return self._expect(self.consume_eof())
|
|
125
|
+
|
|
126
|
+
def consume(self, s):
|
|
127
|
+
if self.s.startswith(s):
|
|
128
|
+
self.s = self.s[len(s):]
|
|
129
|
+
self._last = s
|
|
130
|
+
self._advance(s)
|
|
131
|
+
return True
|
|
132
|
+
return False
|
|
133
|
+
|
|
134
|
+
def expect(self, s):
|
|
135
|
+
return self._expect(self.consume(s))
|
|
136
|
+
|
|
137
|
+
def consume_re(self, re):
|
|
138
|
+
m = re.match(self.s)
|
|
139
|
+
if m:
|
|
140
|
+
self.s = self.s[len(m.group(0)):]
|
|
141
|
+
self._last = m
|
|
142
|
+
self._advance(m.group(0))
|
|
143
|
+
return m
|
|
144
|
+
return None
|
|
145
|
+
|
|
146
|
+
def expect_re(self, re):
|
|
147
|
+
return self._expect(self.consume_re(re))
|
|
148
|
+
|
|
149
|
+
def __enter__(self):
|
|
150
|
+
self.backtrack_stack.append((self.s, self._pos))
|
|
151
|
+
|
|
152
|
+
def __exit__(self, type, value, traceback):
|
|
153
|
+
if type is None:
|
|
154
|
+
self.backtrack_stack.pop()
|
|
155
|
+
else:
|
|
156
|
+
self.s, self._pos = self.backtrack_stack.pop()
|
|
157
|
+
return type == TomlError
|
|
158
|
+
|
|
159
|
+
def commit(self):
|
|
160
|
+
self.backtrack_stack[-1] = (self.s, self._pos)
|
|
161
|
+
|
|
162
|
+
def _expect(self, r):
|
|
163
|
+
if not r:
|
|
164
|
+
raise TomlError('msg', self._pos[0], self._pos[1], self._filename)
|
|
165
|
+
return r
|
|
166
|
+
|
|
167
|
+
def _advance(self, s):
|
|
168
|
+
suffix_pos = s.rfind('\n')
|
|
169
|
+
if suffix_pos == -1:
|
|
170
|
+
self._pos = (self._pos[0], self._pos[1] + len(s))
|
|
171
|
+
else:
|
|
172
|
+
self._pos = (self._pos[0] + s.count('\n'), len(s) - suffix_pos)
|
|
173
|
+
|
|
174
|
+
_ews_re = re.compile(r'(?:[ \t]|#[^\n]*\n|#[^\n]*\Z|\n)*')
|
|
175
|
+
def _p_ews(s):
|
|
176
|
+
s.expect_re(_ews_re)
|
|
177
|
+
|
|
178
|
+
_ws_re = re.compile(r'[ \t]*')
|
|
179
|
+
def _p_ws(s):
|
|
180
|
+
s.expect_re(_ws_re)
|
|
181
|
+
|
|
182
|
+
_escapes = { 'b': '\b', 'n': '\n', 'r': '\r', 't': '\t', '"': '"', '\'': '\'',
|
|
183
|
+
'\\': '\\', '/': '/', 'f': '\f' }
|
|
184
|
+
|
|
185
|
+
_basicstr_re = re.compile(r'[^"\\\000-\037]*')
|
|
186
|
+
_short_uni_re = re.compile(r'u([0-9a-fA-F]{4})')
|
|
187
|
+
_long_uni_re = re.compile(r'U([0-9a-fA-F]{8})')
|
|
188
|
+
_escapes_re = re.compile('[bnrt"\'\\\\/f]')
|
|
189
|
+
_newline_esc_re = re.compile('\n[ \t\n]*')
|
|
190
|
+
def _p_basicstr_content(s, content=_basicstr_re):
|
|
191
|
+
res = []
|
|
192
|
+
while True:
|
|
193
|
+
res.append(s.expect_re(content).group(0))
|
|
194
|
+
if not s.consume('\\'):
|
|
195
|
+
break
|
|
196
|
+
if s.consume_re(_newline_esc_re):
|
|
197
|
+
pass
|
|
198
|
+
elif s.consume_re(_short_uni_re) or s.consume_re(_long_uni_re):
|
|
199
|
+
res.append(_chr(int(s.last().group(1), 16)))
|
|
200
|
+
else:
|
|
201
|
+
s.expect_re(_escapes_re)
|
|
202
|
+
res.append(_escapes[s.last().group(0)])
|
|
203
|
+
return ''.join(res)
|
|
204
|
+
|
|
205
|
+
_key_re = re.compile(r'[0-9a-zA-Z-_]+')
|
|
206
|
+
def _p_key(s):
|
|
207
|
+
with s:
|
|
208
|
+
s.expect('"')
|
|
209
|
+
r = _p_basicstr_content(s, _basicstr_re)
|
|
210
|
+
s.expect('"')
|
|
211
|
+
return r
|
|
212
|
+
if s.consume('\''):
|
|
213
|
+
if s.consume('\'\''):
|
|
214
|
+
r = s.expect_re(_litstr_ml_re).group(0)
|
|
215
|
+
s.expect('\'\'\'')
|
|
216
|
+
else:
|
|
217
|
+
r = s.expect_re(_litstr_re).group(0)
|
|
218
|
+
s.expect('\'')
|
|
219
|
+
return r
|
|
220
|
+
return s.expect_re(_key_re).group(0)
|
|
221
|
+
|
|
222
|
+
_float_re = re.compile(r'[+-]?(?:0|[1-9](?:_?\d)*)(?:\.\d(?:_?\d)*)?(?:[eE][+-]?(?:\d(?:_?\d)*))?')
|
|
223
|
+
_datetime_re = re.compile(r'(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2})(\.\d+)?(?:Z|([+-]\d{2}):(\d{2}))')
|
|
224
|
+
|
|
225
|
+
_basicstr_ml_re = re.compile(r'(?:(?:|"|"")[^"\\\000-\011\013-\037])*')
|
|
226
|
+
_litstr_re = re.compile(r"[^'\000-\037]*")
|
|
227
|
+
_litstr_ml_re = re.compile(r"(?:(?:|'|'')(?:[^'\000-\011\013-\037]))*")
|
|
228
|
+
def _p_value(s):
|
|
229
|
+
pos = s.pos()
|
|
230
|
+
|
|
231
|
+
if s.consume('true'):
|
|
232
|
+
return 'bool', s.last(), True, pos
|
|
233
|
+
if s.consume('false'):
|
|
234
|
+
return 'bool', s.last(), False, pos
|
|
235
|
+
|
|
236
|
+
if s.consume('"'):
|
|
237
|
+
if s.consume('""'):
|
|
238
|
+
r = _p_basicstr_content(s, _basicstr_ml_re)
|
|
239
|
+
s.expect('"""')
|
|
240
|
+
else:
|
|
241
|
+
r = _p_basicstr_content(s, _basicstr_re)
|
|
242
|
+
s.expect('"')
|
|
243
|
+
return 'str', r, r, pos
|
|
244
|
+
|
|
245
|
+
if s.consume('\''):
|
|
246
|
+
if s.consume('\'\''):
|
|
247
|
+
r = s.expect_re(_litstr_ml_re).group(0)
|
|
248
|
+
s.expect('\'\'\'')
|
|
249
|
+
else:
|
|
250
|
+
r = s.expect_re(_litstr_re).group(0)
|
|
251
|
+
s.expect('\'')
|
|
252
|
+
return 'str', r, r, pos
|
|
253
|
+
|
|
254
|
+
if s.consume_re(_datetime_re):
|
|
255
|
+
m = s.last()
|
|
256
|
+
s0 = m.group(0)
|
|
257
|
+
r = map(int, m.groups()[:6])
|
|
258
|
+
if m.group(7):
|
|
259
|
+
micro = float(m.group(7))
|
|
260
|
+
else:
|
|
261
|
+
micro = 0
|
|
262
|
+
|
|
263
|
+
if m.group(8):
|
|
264
|
+
g = int(m.group(8), 10) * 60 + int(m.group(9), 10)
|
|
265
|
+
tz = _TimeZone(datetime.timedelta(0, g * 60))
|
|
266
|
+
else:
|
|
267
|
+
tz = _TimeZone(datetime.timedelta(0, 0))
|
|
268
|
+
|
|
269
|
+
y, m, d, H, M, S = r
|
|
270
|
+
dt = datetime.datetime(y, m, d, H, M, S, int(micro * 1000000), tz)
|
|
271
|
+
return 'datetime', s0, dt, pos
|
|
272
|
+
|
|
273
|
+
if s.consume_re(_float_re):
|
|
274
|
+
m = s.last().group(0)
|
|
275
|
+
r = m.replace('_','')
|
|
276
|
+
if '.' in m or 'e' in m or 'E' in m:
|
|
277
|
+
return 'float', m, float(r), pos
|
|
278
|
+
else:
|
|
279
|
+
return 'int', m, int(r, 10), pos
|
|
280
|
+
|
|
281
|
+
if s.consume('['):
|
|
282
|
+
items = []
|
|
283
|
+
with s:
|
|
284
|
+
while True:
|
|
285
|
+
_p_ews(s)
|
|
286
|
+
items.append(_p_value(s))
|
|
287
|
+
s.commit()
|
|
288
|
+
_p_ews(s)
|
|
289
|
+
s.expect(',')
|
|
290
|
+
s.commit()
|
|
291
|
+
_p_ews(s)
|
|
292
|
+
s.expect(']')
|
|
293
|
+
return 'array', None, items, pos
|
|
294
|
+
|
|
295
|
+
if s.consume('{'):
|
|
296
|
+
_p_ws(s)
|
|
297
|
+
items = {}
|
|
298
|
+
if not s.consume('}'):
|
|
299
|
+
k = _p_key(s)
|
|
300
|
+
_p_ws(s)
|
|
301
|
+
s.expect('=')
|
|
302
|
+
_p_ws(s)
|
|
303
|
+
items[k] = _p_value(s)
|
|
304
|
+
_p_ws(s)
|
|
305
|
+
while s.consume(','):
|
|
306
|
+
_p_ws(s)
|
|
307
|
+
k = _p_key(s)
|
|
308
|
+
_p_ws(s)
|
|
309
|
+
s.expect('=')
|
|
310
|
+
_p_ws(s)
|
|
311
|
+
items[k] = _p_value(s)
|
|
312
|
+
_p_ws(s)
|
|
313
|
+
s.expect('}')
|
|
314
|
+
return 'table', None, items, pos
|
|
315
|
+
|
|
316
|
+
s.fail()
|
|
317
|
+
|
|
318
|
+
def _p_stmt(s):
|
|
319
|
+
pos = s.pos()
|
|
320
|
+
if s.consume( '['):
|
|
321
|
+
is_array = s.consume('[')
|
|
322
|
+
_p_ws(s)
|
|
323
|
+
keys = [_p_key(s)]
|
|
324
|
+
_p_ws(s)
|
|
325
|
+
while s.consume('.'):
|
|
326
|
+
_p_ws(s)
|
|
327
|
+
keys.append(_p_key(s))
|
|
328
|
+
_p_ws(s)
|
|
329
|
+
s.expect(']')
|
|
330
|
+
if is_array:
|
|
331
|
+
s.expect(']')
|
|
332
|
+
return 'table_array' if is_array else 'table', keys, pos
|
|
333
|
+
|
|
334
|
+
key = _p_key(s)
|
|
335
|
+
_p_ws(s)
|
|
336
|
+
s.expect('=')
|
|
337
|
+
_p_ws(s)
|
|
338
|
+
value = _p_value(s)
|
|
339
|
+
return 'kv', (key, value), pos
|
|
340
|
+
|
|
341
|
+
_stmtsep_re = re.compile(r'(?:[ \t]*(?:#[^\n]*)?\n)+[ \t]*')
|
|
342
|
+
def _p_toml(s):
|
|
343
|
+
stmts = []
|
|
344
|
+
_p_ews(s)
|
|
345
|
+
with s:
|
|
346
|
+
stmts.append(_p_stmt(s))
|
|
347
|
+
while True:
|
|
348
|
+
s.commit()
|
|
349
|
+
s.expect_re(_stmtsep_re)
|
|
350
|
+
stmts.append(_p_stmt(s))
|
|
351
|
+
_p_ews(s)
|
|
352
|
+
s.expect_eof()
|
|
353
|
+
return stmts
|
|
354
|
+
|
|
355
|
+
class _TimeZone(datetime.tzinfo):
|
|
356
|
+
def __init__(self, offset):
|
|
357
|
+
self._offset = offset
|
|
358
|
+
|
|
359
|
+
def utcoffset(self, dt):
|
|
360
|
+
return self._offset
|
|
361
|
+
|
|
362
|
+
def dst(self, dt):
|
|
363
|
+
return None
|
|
364
|
+
|
|
365
|
+
def tzname(self, dt):
|
|
366
|
+
m = self._offset.total_seconds() // 60
|
|
367
|
+
if m < 0:
|
|
368
|
+
res = '-'
|
|
369
|
+
m = -m
|
|
370
|
+
else:
|
|
371
|
+
res = '+'
|
|
372
|
+
h = m // 60
|
|
373
|
+
m = m - h * 60
|
|
374
|
+
return '{}{:.02}{:.02}'.format(res, h, m)
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
from __future__ import unicode_literals
|
|
2
|
+
import io, datetime, math, sys
|
|
3
|
+
|
|
4
|
+
if sys.version_info[0] == 3:
|
|
5
|
+
long = int
|
|
6
|
+
unicode = str
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
def dumps(obj, sort_keys=False):
|
|
10
|
+
fout = io.StringIO()
|
|
11
|
+
dump(obj, fout, sort_keys=sort_keys)
|
|
12
|
+
return fout.getvalue()
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
_escapes = {'\n': 'n', '\r': 'r', '\\': '\\', '\t': 't', '\b': 'b', '\f': 'f', '"': '"'}
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
def _escape_string(s):
|
|
19
|
+
res = []
|
|
20
|
+
start = 0
|
|
21
|
+
|
|
22
|
+
def flush():
|
|
23
|
+
if start != i:
|
|
24
|
+
res.append(s[start:i])
|
|
25
|
+
return i + 1
|
|
26
|
+
|
|
27
|
+
i = 0
|
|
28
|
+
while i < len(s):
|
|
29
|
+
c = s[i]
|
|
30
|
+
if c in '"\\\n\r\t\b\f':
|
|
31
|
+
start = flush()
|
|
32
|
+
res.append('\\' + _escapes[c])
|
|
33
|
+
elif ord(c) < 0x20:
|
|
34
|
+
start = flush()
|
|
35
|
+
res.append('\\u%04x' % ord(c))
|
|
36
|
+
i += 1
|
|
37
|
+
|
|
38
|
+
flush()
|
|
39
|
+
return '"' + ''.join(res) + '"'
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
def _escape_id(s):
|
|
43
|
+
if any(not c.isalnum() and c not in '-_' for c in s):
|
|
44
|
+
return _escape_string(s)
|
|
45
|
+
return s
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
def _format_list(v):
|
|
49
|
+
return '[{0}]'.format(', '.join(_format_value(obj) for obj in v))
|
|
50
|
+
|
|
51
|
+
# Formula from:
|
|
52
|
+
# https://docs.python.org/2/library/datetime.html#datetime.timedelta.total_seconds
|
|
53
|
+
# Once support for py26 is dropped, this can be replaced by td.total_seconds()
|
|
54
|
+
def _total_seconds(td):
|
|
55
|
+
return ((td.microseconds
|
|
56
|
+
+ (td.seconds + td.days * 24 * 3600) * 10**6) / 10.0**6)
|
|
57
|
+
|
|
58
|
+
def _format_value(v):
|
|
59
|
+
if isinstance(v, bool):
|
|
60
|
+
return 'true' if v else 'false'
|
|
61
|
+
if isinstance(v, int) or isinstance(v, long):
|
|
62
|
+
return unicode(v)
|
|
63
|
+
if isinstance(v, float):
|
|
64
|
+
if math.isnan(v) or math.isinf(v):
|
|
65
|
+
raise ValueError("{0} is not a valid TOML value".format(v))
|
|
66
|
+
else:
|
|
67
|
+
return repr(v)
|
|
68
|
+
elif isinstance(v, unicode) or isinstance(v, bytes):
|
|
69
|
+
return _escape_string(v)
|
|
70
|
+
elif isinstance(v, datetime.datetime):
|
|
71
|
+
offs = v.utcoffset()
|
|
72
|
+
offs = _total_seconds(offs) // 60 if offs is not None else 0
|
|
73
|
+
|
|
74
|
+
if offs == 0:
|
|
75
|
+
suffix = 'Z'
|
|
76
|
+
else:
|
|
77
|
+
if offs > 0:
|
|
78
|
+
suffix = '+'
|
|
79
|
+
else:
|
|
80
|
+
suffix = '-'
|
|
81
|
+
offs = -offs
|
|
82
|
+
suffix = '{0}{1:.02}{2:.02}'.format(suffix, offs // 60, offs % 60)
|
|
83
|
+
|
|
84
|
+
if v.microsecond:
|
|
85
|
+
return v.strftime('%Y-%m-%dT%H:%M:%S.%f') + suffix
|
|
86
|
+
else:
|
|
87
|
+
return v.strftime('%Y-%m-%dT%H:%M:%S') + suffix
|
|
88
|
+
elif isinstance(v, list):
|
|
89
|
+
return _format_list(v)
|
|
90
|
+
else:
|
|
91
|
+
raise RuntimeError(v)
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
def dump(obj, fout, sort_keys=False):
|
|
95
|
+
tables = [((), obj, False)]
|
|
96
|
+
|
|
97
|
+
while tables:
|
|
98
|
+
name, table, is_array = tables.pop()
|
|
99
|
+
if name:
|
|
100
|
+
section_name = '.'.join(_escape_id(c) for c in name)
|
|
101
|
+
if is_array:
|
|
102
|
+
fout.write('[[{0}]]\n'.format(section_name))
|
|
103
|
+
else:
|
|
104
|
+
fout.write('[{0}]\n'.format(section_name))
|
|
105
|
+
|
|
106
|
+
table_keys = sorted(table.keys()) if sort_keys else table.keys()
|
|
107
|
+
new_tables = []
|
|
108
|
+
has_kv = False
|
|
109
|
+
for k in table_keys:
|
|
110
|
+
v = table[k]
|
|
111
|
+
if isinstance(v, dict):
|
|
112
|
+
new_tables.append((name + (k,), v, False))
|
|
113
|
+
elif isinstance(v, list) and v and all(isinstance(o, dict) for o in v):
|
|
114
|
+
new_tables.extend((name + (k,), d, True) for d in v)
|
|
115
|
+
elif v is None:
|
|
116
|
+
# based on mojombo's comment: https://github.com/toml-lang/toml/issues/146#issuecomment-25019344
|
|
117
|
+
fout.write(
|
|
118
|
+
'#{} = null # To use: uncomment and replace null with value\n'.format(_escape_id(k)))
|
|
119
|
+
has_kv = True
|
|
120
|
+
else:
|
|
121
|
+
fout.write('{0} = {1}\n'.format(_escape_id(k), _format_value(v)))
|
|
122
|
+
has_kv = True
|
|
123
|
+
|
|
124
|
+
tables.extend(reversed(new_tables))
|
|
125
|
+
|
|
126
|
+
if (name or has_kv) and tables:
|
|
127
|
+
fout.write('\n')
|