提交 ae27dcf0 编写于 作者: C czhu

基本搭建完所有开发流程框架

上级 8aa8a694
此差异已折叠。
此差异已折叠。
('C:\\Users\\czhu\\Documents\\magic-pig\\build\\start\\start.exe',
False,
False,
True,
['C:\\Users\\czhu\\Documents\\magic-pig\\service\\resource\\static\\logo.ico'],
None,
False,
False,
'<?xml version="1.0" encoding="UTF-8" standalone="yes"?><assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1"><assemblyIdentity name="start" processorArchitecture="amd64" type="win32" version="1.0.0.0"/><trustInfo xmlns="urn:schemas-microsoft-com:asm.v3"><security><requestedPrivileges><requestedExecutionLevel level="asInvoker" uiAccess="false"/></requestedPrivileges></security></trustInfo><dependency><dependentAssembly><assemblyIdentity language="*" name="Microsoft.Windows.Common-Controls" processorArchitecture="*" publicKeyToken="6595b64144ccf1df" type="win32" version="6.0.0.0"/></dependentAssembly></dependency><compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1"><application><supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}"/><supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/><supportedOS Id="{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}"/><supportedOS Id="{1f676c76-80e1-4239-95bb-83d0f6d0da78}"/><supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}"/></application></compatibility><application xmlns="urn:schemas-microsoft-com:asm.v3"><windowsSettings><longPathAware xmlns="http://schemas.microsoft.com/SMI/2016/WindowsSettings">true</longPathAware></windowsSettings></application></assembly>',
True,
True,
False,
None,
None,
None,
'C:\\Users\\czhu\\Documents\\magic-pig\\build\\start\\start.pkg',
[('PYZ-00.pyz',
'C:\\Users\\czhu\\Documents\\magic-pig\\build\\start\\PYZ-00.pyz',
'PYZ'),
('struct',
'C:\\Users\\czhu\\Documents\\magic-pig\\build\\start\\localpycs\\struct.pyc',
'PYMODULE'),
('pyimod01_archive',
'C:\\Users\\czhu\\Documents\\magic-pig\\build\\start\\localpycs\\pyimod01_archive.pyc',
'PYMODULE'),
('pyimod02_importers',
'C:\\Users\\czhu\\Documents\\magic-pig\\build\\start\\localpycs\\pyimod02_importers.pyc',
'PYMODULE'),
('pyimod03_ctypes',
'C:\\Users\\czhu\\Documents\\magic-pig\\build\\start\\localpycs\\pyimod03_ctypes.pyc',
'PYMODULE'),
('pyimod04_pywin32',
'C:\\Users\\czhu\\Documents\\magic-pig\\build\\start\\localpycs\\pyimod04_pywin32.pyc',
'PYMODULE'),
('pyiboot01_bootstrap',
'c:\\users\\czhu\\appdata\\local\\continuum\\anaconda3\\lib\\site-packages\\PyInstaller\\loader\\pyiboot01_bootstrap.py',
'PYSOURCE'),
('pyi_rth_subprocess',
'c:\\users\\czhu\\appdata\\local\\continuum\\anaconda3\\lib\\site-packages\\PyInstaller\\hooks\\rthooks\\pyi_rth_subprocess.py',
'PYSOURCE'),
('pyi_rth_multiprocessing',
'c:\\users\\czhu\\appdata\\local\\continuum\\anaconda3\\lib\\site-packages\\PyInstaller\\hooks\\rthooks\\pyi_rth_multiprocessing.py',
'PYSOURCE'),
('pyi_rth_pkgutil',
'c:\\users\\czhu\\appdata\\local\\continuum\\anaconda3\\lib\\site-packages\\PyInstaller\\hooks\\rthooks\\pyi_rth_pkgutil.py',
'PYSOURCE'),
('pyi_rth_inspect',
'c:\\users\\czhu\\appdata\\local\\continuum\\anaconda3\\lib\\site-packages\\PyInstaller\\hooks\\rthooks\\pyi_rth_inspect.py',
'PYSOURCE'),
('pyi_rth_setuptools',
'c:\\users\\czhu\\appdata\\local\\continuum\\anaconda3\\lib\\site-packages\\PyInstaller\\hooks\\rthooks\\pyi_rth_setuptools.py',
'PYSOURCE'),
('pyi_rth_pkgres',
'c:\\users\\czhu\\appdata\\local\\continuum\\anaconda3\\lib\\site-packages\\PyInstaller\\hooks\\rthooks\\pyi_rth_pkgres.py',
'PYSOURCE'),
('pyi_rth_win32comgenpy',
'c:\\users\\czhu\\appdata\\local\\continuum\\anaconda3\\lib\\site-packages\\PyInstaller\\hooks\\rthooks\\pyi_rth_win32comgenpy.py',
'PYSOURCE'),
('pyi_rth_pywintypes',
'c:\\users\\czhu\\appdata\\local\\continuum\\anaconda3\\lib\\site-packages\\_pyinstaller_hooks_contrib\\hooks\\rthooks\\pyi_rth_pywintypes.py',
'PYSOURCE'),
('pyi_rth_pythoncom',
'c:\\users\\czhu\\appdata\\local\\continuum\\anaconda3\\lib\\site-packages\\_pyinstaller_hooks_contrib\\hooks\\rthooks\\pyi_rth_pythoncom.py',
'PYSOURCE'),
('pyi_rth_pyqt5',
'c:\\users\\czhu\\appdata\\local\\continuum\\anaconda3\\lib\\site-packages\\PyInstaller\\hooks\\rthooks\\pyi_rth_pyqt5.py',
'PYSOURCE'),
('start',
'C:\\Users\\czhu\\Documents\\magic-pig\\service\\start.py',
'PYSOURCE')],
[],
False,
False,
1669559211,
[('runw.exe',
'c:\\users\\czhu\\appdata\\local\\continuum\\anaconda3\\lib\\site-packages\\PyInstaller\\bootloader\\Windows-64bit\\runw.exe',
'EXECUTABLE')])
('C:\\Users\\czhu\\Documents\\magic-pig\\build\\start\\start.pkg',
{'BINARY': 1,
'DATA': 1,
'EXECUTABLE': 1,
'EXTENSION': 1,
'PYMODULE': 1,
'PYSOURCE': 1,
'PYZ': 0,
'SPLASH': 1},
[('PYZ-00.pyz',
'C:\\Users\\czhu\\Documents\\magic-pig\\build\\start\\PYZ-00.pyz',
'PYZ'),
('struct',
'C:\\Users\\czhu\\Documents\\magic-pig\\build\\start\\localpycs\\struct.pyc',
'PYMODULE'),
('pyimod01_archive',
'C:\\Users\\czhu\\Documents\\magic-pig\\build\\start\\localpycs\\pyimod01_archive.pyc',
'PYMODULE'),
('pyimod02_importers',
'C:\\Users\\czhu\\Documents\\magic-pig\\build\\start\\localpycs\\pyimod02_importers.pyc',
'PYMODULE'),
('pyimod03_ctypes',
'C:\\Users\\czhu\\Documents\\magic-pig\\build\\start\\localpycs\\pyimod03_ctypes.pyc',
'PYMODULE'),
('pyimod04_pywin32',
'C:\\Users\\czhu\\Documents\\magic-pig\\build\\start\\localpycs\\pyimod04_pywin32.pyc',
'PYMODULE'),
('pyiboot01_bootstrap',
'c:\\users\\czhu\\appdata\\local\\continuum\\anaconda3\\lib\\site-packages\\PyInstaller\\loader\\pyiboot01_bootstrap.py',
'PYSOURCE'),
('pyi_rth_subprocess',
'c:\\users\\czhu\\appdata\\local\\continuum\\anaconda3\\lib\\site-packages\\PyInstaller\\hooks\\rthooks\\pyi_rth_subprocess.py',
'PYSOURCE'),
('pyi_rth_multiprocessing',
'c:\\users\\czhu\\appdata\\local\\continuum\\anaconda3\\lib\\site-packages\\PyInstaller\\hooks\\rthooks\\pyi_rth_multiprocessing.py',
'PYSOURCE'),
('pyi_rth_pkgutil',
'c:\\users\\czhu\\appdata\\local\\continuum\\anaconda3\\lib\\site-packages\\PyInstaller\\hooks\\rthooks\\pyi_rth_pkgutil.py',
'PYSOURCE'),
('pyi_rth_inspect',
'c:\\users\\czhu\\appdata\\local\\continuum\\anaconda3\\lib\\site-packages\\PyInstaller\\hooks\\rthooks\\pyi_rth_inspect.py',
'PYSOURCE'),
('pyi_rth_setuptools',
'c:\\users\\czhu\\appdata\\local\\continuum\\anaconda3\\lib\\site-packages\\PyInstaller\\hooks\\rthooks\\pyi_rth_setuptools.py',
'PYSOURCE'),
('pyi_rth_pkgres',
'c:\\users\\czhu\\appdata\\local\\continuum\\anaconda3\\lib\\site-packages\\PyInstaller\\hooks\\rthooks\\pyi_rth_pkgres.py',
'PYSOURCE'),
('pyi_rth_win32comgenpy',
'c:\\users\\czhu\\appdata\\local\\continuum\\anaconda3\\lib\\site-packages\\PyInstaller\\hooks\\rthooks\\pyi_rth_win32comgenpy.py',
'PYSOURCE'),
('pyi_rth_pywintypes',
'c:\\users\\czhu\\appdata\\local\\continuum\\anaconda3\\lib\\site-packages\\_pyinstaller_hooks_contrib\\hooks\\rthooks\\pyi_rth_pywintypes.py',
'PYSOURCE'),
('pyi_rth_pythoncom',
'c:\\users\\czhu\\appdata\\local\\continuum\\anaconda3\\lib\\site-packages\\_pyinstaller_hooks_contrib\\hooks\\rthooks\\pyi_rth_pythoncom.py',
'PYSOURCE'),
('pyi_rth_pyqt5',
'c:\\users\\czhu\\appdata\\local\\continuum\\anaconda3\\lib\\site-packages\\PyInstaller\\hooks\\rthooks\\pyi_rth_pyqt5.py',
'PYSOURCE'),
('start',
'C:\\Users\\czhu\\Documents\\magic-pig\\service\\start.py',
'PYSOURCE')],
True,
False,
False,
[],
None,
None,
None)
此差异已折叠。
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1">
<assemblyIdentity name="start" processorArchitecture="amd64" type="win32" version="1.0.0.0"/>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel level="asInvoker" uiAccess="false"/>
</requestedPrivileges>
</security>
</trustInfo>
<dependency>
<dependentAssembly>
<assemblyIdentity language="*" name="Microsoft.Windows.Common-Controls" processorArchitecture="*" publicKeyToken="6595b64144ccf1df" type="win32" version="6.0.0.0"/>
</dependentAssembly>
</dependency>
<compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
<application>
<supportedOS Id="{e2011457-1546-43c5-a5fe-008deee3d3f0}"/>
<supportedOS Id="{35138b9a-5d96-4fbd-8e2d-a2440225f93a}"/>
<supportedOS Id="{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}"/>
<supportedOS Id="{1f676c76-80e1-4239-95bb-83d0f6d0da78}"/>
<supportedOS Id="{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}"/>
</application>
</compatibility>
<application xmlns="urn:schemas-microsoft-com:asm.v3">
<windowsSettings>
<longPathAware xmlns="http://schemas.microsoft.com/SMI/2016/WindowsSettings">true</longPathAware>
</windowsSettings>
</application>
</assembly>
\ No newline at end of file
This file lists modules PyInstaller was not able to find. This does not
necessarily mean this module is required for running your program. Python and
Python 3rd-party packages include a lot of conditional or optional modules. For
example the module 'ntpath' only exists on Windows, whereas the module
'posixpath' only exists on Posix systems.
Types if import:
* top-level: imported at the top-level - look at these first
* conditional: imported within an if-statement
* delayed: imported within a function
* optional: imported within a try-except-statement
IMPORTANT: Do NOT post this list to the issue-tracker. Use it as a basis for
tracking down the missing module yourself. Thanks!
missing module named 'win32com.gen_py' - imported by win32com (conditional, optional), c:\users\czhu\appdata\local\continuum\anaconda3\lib\site-packages\PyInstaller\hooks\rthooks\pyi_rth_win32comgenpy.py (top-level)
missing module named org - imported by copy (optional)
missing module named importlib.metadata - imported by importlib (delayed, conditional, optional), jsonschema (delayed, conditional, optional)
missing module named 'typing.io' - imported by importlib.resources (top-level)
missing module named _frozen_importlib_external - imported by importlib._bootstrap (delayed), importlib (optional), importlib.abc (optional)
excluded module named _frozen_importlib - imported by importlib (optional), importlib.abc (optional)
missing module named 'org.python' - imported by pickle (optional), setuptools.sandbox (conditional), xml.sax (delayed, conditional)
missing module named grp - imported by pathlib (delayed), shutil (optional), tarfile (optional), distutils.archive_util (optional)
missing module named pwd - imported by posixpath (delayed, conditional), pathlib (delayed, conditional, optional), shutil (optional), tarfile (optional), netrc (delayed, conditional), getpass (delayed), webbrowser (delayed), http.server (delayed, optional), distutils.util (delayed, conditional), distutils.archive_util (optional)
missing module named pyimod02_importers - imported by c:\users\czhu\appdata\local\continuum\anaconda3\lib\site-packages\PyInstaller\hooks\rthooks\pyi_rth_pkgutil.py (top-level), c:\users\czhu\appdata\local\continuum\anaconda3\lib\site-packages\PyInstaller\hooks\rthooks\pyi_rth_pkgres.py (top-level)
missing module named 'six.moves.urllib'.parse - imported by 'six.moves.urllib' (top-level), packaging.requirements (top-level)
runtime module named six.moves - imported by cryptography.x509.general_name (top-level), 'six.moves.urllib' (top-level)
missing module named StringIO - imported by werkzeug._compat (conditional), six (conditional), urllib3.packages.six (conditional), requests.compat (conditional), setuptools._vendor.six (conditional), pkg_resources._vendor.six (conditional)
missing module named 'six.moves.urllib' - imported by 'six.moves.urllib' (top-level)
missing module named _uuid - imported by uuid (optional)
missing module named _posixsubprocess - imported by subprocess (conditional), multiprocessing.util (delayed)
missing module named termios - imported by getpass (optional), click.termui (delayed, optional), tty (top-level), click._termui_impl (conditional)
missing module named readline - imported by code (delayed, conditional, optional), site (delayed, optional), rlcompleter (optional), cmd (delayed, conditional, optional), pdb (delayed, optional)
missing module named __builtin__ - imported by werkzeug._compat (optional), pkg_resources._vendor.pyparsing (conditional), pyparsing (conditional), setuptools._vendor.pyparsing (conditional)
missing module named ordereddict - imported by pkg_resources._vendor.pyparsing (optional), pyparsing (optional), setuptools._vendor.pyparsing (optional)
missing module named 'pkg_resources.extern.pyparsing' - imported by pkg_resources._vendor.packaging.markers (top-level), pkg_resources._vendor.packaging.requirements (top-level)
missing module named 'com.sun' - imported by pkg_resources._vendor.appdirs (delayed, conditional, optional)
missing module named com - imported by pkg_resources._vendor.appdirs (delayed)
missing module named _winreg - imported by platform (delayed, optional), werkzeug.debug (delayed, optional), requests.utils (delayed, conditional, optional), webview.platforms.winforms (delayed, optional), webview.platforms.cef (delayed, optional), pkg_resources._vendor.appdirs (delayed, conditional)
missing module named pkg_resources.extern.packaging - imported by pkg_resources.extern (top-level), pkg_resources (top-level)
missing module named pkg_resources.extern.appdirs - imported by pkg_resources.extern (top-level), pkg_resources (top-level)
missing module named 'pkg_resources.extern.six.moves' - imported by pkg_resources (top-level), pkg_resources._vendor.packaging.requirements (top-level)
missing module named pkg_resources.extern.six - imported by pkg_resources.extern (top-level), pkg_resources (top-level), pkg_resources.py31compat (top-level)
missing module named 'java.lang' - imported by platform (delayed, optional), xml.sax._exceptions (conditional)
missing module named vms_lib - imported by platform (delayed, conditional, optional)
missing module named java - imported by platform (delayed)
missing module named _distutils_hack - imported by c:\users\czhu\appdata\local\continuum\anaconda3\lib\site-packages\PyInstaller\hooks\rthooks\pyi_rth_setuptools.py (delayed, conditional)
missing module named 'setuptools._vendor.six.moves'.parse - imported by 'setuptools._vendor.six.moves' (top-level), setuptools._vendor.packaging.requirements (top-level)
runtime module named setuptools.extern.six.moves - imported by setuptools.dist (top-level), setuptools.py33compat (top-level), setuptools.command.easy_install (top-level), setuptools.sandbox (top-level), setuptools.command.setopt (top-level), setuptools.package_index (top-level), setuptools.ssl_support (top-level), setuptools.command.egg_info (top-level), setuptools.command.py36compat (top-level), setuptools.msvc (top-level), 'setuptools._vendor.six.moves' (top-level)
missing module named setuptools.extern.six.moves.filterfalse - imported by setuptools.extern.six.moves (top-level), setuptools.dist (top-level), setuptools.msvc (top-level)
missing module named setuptools.extern.six.moves.filter - imported by setuptools.extern.six.moves (top-level), setuptools.dist (top-level), setuptools.ssl_support (top-level), setuptools.command.py36compat (top-level)
missing module named setuptools.extern.six.moves.map - imported by setuptools.extern.six.moves (top-level), setuptools.dist (top-level), setuptools.command.easy_install (top-level), setuptools.sandbox (top-level), setuptools.package_index (top-level), setuptools.ssl_support (top-level), setuptools.command.egg_info (top-level)
missing module named setuptools.extern.six - imported by setuptools.extern (top-level), setuptools.monkey (top-level), setuptools.dist (top-level), setuptools.extern.six.moves (top-level), setuptools.py33compat (top-level), setuptools.config (top-level), setuptools.command.easy_install (top-level), setuptools.sandbox (top-level), setuptools.py27compat (top-level), setuptools.package_index (top-level), setuptools.wheel (top-level), setuptools.pep425tags (top-level), setuptools.command.egg_info (top-level), setuptools.command.sdist (top-level), setuptools.command.bdist_egg (top-level), setuptools.unicode_utils (top-level), setuptools.glob (top-level)
missing module named setuptools.extern.packaging - imported by setuptools.extern (top-level), setuptools.dist (top-level), setuptools.command.egg_info (top-level)
missing module named 'setuptools._vendor.six.moves' - imported by 'setuptools._vendor.six.moves' (top-level)
missing module named 'setuptools.extern.pyparsing' - imported by setuptools._vendor.packaging.markers (top-level), setuptools._vendor.packaging.requirements (top-level)
missing module named 'setuptools.extern.packaging.version' - imported by setuptools.config (top-level), setuptools.msvc (top-level)
missing module named multiprocessing.set_start_method - imported by multiprocessing (top-level), multiprocessing.spawn (top-level)
missing module named multiprocessing.get_start_method - imported by multiprocessing (top-level), multiprocessing.spawn (top-level)
missing module named multiprocessing.get_context - imported by multiprocessing (top-level), multiprocessing.pool (top-level), multiprocessing.managers (top-level), multiprocessing.sharedctypes (top-level)
missing module named multiprocessing.TimeoutError - imported by multiprocessing (top-level), multiprocessing.pool (top-level)
missing module named multiprocessing.BufferTooShort - imported by multiprocessing (top-level), multiprocessing.connection (top-level)
missing module named multiprocessing.AuthenticationError - imported by multiprocessing (top-level), multiprocessing.connection (top-level)
missing module named multiprocessing.Process - imported by multiprocessing (delayed, conditional), webview (delayed, conditional)
missing module named usercustomize - imported by site (delayed, optional)
missing module named sitecustomize - imported by site (delayed, optional)
missing module named 'setuptools.extern.packaging.utils' - imported by setuptools.wheel (top-level)
missing module named _manylinux - imported by setuptools.pep425tags (delayed, optional)
missing module named 'backports.ssl_match_hostname' - imported by urllib3.packages.ssl_match_hostname (optional), setuptools.ssl_support (optional)
missing module named 'setuptools.extern.six' - imported by setuptools (top-level), setuptools.extension (top-level)
missing module named _scproxy - imported by urllib.request (conditional)
missing module named posix - imported by os (conditional, optional)
missing module named WebBrowserInterop - imported by webview.platforms.mshtml (top-level)
missing module named 'System.Windows' - imported by webview.platforms.edgechromium (top-level), webview.platforms.edgehtml (top-level), webview.platforms.mshtml (top-level)
missing module named 'System.ComponentModel' - imported by webview.platforms.edgehtml (top-level)
missing module named 'Microsoft.Toolkit' - imported by webview.platforms.edgehtml (top-level)
missing module named 'Microsoft.Web' - imported by webview.platforms.edgechromium (top-level)
missing module named Microsoft - imported by webview.platforms.edgechromium (top-level)
missing module named cefpython3 - imported by webview.platforms.cef (top-level)
missing module named 'System.Drawing' - imported by webview.platforms.winforms (top-level), webview.platforms.edgechromium (top-level), webview.platforms.edgehtml (top-level), webview.platforms.mshtml (top-level)
missing module named 'System.Threading' - imported by webview.platforms.winforms (top-level), webview.platforms.edgechromium (top-level)
missing module named System - imported by webview.platforms.winforms (top-level), webview.platforms.edgechromium (top-level), webview.platforms.edgehtml (top-level), webview.platforms.mshtml (top-level)
missing module named dummy_thread - imported by urllib3.packages.ordered_dict (optional), cffi.lock (conditional, optional)
missing module named thread - imported by werkzeug.local (optional), urllib3.packages.ordered_dict (optional), cffi.lock (conditional, optional), cffi.cparser (conditional, optional)
missing module named cStringIO - imported by werkzeug._compat (conditional), cPickle (top-level), jinja2._compat (conditional), flask._compat (conditional), asn1crypto.core (conditional), click.testing (conditional), cffi.ffiplatform (optional)
missing module named copy_reg - imported by cStringIO (top-level), cPickle (top-level)
missing module named cPickle - imported by jinja2._compat (conditional), pycparser.ply.yacc (delayed, optional)
missing module named cffi._pycparser - imported by cffi (optional), cffi.cparser (optional)
missing module named objc - imported by webview.platforms.cocoa (top-level)
missing module named PyObjCTools - imported by webview.platforms.cocoa (top-level)
missing module named WebKit - imported by webview.platforms.cocoa (top-level)
missing module named AppKit - imported by webview.platforms.cocoa (top-level)
missing module named Foundation - imported by webview.platforms.cocoa (top-level)
missing module named PyQt5.QtWebKitWidgets - imported by PyQt5 (optional), webview.platforms.qt (optional)
missing module named 'PySide2.QtWebChannel' - imported by qtpy.QtWebChannel (conditional)
missing module named 'PySide.QtWebKit' - imported by qtpy.QtWebEngineWidgets (conditional)
missing module named 'PyQt4.QtWebKit' - imported by qtpy.QtWebEngineWidgets (conditional)
missing module named 'PySide2.QtWebKitWidgets' - imported by qtpy.QtWebEngineWidgets (conditional, optional)
missing module named 'PySide2.QtWebEngineWidgets' - imported by qtpy.QtWebEngineWidgets (conditional, optional)
missing module named 'PyQt5.QtWebKit' - imported by qtpy.QtWebEngineWidgets (conditional, optional)
missing module named 'PyQt5.QtWebKitWidgets' - imported by qtpy.QtWebEngineWidgets (conditional, optional)
missing module named 'PySide.QtGui' - imported by qtpy.QtCore (conditional), qtpy.QtGui (conditional), qtpy.QtWidgets (conditional)
missing module named 'PyQt4.Qt' - imported by qtpy (conditional, optional), qtpy.QtGui (conditional)
missing module named 'PyQt4.QtGui' - imported by qtpy.QtCore (conditional), qtpy.QtGui (conditional, optional), qtpy.QtWidgets (conditional)
missing module named 'PySide2.QtGui' - imported by qtpy.QtCore (conditional, optional), qtpy.QtGui (conditional)
missing module named 'PySide2.QtWidgets' - imported by qtpy.QtWidgets (conditional)
missing module named 'PySide.QtCore' - imported by qtpy (conditional, optional), qtpy.QtCore (conditional)
missing module named 'PyQt4.QtCore' - imported by qtpy.QtCore (conditional)
missing module named 'PySide2.QtCore' - imported by qtpy (conditional, optional), qtpy.QtCore (conditional)
missing module named PySide - imported by qtpy (conditional, optional)
missing module named PyQt4 - imported by qtpy (conditional, optional)
missing module named PySide2 - imported by qtpy (conditional, optional)
missing module named 'gi.repository' - imported by webview.platforms.gtk (top-level)
missing module named gi - imported by webview.platforms.gtk (top-level)
missing module named _abcoll - imported by urllib3.packages.ordered_dict (optional)
missing module named Cookie - imported by requests.compat (conditional)
missing module named cookielib - imported by werkzeug.test (optional), requests.compat (conditional)
missing module named urllib2 - imported by werkzeug.http (optional), werkzeug.test (optional), werkzeug.debug.tbtools (delayed, optional), requests.compat (conditional)
missing module named urlparse - imported by asn1crypto._iri (conditional), requests.compat (conditional)
missing module named simplejson - imported by itsdangerous (optional), requests.compat (optional), flasgger.base (optional)
missing module named Queue - imported by urllib3.util.queue (conditional)
missing module named "'urllib3.packages.six.moves.urllib'.parse" - imported by urllib3.request (top-level), urllib3.poolmanager (top-level)
runtime module named urllib3.packages.six.moves - imported by http.client (top-level), urllib3.connectionpool (top-level), urllib3.util.response (top-level), 'urllib3.packages.six.moves.urllib' (top-level), urllib3.response (top-level), urllib3.util.queue (top-level)
missing module named _dummy_threading - imported by dummy_threading (optional)
missing module named UserDict - imported by asn1crypto._ordereddict (conditional), attr._compat (conditional)
missing module named cryptography.x509.UnsupportedExtension - imported by cryptography.x509 (optional), urllib3.contrib.pyopenssl (optional)
missing module named apispec - imported by flasgger.marshmallow_apispec (optional)
missing module named marshmallow - imported by flasgger.marshmallow_apispec (optional)
missing module named 'email.Utils' - imported by werkzeug.http (optional)
missing module named htmlentitydefs - imported by werkzeug.utils (optional)
missing module named httplib - imported by werkzeug.wsgi (optional)
missing module named isoduration - imported by jsonschema._format (top-level)
missing module named uri_template - imported by jsonschema._format (top-level)
missing module named jsonpointer - imported by jsonschema._format (top-level)
missing module named webcolors - imported by jsonschema._format (top-level)
missing module named rfc3339_validator - imported by jsonschema._format (top-level)
missing module named rfc3986_validator - imported by jsonschema._format (optional)
missing module named rfc3987 - imported by jsonschema._format (optional)
missing module named fqdn - imported by jsonschema._format (top-level)
missing module named flask_restful - imported by flasgger.base (optional)
missing module named asyncio.DefaultEventLoopPolicy - imported by asyncio (delayed, conditional), asyncio.events (delayed, conditional)
missing module named pretty - imported by jinja2.utils (delayed, optional)
missing module named 'jinja2.debugrenderer' - imported by jinja2.debug (delayed)
missing module named __pypy__ - imported by jinja2.debug (optional)
missing module named blinker - imported by flask.signals (optional)
missing module named fcntl - imported by click.termui (delayed, optional)
missing module named 'watchdog.events' - imported by werkzeug._reloader (delayed)
missing module named watchdog - imported by werkzeug._reloader (delayed)
missing module named BaseHTTPServer - imported by werkzeug.serving (optional)
missing module named SocketServer - imported by werkzeug.serving (optional)
missing module named termcolor - imported by werkzeug.serving (optional)
missing module named dotenv - imported by flask.cli (optional)
此差异已折叠。
文件已添加
文件已添加
文件已添加
此差异已折叠。
{
"env": "prod",
"version": "0.0.1",
"update": false,
"window": {
"height": 720,
"width": 1280,
"title": "魔法猪妖"
},
"service": {
"port": 5000,
"host": "0.0.0.0"
}
}
\ No newline at end of file
Metadata-Version: 2.1
Name: cryptography
Version: 2.3.1
Summary: cryptography is a package which provides cryptographic recipes and primitives to Python developers.
Home-page: https://github.com/pyca/cryptography
Author: The cryptography developers
Author-email: cryptography-dev@python.org
License: BSD or Apache License, Version 2.0
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: License :: OSI Approved :: BSD License
Classifier: Natural Language :: English
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: POSIX
Classifier: Operating System :: POSIX :: BSD
Classifier: Operating System :: POSIX :: Linux
Classifier: Operating System :: Microsoft :: Windows
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Topic :: Security :: Cryptography
Requires-Python: >=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*
Provides-Extra: pep8test
Provides-Extra: docs
Provides-Extra: test
Provides-Extra: docstest
Requires-Dist: idna (>=2.1)
Requires-Dist: asn1crypto (>=0.21.0)
Requires-Dist: six (>=1.4.1)
Requires-Dist: cffi (!=1.11.3,>=1.7)
Requires-Dist: enum34; python_version < '3'
Requires-Dist: ipaddress; python_version < '3'
Provides-Extra: docs
Requires-Dist: sphinx (>=1.6.5); extra == 'docs'
Requires-Dist: sphinx-rtd-theme; extra == 'docs'
Provides-Extra: docstest
Requires-Dist: doc8; extra == 'docstest'
Requires-Dist: pyenchant (>=1.6.11); extra == 'docstest'
Requires-Dist: readme-renderer (>=16.0); extra == 'docstest'
Requires-Dist: sphinxcontrib-spelling (>=4.0.1); extra == 'docstest'
Provides-Extra: pep8test
Requires-Dist: flake8; extra == 'pep8test'
Requires-Dist: flake8-import-order; extra == 'pep8test'
Requires-Dist: pep8-naming; extra == 'pep8test'
Provides-Extra: test
Requires-Dist: pytest (!=3.3.0,>=3.2.1); extra == 'test'
Requires-Dist: pretend; extra == 'test'
Requires-Dist: iso8601; extra == 'test'
Requires-Dist: pytz; extra == 'test'
Requires-Dist: hypothesis (>=1.11.4); extra == 'test'
Requires-Dist: cryptography-vectors (==2.3.1); extra == 'test'
pyca/cryptography
=================
.. image:: https://img.shields.io/pypi/v/cryptography.svg
:target: https://pypi.org/project/cryptography/
:alt: Latest Version
.. image:: https://readthedocs.org/projects/cryptography/badge/?version=latest
:target: https://cryptography.io
:alt: Latest Docs
.. image:: https://travis-ci.org/pyca/cryptography.svg?branch=master
:target: https://travis-ci.org/pyca/cryptography
.. image:: https://codecov.io/github/pyca/cryptography/coverage.svg?branch=master
:target: https://codecov.io/github/pyca/cryptography?branch=master
``cryptography`` is a package which provides cryptographic recipes and
primitives to Python developers. Our goal is for it to be your "cryptographic
standard library". It supports Python 2.7, Python 3.4+, and PyPy 5.3+.
``cryptography`` includes both high level recipes and low level interfaces to
common cryptographic algorithms such as symmetric ciphers, message digests, and
key derivation functions. For example, to encrypt something with
``cryptography``'s high level symmetric encryption recipe:
.. code-block:: pycon
>>> from cryptography.fernet import Fernet
>>> # Put this somewhere safe!
>>> key = Fernet.generate_key()
>>> f = Fernet(key)
>>> token = f.encrypt(b"A really secret message. Not for prying eyes.")
>>> token
'...'
>>> f.decrypt(token)
'A really secret message. Not for prying eyes.'
You can find more information in the `documentation`_.
You can install ``cryptography`` with:
.. code-block:: console
$ pip install cryptography
For full details see `the installation documentation`_.
Discussion
~~~~~~~~~~
If you run into bugs, you can file them in our `issue tracker`_.
We maintain a `cryptography-dev`_ mailing list for development discussion.
You can also join ``#cryptography-dev`` on Freenode to ask questions or get
involved.
Security
~~~~~~~~
Need to report a security issue? Please consult our `security reporting`_
documentation.
.. _`documentation`: https://cryptography.io/
.. _`the installation documentation`: https://cryptography.io/en/latest/installation/
.. _`issue tracker`: https://github.com/pyca/cryptography/issues
.. _`cryptography-dev`: https://mail.python.org/mailman/listinfo/cryptography-dev
.. _`security reporting`: https://cryptography.io/en/latest/security/
cryptography/__about__.py,sha256=of-yHeXokW_53yyuIGdspMit777nIbgeHE6AkA59y9Y,817
cryptography/__init__.py,sha256=M7mQrfCHYuk7TpEPpfYxkhc95comqxOt41xYjLa5wiA,527
cryptography/exceptions.py,sha256=3DJSu6GT5l5yVqu8SHKODGZp_s66s_nZokxAgPyws-0,1234
cryptography/fernet.py,sha256=BmY5HBTeIQ24HmT9b10C0xY_-BZBMphFVx6S1QP6gyI,5290
cryptography/utils.py,sha256=UuySj9oOoTCM4NKUjSkeLCKt9pVyG8Cxi_ZgaUN5Hrk,4798
cryptography/hazmat/__init__.py,sha256=hEPNQw8dgjIPIn42qaLwXNRLCyTGNZeSvkQb57DPhbs,483
cryptography/hazmat/backends/__init__.py,sha256=92UZdmqTyQPOYA2ui17tksyjxBnTmj1XDsxDCChLvxE,496
cryptography/hazmat/backends/interfaces.py,sha256=b8zZ92ehVJje6SbvsI4Mwn5OpUJujhIk4MFImmwMlr4,10789
cryptography/hazmat/backends/openssl/__init__.py,sha256=k4DMe228_hTuB2kY3Lwk62JdI3EmCd7VkV01zJm57ps,336
cryptography/hazmat/backends/openssl/aead.py,sha256=NkmmYAgCjGdVMoRIzFLV2RkbhZ2WbVtNb5CqK1TlnKM,5581
cryptography/hazmat/backends/openssl/backend.py,sha256=g4xIcy6Oh5aHO_UDYLI206Vo8rghNMsCAjFNWJKCqPY,75732
cryptography/hazmat/backends/openssl/ciphers.py,sha256=wo1A55VCqS7PR7AqTI1Lz3hb210QoDosgibpgNRc1I8,8904
cryptography/hazmat/backends/openssl/cmac.py,sha256=AyKXShU3tMHEeGlHm_s_SAhyJwklcbWuFikj9IP-Z2k,2840
cryptography/hazmat/backends/openssl/decode_asn1.py,sha256=2Vz1JePth-72JnV7os2VcjxrqX7cwNi7WFBzsqx_DM8,30975
cryptography/hazmat/backends/openssl/dh.py,sha256=kXH0LXLsgo7FLNan6V5BiidS30zVkWNwaWuVZ-n6Uog,10814
cryptography/hazmat/backends/openssl/dsa.py,sha256=JGcNfoAByLPKhfQp0Q-eW2P4hOKRos8-MJ3nIDKxbWE,10278
cryptography/hazmat/backends/openssl/ec.py,sha256=j_DHfNTHBPT4JcnPpVjT1SHPMwFfcfwhesf79uQR1Z8,10286
cryptography/hazmat/backends/openssl/encode_asn1.py,sha256=fcM5M9bkFLOUr-wgVjB82c5U8slXM5gb8C5E9q7ZZQA,22450
cryptography/hazmat/backends/openssl/hashes.py,sha256=37n2XyXCO-WK9Mvs8zkncJdBeHrRzTKsW8EMBCEbWo8,2532
cryptography/hazmat/backends/openssl/hmac.py,sha256=-iWgdVdZ1Vs69oNvfbBAKYkvEHMUQChN484rRanhj3w,2958
cryptography/hazmat/backends/openssl/rsa.py,sha256=-tIGHoBGL0Vmxe7ZZ58G53oOAmnucdtIlUsBVdA1WwI,18099
cryptography/hazmat/backends/openssl/utils.py,sha256=WQl9SXQnyuigjhYsgPX4qQPlpAAVS5vOzIrDYX9E-EQ,1399
cryptography/hazmat/backends/openssl/x25519.py,sha256=XYQOG36AxW1y1iy5anFTxWiZnIjk4HjkAqw18IZM2us,3064
cryptography/hazmat/backends/openssl/x509.py,sha256=0E0rbzv60DXBbuEN7OP3sCoLJ_UMesrXfK5fIW7t-8g,18923
cryptography/hazmat/bindings/__init__.py,sha256=0wGw2OF9R7fHX7NWENCmrsYigbXHU2ojgn-N4Rkjs9U,246
cryptography/hazmat/bindings/_constant_time.cp37-win_amd64.pyd,sha256=Ey53zzYYSv0zSnoboUEQe5h2fRYbvmNrN5lq3MDw8X0,13312
cryptography/hazmat/bindings/_openssl.cp37-win_amd64.pyd,sha256=sPVnhEH5NcqF-GjagpxMlmXhqaLq3jwIpTSJpt6rR4U,647680
cryptography/hazmat/bindings/_padding.cp37-win_amd64.pyd,sha256=3590j374yE8dxBrdxr5hlS1g4zOFTJFyGVHdOo6xE9g,13312
cryptography/hazmat/bindings/openssl/__init__.py,sha256=0wGw2OF9R7fHX7NWENCmrsYigbXHU2ojgn-N4Rkjs9U,246
cryptography/hazmat/bindings/openssl/_conditional.py,sha256=o7cT8pGj-2rB7YN-EUGJNhs7DeFIr58AN3h9MK5uWo0,7692
cryptography/hazmat/bindings/openssl/binding.py,sha256=pgZNFDlx3gLHorz4ZHHUtA-LEQGi1dbYUG7WQ68tnp0,5496
cryptography/hazmat/primitives/__init__.py,sha256=0wGw2OF9R7fHX7NWENCmrsYigbXHU2ojgn-N4Rkjs9U,246
cryptography/hazmat/primitives/cmac.py,sha256=jXv_7KmaCek2LNOAbXXp0bzA3Mts6ff_oWBFnFVXluo,2221
cryptography/hazmat/primitives/constant_time.py,sha256=2-OvdvG0rvaRT0Spt5vi5rmqBUJYz89VuK32cmS2GNA,1124
cryptography/hazmat/primitives/hashes.py,sha256=NKhCtNpSbSMLYjo7mQjbQLTBRQF0wL3HTY-BqJSqQS8,4676
cryptography/hazmat/primitives/hmac.py,sha256=88sNgH3-t6kKVAILsx1SvjHBlYuz6_i34hLf2Z5U84s,2339
cryptography/hazmat/primitives/keywrap.py,sha256=LqjkVIs7ub5I5gwmYSb9Ia0VdXMqWWHmnKSdQ7HOGEA,5462
cryptography/hazmat/primitives/mac.py,sha256=dgLoN6PdA_QqowwB_RzSeEqJjIPnAqTUTxio-8CFP-8,884
cryptography/hazmat/primitives/padding.py,sha256=joCFMwVI8MnHT75GcUaInox1rYeLqjd4DtZLEBhYBlY,5736
cryptography/hazmat/primitives/serialization.py,sha256=q0A61qepY1cCjArCmZHdEdetoGloR4SzzQ-IaadH8xA,5513
cryptography/hazmat/primitives/asymmetric/__init__.py,sha256=WhUn3tGxoLAxGAsZHElJ2aOILXSh55AZi04MBudYmQA,1020
cryptography/hazmat/primitives/asymmetric/dh.py,sha256=6Xl01bjTVHFCcdJr3Ph2cQ7hxkYYedqm-SekZpxnntY,5454
cryptography/hazmat/primitives/asymmetric/dsa.py,sha256=uzK7qpe0BtqHkgVLSrNGtska1w3JSUN_uZp6XAA5LMY,6891
cryptography/hazmat/primitives/asymmetric/ec.py,sha256=9d2lVsYinE_v7XPHofNl5Dd55uCgps4YOcgOE8_bbbM,10305
cryptography/hazmat/primitives/asymmetric/padding.py,sha256=aCZatU5-q_WW5vazBWeKPF8ZZa0AI8hWzbJaVRN3RWI,2261
cryptography/hazmat/primitives/asymmetric/rsa.py,sha256=V7MKK29BpNGF2f3uWEs3HPYbGuL3YtDFujvjFQrle0Q,10317
cryptography/hazmat/primitives/asymmetric/utils.py,sha256=x7bcX3L_wLkZqdcOfUdDI70SdvUSrPolLv_6kRtFajk,1720
cryptography/hazmat/primitives/asymmetric/x25519.py,sha256=f4Tif1_sqmTRC9uByZ2eibijI5aHFZGUQ1jgQG5bqmo,1652
cryptography/hazmat/primitives/ciphers/__init__.py,sha256=QxaxejeFfz6CPhI1c4iNq_7DsiB41Y_Q-uLfzOx7fv8,626
cryptography/hazmat/primitives/ciphers/aead.py,sha256=Ybu5PZd-44OgcyJVs61-zJ_zH9PUKRckEYAPcdUqX7w,6409
cryptography/hazmat/primitives/ciphers/algorithms.py,sha256=akJFiPdwDT1OMIyhlMWbCVqs0ktaBzE5l4dT2iG-LJc,4233
cryptography/hazmat/primitives/ciphers/base.py,sha256=KOMTiI7-TPf9ENs_0IHuZ_kBkHz1wimdDG_xkfbdnAY,7148
cryptography/hazmat/primitives/ciphers/modes.py,sha256=WipP7JtIogVaruguxxNj0FUi7GIjgV1crW_ybilsTF8,7027
cryptography/hazmat/primitives/kdf/__init__.py,sha256=nod5HjPswjZr8wFp6Tsu6en9blHYF3khgXI5R0zIcnM,771
cryptography/hazmat/primitives/kdf/concatkdf.py,sha256=WTooWTAkHUCtaMAUouAluNbg71qXxPj_AHLyuRnPDR8,4109
cryptography/hazmat/primitives/kdf/hkdf.py,sha256=SlAKFKFS6jowkfO8wMu27wa268RPekYVQpedq2b3iJk,3660
cryptography/hazmat/primitives/kdf/kbkdf.py,sha256=SvuAqrv1ZZT-AG-pimTXZH4TtP42535tXaQbockFq_0,5025
cryptography/hazmat/primitives/kdf/pbkdf2.py,sha256=YiFNDI4CbGRH0OQXDMXG8DfYap32vtjvA-Zo-n_oAE4,2185
cryptography/hazmat/primitives/kdf/scrypt.py,sha256=aZVkYFw9XqPCInjAadnzlYfPw3fi2COGDe7ubuYjReg,2252
cryptography/hazmat/primitives/kdf/x963kdf.py,sha256=yOK2qAlWTHABVIvwT55jl_B6UR5ELyLFlcVtH16HxGc,2363
cryptography/hazmat/primitives/twofactor/__init__.py,sha256=BWrm3DKDoAa281E7U_nzz8v44OmAiXmlIycFcsehwfE,288
cryptography/hazmat/primitives/twofactor/hotp.py,sha256=6_EnKl-zRs0yCXuHxQhs2TEkHaprWxZnfJGrQjs5RIg,2589
cryptography/hazmat/primitives/twofactor/totp.py,sha256=KL3A4bjpqaqynQYd9hfPVkvs5vYVqf1JVpucEX7_ddM,1594
cryptography/hazmat/primitives/twofactor/utils.py,sha256=71gX1bJeP9TQa-HbSPzeUUJwVY78ALYQNvuusknUO4U,954
cryptography/x509/__init__.py,sha256=KAMKCRdMXDohHKs9GoDtAQrOviOZXXwd_lt3TvcZiCQ,7179
cryptography/x509/base.py,sha256=J44yZ15Hg2qAXMK9VAElvEsg05kZ2OZ0p3I3zLzGxY0,23698
cryptography/x509/certificate_transparency.py,sha256=eJ9lrITdyMn4XsrcVdrTaFVI_RR7mX_VzMZyiaEpbps,1000
cryptography/x509/extensions.py,sha256=PaWUKwLelaOEoujg3qKiTodpPHFuks4F_kJ9wy7PaqQ,43668
cryptography/x509/general_name.py,sha256=uXAt7I-5ZR3Ut8EEl4CVVTPx9OjkOcYp3m6EY0-LNe4,9887
cryptography/x509/name.py,sha256=QSZUwfxGIkKqqKKgRmaHyLR_uB9M0kJ3jRaQWb6i-w8,5878
cryptography/x509/oid.py,sha256=cULjdRQSUW7vSTlHlPl1T5CnlVxrV8TGWKPB-C7b6lw,12050
cryptography-2.3.1.dist-info/METADATA,sha256=njhD_LoQ6Z07xNIDQdsdmyQxb9sVvnmKW6HpiNe7JEk,5002
cryptography-2.3.1.dist-info/RECORD,,
cryptography-2.3.1.dist-info/WHEEL,sha256=jmFYSwR2oi5DgMGgmnuB-EJxqLMkUojGGdmJ0wz35aI,106
cryptography-2.3.1.dist-info/top_level.txt,sha256=QCkYQE4HJBpqIr-aBqbOZ70NlfbejKnDE6ODbNgUwwg,46
cryptography-2.3.1.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
cryptography/hazmat/backends/openssl/__pycache__/aead.cpython-37.pyc,,
cryptography/hazmat/backends/openssl/__pycache__/backend.cpython-37.pyc,,
cryptography/hazmat/backends/openssl/__pycache__/ciphers.cpython-37.pyc,,
cryptography/hazmat/backends/openssl/__pycache__/cmac.cpython-37.pyc,,
cryptography/hazmat/backends/openssl/__pycache__/decode_asn1.cpython-37.pyc,,
cryptography/hazmat/backends/openssl/__pycache__/dh.cpython-37.pyc,,
cryptography/hazmat/backends/openssl/__pycache__/dsa.cpython-37.pyc,,
cryptography/hazmat/backends/openssl/__pycache__/ec.cpython-37.pyc,,
cryptography/hazmat/backends/openssl/__pycache__/encode_asn1.cpython-37.pyc,,
cryptography/hazmat/backends/openssl/__pycache__/hashes.cpython-37.pyc,,
cryptography/hazmat/backends/openssl/__pycache__/hmac.cpython-37.pyc,,
cryptography/hazmat/backends/openssl/__pycache__/rsa.cpython-37.pyc,,
cryptography/hazmat/backends/openssl/__pycache__/utils.cpython-37.pyc,,
cryptography/hazmat/backends/openssl/__pycache__/x25519.cpython-37.pyc,,
cryptography/hazmat/backends/openssl/__pycache__/x509.cpython-37.pyc,,
cryptography/hazmat/backends/openssl/__pycache__/__init__.cpython-37.pyc,,
cryptography/hazmat/backends/__pycache__/interfaces.cpython-37.pyc,,
cryptography/hazmat/backends/__pycache__/__init__.cpython-37.pyc,,
cryptography/hazmat/bindings/openssl/__pycache__/binding.cpython-37.pyc,,
cryptography/hazmat/bindings/openssl/__pycache__/_conditional.cpython-37.pyc,,
cryptography/hazmat/bindings/openssl/__pycache__/__init__.cpython-37.pyc,,
cryptography/hazmat/bindings/__pycache__/__init__.cpython-37.pyc,,
cryptography/hazmat/primitives/asymmetric/__pycache__/dh.cpython-37.pyc,,
cryptography/hazmat/primitives/asymmetric/__pycache__/dsa.cpython-37.pyc,,
cryptography/hazmat/primitives/asymmetric/__pycache__/ec.cpython-37.pyc,,
cryptography/hazmat/primitives/asymmetric/__pycache__/padding.cpython-37.pyc,,
cryptography/hazmat/primitives/asymmetric/__pycache__/rsa.cpython-37.pyc,,
cryptography/hazmat/primitives/asymmetric/__pycache__/utils.cpython-37.pyc,,
cryptography/hazmat/primitives/asymmetric/__pycache__/x25519.cpython-37.pyc,,
cryptography/hazmat/primitives/asymmetric/__pycache__/__init__.cpython-37.pyc,,
cryptography/hazmat/primitives/ciphers/__pycache__/aead.cpython-37.pyc,,
cryptography/hazmat/primitives/ciphers/__pycache__/algorithms.cpython-37.pyc,,
cryptography/hazmat/primitives/ciphers/__pycache__/base.cpython-37.pyc,,
cryptography/hazmat/primitives/ciphers/__pycache__/modes.cpython-37.pyc,,
cryptography/hazmat/primitives/ciphers/__pycache__/__init__.cpython-37.pyc,,
cryptography/hazmat/primitives/kdf/__pycache__/concatkdf.cpython-37.pyc,,
cryptography/hazmat/primitives/kdf/__pycache__/hkdf.cpython-37.pyc,,
cryptography/hazmat/primitives/kdf/__pycache__/kbkdf.cpython-37.pyc,,
cryptography/hazmat/primitives/kdf/__pycache__/pbkdf2.cpython-37.pyc,,
cryptography/hazmat/primitives/kdf/__pycache__/scrypt.cpython-37.pyc,,
cryptography/hazmat/primitives/kdf/__pycache__/x963kdf.cpython-37.pyc,,
cryptography/hazmat/primitives/kdf/__pycache__/__init__.cpython-37.pyc,,
cryptography/hazmat/primitives/twofactor/__pycache__/hotp.cpython-37.pyc,,
cryptography/hazmat/primitives/twofactor/__pycache__/totp.cpython-37.pyc,,
cryptography/hazmat/primitives/twofactor/__pycache__/utils.cpython-37.pyc,,
cryptography/hazmat/primitives/twofactor/__pycache__/__init__.cpython-37.pyc,,
cryptography/hazmat/primitives/__pycache__/cmac.cpython-37.pyc,,
cryptography/hazmat/primitives/__pycache__/constant_time.cpython-37.pyc,,
cryptography/hazmat/primitives/__pycache__/hashes.cpython-37.pyc,,
cryptography/hazmat/primitives/__pycache__/hmac.cpython-37.pyc,,
cryptography/hazmat/primitives/__pycache__/keywrap.cpython-37.pyc,,
cryptography/hazmat/primitives/__pycache__/mac.cpython-37.pyc,,
cryptography/hazmat/primitives/__pycache__/padding.cpython-37.pyc,,
cryptography/hazmat/primitives/__pycache__/serialization.cpython-37.pyc,,
cryptography/hazmat/primitives/__pycache__/__init__.cpython-37.pyc,,
cryptography/hazmat/__pycache__/__init__.cpython-37.pyc,,
cryptography/x509/__pycache__/base.cpython-37.pyc,,
cryptography/x509/__pycache__/certificate_transparency.cpython-37.pyc,,
cryptography/x509/__pycache__/extensions.cpython-37.pyc,,
cryptography/x509/__pycache__/general_name.cpython-37.pyc,,
cryptography/x509/__pycache__/name.cpython-37.pyc,,
cryptography/x509/__pycache__/oid.cpython-37.pyc,,
cryptography/x509/__pycache__/__init__.cpython-37.pyc,,
cryptography/__pycache__/exceptions.cpython-37.pyc,,
cryptography/__pycache__/fernet.cpython-37.pyc,,
cryptography/__pycache__/utils.cpython-37.pyc,,
cryptography/__pycache__/__about__.cpython-37.pyc,,
cryptography/__pycache__/__init__.cpython-37.pyc,,
Wheel-Version: 1.0
Generator: bdist_wheel (0.31.1)
Root-Is-Purelib: false
Tag: cp37-cp37m-win_amd64
_constant_time
_openssl
_padding
cryptography
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Metadata-Version: 2.1
Name: importlib-metadata
Version: 5.1.0
Summary: Read metadata from Python packages
Home-page: https://github.com/python/importlib_metadata
Author: Jason R. Coombs
Author-email: jaraco@jaraco.com
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Requires-Python: >=3.7
License-File: LICENSE
Requires-Dist: zipp (>=0.5)
Requires-Dist: typing-extensions (>=3.6.4) ; python_version < "3.8"
Provides-Extra: docs
Requires-Dist: sphinx (>=3.5) ; extra == 'docs'
Requires-Dist: jaraco.packaging (>=9) ; extra == 'docs'
Requires-Dist: rst.linker (>=1.9) ; extra == 'docs'
Requires-Dist: furo ; extra == 'docs'
Requires-Dist: jaraco.tidelift (>=1.4) ; extra == 'docs'
Provides-Extra: perf
Requires-Dist: ipython ; extra == 'perf'
Provides-Extra: testing
Requires-Dist: pytest (>=6) ; extra == 'testing'
Requires-Dist: pytest-checkdocs (>=2.4) ; extra == 'testing'
Requires-Dist: flake8 (<5) ; extra == 'testing'
Requires-Dist: pytest-cov ; extra == 'testing'
Requires-Dist: pytest-enabler (>=1.3) ; extra == 'testing'
Requires-Dist: packaging ; extra == 'testing'
Requires-Dist: pyfakefs ; extra == 'testing'
Requires-Dist: flufl.flake8 ; extra == 'testing'
Requires-Dist: pytest-perf (>=0.9.2) ; extra == 'testing'
Requires-Dist: pytest-black (>=0.3.7) ; (platform_python_implementation != "PyPy") and extra == 'testing'
Requires-Dist: pytest-mypy (>=0.9.1) ; (platform_python_implementation != "PyPy") and extra == 'testing'
Requires-Dist: pytest-flake8 ; (python_version < "3.12") and extra == 'testing'
Requires-Dist: importlib-resources (>=1.3) ; (python_version < "3.9") and extra == 'testing'
.. image:: https://img.shields.io/pypi/v/importlib_metadata.svg
:target: https://pypi.org/project/importlib_metadata
.. image:: https://img.shields.io/pypi/pyversions/importlib_metadata.svg
.. image:: https://github.com/python/importlib_metadata/workflows/tests/badge.svg
:target: https://github.com/python/importlib_metadata/actions?query=workflow%3A%22tests%22
:alt: tests
.. image:: https://img.shields.io/badge/code%20style-black-000000.svg
:target: https://github.com/psf/black
:alt: Code style: Black
.. image:: https://readthedocs.org/projects/importlib-metadata/badge/?version=latest
:target: https://importlib-metadata.readthedocs.io/en/latest/?badge=latest
.. image:: https://img.shields.io/badge/skeleton-2022-informational
:target: https://blog.jaraco.com/skeleton
.. image:: https://tidelift.com/badges/package/pypi/importlib-metadata
:target: https://tidelift.com/subscription/pkg/pypi-importlib-metadata?utm_source=pypi-importlib-metadata&utm_medium=readme
Library to access the metadata for a Python package.
This package supplies third-party access to the functionality of
`importlib.metadata <https://docs.python.org/3/library/importlib.metadata.html>`_
including improvements added to subsequent Python versions.
Compatibility
=============
New features are introduced in this third-party library and later merged
into CPython. The following table indicates which versions of this library
were contributed to different versions in the standard library:
.. list-table::
:header-rows: 1
* - importlib_metadata
- stdlib
* - 5.0
- 3.12
* - 4.13
- 3.11
* - 4.6
- 3.10
* - 1.4
- 3.8
Usage
=====
See the `online documentation <https://importlib_metadata.readthedocs.io/>`_
for usage details.
`Finder authors
<https://docs.python.org/3/reference/import.html#finders-and-loaders>`_ can
also add support for custom package installers. See the above documentation
for details.
Caveats
=======
This project primarily supports third-party packages installed by PyPA
tools (or other conforming packages). It does not support:
- Packages in the stdlib.
- Packages installed without metadata.
Project details
===============
* Project home: https://github.com/python/importlib_metadata
* Report bugs at: https://github.com/python/importlib_metadata/issues
* Code hosting: https://github.com/python/importlib_metadata
* Documentation: https://importlib_metadata.readthedocs.io/
For Enterprise
==============
Available as part of the Tidelift Subscription.
This project and the maintainers of thousands of other packages are working with Tidelift to deliver one enterprise subscription that covers all of the open source you use.
`Learn more <https://tidelift.com/subscription/pkg/pypi-importlib-metadata?utm_source=pypi-importlib-metadata&utm_medium=referral&utm_campaign=github>`_.
Security Contact
================
To report a security vulnerability, please use the
`Tidelift security contact <https://tidelift.com/security>`_.
Tidelift will coordinate the fix and disclosure.
importlib_metadata/__init__.py,sha256=3J7V1nbWzGh1U_RUGcPToL0na6iaNTZmUmm4mjhk_GM,26467
importlib_metadata/_adapters.py,sha256=B6fCi5-8mLVDFUZj3krI5nAo-mKp1dH_qIavyIyFrJs,1862
importlib_metadata/_collections.py,sha256=CJ0OTCHIjWA0ZIVS4voORAsn2R4R2cQBEtPsZEJpASY,743
importlib_metadata/_compat.py,sha256=9zOKf0eDgkCMnnaEhU5kQVxHd1P8BIYV7Stso7av5h8,1857
importlib_metadata/_functools.py,sha256=PsY2-4rrKX4RVeRC1oGp1lB1pmC9eKN88_f-bD9uOoA,2895
importlib_metadata/_itertools.py,sha256=cvr_2v8BRbxcIl5x5ldfqdHjhI8Yi8s8yk50G_nm6jQ,2068
importlib_metadata/_meta.py,sha256=v5e1ZDG7yZTH3h7TjbS5bM5p8AGzMPVOu8skDMv4h6k,1165
importlib_metadata/_py39compat.py,sha256=2Tk5twb_VgLCY-1NEAQjdZp_S9OFMC-pUzP2isuaPsQ,1098
importlib_metadata/_text.py,sha256=HCsFksZpJLeTP3NEk_ngrAeXVRRtTrtyh9eOABoRP4A,2166
importlib_metadata/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
importlib_metadata-5.1.0.dist-info/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
importlib_metadata-5.1.0.dist-info/METADATA,sha256=Rlnxq08PwAOdXTE5So2YpL1H-GEGaBPJhiF_tdR1kes,4913
importlib_metadata-5.1.0.dist-info/WHEEL,sha256=2wepM1nk4DS4eFpYrW1TTqPcoGNfHhhO_i5m4cOimbo,92
importlib_metadata-5.1.0.dist-info/top_level.txt,sha256=CO3fD9yylANiXkrMo4qHLV_mqXL2sC5JFKgt1yWAT-A,19
importlib_metadata-5.1.0.dist-info/RECORD,,
importlib_metadata-5.1.0.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
importlib_metadata/__pycache__/_adapters.cpython-37.pyc,,
importlib_metadata/__pycache__/_collections.cpython-37.pyc,,
importlib_metadata/__pycache__/_compat.cpython-37.pyc,,
importlib_metadata/__pycache__/_functools.cpython-37.pyc,,
importlib_metadata/__pycache__/_itertools.cpython-37.pyc,,
importlib_metadata/__pycache__/_meta.cpython-37.pyc,,
importlib_metadata/__pycache__/_py39compat.cpython-37.pyc,,
importlib_metadata/__pycache__/_text.cpython-37.pyc,,
importlib_metadata/__pycache__/__init__.cpython-37.pyc,,
Wheel-Version: 1.0
Generator: bdist_wheel (0.38.4)
Root-Is-Purelib: true
Tag: py3-none-any
Metadata-Version: 2.1
Name: jsonschema
Version: 4.17.1
Summary: An implementation of JSON Schema validation for Python
Project-URL: Homepage, https://github.com/python-jsonschema/jsonschema
Project-URL: Documentation, https://python-jsonschema.readthedocs.io/
Project-URL: Issues, https://github.com/python-jsonschema/jsonschema/issues/
Project-URL: Funding, https://github.com/sponsors/Julian
Project-URL: Tidelift, https://tidelift.com/subscription/pkg/pypi-jsonschema?utm_source=pypi-jsonschema&utm_medium=referral&utm_campaign=pypi-link
Project-URL: Changelog, https://github.com/python-jsonschema/jsonschema/blob/main/CHANGELOG.rst
Project-URL: Source, https://github.com/python-jsonschema/jsonschema
Author: Julian Berman
Author-email: Julian+jsonschema@GrayVines.com
License: MIT
License-File: COPYING
Keywords: data validation,json,jsonschema,validation
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Requires-Python: >=3.7
Requires-Dist: attrs>=17.4.0
Requires-Dist: importlib-metadata; python_version < '3.8'
Requires-Dist: importlib-resources>=1.4.0; python_version < '3.9'
Requires-Dist: pkgutil-resolve-name>=1.3.10; python_version < '3.9'
Requires-Dist: pyrsistent!=0.17.0,!=0.17.1,!=0.17.2,>=0.14.0
Requires-Dist: typing-extensions; python_version < '3.8'
Provides-Extra: format
Requires-Dist: fqdn; extra == 'format'
Requires-Dist: idna; extra == 'format'
Requires-Dist: isoduration; extra == 'format'
Requires-Dist: jsonpointer>1.13; extra == 'format'
Requires-Dist: rfc3339-validator; extra == 'format'
Requires-Dist: rfc3987; extra == 'format'
Requires-Dist: uri-template; extra == 'format'
Requires-Dist: webcolors>=1.11; extra == 'format'
Provides-Extra: format-nongpl
Requires-Dist: fqdn; extra == 'format-nongpl'
Requires-Dist: idna; extra == 'format-nongpl'
Requires-Dist: isoduration; extra == 'format-nongpl'
Requires-Dist: jsonpointer>1.13; extra == 'format-nongpl'
Requires-Dist: rfc3339-validator; extra == 'format-nongpl'
Requires-Dist: rfc3986-validator>0.1.0; extra == 'format-nongpl'
Requires-Dist: uri-template; extra == 'format-nongpl'
Requires-Dist: webcolors>=1.11; extra == 'format-nongpl'
Description-Content-Type: text/x-rst
==========
jsonschema
==========
|PyPI| |Pythons| |CI| |ReadTheDocs| |Precommit| |Zenodo|
.. |PyPI| image:: https://img.shields.io/pypi/v/jsonschema.svg
:alt: PyPI version
:target: https://pypi.org/project/jsonschema/
.. |Pythons| image:: https://img.shields.io/pypi/pyversions/jsonschema.svg
:alt: Supported Python versions
:target: https://pypi.org/project/jsonschema/
.. |CI| image:: https://github.com/python-jsonschema/jsonschema/workflows/CI/badge.svg
:alt: Build status
:target: https://github.com/python-jsonschema/jsonschema/actions?query=workflow%3ACI
.. |ReadTheDocs| image:: https://readthedocs.org/projects/python-jsonschema/badge/?version=stable&style=flat
:alt: ReadTheDocs status
:target: https://python-jsonschema.readthedocs.io/en/stable/
.. |Precommit| image:: https://results.pre-commit.ci/badge/github/python-jsonschema/jsonschema/main.svg
:alt: pre-commit.ci status
:target: https://results.pre-commit.ci/latest/github/python-jsonschema/jsonschema/main
.. |Zenodo| image:: https://zenodo.org/badge/3072629.svg
:target: https://zenodo.org/badge/latestdoi/3072629
``jsonschema`` is an implementation of the `JSON Schema
<https://json-schema.org>`_ specification for Python.
.. code-block:: python
>>> from jsonschema import validate
>>> # A sample schema, like what we'd get from json.load()
>>> schema = {
... "type" : "object",
... "properties" : {
... "price" : {"type" : "number"},
... "name" : {"type" : "string"},
... },
... }
>>> # If no exception is raised by validate(), the instance is valid.
>>> validate(instance={"name" : "Eggs", "price" : 34.99}, schema=schema)
>>> validate(
... instance={"name" : "Eggs", "price" : "Invalid"}, schema=schema,
... ) # doctest: +IGNORE_EXCEPTION_DETAIL
Traceback (most recent call last):
...
ValidationError: 'Invalid' is not of type 'number'
It can also be used from console:
.. code-block:: bash
$ jsonschema --instance sample.json sample.schema
Features
--------
* Partial support for
`Draft 2020-12 <https://python-jsonschema.readthedocs.io/en/latest/api/jsonschema/validators/#jsonschema.validators.Draft202012Validator>`_ and
`Draft 2019-09 <https://python-jsonschema.readthedocs.io/en/latest/api/jsonschema/validators/#jsonschema.validators.Draft201909Validator>`_,
except for ``dynamicRef`` / ``recursiveRef`` and ``$vocabulary`` (in-progress).
Full support for
`Draft 7 <https://python-jsonschema.readthedocs.io/en/latest/api/jsonschema/validators/#jsonschema.validators.Draft7Validator>`_,
`Draft 6 <https://python-jsonschema.readthedocs.io/en/latest/api/jsonschema/validators/#jsonschema.validators.Draft6Validator>`_,
`Draft 4 <https://python-jsonschema.readthedocs.io/en/latest/api/jsonschema/validators/#jsonschema.validators.Draft4Validator>`_
and
`Draft 3 <https://python-jsonschema.readthedocs.io/en/latest/api/jsonschema/validators/#jsonschema.validators.Draft3Validator>`_
* `Lazy validation <https://python-jsonschema.readthedocs.io/en/latest/api/jsonschema/protocols/#jsonschema.protocols.Validator.iter_errors>`_
that can iteratively report *all* validation errors.
* `Programmatic querying <https://python-jsonschema.readthedocs.io/en/latest/errors/>`_
of which properties or items failed validation.
Installation
------------
``jsonschema`` is available on `PyPI <https://pypi.org/project/jsonschema/>`_. You can install using `pip <https://pip.pypa.io/en/stable/>`_:
.. code-block:: bash
$ pip install jsonschema
Extras
======
Two extras are available when installing the package, both currently related to ``format`` validation:
* ``format``
* ``format-nongpl``
They can be used when installing in order to include additional dependencies, e.g.:
.. code-block:: bash
$ pip install jsonschema'[format]'
Be aware that the mere presence of these dependencies – or even the specification of ``format`` checks in a schema – do *not* activate format checks (as per the specification).
Please read the `format validation documentation <https://python-jsonschema.readthedocs.io/en/latest/validate/#validating-formats>`_ for further details.
About
-----
I'm Julian Berman.
``jsonschema`` is on `GitHub <https://github.com/python-jsonschema/jsonschema>`_.
Get in touch, via GitHub or otherwise, if you've got something to contribute,
it'd be most welcome!
You can also generally find me on Libera (nick: ``Julian``) in various
channels, including ``#python``.
If you feel overwhelmingly grateful, you can also `sponsor me
<https://github.com/sponsors/Julian/>`_.
And for companies who appreciate ``jsonschema`` and its continued support
and growth, ``jsonschema`` is also now supportable via `TideLift
<https://tidelift.com/subscription/pkg/pypi-jsonschema?utm_source=pypi-j
sonschema&utm_medium=referral&utm_campaign=readme>`_.
Release Information
-------------------
v4.17.1
=======
* The error message when using ``unevaluatedProperties`` with a non-trivial
schema value (i.e. something other than ``false``) has been improved (#996).
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
此差异已折叠。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册