quarchpy 2.1.13.dev2__py2.py3-none-any.whl → 2.1.14__py2.py3-none-any.whl
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.
- quarchpy/.idea/.name +1 -1
- quarchpy/.idea/modules.xml +1 -0
- quarchpy/.idea/quarchpy.iml +4 -1
- quarchpy/.idea/workspace.xml +208 -11
- quarchpy/__pycache__/__init__.cpython-311.pyc +0 -0
- quarchpy/__pycache__/_version.cpython-311.pyc +0 -0
- quarchpy/__pycache__/connection.cpython-311.pyc +0 -0
- quarchpy/__pycache__/run.cpython-311.pyc +0 -0
- quarchpy/_version.py +1 -1
- quarchpy/config_files/__pycache__/__init__.cpython-311.pyc +0 -0
- quarchpy/config_files/__pycache__/quarch_config_parser.cpython-311.pyc +0 -0
- quarchpy/connection_specific/__pycache__/StreamChannels.cpython-311.pyc +0 -0
- quarchpy/connection_specific/__pycache__/__init__.cpython-311.pyc +0 -0
- quarchpy/connection_specific/__pycache__/connection_QIS.cpython-311.pyc +0 -0
- quarchpy/connection_specific/__pycache__/connection_QPS.cpython-311.pyc +0 -0
- quarchpy/connection_specific/__pycache__/connection_ReST.cpython-311.pyc +0 -0
- quarchpy/connection_specific/__pycache__/connection_Serial.cpython-311.pyc +0 -0
- quarchpy/connection_specific/__pycache__/connection_TCP.cpython-311.pyc +0 -0
- quarchpy/connection_specific/__pycache__/connection_Telnet.cpython-311.pyc +0 -0
- quarchpy/connection_specific/__pycache__/connection_USB.cpython-311.pyc +0 -0
- quarchpy/connection_specific/__pycache__/connection_mDNS.cpython-311.pyc +0 -0
- quarchpy/connection_specific/connection_QIS.py +237 -320
- quarchpy/connection_specific/connection_ReST.py +26 -16
- quarchpy/connection_specific/connection_TCP.py +1 -1
- quarchpy/connection_specific/connection_mDNS.py +46 -0
- quarchpy/connection_specific/serial/__pycache__/__init__.cpython-311.pyc +0 -0
- quarchpy/connection_specific/serial/__pycache__/serialutil.cpython-311.pyc +0 -0
- quarchpy/connection_specific/serial/__pycache__/serialwin32.cpython-311.pyc +0 -0
- quarchpy/connection_specific/serial/__pycache__/win32.cpython-311.pyc +0 -0
- quarchpy/connection_specific/serial/tools/__pycache__/__init__.cpython-311.pyc +0 -0
- quarchpy/connection_specific/serial/tools/__pycache__/list_ports.cpython-311.pyc +0 -0
- quarchpy/connection_specific/serial/tools/__pycache__/list_ports_common.cpython-311.pyc +0 -0
- quarchpy/connection_specific/serial/tools/__pycache__/list_ports_windows.cpython-311.pyc +0 -0
- quarchpy/debug/__pycache__/SystemTest.cpython-311.pyc +0 -0
- quarchpy/debug/__pycache__/__init__.cpython-311.pyc +0 -0
- quarchpy/debug/__pycache__/module_debug.cpython-311.pyc +0 -0
- quarchpy/debug/__pycache__/simple_terminal.cpython-311.pyc +0 -0
- quarchpy/debug/__pycache__/upgrade_quarchpy.cpython-311.pyc +0 -0
- quarchpy/debug/__pycache__/versionCompare.cpython-311.pyc +0 -0
- quarchpy/device/__pycache__/__init__.cpython-311.pyc +0 -0
- quarchpy/device/__pycache__/device.cpython-311.pyc +0 -0
- quarchpy/device/__pycache__/quarchArray.cpython-311.pyc +0 -0
- quarchpy/device/__pycache__/quarchPPM.cpython-311.pyc +0 -0
- quarchpy/device/__pycache__/quarchQPS.cpython-311.pyc +0 -0
- quarchpy/device/__pycache__/scanDevices.cpython-311.pyc +0 -0
- quarchpy/device/quarchPPM.py +2 -2
- quarchpy/device/quarchQPS.py +95 -86
- quarchpy/device/scanDevices.py +13 -3
- quarchpy/disk_test/__pycache__/AbsDiskFinder.cpython-311.pyc +0 -0
- quarchpy/disk_test/__pycache__/DiskTargetSelection.cpython-311.pyc +0 -0
- quarchpy/disk_test/__pycache__/__init__.cpython-311.pyc +0 -0
- quarchpy/disk_test/__pycache__/iometerDiskFinder.cpython-311.pyc +0 -0
- quarchpy/docs/CHANGES.rst +11 -1
- quarchpy/docs/_build/doctrees/CHANGES.doctree +0 -0
- quarchpy/docs/_build/doctrees/environment.pickle +0 -0
- quarchpy/docs/_build/doctrees/index.doctree +0 -0
- quarchpy/docs/_build/doctrees/readme.doctree +0 -0
- quarchpy/docs/_build/doctrees/source/changelog.doctree +0 -0
- quarchpy/docs/_build/doctrees/source/licenses.doctree +0 -0
- quarchpy/docs/_build/doctrees/source/modules.doctree +0 -0
- quarchpy/docs/_build/doctrees/source/quarchpy.calibration.doctree +0 -0
- quarchpy/docs/_build/doctrees/source/quarchpy.config_files.doctree +0 -0
- quarchpy/docs/_build/doctrees/source/quarchpy.connection_specific.doctree +0 -0
- quarchpy/docs/_build/doctrees/source/quarchpy.debug.doctree +0 -0
- quarchpy/docs/_build/doctrees/source/quarchpy.device.doctree +0 -0
- quarchpy/docs/_build/doctrees/source/quarchpy.disk_test.doctree +0 -0
- quarchpy/docs/_build/doctrees/source/quarchpy.doctree +0 -0
- quarchpy/docs/_build/doctrees/source/quarchpy.fio.doctree +0 -0
- quarchpy/docs/_build/doctrees/source/quarchpy.iometer.doctree +0 -0
- quarchpy/docs/_build/doctrees/source/quarchpy.qis.doctree +0 -0
- quarchpy/docs/_build/doctrees/source/quarchpy.qps.doctree +0 -0
- quarchpy/docs/_build/doctrees/source/quarchpy.user_interface.doctree +0 -0
- quarchpy/docs/_build/doctrees/source/quarchpy.utilities.doctree +0 -0
- quarchpy/docs/_build/doctrees/source/readme.doctree +0 -0
- quarchpy/docs/_build/html/.buildinfo +1 -1
- quarchpy/docs/_build/html/CHANGES.html +198 -156
- quarchpy/docs/_build/html/_sources/CHANGES.rst.txt +30 -0
- quarchpy/docs/_build/html/_static/alabaster.css +3 -1
- quarchpy/docs/_build/html/_static/basic.css +47 -27
- quarchpy/docs/_build/html/_static/doctools.js +107 -274
- quarchpy/docs/_build/html/_static/documentation_options.js +5 -4
- quarchpy/docs/_build/html/_static/language_data.js +2 -100
- quarchpy/docs/_build/html/_static/pygments.css +1 -0
- quarchpy/docs/_build/html/_static/searchtools.js +440 -395
- quarchpy/docs/_build/html/_static/sphinx_highlight.js +154 -0
- quarchpy/docs/_build/html/genindex.html +263 -87
- quarchpy/docs/_build/html/index.html +68 -63
- quarchpy/docs/_build/html/objects.inv +0 -0
- quarchpy/docs/_build/html/py-modindex.html +9 -11
- quarchpy/docs/_build/html/readme.html +26 -27
- quarchpy/docs/_build/html/search.html +8 -10
- quarchpy/docs/_build/html/searchindex.js +1 -1
- quarchpy/docs/_build/html/source/changelog.html +249 -201
- quarchpy/docs/_build/html/source/licenses.html +23 -24
- quarchpy/docs/_build/html/source/modules.html +24 -17
- quarchpy/docs/_build/html/source/quarchpy.calibration.html +44 -45
- quarchpy/docs/_build/html/source/quarchpy.config_files.html +25 -26
- quarchpy/docs/_build/html/source/quarchpy.connection_specific.html +239 -133
- quarchpy/docs/_build/html/source/quarchpy.debug.html +57 -54
- quarchpy/docs/_build/html/source/quarchpy.device.html +245 -211
- quarchpy/docs/_build/html/source/quarchpy.disk_test.html +75 -76
- quarchpy/docs/_build/html/source/quarchpy.fio.html +33 -34
- quarchpy/docs/_build/html/source/quarchpy.html +518 -61
- quarchpy/docs/_build/html/source/quarchpy.iometer.html +130 -44
- quarchpy/docs/_build/html/source/quarchpy.qis.html +420 -44
- quarchpy/docs/_build/html/source/quarchpy.qps.html +44 -43
- quarchpy/docs/_build/html/source/quarchpy.user_interface.html +70 -120
- quarchpy/docs/_build/html/source/quarchpy.utilities.html +39 -40
- quarchpy/docs/_build/html/source/readme.html +26 -27
- quarchpy/fio/__pycache__/FIO_interface.cpython-311.pyc +0 -0
- quarchpy/fio/__pycache__/__init__.cpython-311.pyc +0 -0
- quarchpy/fio/__pycache__/fioDiskFinder.cpython-311.pyc +0 -0
- quarchpy/iometer/__pycache__/__init__.cpython-311.pyc +0 -0
- quarchpy/iometer/__pycache__/gen_iometer_template.cpython-311.pyc +0 -0
- quarchpy/iometer/__pycache__/iometerFuncs.cpython-311.pyc +0 -0
- quarchpy/qis/__pycache__/StreamHeaderInfo.cpython-311.pyc +0 -0
- quarchpy/qis/__pycache__/__init__.cpython-311.pyc +0 -0
- quarchpy/qis/__pycache__/qisFuncs.cpython-311.pyc +0 -0
- quarchpy/qis/qisFuncs.py +25 -42
- quarchpy/qps/__pycache__/__init__.cpython-311.pyc +0 -0
- quarchpy/qps/__pycache__/qpsFuncs.cpython-311.pyc +0 -0
- quarchpy/qps/qpsFuncs.py +18 -19
- quarchpy/run.py +1 -1
- quarchpy/user_interface/__pycache__/__init__.cpython-311.pyc +0 -0
- quarchpy/user_interface/__pycache__/user_interface.cpython-311.pyc +0 -0
- quarchpy/utilities/TestCenter.py +1 -1
- quarchpy/utilities/Version.py +50 -0
- quarchpy/utilities/__pycache__/TestCenter.cpython-311.pyc +0 -0
- quarchpy/utilities/__pycache__/TimeValue.cpython-311.pyc +0 -0
- quarchpy/utilities/__pycache__/Version.cpython-311.pyc +0 -0
- quarchpy/utilities/__pycache__/__init__.cpython-311.pyc +0 -0
- quarchpy/venv/.gitignore +2 -0
- quarchpy/venv/Include/Python-ast.h +535 -0
- quarchpy/venv/Include/Python.h +181 -0
- quarchpy/venv/Include/abstract.h +1396 -0
- quarchpy/venv/Include/asdl.h +45 -0
- quarchpy/venv/Include/ast.h +13 -0
- quarchpy/venv/Include/bitset.h +32 -0
- quarchpy/venv/Include/boolobject.h +36 -0
- quarchpy/venv/Include/bufferobject.h +33 -0
- quarchpy/venv/Include/bytearrayobject.h +57 -0
- quarchpy/venv/Include/bytes_methods.h +75 -0
- quarchpy/venv/Include/bytesobject.h +27 -0
- quarchpy/venv/Include/cStringIO.h +73 -0
- quarchpy/venv/Include/cellobject.h +28 -0
- quarchpy/venv/Include/ceval.h +154 -0
- quarchpy/venv/Include/classobject.h +83 -0
- quarchpy/venv/Include/cobject.h +89 -0
- quarchpy/venv/Include/code.h +116 -0
- quarchpy/venv/Include/codecs.h +212 -0
- quarchpy/venv/Include/compile.h +40 -0
- quarchpy/venv/Include/complexobject.h +66 -0
- quarchpy/venv/Include/datetime.h +239 -0
- quarchpy/venv/Include/descrobject.h +94 -0
- quarchpy/venv/Include/dictobject.h +160 -0
- quarchpy/venv/Include/dtoa.h +15 -0
- quarchpy/venv/Include/enumobject.h +17 -0
- quarchpy/venv/Include/errcode.h +37 -0
- quarchpy/venv/Include/eval.h +25 -0
- quarchpy/venv/Include/fileobject.h +97 -0
- quarchpy/venv/Include/floatobject.h +140 -0
- quarchpy/venv/Include/frameobject.h +89 -0
- quarchpy/venv/Include/funcobject.h +76 -0
- quarchpy/venv/Include/genobject.h +40 -0
- quarchpy/venv/Include/graminit.h +87 -0
- quarchpy/venv/Include/grammar.h +94 -0
- quarchpy/venv/Include/import.h +71 -0
- quarchpy/venv/Include/intobject.h +84 -0
- quarchpy/venv/Include/intrcheck.h +15 -0
- quarchpy/venv/Include/iterobject.h +23 -0
- quarchpy/venv/Include/listobject.h +68 -0
- quarchpy/venv/Include/longintrepr.h +103 -0
- quarchpy/venv/Include/longobject.h +135 -0
- quarchpy/venv/Include/marshal.h +25 -0
- quarchpy/venv/Include/memoryobject.h +74 -0
- quarchpy/venv/Include/metagrammar.h +18 -0
- quarchpy/venv/Include/methodobject.h +93 -0
- quarchpy/venv/Include/modsupport.h +134 -0
- quarchpy/venv/Include/moduleobject.h +24 -0
- quarchpy/venv/Include/node.h +41 -0
- quarchpy/venv/Include/object.h +1046 -0
- quarchpy/venv/Include/objimpl.h +369 -0
- quarchpy/venv/Include/opcode.h +171 -0
- quarchpy/venv/Include/osdefs.h +63 -0
- quarchpy/venv/Include/parsetok.h +64 -0
- quarchpy/venv/Include/patchlevel.h +43 -0
- quarchpy/venv/Include/pgen.h +18 -0
- quarchpy/venv/Include/pgenheaders.h +43 -0
- quarchpy/venv/Include/py_curses.h +177 -0
- quarchpy/venv/Include/pyarena.h +62 -0
- quarchpy/venv/Include/pycapsule.h +56 -0
- quarchpy/venv/Include/pyconfig.h +770 -0
- quarchpy/venv/Include/pyctype.h +31 -0
- quarchpy/venv/Include/pydebug.h +41 -0
- quarchpy/venv/Include/pyerrors.h +329 -0
- quarchpy/venv/Include/pyexpat.h +50 -0
- quarchpy/venv/Include/pyfpe.h +176 -0
- quarchpy/venv/Include/pygetopt.h +18 -0
- quarchpy/venv/Include/pymacconfig.h +102 -0
- quarchpy/venv/Include/pymactoolbox.h +232 -0
- quarchpy/venv/Include/pymath.h +214 -0
- quarchpy/venv/Include/pymem.h +122 -0
- quarchpy/venv/Include/pyport.h +950 -0
- quarchpy/venv/Include/pystate.h +200 -0
- quarchpy/venv/Include/pystrcmp.h +23 -0
- quarchpy/venv/Include/pystrtod.h +45 -0
- quarchpy/venv/Include/pythonrun.h +181 -0
- quarchpy/venv/Include/pythread.h +41 -0
- quarchpy/venv/Include/rangeobject.h +28 -0
- quarchpy/venv/Include/setobject.h +99 -0
- quarchpy/venv/Include/sliceobject.h +50 -0
- quarchpy/venv/Include/stringobject.h +210 -0
- quarchpy/venv/Include/structmember.h +99 -0
- quarchpy/venv/Include/structseq.h +41 -0
- quarchpy/venv/Include/symtable.h +98 -0
- quarchpy/venv/Include/sysmodule.h +31 -0
- quarchpy/venv/Include/timefuncs.h +26 -0
- quarchpy/venv/Include/token.h +85 -0
- quarchpy/venv/Include/traceback.h +31 -0
- quarchpy/venv/Include/tupleobject.h +61 -0
- quarchpy/venv/Include/ucnhash.h +33 -0
- quarchpy/venv/Include/unicodeobject.h +1413 -0
- quarchpy/venv/Include/warnings.h +23 -0
- quarchpy/venv/Include/weakrefobject.h +82 -0
- quarchpy/venv/Lib/os.py +742 -0
- quarchpy/venv/Lib/os.pyc +0 -0
- quarchpy/venv/Lib/site-packages/_virtualenv.pth +1 -0
- quarchpy/venv/Lib/site-packages/_virtualenv.py +130 -0
- quarchpy/venv/Lib/site-packages/_virtualenv.pyc +0 -0
- quarchpy/venv/Lib/site-packages/easy_install.py +5 -0
- quarchpy/venv/Lib/site-packages/pip/__init__.py +18 -0
- quarchpy/venv/Lib/site-packages/pip/__main__.py +26 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/__init__.py +17 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/build_env.py +242 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/cache.py +346 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/cli/__init__.py +4 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/cli/autocompletion.py +164 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/cli/base_command.py +260 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/cli/cmdoptions.py +971 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/cli/command_context.py +36 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/cli/main.py +75 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/cli/main_parser.py +96 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/cli/parser.py +285 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/cli/progress_bars.py +280 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/cli/req_command.py +436 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/cli/spinners.py +173 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/cli/status_codes.py +8 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/commands/__init__.py +123 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/commands/cache.py +234 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/commands/check.py +51 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/commands/completion.py +98 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/commands/configuration.py +280 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/commands/debug.py +230 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/commands/download.py +143 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/commands/freeze.py +116 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/commands/hash.py +63 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/commands/help.py +46 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/commands/install.py +737 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/commands/list.py +327 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/commands/search.py +169 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/commands/show.py +186 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/commands/uninstall.py +95 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/commands/wheel.py +198 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/configuration.py +407 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/distributions/__init__.py +24 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/distributions/base.py +46 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/distributions/installed.py +25 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/distributions/sdist.py +105 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/distributions/wheel.py +37 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/exceptions.py +391 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/index/__init__.py +2 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/index/collector.py +667 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/index/package_finder.py +1015 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/locations.py +193 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/main.py +16 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/models/__init__.py +2 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/models/candidate.py +39 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/models/direct_url.py +243 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/models/format_control.py +92 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/models/index.py +34 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/models/link.py +246 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/models/scheme.py +31 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/models/search_scope.py +135 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/models/selection_prefs.py +50 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/models/target_python.py +117 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/models/wheel.py +78 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/network/__init__.py +2 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/network/auth.py +310 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/network/cache.py +79 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/network/download.py +202 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/network/lazy_wheel.py +231 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/network/session.py +428 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/network/utils.py +97 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/network/xmlrpc.py +53 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/operations/__init__.py +0 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/operations/build/__init__.py +0 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/operations/build/metadata.py +38 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/operations/build/metadata_legacy.py +77 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/operations/build/wheel.py +47 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/operations/build/wheel_legacy.py +113 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/operations/check.py +155 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/operations/freeze.py +277 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/operations/install/__init__.py +2 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/operations/install/editable_legacy.py +52 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/operations/install/legacy.py +130 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/operations/install/wheel.py +846 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/operations/prepare.py +608 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/pyproject.py +196 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/req/__init__.py +103 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/req/constructors.py +476 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/req/req_file.py +574 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/req/req_install.py +907 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/req/req_set.py +204 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/req/req_tracker.py +151 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/req/req_uninstall.py +657 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/resolution/__init__.py +0 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/resolution/base.py +21 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/resolution/legacy/__init__.py +0 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/resolution/legacy/resolver.py +473 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/resolution/resolvelib/__init__.py +0 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/resolution/resolvelib/base.py +156 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/resolution/resolvelib/candidates.py +604 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/resolution/resolvelib/factory.py +504 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py +101 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/resolution/resolvelib/provider.py +174 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/resolution/resolvelib/reporter.py +84 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/resolution/resolvelib/requirements.py +201 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/resolution/resolvelib/resolver.py +296 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/self_outdated_check.py +197 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/__init__.py +0 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/appdirs.py +44 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/compat.py +293 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/compatibility_tags.py +178 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/datetime.py +14 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/deprecation.py +104 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/direct_url_helpers.py +126 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/distutils_args.py +48 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/encoding.py +41 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/entrypoints.py +31 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/filesystem.py +224 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/filetypes.py +26 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/glibc.py +98 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/hashes.py +169 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/inject_securetransport.py +36 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/logging.py +399 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/misc.py +962 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/models.py +44 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/packaging.py +95 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/parallel.py +107 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/pkg_resources.py +44 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/setuptools_build.py +181 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/subprocess.py +299 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/temp_dir.py +284 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/typing.py +38 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/unpacking.py +281 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/urls.py +55 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/virtualenv.py +119 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/utils/wheel.py +225 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/vcs/__init__.py +15 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/vcs/bazaar.py +123 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/vcs/git.py +454 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/vcs/mercurial.py +172 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/vcs/subversion.py +340 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/vcs/versioncontrol.py +735 -0
- quarchpy/venv/Lib/site-packages/pip/_internal/wheel_builder.py +362 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/__init__.py +114 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/appdirs.py +633 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/cachecontrol/__init__.py +11 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/cachecontrol/_cmd.py +57 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/cachecontrol/adapter.py +133 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/cachecontrol/cache.py +39 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/cachecontrol/caches/__init__.py +2 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py +146 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py +33 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/cachecontrol/compat.py +29 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/cachecontrol/controller.py +376 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/cachecontrol/filewrapper.py +80 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/cachecontrol/heuristics.py +135 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/cachecontrol/serialize.py +188 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/cachecontrol/wrapper.py +29 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/certifi/__init__.py +3 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/certifi/__main__.py +12 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/certifi/cacert.pem +4606 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/certifi/core.py +60 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/__init__.py +39 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/big5freq.py +386 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/big5prober.py +47 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/chardistribution.py +233 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/charsetgroupprober.py +106 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/charsetprober.py +145 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/cli/__init__.py +1 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/cli/chardetect.py +85 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/codingstatemachine.py +88 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/compat.py +34 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/cp949prober.py +49 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/enums.py +76 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/escprober.py +101 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/escsm.py +246 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/eucjpprober.py +92 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/euckrfreq.py +195 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/euckrprober.py +47 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/euctwfreq.py +387 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/euctwprober.py +46 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/gb2312freq.py +283 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/gb2312prober.py +46 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/hebrewprober.py +292 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/jisfreq.py +325 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/jpcntx.py +233 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/langbulgarianmodel.py +228 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/langcyrillicmodel.py +333 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/langgreekmodel.py +225 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/langhebrewmodel.py +200 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/langhungarianmodel.py +225 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/langthaimodel.py +199 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/langturkishmodel.py +193 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/latin1prober.py +145 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/mbcharsetprober.py +91 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/mbcsgroupprober.py +54 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/mbcssm.py +572 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/sbcharsetprober.py +132 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/sbcsgroupprober.py +73 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/sjisprober.py +92 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/universaldetector.py +286 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/utf8prober.py +82 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/chardet/version.py +9 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/colorama/__init__.py +6 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/colorama/ansi.py +102 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/colorama/ansitowin32.py +258 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/colorama/initialise.py +80 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/colorama/win32.py +152 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/colorama/winterm.py +169 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/contextlib2.py +518 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/distlib/__init__.py +23 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/distlib/_backport/__init__.py +6 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/distlib/_backport/misc.py +41 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/distlib/_backport/shutil.py +764 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/distlib/_backport/sysconfig.cfg +84 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/distlib/_backport/sysconfig.py +786 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/distlib/_backport/tarfile.py +2607 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/distlib/compat.py +1120 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/distlib/database.py +1339 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/distlib/index.py +516 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/distlib/locators.py +1302 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/distlib/manifest.py +393 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/distlib/markers.py +131 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/distlib/metadata.py +1056 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/distlib/resources.py +355 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/distlib/scripts.py +419 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/distlib/t32.exe +0 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/distlib/t64.exe +0 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/distlib/util.py +1761 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/distlib/version.py +736 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/distlib/w32.exe +0 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/distlib/w64.exe +0 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/distlib/wheel.py +1018 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/distro.py +1230 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/__init__.py +35 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/_ihatexml.py +289 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/_inputstream.py +918 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/_tokenizer.py +1735 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/_trie/__init__.py +5 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/_trie/_base.py +40 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/_trie/py.py +67 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/_utils.py +159 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/constants.py +2946 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/filters/__init__.py +0 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/filters/alphabeticalattributes.py +29 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/filters/base.py +12 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/filters/inject_meta_charset.py +73 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/filters/lint.py +93 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/filters/optionaltags.py +207 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/filters/sanitizer.py +916 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/filters/whitespace.py +38 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/html5parser.py +2795 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/serializer.py +409 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/treeadapters/__init__.py +30 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/treeadapters/genshi.py +54 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/treeadapters/sax.py +50 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/treebuilders/__init__.py +88 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/treebuilders/base.py +417 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/treebuilders/dom.py +239 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/treebuilders/etree.py +343 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/treebuilders/etree_lxml.py +392 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/treewalkers/__init__.py +154 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/treewalkers/base.py +252 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/treewalkers/dom.py +43 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/treewalkers/etree.py +131 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/treewalkers/etree_lxml.py +215 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/html5lib/treewalkers/genshi.py +69 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/idna/__init__.py +2 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/idna/codec.py +118 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/idna/compat.py +12 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/idna/core.py +400 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/idna/idnadata.py +2050 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/idna/intranges.py +53 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/idna/package_data.py +2 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/idna/uts46data.py +8357 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/ipaddress.py +2420 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/msgpack/__init__.py +54 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/msgpack/_version.py +1 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/msgpack/exceptions.py +48 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/msgpack/ext.py +191 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/msgpack/fallback.py +1063 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/packaging/__about__.py +27 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/packaging/__init__.py +26 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/packaging/_compat.py +38 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/packaging/_structures.py +86 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/packaging/_typing.py +48 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/packaging/markers.py +328 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/packaging/requirements.py +151 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/packaging/specifiers.py +864 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/packaging/tags.py +852 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/packaging/utils.py +67 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/packaging/version.py +556 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/pep517/__init__.py +6 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/pep517/_in_process.py +280 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/pep517/build.py +124 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/pep517/check.py +203 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/pep517/colorlog.py +115 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/pep517/compat.py +34 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/pep517/dirtools.py +44 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/pep517/envbuild.py +167 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/pep517/meta.py +92 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/pep517/wrappers.py +327 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/pkg_resources/__init__.py +3296 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/pkg_resources/py31compat.py +23 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/progress/__init__.py +177 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/progress/bar.py +91 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/progress/counter.py +41 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/progress/spinner.py +43 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/pyparsing.py +7107 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/requests/__init__.py +144 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/requests/__version__.py +14 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/requests/_internal_utils.py +42 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/requests/adapters.py +533 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/requests/api.py +161 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/requests/auth.py +305 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/requests/certs.py +18 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/requests/compat.py +76 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/requests/cookies.py +549 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/requests/exceptions.py +123 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/requests/help.py +119 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/requests/hooks.py +34 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/requests/models.py +956 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/requests/packages.py +16 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/requests/sessions.py +781 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/requests/status_codes.py +123 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/requests/structures.py +105 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/requests/utils.py +988 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/resolvelib/__init__.py +26 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/resolvelib/compat/__init__.py +0 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/resolvelib/compat/collections_abc.py +6 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/resolvelib/providers.py +119 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/resolvelib/reporters.py +37 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/resolvelib/resolvers.py +454 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/resolvelib/structs.py +149 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/retrying.py +267 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/six.py +982 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/toml/__init__.py +25 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/toml/decoder.py +1057 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/toml/encoder.py +304 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/toml/ordered.py +15 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/toml/tz.py +24 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/__init__.py +85 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/_collections.py +337 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/_version.py +2 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/connection.py +535 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/connectionpool.py +1067 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/contrib/__init__.py +0 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/contrib/_appengine_environ.py +36 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__init__.py +0 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/bindings.py +519 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/contrib/_securetransport/low_level.py +396 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/contrib/appengine.py +314 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/contrib/ntlmpool.py +121 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/contrib/pyopenssl.py +509 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/contrib/securetransport.py +920 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/contrib/socks.py +216 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/exceptions.py +313 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/fields.py +274 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/filepost.py +98 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/packages/__init__.py +5 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/packages/backports/__init__.py +0 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/packages/backports/makefile.py +51 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/packages/six.py +1021 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/packages/ssl_match_hostname/__init__.py +22 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/packages/ssl_match_hostname/_implementation.py +160 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/poolmanager.py +536 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/request.py +170 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/response.py +821 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/util/__init__.py +49 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/util/connection.py +150 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/util/proxy.py +56 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/util/queue.py +22 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/util/request.py +143 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/util/response.py +107 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/util/retry.py +601 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/util/ssl_.py +474 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/util/ssltransport.py +221 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/util/timeout.py +268 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/util/url.py +430 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/urllib3/util/wait.py +153 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/vendor.txt +24 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/webencodings/__init__.py +342 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/webencodings/labels.py +231 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/webencodings/mklabels.py +59 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/webencodings/tests.py +153 -0
- quarchpy/venv/Lib/site-packages/pip/_vendor/webencodings/x_user_defined.py +325 -0
- quarchpy/venv/Lib/site-packages/pip-20.3.4.dist-info/INSTALLER +1 -0
- quarchpy/venv/Lib/site-packages/pip-20.3.4.dist-info/LICENSE.txt +20 -0
- quarchpy/venv/Lib/site-packages/pip-20.3.4.dist-info/METADATA +94 -0
- quarchpy/venv/Lib/site-packages/pip-20.3.4.dist-info/RECORD +812 -0
- quarchpy/venv/Lib/site-packages/pip-20.3.4.dist-info/WHEEL +6 -0
- quarchpy/venv/Lib/site-packages/pip-20.3.4.dist-info/entry_points.txt +5 -0
- quarchpy/venv/Lib/site-packages/pip-20.3.4.dist-info/top_level.txt +1 -0
- quarchpy/venv/Lib/site-packages/pip-20.3.4.virtualenv +0 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/__init__.py +3296 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/__init__.pyc +0 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/_vendor/__init__.py +0 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/_vendor/__init__.pyc +0 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/_vendor/appdirs.py +608 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/_vendor/appdirs.pyc +0 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/_vendor/packaging/__about__.py +21 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/_vendor/packaging/__about__.pyc +0 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/_vendor/packaging/__init__.py +14 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/_vendor/packaging/__init__.pyc +0 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/_vendor/packaging/_compat.py +30 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/_vendor/packaging/_compat.pyc +0 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/_vendor/packaging/_structures.py +68 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/_vendor/packaging/_structures.pyc +0 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/_vendor/packaging/markers.py +301 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/_vendor/packaging/markers.pyc +0 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/_vendor/packaging/requirements.py +127 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/_vendor/packaging/requirements.pyc +0 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/_vendor/packaging/specifiers.py +774 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/_vendor/packaging/specifiers.pyc +0 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/_vendor/packaging/utils.py +14 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/_vendor/packaging/version.py +393 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/_vendor/packaging/version.pyc +0 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/_vendor/pyparsing.py +5742 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/_vendor/pyparsing.pyc +0 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/_vendor/six.py +868 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/_vendor/six.pyc +0 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/extern/__init__.py +73 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/extern/__init__.pyc +0 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/py31compat.py +23 -0
- quarchpy/venv/Lib/site-packages/pkg_resources/py31compat.pyc +0 -0
- quarchpy/venv/Lib/site-packages/setuptools/__init__.py +245 -0
- quarchpy/venv/Lib/site-packages/setuptools/_deprecation_warning.py +7 -0
- quarchpy/venv/Lib/site-packages/setuptools/_imp.py +73 -0
- quarchpy/venv/Lib/site-packages/setuptools/_vendor/__init__.py +0 -0
- quarchpy/venv/Lib/site-packages/setuptools/_vendor/ordered_set.py +488 -0
- quarchpy/venv/Lib/site-packages/setuptools/_vendor/packaging/__about__.py +27 -0
- quarchpy/venv/Lib/site-packages/setuptools/_vendor/packaging/__init__.py +26 -0
- quarchpy/venv/Lib/site-packages/setuptools/_vendor/packaging/_compat.py +31 -0
- quarchpy/venv/Lib/site-packages/setuptools/_vendor/packaging/_structures.py +68 -0
- quarchpy/venv/Lib/site-packages/setuptools/_vendor/packaging/markers.py +296 -0
- quarchpy/venv/Lib/site-packages/setuptools/_vendor/packaging/requirements.py +138 -0
- quarchpy/venv/Lib/site-packages/setuptools/_vendor/packaging/specifiers.py +749 -0
- quarchpy/venv/Lib/site-packages/setuptools/_vendor/packaging/tags.py +404 -0
- quarchpy/venv/Lib/site-packages/setuptools/_vendor/packaging/utils.py +57 -0
- quarchpy/venv/Lib/site-packages/setuptools/_vendor/packaging/version.py +420 -0
- quarchpy/venv/Lib/site-packages/setuptools/_vendor/pyparsing.py +5742 -0
- quarchpy/venv/Lib/site-packages/setuptools/_vendor/six.py +868 -0
- quarchpy/venv/Lib/site-packages/setuptools/archive_util.py +173 -0
- quarchpy/venv/Lib/site-packages/setuptools/build_meta.py +264 -0
- quarchpy/venv/Lib/site-packages/setuptools/cli-32.exe +0 -0
- quarchpy/venv/Lib/site-packages/setuptools/cli-64.exe +0 -0
- quarchpy/venv/Lib/site-packages/setuptools/cli.exe +0 -0
- quarchpy/venv/Lib/site-packages/setuptools/command/__init__.py +17 -0
- quarchpy/venv/Lib/site-packages/setuptools/command/alias.py +80 -0
- quarchpy/venv/Lib/site-packages/setuptools/command/bdist_egg.py +502 -0
- quarchpy/venv/Lib/site-packages/setuptools/command/bdist_rpm.py +43 -0
- quarchpy/venv/Lib/site-packages/setuptools/command/bdist_wininst.py +21 -0
- quarchpy/venv/Lib/site-packages/setuptools/command/build_clib.py +98 -0
- quarchpy/venv/Lib/site-packages/setuptools/command/build_ext.py +327 -0
- quarchpy/venv/Lib/site-packages/setuptools/command/build_py.py +270 -0
- quarchpy/venv/Lib/site-packages/setuptools/command/develop.py +221 -0
- quarchpy/venv/Lib/site-packages/setuptools/command/dist_info.py +36 -0
- quarchpy/venv/Lib/site-packages/setuptools/command/easy_install.py +2347 -0
- quarchpy/venv/Lib/site-packages/setuptools/command/egg_info.py +717 -0
- quarchpy/venv/Lib/site-packages/setuptools/command/install.py +125 -0
- quarchpy/venv/Lib/site-packages/setuptools/command/install_egg_info.py +62 -0
- quarchpy/venv/Lib/site-packages/setuptools/command/install_lib.py +121 -0
- quarchpy/venv/Lib/site-packages/setuptools/command/install_scripts.py +65 -0
- quarchpy/venv/Lib/site-packages/setuptools/command/launcher manifest.xml +15 -0
- quarchpy/venv/Lib/site-packages/setuptools/command/py36compat.py +136 -0
- quarchpy/venv/Lib/site-packages/setuptools/command/register.py +18 -0
- quarchpy/venv/Lib/site-packages/setuptools/command/rotate.py +66 -0
- quarchpy/venv/Lib/site-packages/setuptools/command/saveopts.py +22 -0
- quarchpy/venv/Lib/site-packages/setuptools/command/sdist.py +252 -0
- quarchpy/venv/Lib/site-packages/setuptools/command/setopt.py +149 -0
- quarchpy/venv/Lib/site-packages/setuptools/command/test.py +279 -0
- quarchpy/venv/Lib/site-packages/setuptools/command/upload.py +17 -0
- quarchpy/venv/Lib/site-packages/setuptools/command/upload_docs.py +206 -0
- quarchpy/venv/Lib/site-packages/setuptools/config.py +659 -0
- quarchpy/venv/Lib/site-packages/setuptools/dep_util.py +23 -0
- quarchpy/venv/Lib/site-packages/setuptools/depends.py +176 -0
- quarchpy/venv/Lib/site-packages/setuptools/dist.py +1274 -0
- quarchpy/venv/Lib/site-packages/setuptools/errors.py +16 -0
- quarchpy/venv/Lib/site-packages/setuptools/extension.py +57 -0
- quarchpy/venv/Lib/site-packages/setuptools/extern/__init__.py +73 -0
- quarchpy/venv/Lib/site-packages/setuptools/glob.py +174 -0
- quarchpy/venv/Lib/site-packages/setuptools/gui-32.exe +0 -0
- quarchpy/venv/Lib/site-packages/setuptools/gui-64.exe +0 -0
- quarchpy/venv/Lib/site-packages/setuptools/gui.exe +0 -0
- quarchpy/venv/Lib/site-packages/setuptools/installer.py +150 -0
- quarchpy/venv/Lib/site-packages/setuptools/launch.py +35 -0
- quarchpy/venv/Lib/site-packages/setuptools/lib2to3_ex.py +62 -0
- quarchpy/venv/Lib/site-packages/setuptools/monkey.py +179 -0
- quarchpy/venv/Lib/site-packages/setuptools/msvc.py +1679 -0
- quarchpy/venv/Lib/site-packages/setuptools/namespaces.py +107 -0
- quarchpy/venv/Lib/site-packages/setuptools/package_index.py +1136 -0
- quarchpy/venv/Lib/site-packages/setuptools/py27compat.py +60 -0
- quarchpy/venv/Lib/site-packages/setuptools/py31compat.py +32 -0
- quarchpy/venv/Lib/site-packages/setuptools/py33compat.py +59 -0
- quarchpy/venv/Lib/site-packages/setuptools/py34compat.py +13 -0
- quarchpy/venv/Lib/site-packages/setuptools/sandbox.py +491 -0
- quarchpy/venv/Lib/site-packages/setuptools/script (dev).tmpl +6 -0
- quarchpy/venv/Lib/site-packages/setuptools/script.tmpl +3 -0
- quarchpy/venv/Lib/site-packages/setuptools/site-patch.py +74 -0
- quarchpy/venv/Lib/site-packages/setuptools/ssl_support.py +260 -0
- quarchpy/venv/Lib/site-packages/setuptools/unicode_utils.py +44 -0
- quarchpy/venv/Lib/site-packages/setuptools/version.py +6 -0
- quarchpy/venv/Lib/site-packages/setuptools/wheel.py +220 -0
- quarchpy/venv/Lib/site-packages/setuptools/windows_support.py +29 -0
- quarchpy/venv/Lib/site-packages/setuptools-44.1.1.dist-info/INSTALLER +1 -0
- quarchpy/venv/Lib/site-packages/setuptools-44.1.1.dist-info/LICENSE +19 -0
- quarchpy/venv/Lib/site-packages/setuptools-44.1.1.dist-info/METADATA +86 -0
- quarchpy/venv/Lib/site-packages/setuptools-44.1.1.dist-info/RECORD +207 -0
- quarchpy/venv/Lib/site-packages/setuptools-44.1.1.dist-info/WHEEL +6 -0
- quarchpy/venv/Lib/site-packages/setuptools-44.1.1.dist-info/dependency_links.txt +2 -0
- quarchpy/venv/Lib/site-packages/setuptools-44.1.1.dist-info/entry_points.txt +69 -0
- quarchpy/venv/Lib/site-packages/setuptools-44.1.1.dist-info/top_level.txt +3 -0
- quarchpy/venv/Lib/site-packages/setuptools-44.1.1.dist-info/zip-safe +1 -0
- quarchpy/venv/Lib/site-packages/setuptools-44.1.1.virtualenv +0 -0
- quarchpy/venv/Lib/site-packages/wheel/__init__.py +1 -0
- quarchpy/venv/Lib/site-packages/wheel/__main__.py +19 -0
- quarchpy/venv/Lib/site-packages/wheel/bdist_wheel.py +492 -0
- quarchpy/venv/Lib/site-packages/wheel/cli/__init__.py +88 -0
- quarchpy/venv/Lib/site-packages/wheel/cli/convert.py +269 -0
- quarchpy/venv/Lib/site-packages/wheel/cli/pack.py +82 -0
- quarchpy/venv/Lib/site-packages/wheel/cli/unpack.py +25 -0
- quarchpy/venv/Lib/site-packages/wheel/macosx_libfile.py +428 -0
- quarchpy/venv/Lib/site-packages/wheel/metadata.py +133 -0
- quarchpy/venv/Lib/site-packages/wheel/pkginfo.py +43 -0
- quarchpy/venv/Lib/site-packages/wheel/util.py +46 -0
- quarchpy/venv/Lib/site-packages/wheel/vendored/__init__.py +0 -0
- quarchpy/venv/Lib/site-packages/wheel/vendored/packaging/__init__.py +0 -0
- quarchpy/venv/Lib/site-packages/wheel/vendored/packaging/_typing.py +48 -0
- quarchpy/venv/Lib/site-packages/wheel/vendored/packaging/tags.py +866 -0
- quarchpy/venv/Lib/site-packages/wheel/wheelfile.py +181 -0
- quarchpy/venv/Lib/site-packages/wheel-0.37.1.dist-info/INSTALLER +1 -0
- quarchpy/venv/Lib/site-packages/wheel-0.37.1.dist-info/LICENSE.txt +22 -0
- quarchpy/venv/Lib/site-packages/wheel-0.37.1.dist-info/METADATA +69 -0
- quarchpy/venv/Lib/site-packages/wheel-0.37.1.dist-info/RECORD +49 -0
- quarchpy/venv/Lib/site-packages/wheel-0.37.1.dist-info/WHEEL +6 -0
- quarchpy/venv/Lib/site-packages/wheel-0.37.1.dist-info/entry_points.txt +6 -0
- quarchpy/venv/Lib/site-packages/wheel-0.37.1.dist-info/top_level.txt +1 -0
- quarchpy/venv/Lib/site-packages/wheel-0.37.1.virtualenv +0 -0
- quarchpy/venv/Lib/site.py +190 -0
- quarchpy/venv/Lib/site.pyc +0 -0
- quarchpy/venv/Scripts/activate +83 -0
- quarchpy/venv/Scripts/activate.bat +39 -0
- quarchpy/venv/Scripts/activate.fish +100 -0
- quarchpy/venv/Scripts/activate.nu +41 -0
- quarchpy/venv/Scripts/activate.ps1 +60 -0
- quarchpy/venv/Scripts/activate_this.py +32 -0
- quarchpy/venv/Scripts/deactivate.bat +19 -0
- quarchpy/venv/Scripts/deactivate.nu +11 -0
- quarchpy/venv/Scripts/easy_install-2.7.exe +0 -0
- quarchpy/venv/Scripts/easy_install.exe +0 -0
- quarchpy/venv/Scripts/easy_install2.7.exe +0 -0
- quarchpy/venv/Scripts/easy_install2.exe +0 -0
- quarchpy/venv/Scripts/pip-2.7.exe +0 -0
- quarchpy/venv/Scripts/pip.exe +0 -0
- quarchpy/venv/Scripts/pip2.7.exe +0 -0
- quarchpy/venv/Scripts/pip2.exe +0 -0
- quarchpy/venv/Scripts/pydoc.bat +1 -0
- quarchpy/venv/Scripts/python.exe +0 -0
- quarchpy/venv/Scripts/python27.dll +0 -0
- quarchpy/venv/Scripts/pythonw.exe +0 -0
- quarchpy/venv/Scripts/wheel-2.7.exe +0 -0
- quarchpy/venv/Scripts/wheel.exe +0 -0
- quarchpy/venv/Scripts/wheel2.7.exe +0 -0
- quarchpy/venv/Scripts/wheel2.exe +0 -0
- quarchpy/venv/libs/_bsddb.lib +0 -0
- quarchpy/venv/libs/_ctypes.lib +0 -0
- quarchpy/venv/libs/_ctypes_test.lib +0 -0
- quarchpy/venv/libs/_elementtree.lib +0 -0
- quarchpy/venv/libs/_hashlib.lib +0 -0
- quarchpy/venv/libs/_msi.lib +0 -0
- quarchpy/venv/libs/_multiprocessing.lib +0 -0
- quarchpy/venv/libs/_socket.lib +0 -0
- quarchpy/venv/libs/_sqlite3.lib +0 -0
- quarchpy/venv/libs/_ssl.lib +0 -0
- quarchpy/venv/libs/_testcapi.lib +0 -0
- quarchpy/venv/libs/_tkinter.lib +0 -0
- quarchpy/venv/libs/bz2.lib +0 -0
- quarchpy/venv/libs/libpython27.a +0 -0
- quarchpy/venv/libs/pyexpat.lib +0 -0
- quarchpy/venv/libs/python27.lib +0 -0
- quarchpy/venv/libs/select.lib +0 -0
- quarchpy/venv/libs/unicodedata.lib +0 -0
- quarchpy/venv/libs/winsound.lib +0 -0
- quarchpy/venv/pyvenv.cfg +8 -0
- {quarchpy-2.1.13.dev2.dist-info → quarchpy-2.1.14.dist-info}/METADATA +12 -2
- quarchpy-2.1.14.dist-info/RECORD +1216 -0
- quarchpy/.idea/inspectionProfiles/Project_Default.xml +0 -26
- quarchpy/connection_specific/connection_QIS.py.bak +0 -1821
- quarchpy/connection_specific/usb_libs/__pycache__/libusb1.cpython-311.pyc +0 -0
- quarchpy/connection_specific/usb_libs/__pycache__/usb1.cpython-311.pyc +0 -0
- quarchpy/debug/TextScanIP.py +0 -11
- quarchpy/device/device.py.bak +0 -504
- quarchpy/device/scanDevices.py.bak +0 -661
- quarchpy/user_interface/user_interface.py.bak +0 -749
- quarchpy/utilities/TestCenter.py.bak +0 -150
- quarchpy-2.1.13.dev2.dist-info/RECORD +0 -542
- {quarchpy-2.1.13.dev2.dist-info → quarchpy-2.1.14.dist-info}/WHEEL +0 -0
- {quarchpy-2.1.13.dev2.dist-info → quarchpy-2.1.14.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,786 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
#
|
3
|
+
# Copyright (C) 2012 The Python Software Foundation.
|
4
|
+
# See LICENSE.txt and CONTRIBUTORS.txt.
|
5
|
+
#
|
6
|
+
"""Access to Python's configuration information."""
|
7
|
+
|
8
|
+
import codecs
|
9
|
+
import os
|
10
|
+
import re
|
11
|
+
import sys
|
12
|
+
from os.path import pardir, realpath
|
13
|
+
try:
|
14
|
+
import configparser
|
15
|
+
except ImportError:
|
16
|
+
import ConfigParser as configparser
|
17
|
+
|
18
|
+
|
19
|
+
__all__ = [
|
20
|
+
'get_config_h_filename',
|
21
|
+
'get_config_var',
|
22
|
+
'get_config_vars',
|
23
|
+
'get_makefile_filename',
|
24
|
+
'get_path',
|
25
|
+
'get_path_names',
|
26
|
+
'get_paths',
|
27
|
+
'get_platform',
|
28
|
+
'get_python_version',
|
29
|
+
'get_scheme_names',
|
30
|
+
'parse_config_h',
|
31
|
+
]
|
32
|
+
|
33
|
+
|
34
|
+
def _safe_realpath(path):
|
35
|
+
try:
|
36
|
+
return realpath(path)
|
37
|
+
except OSError:
|
38
|
+
return path
|
39
|
+
|
40
|
+
|
41
|
+
if sys.executable:
|
42
|
+
_PROJECT_BASE = os.path.dirname(_safe_realpath(sys.executable))
|
43
|
+
else:
|
44
|
+
# sys.executable can be empty if argv[0] has been changed and Python is
|
45
|
+
# unable to retrieve the real program name
|
46
|
+
_PROJECT_BASE = _safe_realpath(os.getcwd())
|
47
|
+
|
48
|
+
if os.name == "nt" and "pcbuild" in _PROJECT_BASE[-8:].lower():
|
49
|
+
_PROJECT_BASE = _safe_realpath(os.path.join(_PROJECT_BASE, pardir))
|
50
|
+
# PC/VS7.1
|
51
|
+
if os.name == "nt" and "\\pc\\v" in _PROJECT_BASE[-10:].lower():
|
52
|
+
_PROJECT_BASE = _safe_realpath(os.path.join(_PROJECT_BASE, pardir, pardir))
|
53
|
+
# PC/AMD64
|
54
|
+
if os.name == "nt" and "\\pcbuild\\amd64" in _PROJECT_BASE[-14:].lower():
|
55
|
+
_PROJECT_BASE = _safe_realpath(os.path.join(_PROJECT_BASE, pardir, pardir))
|
56
|
+
|
57
|
+
|
58
|
+
def is_python_build():
|
59
|
+
for fn in ("Setup.dist", "Setup.local"):
|
60
|
+
if os.path.isfile(os.path.join(_PROJECT_BASE, "Modules", fn)):
|
61
|
+
return True
|
62
|
+
return False
|
63
|
+
|
64
|
+
_PYTHON_BUILD = is_python_build()
|
65
|
+
|
66
|
+
_cfg_read = False
|
67
|
+
|
68
|
+
def _ensure_cfg_read():
|
69
|
+
global _cfg_read
|
70
|
+
if not _cfg_read:
|
71
|
+
from ..resources import finder
|
72
|
+
backport_package = __name__.rsplit('.', 1)[0]
|
73
|
+
_finder = finder(backport_package)
|
74
|
+
_cfgfile = _finder.find('sysconfig.cfg')
|
75
|
+
assert _cfgfile, 'sysconfig.cfg exists'
|
76
|
+
with _cfgfile.as_stream() as s:
|
77
|
+
_SCHEMES.readfp(s)
|
78
|
+
if _PYTHON_BUILD:
|
79
|
+
for scheme in ('posix_prefix', 'posix_home'):
|
80
|
+
_SCHEMES.set(scheme, 'include', '{srcdir}/Include')
|
81
|
+
_SCHEMES.set(scheme, 'platinclude', '{projectbase}/.')
|
82
|
+
|
83
|
+
_cfg_read = True
|
84
|
+
|
85
|
+
|
86
|
+
_SCHEMES = configparser.RawConfigParser()
|
87
|
+
_VAR_REPL = re.compile(r'\{([^{]*?)\}')
|
88
|
+
|
89
|
+
def _expand_globals(config):
|
90
|
+
_ensure_cfg_read()
|
91
|
+
if config.has_section('globals'):
|
92
|
+
globals = config.items('globals')
|
93
|
+
else:
|
94
|
+
globals = tuple()
|
95
|
+
|
96
|
+
sections = config.sections()
|
97
|
+
for section in sections:
|
98
|
+
if section == 'globals':
|
99
|
+
continue
|
100
|
+
for option, value in globals:
|
101
|
+
if config.has_option(section, option):
|
102
|
+
continue
|
103
|
+
config.set(section, option, value)
|
104
|
+
config.remove_section('globals')
|
105
|
+
|
106
|
+
# now expanding local variables defined in the cfg file
|
107
|
+
#
|
108
|
+
for section in config.sections():
|
109
|
+
variables = dict(config.items(section))
|
110
|
+
|
111
|
+
def _replacer(matchobj):
|
112
|
+
name = matchobj.group(1)
|
113
|
+
if name in variables:
|
114
|
+
return variables[name]
|
115
|
+
return matchobj.group(0)
|
116
|
+
|
117
|
+
for option, value in config.items(section):
|
118
|
+
config.set(section, option, _VAR_REPL.sub(_replacer, value))
|
119
|
+
|
120
|
+
#_expand_globals(_SCHEMES)
|
121
|
+
|
122
|
+
_PY_VERSION = '%s.%s.%s' % sys.version_info[:3]
|
123
|
+
_PY_VERSION_SHORT = '%s.%s' % sys.version_info[:2]
|
124
|
+
_PY_VERSION_SHORT_NO_DOT = '%s%s' % sys.version_info[:2]
|
125
|
+
_PREFIX = os.path.normpath(sys.prefix)
|
126
|
+
_EXEC_PREFIX = os.path.normpath(sys.exec_prefix)
|
127
|
+
_CONFIG_VARS = None
|
128
|
+
_USER_BASE = None
|
129
|
+
|
130
|
+
|
131
|
+
def _subst_vars(path, local_vars):
|
132
|
+
"""In the string `path`, replace tokens like {some.thing} with the
|
133
|
+
corresponding value from the map `local_vars`.
|
134
|
+
|
135
|
+
If there is no corresponding value, leave the token unchanged.
|
136
|
+
"""
|
137
|
+
def _replacer(matchobj):
|
138
|
+
name = matchobj.group(1)
|
139
|
+
if name in local_vars:
|
140
|
+
return local_vars[name]
|
141
|
+
elif name in os.environ:
|
142
|
+
return os.environ[name]
|
143
|
+
return matchobj.group(0)
|
144
|
+
return _VAR_REPL.sub(_replacer, path)
|
145
|
+
|
146
|
+
|
147
|
+
def _extend_dict(target_dict, other_dict):
|
148
|
+
target_keys = target_dict.keys()
|
149
|
+
for key, value in other_dict.items():
|
150
|
+
if key in target_keys:
|
151
|
+
continue
|
152
|
+
target_dict[key] = value
|
153
|
+
|
154
|
+
|
155
|
+
def _expand_vars(scheme, vars):
|
156
|
+
res = {}
|
157
|
+
if vars is None:
|
158
|
+
vars = {}
|
159
|
+
_extend_dict(vars, get_config_vars())
|
160
|
+
|
161
|
+
for key, value in _SCHEMES.items(scheme):
|
162
|
+
if os.name in ('posix', 'nt'):
|
163
|
+
value = os.path.expanduser(value)
|
164
|
+
res[key] = os.path.normpath(_subst_vars(value, vars))
|
165
|
+
return res
|
166
|
+
|
167
|
+
|
168
|
+
def format_value(value, vars):
|
169
|
+
def _replacer(matchobj):
|
170
|
+
name = matchobj.group(1)
|
171
|
+
if name in vars:
|
172
|
+
return vars[name]
|
173
|
+
return matchobj.group(0)
|
174
|
+
return _VAR_REPL.sub(_replacer, value)
|
175
|
+
|
176
|
+
|
177
|
+
def _get_default_scheme():
|
178
|
+
if os.name == 'posix':
|
179
|
+
# the default scheme for posix is posix_prefix
|
180
|
+
return 'posix_prefix'
|
181
|
+
return os.name
|
182
|
+
|
183
|
+
|
184
|
+
def _getuserbase():
|
185
|
+
env_base = os.environ.get("PYTHONUSERBASE", None)
|
186
|
+
|
187
|
+
def joinuser(*args):
|
188
|
+
return os.path.expanduser(os.path.join(*args))
|
189
|
+
|
190
|
+
# what about 'os2emx', 'riscos' ?
|
191
|
+
if os.name == "nt":
|
192
|
+
base = os.environ.get("APPDATA") or "~"
|
193
|
+
if env_base:
|
194
|
+
return env_base
|
195
|
+
else:
|
196
|
+
return joinuser(base, "Python")
|
197
|
+
|
198
|
+
if sys.platform == "darwin":
|
199
|
+
framework = get_config_var("PYTHONFRAMEWORK")
|
200
|
+
if framework:
|
201
|
+
if env_base:
|
202
|
+
return env_base
|
203
|
+
else:
|
204
|
+
return joinuser("~", "Library", framework, "%d.%d" %
|
205
|
+
sys.version_info[:2])
|
206
|
+
|
207
|
+
if env_base:
|
208
|
+
return env_base
|
209
|
+
else:
|
210
|
+
return joinuser("~", ".local")
|
211
|
+
|
212
|
+
|
213
|
+
def _parse_makefile(filename, vars=None):
|
214
|
+
"""Parse a Makefile-style file.
|
215
|
+
|
216
|
+
A dictionary containing name/value pairs is returned. If an
|
217
|
+
optional dictionary is passed in as the second argument, it is
|
218
|
+
used instead of a new dictionary.
|
219
|
+
"""
|
220
|
+
# Regexes needed for parsing Makefile (and similar syntaxes,
|
221
|
+
# like old-style Setup files).
|
222
|
+
_variable_rx = re.compile(r"([a-zA-Z][a-zA-Z0-9_]+)\s*=\s*(.*)")
|
223
|
+
_findvar1_rx = re.compile(r"\$\(([A-Za-z][A-Za-z0-9_]*)\)")
|
224
|
+
_findvar2_rx = re.compile(r"\${([A-Za-z][A-Za-z0-9_]*)}")
|
225
|
+
|
226
|
+
if vars is None:
|
227
|
+
vars = {}
|
228
|
+
done = {}
|
229
|
+
notdone = {}
|
230
|
+
|
231
|
+
with codecs.open(filename, encoding='utf-8', errors="surrogateescape") as f:
|
232
|
+
lines = f.readlines()
|
233
|
+
|
234
|
+
for line in lines:
|
235
|
+
if line.startswith('#') or line.strip() == '':
|
236
|
+
continue
|
237
|
+
m = _variable_rx.match(line)
|
238
|
+
if m:
|
239
|
+
n, v = m.group(1, 2)
|
240
|
+
v = v.strip()
|
241
|
+
# `$$' is a literal `$' in make
|
242
|
+
tmpv = v.replace('$$', '')
|
243
|
+
|
244
|
+
if "$" in tmpv:
|
245
|
+
notdone[n] = v
|
246
|
+
else:
|
247
|
+
try:
|
248
|
+
v = int(v)
|
249
|
+
except ValueError:
|
250
|
+
# insert literal `$'
|
251
|
+
done[n] = v.replace('$$', '$')
|
252
|
+
else:
|
253
|
+
done[n] = v
|
254
|
+
|
255
|
+
# do variable interpolation here
|
256
|
+
variables = list(notdone.keys())
|
257
|
+
|
258
|
+
# Variables with a 'PY_' prefix in the makefile. These need to
|
259
|
+
# be made available without that prefix through sysconfig.
|
260
|
+
# Special care is needed to ensure that variable expansion works, even
|
261
|
+
# if the expansion uses the name without a prefix.
|
262
|
+
renamed_variables = ('CFLAGS', 'LDFLAGS', 'CPPFLAGS')
|
263
|
+
|
264
|
+
while len(variables) > 0:
|
265
|
+
for name in tuple(variables):
|
266
|
+
value = notdone[name]
|
267
|
+
m = _findvar1_rx.search(value) or _findvar2_rx.search(value)
|
268
|
+
if m is not None:
|
269
|
+
n = m.group(1)
|
270
|
+
found = True
|
271
|
+
if n in done:
|
272
|
+
item = str(done[n])
|
273
|
+
elif n in notdone:
|
274
|
+
# get it on a subsequent round
|
275
|
+
found = False
|
276
|
+
elif n in os.environ:
|
277
|
+
# do it like make: fall back to environment
|
278
|
+
item = os.environ[n]
|
279
|
+
|
280
|
+
elif n in renamed_variables:
|
281
|
+
if (name.startswith('PY_') and
|
282
|
+
name[3:] in renamed_variables):
|
283
|
+
item = ""
|
284
|
+
|
285
|
+
elif 'PY_' + n in notdone:
|
286
|
+
found = False
|
287
|
+
|
288
|
+
else:
|
289
|
+
item = str(done['PY_' + n])
|
290
|
+
|
291
|
+
else:
|
292
|
+
done[n] = item = ""
|
293
|
+
|
294
|
+
if found:
|
295
|
+
after = value[m.end():]
|
296
|
+
value = value[:m.start()] + item + after
|
297
|
+
if "$" in after:
|
298
|
+
notdone[name] = value
|
299
|
+
else:
|
300
|
+
try:
|
301
|
+
value = int(value)
|
302
|
+
except ValueError:
|
303
|
+
done[name] = value.strip()
|
304
|
+
else:
|
305
|
+
done[name] = value
|
306
|
+
variables.remove(name)
|
307
|
+
|
308
|
+
if (name.startswith('PY_') and
|
309
|
+
name[3:] in renamed_variables):
|
310
|
+
|
311
|
+
name = name[3:]
|
312
|
+
if name not in done:
|
313
|
+
done[name] = value
|
314
|
+
|
315
|
+
else:
|
316
|
+
# bogus variable reference (e.g. "prefix=$/opt/python");
|
317
|
+
# just drop it since we can't deal
|
318
|
+
done[name] = value
|
319
|
+
variables.remove(name)
|
320
|
+
|
321
|
+
# strip spurious spaces
|
322
|
+
for k, v in done.items():
|
323
|
+
if isinstance(v, str):
|
324
|
+
done[k] = v.strip()
|
325
|
+
|
326
|
+
# save the results in the global dictionary
|
327
|
+
vars.update(done)
|
328
|
+
return vars
|
329
|
+
|
330
|
+
|
331
|
+
def get_makefile_filename():
|
332
|
+
"""Return the path of the Makefile."""
|
333
|
+
if _PYTHON_BUILD:
|
334
|
+
return os.path.join(_PROJECT_BASE, "Makefile")
|
335
|
+
if hasattr(sys, 'abiflags'):
|
336
|
+
config_dir_name = 'config-%s%s' % (_PY_VERSION_SHORT, sys.abiflags)
|
337
|
+
else:
|
338
|
+
config_dir_name = 'config'
|
339
|
+
return os.path.join(get_path('stdlib'), config_dir_name, 'Makefile')
|
340
|
+
|
341
|
+
|
342
|
+
def _init_posix(vars):
|
343
|
+
"""Initialize the module as appropriate for POSIX systems."""
|
344
|
+
# load the installed Makefile:
|
345
|
+
makefile = get_makefile_filename()
|
346
|
+
try:
|
347
|
+
_parse_makefile(makefile, vars)
|
348
|
+
except IOError as e:
|
349
|
+
msg = "invalid Python installation: unable to open %s" % makefile
|
350
|
+
if hasattr(e, "strerror"):
|
351
|
+
msg = msg + " (%s)" % e.strerror
|
352
|
+
raise IOError(msg)
|
353
|
+
# load the installed pyconfig.h:
|
354
|
+
config_h = get_config_h_filename()
|
355
|
+
try:
|
356
|
+
with open(config_h) as f:
|
357
|
+
parse_config_h(f, vars)
|
358
|
+
except IOError as e:
|
359
|
+
msg = "invalid Python installation: unable to open %s" % config_h
|
360
|
+
if hasattr(e, "strerror"):
|
361
|
+
msg = msg + " (%s)" % e.strerror
|
362
|
+
raise IOError(msg)
|
363
|
+
# On AIX, there are wrong paths to the linker scripts in the Makefile
|
364
|
+
# -- these paths are relative to the Python source, but when installed
|
365
|
+
# the scripts are in another directory.
|
366
|
+
if _PYTHON_BUILD:
|
367
|
+
vars['LDSHARED'] = vars['BLDSHARED']
|
368
|
+
|
369
|
+
|
370
|
+
def _init_non_posix(vars):
|
371
|
+
"""Initialize the module as appropriate for NT"""
|
372
|
+
# set basic install directories
|
373
|
+
vars['LIBDEST'] = get_path('stdlib')
|
374
|
+
vars['BINLIBDEST'] = get_path('platstdlib')
|
375
|
+
vars['INCLUDEPY'] = get_path('include')
|
376
|
+
vars['SO'] = '.pyd'
|
377
|
+
vars['EXE'] = '.exe'
|
378
|
+
vars['VERSION'] = _PY_VERSION_SHORT_NO_DOT
|
379
|
+
vars['BINDIR'] = os.path.dirname(_safe_realpath(sys.executable))
|
380
|
+
|
381
|
+
#
|
382
|
+
# public APIs
|
383
|
+
#
|
384
|
+
|
385
|
+
|
386
|
+
def parse_config_h(fp, vars=None):
|
387
|
+
"""Parse a config.h-style file.
|
388
|
+
|
389
|
+
A dictionary containing name/value pairs is returned. If an
|
390
|
+
optional dictionary is passed in as the second argument, it is
|
391
|
+
used instead of a new dictionary.
|
392
|
+
"""
|
393
|
+
if vars is None:
|
394
|
+
vars = {}
|
395
|
+
define_rx = re.compile("#define ([A-Z][A-Za-z0-9_]+) (.*)\n")
|
396
|
+
undef_rx = re.compile("/[*] #undef ([A-Z][A-Za-z0-9_]+) [*]/\n")
|
397
|
+
|
398
|
+
while True:
|
399
|
+
line = fp.readline()
|
400
|
+
if not line:
|
401
|
+
break
|
402
|
+
m = define_rx.match(line)
|
403
|
+
if m:
|
404
|
+
n, v = m.group(1, 2)
|
405
|
+
try:
|
406
|
+
v = int(v)
|
407
|
+
except ValueError:
|
408
|
+
pass
|
409
|
+
vars[n] = v
|
410
|
+
else:
|
411
|
+
m = undef_rx.match(line)
|
412
|
+
if m:
|
413
|
+
vars[m.group(1)] = 0
|
414
|
+
return vars
|
415
|
+
|
416
|
+
|
417
|
+
def get_config_h_filename():
|
418
|
+
"""Return the path of pyconfig.h."""
|
419
|
+
if _PYTHON_BUILD:
|
420
|
+
if os.name == "nt":
|
421
|
+
inc_dir = os.path.join(_PROJECT_BASE, "PC")
|
422
|
+
else:
|
423
|
+
inc_dir = _PROJECT_BASE
|
424
|
+
else:
|
425
|
+
inc_dir = get_path('platinclude')
|
426
|
+
return os.path.join(inc_dir, 'pyconfig.h')
|
427
|
+
|
428
|
+
|
429
|
+
def get_scheme_names():
|
430
|
+
"""Return a tuple containing the schemes names."""
|
431
|
+
return tuple(sorted(_SCHEMES.sections()))
|
432
|
+
|
433
|
+
|
434
|
+
def get_path_names():
|
435
|
+
"""Return a tuple containing the paths names."""
|
436
|
+
# xxx see if we want a static list
|
437
|
+
return _SCHEMES.options('posix_prefix')
|
438
|
+
|
439
|
+
|
440
|
+
def get_paths(scheme=_get_default_scheme(), vars=None, expand=True):
|
441
|
+
"""Return a mapping containing an install scheme.
|
442
|
+
|
443
|
+
``scheme`` is the install scheme name. If not provided, it will
|
444
|
+
return the default scheme for the current platform.
|
445
|
+
"""
|
446
|
+
_ensure_cfg_read()
|
447
|
+
if expand:
|
448
|
+
return _expand_vars(scheme, vars)
|
449
|
+
else:
|
450
|
+
return dict(_SCHEMES.items(scheme))
|
451
|
+
|
452
|
+
|
453
|
+
def get_path(name, scheme=_get_default_scheme(), vars=None, expand=True):
|
454
|
+
"""Return a path corresponding to the scheme.
|
455
|
+
|
456
|
+
``scheme`` is the install scheme name.
|
457
|
+
"""
|
458
|
+
return get_paths(scheme, vars, expand)[name]
|
459
|
+
|
460
|
+
|
461
|
+
def get_config_vars(*args):
|
462
|
+
"""With no arguments, return a dictionary of all configuration
|
463
|
+
variables relevant for the current platform.
|
464
|
+
|
465
|
+
On Unix, this means every variable defined in Python's installed Makefile;
|
466
|
+
On Windows and Mac OS it's a much smaller set.
|
467
|
+
|
468
|
+
With arguments, return a list of values that result from looking up
|
469
|
+
each argument in the configuration variable dictionary.
|
470
|
+
"""
|
471
|
+
global _CONFIG_VARS
|
472
|
+
if _CONFIG_VARS is None:
|
473
|
+
_CONFIG_VARS = {}
|
474
|
+
# Normalized versions of prefix and exec_prefix are handy to have;
|
475
|
+
# in fact, these are the standard versions used most places in the
|
476
|
+
# distutils2 module.
|
477
|
+
_CONFIG_VARS['prefix'] = _PREFIX
|
478
|
+
_CONFIG_VARS['exec_prefix'] = _EXEC_PREFIX
|
479
|
+
_CONFIG_VARS['py_version'] = _PY_VERSION
|
480
|
+
_CONFIG_VARS['py_version_short'] = _PY_VERSION_SHORT
|
481
|
+
_CONFIG_VARS['py_version_nodot'] = _PY_VERSION[0] + _PY_VERSION[2]
|
482
|
+
_CONFIG_VARS['base'] = _PREFIX
|
483
|
+
_CONFIG_VARS['platbase'] = _EXEC_PREFIX
|
484
|
+
_CONFIG_VARS['projectbase'] = _PROJECT_BASE
|
485
|
+
try:
|
486
|
+
_CONFIG_VARS['abiflags'] = sys.abiflags
|
487
|
+
except AttributeError:
|
488
|
+
# sys.abiflags may not be defined on all platforms.
|
489
|
+
_CONFIG_VARS['abiflags'] = ''
|
490
|
+
|
491
|
+
if os.name in ('nt', 'os2'):
|
492
|
+
_init_non_posix(_CONFIG_VARS)
|
493
|
+
if os.name == 'posix':
|
494
|
+
_init_posix(_CONFIG_VARS)
|
495
|
+
# Setting 'userbase' is done below the call to the
|
496
|
+
# init function to enable using 'get_config_var' in
|
497
|
+
# the init-function.
|
498
|
+
if sys.version >= '2.6':
|
499
|
+
_CONFIG_VARS['userbase'] = _getuserbase()
|
500
|
+
|
501
|
+
if 'srcdir' not in _CONFIG_VARS:
|
502
|
+
_CONFIG_VARS['srcdir'] = _PROJECT_BASE
|
503
|
+
else:
|
504
|
+
_CONFIG_VARS['srcdir'] = _safe_realpath(_CONFIG_VARS['srcdir'])
|
505
|
+
|
506
|
+
# Convert srcdir into an absolute path if it appears necessary.
|
507
|
+
# Normally it is relative to the build directory. However, during
|
508
|
+
# testing, for example, we might be running a non-installed python
|
509
|
+
# from a different directory.
|
510
|
+
if _PYTHON_BUILD and os.name == "posix":
|
511
|
+
base = _PROJECT_BASE
|
512
|
+
try:
|
513
|
+
cwd = os.getcwd()
|
514
|
+
except OSError:
|
515
|
+
cwd = None
|
516
|
+
if (not os.path.isabs(_CONFIG_VARS['srcdir']) and
|
517
|
+
base != cwd):
|
518
|
+
# srcdir is relative and we are not in the same directory
|
519
|
+
# as the executable. Assume executable is in the build
|
520
|
+
# directory and make srcdir absolute.
|
521
|
+
srcdir = os.path.join(base, _CONFIG_VARS['srcdir'])
|
522
|
+
_CONFIG_VARS['srcdir'] = os.path.normpath(srcdir)
|
523
|
+
|
524
|
+
if sys.platform == 'darwin':
|
525
|
+
kernel_version = os.uname()[2] # Kernel version (8.4.3)
|
526
|
+
major_version = int(kernel_version.split('.')[0])
|
527
|
+
|
528
|
+
if major_version < 8:
|
529
|
+
# On Mac OS X before 10.4, check if -arch and -isysroot
|
530
|
+
# are in CFLAGS or LDFLAGS and remove them if they are.
|
531
|
+
# This is needed when building extensions on a 10.3 system
|
532
|
+
# using a universal build of python.
|
533
|
+
for key in ('LDFLAGS', 'BASECFLAGS',
|
534
|
+
# a number of derived variables. These need to be
|
535
|
+
# patched up as well.
|
536
|
+
'CFLAGS', 'PY_CFLAGS', 'BLDSHARED'):
|
537
|
+
flags = _CONFIG_VARS[key]
|
538
|
+
flags = re.sub(r'-arch\s+\w+\s', ' ', flags)
|
539
|
+
flags = re.sub('-isysroot [^ \t]*', ' ', flags)
|
540
|
+
_CONFIG_VARS[key] = flags
|
541
|
+
else:
|
542
|
+
# Allow the user to override the architecture flags using
|
543
|
+
# an environment variable.
|
544
|
+
# NOTE: This name was introduced by Apple in OSX 10.5 and
|
545
|
+
# is used by several scripting languages distributed with
|
546
|
+
# that OS release.
|
547
|
+
if 'ARCHFLAGS' in os.environ:
|
548
|
+
arch = os.environ['ARCHFLAGS']
|
549
|
+
for key in ('LDFLAGS', 'BASECFLAGS',
|
550
|
+
# a number of derived variables. These need to be
|
551
|
+
# patched up as well.
|
552
|
+
'CFLAGS', 'PY_CFLAGS', 'BLDSHARED'):
|
553
|
+
|
554
|
+
flags = _CONFIG_VARS[key]
|
555
|
+
flags = re.sub(r'-arch\s+\w+\s', ' ', flags)
|
556
|
+
flags = flags + ' ' + arch
|
557
|
+
_CONFIG_VARS[key] = flags
|
558
|
+
|
559
|
+
# If we're on OSX 10.5 or later and the user tries to
|
560
|
+
# compiles an extension using an SDK that is not present
|
561
|
+
# on the current machine it is better to not use an SDK
|
562
|
+
# than to fail.
|
563
|
+
#
|
564
|
+
# The major usecase for this is users using a Python.org
|
565
|
+
# binary installer on OSX 10.6: that installer uses
|
566
|
+
# the 10.4u SDK, but that SDK is not installed by default
|
567
|
+
# when you install Xcode.
|
568
|
+
#
|
569
|
+
CFLAGS = _CONFIG_VARS.get('CFLAGS', '')
|
570
|
+
m = re.search(r'-isysroot\s+(\S+)', CFLAGS)
|
571
|
+
if m is not None:
|
572
|
+
sdk = m.group(1)
|
573
|
+
if not os.path.exists(sdk):
|
574
|
+
for key in ('LDFLAGS', 'BASECFLAGS',
|
575
|
+
# a number of derived variables. These need to be
|
576
|
+
# patched up as well.
|
577
|
+
'CFLAGS', 'PY_CFLAGS', 'BLDSHARED'):
|
578
|
+
|
579
|
+
flags = _CONFIG_VARS[key]
|
580
|
+
flags = re.sub(r'-isysroot\s+\S+(\s|$)', ' ', flags)
|
581
|
+
_CONFIG_VARS[key] = flags
|
582
|
+
|
583
|
+
if args:
|
584
|
+
vals = []
|
585
|
+
for name in args:
|
586
|
+
vals.append(_CONFIG_VARS.get(name))
|
587
|
+
return vals
|
588
|
+
else:
|
589
|
+
return _CONFIG_VARS
|
590
|
+
|
591
|
+
|
592
|
+
def get_config_var(name):
|
593
|
+
"""Return the value of a single variable using the dictionary returned by
|
594
|
+
'get_config_vars()'.
|
595
|
+
|
596
|
+
Equivalent to get_config_vars().get(name)
|
597
|
+
"""
|
598
|
+
return get_config_vars().get(name)
|
599
|
+
|
600
|
+
|
601
|
+
def get_platform():
|
602
|
+
"""Return a string that identifies the current platform.
|
603
|
+
|
604
|
+
This is used mainly to distinguish platform-specific build directories and
|
605
|
+
platform-specific built distributions. Typically includes the OS name
|
606
|
+
and version and the architecture (as supplied by 'os.uname()'),
|
607
|
+
although the exact information included depends on the OS; eg. for IRIX
|
608
|
+
the architecture isn't particularly important (IRIX only runs on SGI
|
609
|
+
hardware), but for Linux the kernel version isn't particularly
|
610
|
+
important.
|
611
|
+
|
612
|
+
Examples of returned values:
|
613
|
+
linux-i586
|
614
|
+
linux-alpha (?)
|
615
|
+
solaris-2.6-sun4u
|
616
|
+
irix-5.3
|
617
|
+
irix64-6.2
|
618
|
+
|
619
|
+
Windows will return one of:
|
620
|
+
win-amd64 (64bit Windows on AMD64 (aka x86_64, Intel64, EM64T, etc)
|
621
|
+
win-ia64 (64bit Windows on Itanium)
|
622
|
+
win32 (all others - specifically, sys.platform is returned)
|
623
|
+
|
624
|
+
For other non-POSIX platforms, currently just returns 'sys.platform'.
|
625
|
+
"""
|
626
|
+
if os.name == 'nt':
|
627
|
+
# sniff sys.version for architecture.
|
628
|
+
prefix = " bit ("
|
629
|
+
i = sys.version.find(prefix)
|
630
|
+
if i == -1:
|
631
|
+
return sys.platform
|
632
|
+
j = sys.version.find(")", i)
|
633
|
+
look = sys.version[i+len(prefix):j].lower()
|
634
|
+
if look == 'amd64':
|
635
|
+
return 'win-amd64'
|
636
|
+
if look == 'itanium':
|
637
|
+
return 'win-ia64'
|
638
|
+
return sys.platform
|
639
|
+
|
640
|
+
if os.name != "posix" or not hasattr(os, 'uname'):
|
641
|
+
# XXX what about the architecture? NT is Intel or Alpha,
|
642
|
+
# Mac OS is M68k or PPC, etc.
|
643
|
+
return sys.platform
|
644
|
+
|
645
|
+
# Try to distinguish various flavours of Unix
|
646
|
+
osname, host, release, version, machine = os.uname()
|
647
|
+
|
648
|
+
# Convert the OS name to lowercase, remove '/' characters
|
649
|
+
# (to accommodate BSD/OS), and translate spaces (for "Power Macintosh")
|
650
|
+
osname = osname.lower().replace('/', '')
|
651
|
+
machine = machine.replace(' ', '_')
|
652
|
+
machine = machine.replace('/', '-')
|
653
|
+
|
654
|
+
if osname[:5] == "linux":
|
655
|
+
# At least on Linux/Intel, 'machine' is the processor --
|
656
|
+
# i386, etc.
|
657
|
+
# XXX what about Alpha, SPARC, etc?
|
658
|
+
return "%s-%s" % (osname, machine)
|
659
|
+
elif osname[:5] == "sunos":
|
660
|
+
if release[0] >= "5": # SunOS 5 == Solaris 2
|
661
|
+
osname = "solaris"
|
662
|
+
release = "%d.%s" % (int(release[0]) - 3, release[2:])
|
663
|
+
# fall through to standard osname-release-machine representation
|
664
|
+
elif osname[:4] == "irix": # could be "irix64"!
|
665
|
+
return "%s-%s" % (osname, release)
|
666
|
+
elif osname[:3] == "aix":
|
667
|
+
return "%s-%s.%s" % (osname, version, release)
|
668
|
+
elif osname[:6] == "cygwin":
|
669
|
+
osname = "cygwin"
|
670
|
+
rel_re = re.compile(r'[\d.]+')
|
671
|
+
m = rel_re.match(release)
|
672
|
+
if m:
|
673
|
+
release = m.group()
|
674
|
+
elif osname[:6] == "darwin":
|
675
|
+
#
|
676
|
+
# For our purposes, we'll assume that the system version from
|
677
|
+
# distutils' perspective is what MACOSX_DEPLOYMENT_TARGET is set
|
678
|
+
# to. This makes the compatibility story a bit more sane because the
|
679
|
+
# machine is going to compile and link as if it were
|
680
|
+
# MACOSX_DEPLOYMENT_TARGET.
|
681
|
+
cfgvars = get_config_vars()
|
682
|
+
macver = cfgvars.get('MACOSX_DEPLOYMENT_TARGET')
|
683
|
+
|
684
|
+
if True:
|
685
|
+
# Always calculate the release of the running machine,
|
686
|
+
# needed to determine if we can build fat binaries or not.
|
687
|
+
|
688
|
+
macrelease = macver
|
689
|
+
# Get the system version. Reading this plist is a documented
|
690
|
+
# way to get the system version (see the documentation for
|
691
|
+
# the Gestalt Manager)
|
692
|
+
try:
|
693
|
+
f = open('/System/Library/CoreServices/SystemVersion.plist')
|
694
|
+
except IOError:
|
695
|
+
# We're on a plain darwin box, fall back to the default
|
696
|
+
# behaviour.
|
697
|
+
pass
|
698
|
+
else:
|
699
|
+
try:
|
700
|
+
m = re.search(r'<key>ProductUserVisibleVersion</key>\s*'
|
701
|
+
r'<string>(.*?)</string>', f.read())
|
702
|
+
finally:
|
703
|
+
f.close()
|
704
|
+
if m is not None:
|
705
|
+
macrelease = '.'.join(m.group(1).split('.')[:2])
|
706
|
+
# else: fall back to the default behaviour
|
707
|
+
|
708
|
+
if not macver:
|
709
|
+
macver = macrelease
|
710
|
+
|
711
|
+
if macver:
|
712
|
+
release = macver
|
713
|
+
osname = "macosx"
|
714
|
+
|
715
|
+
if ((macrelease + '.') >= '10.4.' and
|
716
|
+
'-arch' in get_config_vars().get('CFLAGS', '').strip()):
|
717
|
+
# The universal build will build fat binaries, but not on
|
718
|
+
# systems before 10.4
|
719
|
+
#
|
720
|
+
# Try to detect 4-way universal builds, those have machine-type
|
721
|
+
# 'universal' instead of 'fat'.
|
722
|
+
|
723
|
+
machine = 'fat'
|
724
|
+
cflags = get_config_vars().get('CFLAGS')
|
725
|
+
|
726
|
+
archs = re.findall(r'-arch\s+(\S+)', cflags)
|
727
|
+
archs = tuple(sorted(set(archs)))
|
728
|
+
|
729
|
+
if len(archs) == 1:
|
730
|
+
machine = archs[0]
|
731
|
+
elif archs == ('i386', 'ppc'):
|
732
|
+
machine = 'fat'
|
733
|
+
elif archs == ('i386', 'x86_64'):
|
734
|
+
machine = 'intel'
|
735
|
+
elif archs == ('i386', 'ppc', 'x86_64'):
|
736
|
+
machine = 'fat3'
|
737
|
+
elif archs == ('ppc64', 'x86_64'):
|
738
|
+
machine = 'fat64'
|
739
|
+
elif archs == ('i386', 'ppc', 'ppc64', 'x86_64'):
|
740
|
+
machine = 'universal'
|
741
|
+
else:
|
742
|
+
raise ValueError(
|
743
|
+
"Don't know machine value for archs=%r" % (archs,))
|
744
|
+
|
745
|
+
elif machine == 'i386':
|
746
|
+
# On OSX the machine type returned by uname is always the
|
747
|
+
# 32-bit variant, even if the executable architecture is
|
748
|
+
# the 64-bit variant
|
749
|
+
if sys.maxsize >= 2**32:
|
750
|
+
machine = 'x86_64'
|
751
|
+
|
752
|
+
elif machine in ('PowerPC', 'Power_Macintosh'):
|
753
|
+
# Pick a sane name for the PPC architecture.
|
754
|
+
# See 'i386' case
|
755
|
+
if sys.maxsize >= 2**32:
|
756
|
+
machine = 'ppc64'
|
757
|
+
else:
|
758
|
+
machine = 'ppc'
|
759
|
+
|
760
|
+
return "%s-%s-%s" % (osname, release, machine)
|
761
|
+
|
762
|
+
|
763
|
+
def get_python_version():
|
764
|
+
return _PY_VERSION_SHORT
|
765
|
+
|
766
|
+
|
767
|
+
def _print_dict(title, data):
|
768
|
+
for index, (key, value) in enumerate(sorted(data.items())):
|
769
|
+
if index == 0:
|
770
|
+
print('%s: ' % (title))
|
771
|
+
print('\t%s = "%s"' % (key, value))
|
772
|
+
|
773
|
+
|
774
|
+
def _main():
|
775
|
+
"""Display all information sysconfig detains."""
|
776
|
+
print('Platform: "%s"' % get_platform())
|
777
|
+
print('Python version: "%s"' % get_python_version())
|
778
|
+
print('Current installation scheme: "%s"' % _get_default_scheme())
|
779
|
+
print()
|
780
|
+
_print_dict('Paths', get_paths())
|
781
|
+
print()
|
782
|
+
_print_dict('Variables', get_config_vars())
|
783
|
+
|
784
|
+
|
785
|
+
if __name__ == '__main__':
|
786
|
+
_main()
|