| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- import os
- import platform
- import sys
- from importlib.metadata import PackageNotFoundError, version
- def _get_sys_info():
- """
- Get useful system information.
- Returns
- -------
- dict
- Useful system information.
- """
- return {
- "python": sys.version.replace(os.linesep, " "),
- "executable": sys.executable,
- "machine": platform.platform(),
- }
- def _get_deps_info():
- """
- Get the versions of the dependencies.
- Returns
- -------
- dict
- Versions of the dependencies.
- """
- deps = ["cobyqa", "numpy", "scipy", "setuptools", "pip"]
- deps_info = {}
- for module in deps:
- try:
- deps_info[module] = version(module)
- except PackageNotFoundError:
- deps_info[module] = None
- return deps_info
- def show_versions():
- """
- Display useful system and dependencies information.
- When reporting issues, please include this information.
- """
- print("System settings")
- print("---------------")
- sys_info = _get_sys_info()
- print(
- "\n".join(
- f"{k:>{max(map(len, sys_info.keys())) + 1}}: {v}"
- for k, v in sys_info.items()
- )
- )
- print()
- print("Python dependencies")
- print("-------------------")
- deps_info = _get_deps_info()
- print(
- "\n".join(
- f"{k:>{max(map(len, deps_info.keys())) + 1}}: {v}"
- for k, v in deps_info.items()
- )
- )
|