
    ɱ^;                     ,    d Z ddlZddlZddlZd Zd Zy)zHelpDev - Extracts information about the Python environment easily.

Authors:
    - Daniel Cosmo Pizetta <daniel.pizetta@usp.br>

Since:
    2019/04/16

License:
    MIT

    Nc                     t        j                  t        j                  d      d   dt         j                        } | j                  ddd       | j                  d	dd
       | j                  ddd       | j                  ddd       | j                  ddd       | j                  ddd       | j                  ddddt        d       | j                  ddd       | j                  ddd       | j                  ddd       | j                  ddd        | j                  d!dd"       | j                  d#dd$       | j                  d%dd&       | j                  d'dd(       | j                  d)dd*       | j                  d+dd,       | j                  d-dd.dt        d/       | j                  d0dd1       | j                  d2dd3       | j                  d4dd5       | j                  d6dd7       | j                  d8dd9       | j                  d:dt        d;<       | j                  d=d>d?d@       | j                  dAdBdCdDj                  t        j                        dEF       | j                         }|S )GzQParse arguments.

    Returns:
        argparse.Namespace: parsed arguments.
    
r   F)descriptionadd_helpformatter_classz
--hardware
store_truez$CPU, memory and architecture (PEI)

)actionhelpz--oszOperating system (PEI)

z--threadz*Thread specification in the system (PEI)

z--distributionsz)All options for distributions below (PED)z--pythonzPython distribution (PED)z--condaz*Conda/Anaconda Python distribution (PED)

z
--packages? NzmAll options for packages below, except '-e' (PED).
Filter PACKAGE(s) to show. Accepts regex, separator is ',')nargsconstdefaulttyper
   z--packages-pipz(PIP installed packages + PIP check (PED)z--packages-pip-ez0PIP locally installed packages + PIP check (PED)z--packages-condazCONDA installed packages (PED)z--packages-conda-ez(CONDA locally installed packages (PED)

z--qtzAll options for Qt below (PEAD)z--qt-bindingsz*Available Qt bindings (PyQt/Pyside) (PEAD)z--qt-abstractionsz8Available Qt abstractions (QtPy/Qt.Py/PyQtGraph)(PEAD)

z	--numbersz#All options for numbers below (PEI)z--floatz(Float representation in the system (PEI)z--intz,Integer representation in the system (PEI)

z	--network   ziNetwork information, DNS and load for usual sites (PEI). 
NETWORK timeout defaults to 5s. 0 is disabled

z
--personalz1All options for personal information below (PEAD)z--pathz0Show Python current paths i.e. 'sys.path' (PEAD)z--scopez/Show Python current scope i.e. 'dir()' (PEAD)

z--allz/Run all options above, except 'personal' (PEAD)z--all-for-surez4Run all options above, INCLUDING 'PERSONAL' (PEAD)

z--reportzbApply a custom filter from REPORT package.
The filter is given by REPORT.custom_helpdev(version)

)r   r   r
   z--helpz-hr
   zShow the program's helpz	--versionz-vversionzv{}zShow the program's version)r	   r   r
   )argparseArgumentParser__doc__splitRawTextHelpFormatteradd_argumentstrintformathelpdev__version__
parse_args)parser	argumentss     2/usr/lib/python3/dist-packages/helpdev/__main__.pyr   r      sN    $$MM$'* 557F
 \E  G |9  ; 
<K  M ),H  J

<8  :
	,K  M Cr4cZ  [ (G  I
*<O  Q
*<=  ?
,\I  K |>  @
I  K
+LY  [ LB  D
	,G  I
M  O 3aCQ  R \P  R
O  Q
	,P  R N  P
(U  W 
DsY  Z $v6  8
T) %W-@-@ A9  ; !!#I    c                  B
   t               } i }| j                  rd| _        t        t        j
                        dk  }| j                  s| j                  s|r#|j                  t        j                                | j                  s| j                  s|r#|j                  t        j                                | j                  s| j                  s|r#|j                  t        j                                | j                  s| j                  s|s| j                  r#|j                  t        j                                 | j"                  s| j                  s|s| j                  r#|j                  t        j$                                | j&                  s'| j                  s| j(                  s| j(                  dk(  r/|j                  t        j*                  | j(                               | j,                  r0|j                  t        j*                  d| j(                               | j.                  s'| j                  s| j(                  s| j(                  dk(  r/|j                  t        j0                  | j(                               | j2                  s| j                  r0|j                  t        j0                  d| j(                               | j4                  s| j6                  s| j                  s|r#|j                  t        j8                                | j:                  s| j6                  s| j                  s|r#|j                  t        j<                                | j>                  s| j                  s| j@                  r#|j                  t        jB                                | jD                  s| j                  s| j@                  r#|j                  t        jF                                | jH                  r.|j                  t        jJ                  | jH                               | jL                  s| j                  s| jN                  r#|j                  t        jP                                | jR                  s| j                  s| jN                  r#|j                  t        jT                                | jV                  r0|j                  t        jX                  | jV                               n| jV                  dk(  rt[        d       t        j\                  |       y)	zMain function.T   r   )packages)	edit_moder%   )packagez>You must pass a package name to report [--report PACKAGE_NAME]N)/r   all_for_surealllensysargvhardwareupdater   check_hardwareoscheck_osthreadcheck_threadpythondistributionscheck_pythoncondacheck_condapackages_pipr%   check_python_packagespackages_pip_epackages_condacheck_conda_packagespackages_conda_eqt_bindingsqtcheck_qt_bindingsqt_abstractionscheck_qt_abstractionsfloatnumberscheck_floatr   	check_intnetworkcheck_networkpathpersonal
check_pathscopecheck_scopereport	customizeprintprint_output)argsinfono_argss      r!   mainrV   l   s/   <DD #((mq G }}GG**,-ww$((gG$$&'{{dhh'G((*+ {{dhh'T-?-?G((*+zzTXXD,>,>G'')* DHH"9LG114==IJG11D4==YZdhh$--4==B;NG00$--HIG004$--XY 477dhh'G--/0tww$((gG1134 zzTXXG'')*xx488t||G%%'( ||G))$,,78
 yyD%%G&&()zzT&&$--G'')*{{G%%dkk:;		NOr"   )r   r   r+   r   r   rV    r"   r!   <module>rX      s"     
 QhAr"   