Coverage for /pythoncovmergedfiles/medio/medio/src/pydantic/pydantic/version.py: 18%
17 statements
« prev ^ index » next coverage.py v7.2.3, created at 2023-04-27 07:38 +0000
« prev ^ index » next coverage.py v7.2.3, created at 2023-04-27 07:38 +0000
1__all__ = 'VERSION', 'version_info'
3VERSION = '2.0a3'
6def version_info() -> str:
7 import platform
8 import sys
9 from importlib import import_module
10 from pathlib import Path
12 import pydantic_core._pydantic_core as pdc
14 optional_deps = []
15 for p in 'devtools', 'email-validator', 'typing-extensions':
16 try:
17 import_module(p.replace('-', '_'))
18 except ImportError:
19 continue
20 optional_deps.append(p)
22 info = {
23 'pydantic version': VERSION,
24 'pydantic-core version': f'{pdc.__version__} {pdc.build_profile} build profile',
25 'install path': Path(__file__).resolve().parent,
26 'python version': sys.version,
27 'platform': platform.platform(),
28 'optional deps. installed': optional_deps,
29 }
30 return '\n'.join('{:>30} {}'.format(k + ':', str(v).replace('\n', ' ')) for k, v in info.items())