Skip to main content

HelpDev - Extracts information about the Python environment easily.

Project description

Helping users and developers to get information about the environment to report bugs or even test your system without spending a day on it. It can get information about hardware, OS, paths, Python distribution and packages, including Qt-things. Operates in Linux, Windows and Mac. Working on Python 2.7+ and Python 3.4+.

If you want to get information at runtime of your application, you need to call using the same environment (and process) in which your application is running. This module can be imported and integrated into your application, providing a report about the current environment.

Some information can be depedent or independent of your Python environment, and some others can be dependent your running application. So, there are some acronymn used to refer to them:

  • PEI: Python environment independent;

  • PED: Python environment DEPENDENT;

  • PEAD: Python environment and application DEPENDENT.

Caution:

  • This script is not supposed to get personal information using the option --all, but you must check the information before using the output.

  • Using the option --all-for-sure it is added information about paths and variables that can show personal information. So, be sure when using this option when publishing in the web.

  • I’m not responsible for bad use or problems with the information given by this script, but if pointed in the Issues, I can help fixing it.

Installing, updating and uninstalling

To install and/or update, do

$ pip install -U helpdev

To remove

$ pip uninstall helpdev

Running

You just need to run in the terminal the line(s) below.

To get a minimalist output

$ helpdev

To filter a set of packages to get info, which lists all that starts with sphinx, qtpy and pyqt5

$ helpdev --packages="sphinx.*,qtpy,PYQT5"

To get a complete output without personal information

$ helpdev --all

To get a complete output WITH PERSONAL INFORMATION

$ helpdev --all-for-sure

To get some help information

$ helpdev --help

Examples from v0.6

Help

$ helpdev --help
usage: helpdev
    [--hardware] [--os] [--thread] [--network [NETWORK]]
    [--distributions] [--python] [--conda]
    [--qt] [--qt-bindings] [--qt-abstractions]
    [--packages [PACKAGES]]
    [--packages-pip] [--packages-pip-e]
    [--packages-conda] [--packages-conda-e]
    [--numbers] [--float] [--int]
    [--personal] [--path] [--scope]
    [--all]
    [--all-for-sure]
    [--version]
    [--help]

HelpDev - Extracts information about the Python environment easily.

optional arguments:

--hardware            CPU, memory and architecture (PEI)
--os                  Operating system (PEI)
--thread              Threads specification in the system (PEI)
--network [NETWORK]   Network information, DNS and load for usual sites
                       (PEI). NETWORK timeout defaults to 5s. 0 is disabled

--distributions       All options for distributions below (PED)
--python              Python distribution (PED)
--conda               Conda/Anaconda Python distribution (PED)

--qt                  All options for Qt below (PEAD)
--qt-bindings         Available Qt bindings (PyQt/Pyside) (PEAD)
--qt-abstractions     Available Qt abstractions (QtPy/Qt.Py/PyQtGraph) (PEAD)

--packages [PACKAGES] All options for packages below, except '-e' (PED)
                       Filter PACKAGE(s) to report. Accepts regex, separator is ','
--packages-pip        PIP installed packages + PIP check (PED)
--packages-pip-e      PIP locally installed packages + PIP check (PED)
--packages-conda      CONDA installed packages (PED)
--packages-conda-e    CONDA locally installed packages (PED)

--numbers             All options for numbers below (PEI)
--float               Float representation in the system (PEI)
--int                 Integer representation in the system (PEI)

--personal            All options for personal information below (PEAD)
--path                Show Python current paths i.e. 'sys.path' (PEAD)
--scope               Show Python current scope i.e. 'dir()' (PEAD)

--all                 Run all options above, except 'personal' (PEAD)
--all-for-sure        Run all options above, INCLUDING 'PERSONAL' (PEAD)

--version, -v         Show program's version number and exit
--help, -h            Show this help message and exit

With –packages filter

This filtering feature provides a clean list of packages to report. It accepts regular expressions. Each expression must be separated by comma.

The basic regular expression checks the start until the end of the package name and they are case insenstitive.

# gets all that starts with 'sphinx', 'qtpy' and 'PYQT5' (not case sensitive)
$ helpdev --packages="sphinx.*,qtpy,PYQT5"
* PYTHON PACKAGES---------------------------------------
    - PyQt5......................... 5.12.1
    - QtPy.......................... 1.7.0
    - Sphinx........................ 2.0.1
    - sphinx-rtd-theme.............. 0.4.3
    - sphinxcontrib-applehelp....... 1.0.1
    - sphinxcontrib-bibtex.......... 0.4.2
    - sphinxcontrib-devhelp......... 1.0.1
    - sphinxcontrib-excel........... 0.0.1
    - sphinxcontrib-fulltoc......... 1.2.0
    - sphinxcontrib-htmlhelp........ 1.0.2
    - sphinxcontrib-jsmath.......... 1.0.1
    - sphinxcontrib-plantuml........ 0.15
    - sphinxcontrib-qthelp.......... 1.0.2
    - sphinxcontrib-serializinghtml. 1.1.3
* CONDA PACKAGES-----------------------------------------
    - pyqt5......................... 5.12.1
    - qtpy.......................... 1.7.0
    - sphinx........................ 2.0.1
    - sphinx-rtd-theme.............. 0.4.3
    - sphinxcontrib-applehelp....... 1.0.1
    - sphinxcontrib-bibtex.......... 0.4.2
    - sphinxcontrib-devhelp......... 1.0.1
    - sphinxcontrib-excel........... 0.0.1
    - sphinxcontrib-fulltoc......... 1.2.0
    - sphinxcontrib-htmlhelp........ 1.0.2
    - sphinxcontrib-jsmath.......... 1.0.1
    - sphinxcontrib-plantuml........ 0.15
    - sphinxcontrib-qthelp.......... 1.0.2
    - sphinxcontrib-serializinghtml. 1.1.3

This code is based on many other scripts from:

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

helpdev-0.7.1.tar.gz (51.6 kB view details)

Uploaded Source

Built Distribution

helpdev-0.7.1-py3-none-any.whl (14.0 kB view details)

Uploaded Python 3

File details

Details for the file helpdev-0.7.1.tar.gz.

File metadata

  • Download URL: helpdev-0.7.1.tar.gz
  • Upload date:
  • Size: 51.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3.post20200330 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.2

File hashes

Hashes for helpdev-0.7.1.tar.gz
Algorithm Hash digest
SHA256 bb62a79acbac141dadf42cadeb92bb7450dd18b9824a62043b6a0b149190db3d
MD5 b38a5ba80d849edae3c3e65aa71b4b2e
BLAKE2b-256 168d1909747368fef0cda0af1c570be578deff1f4fc3512c1e308c8fff73f359

See more details on using hashes here.

File details

Details for the file helpdev-0.7.1-py3-none-any.whl.

File metadata

  • Download URL: helpdev-0.7.1-py3-none-any.whl
  • Upload date:
  • Size: 14.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.1.3.post20200330 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.2

File hashes

Hashes for helpdev-0.7.1-py3-none-any.whl
Algorithm Hash digest
SHA256 779a761b18c2d96fb181aa699609f802347806125f2fee2f60dad875a625e38e
MD5 968cb007da49d2e2a49a8825002164ac
BLAKE2b-256 0cafb7549206bf1b4c618dfefb7650bb09be80fdbe1858e5ab4f1f69db51d9bb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page