3 Re{@s"ddlmZddlZddlZddlZddlZddlZddlZddl m Z ddl m Z ddlmZddlmZddlmZddlmZmZmZdd lmZmZmZdd lmZdd lmZerddl Z dd l!m"Z"m#Z#m$Z$m%Z%dd l&m'Z'dZ(ej)e*Z+ddZ,Gddde-Z.ddZ/ddZ0dS))absolute_importN)version) ensure_binary) LinkCollector) PackageFinder)SelectionPreferences)adjacent_tmp_filecheck_path_ownerreplace) ensure_dirget_distributionget_installed_version) get_installer)MYPY_CHECK_RUNNING)AnyDictTextUnion) PipSessionz%Y-%m-%dT%H:%M:%SZcCst|}tj|j}|S)N)rhashlibsha224 hexdigest)key key_bytesnamer/builddir/build/BUILDROOT/alt-python36-pip-20.2.4-5.el9.x86_64/opt/alt/python36/lib/python3.6/site-packages/pip/_internal/self_outdated_check.py_get_statefile_name*src@s(eZdZddZeddZddZdS)SelfCheckStatecCsni|_d|_|rjtjj|dt|j|_y&t|j}tj ||_WdQRXWnt t t fk rhYnXdS)N selfcheck) statestatefile_pathospathjoinrropenjsonloadIOError ValueErrorKeyError)self cache_dir statefilerrr__init__2s zSelfCheckState.__init__cCstjS)N)sysprefix)r+rrrrDszSelfCheckState.keycCs|js dSttjj|js dSttjj|j|j|jt|d}t j |ddd}t |j}|j t |WdQRXyt|j|jWntk rYnXdS)N)r last_check pypi_versionT,:) sort_keys separators)r3r4)r!r r"r#dirnamer rstrftimeSELFCHECK_DATE_FMTr&dumpsrwriterr rOSError)r+r2 current_timer textfrrrsaveIs zSelfCheckState.saveN)__name__ __module__ __qualname__r.propertyrr@rrrrr1s rcCst|}|sdSdt|kS)zChecks whether pkg was installed by pip This is used not to display the upgrade message when pip is in fact installed by system package manager, such as dnf on Fedora. Fpip)r r)pkgdistrrrwas_installed_by_pipmsrHc CsVtd}|sdStj|}d}y t|jd}tjj}d|jkrzd|jkrztjj|jdt }||j dkrz|jd}|dkrt j ||d d }t d d d } tj || d } | jdj} | dkrdSt| j}|j||tj|} || ko|j| jkotd} | sdSdjtj}tjd|||Wn$tk rPtjdd dYnXdS)zCheck for an update for pip. Limit the frequency of checks to once per week. State is stored either in the active virtualenv or in the user's USER_CACHE_DIR keyed off the prefix of the pip script path. rEN)r,r1r2<T)optionssuppress_no_indexF) allow_yankedallow_all_prereleases)link_collectorselection_prefsz {} -m pipzYou are using pip version %s; however, version %s is available. You should consider upgrading via the '%s install --upgrade pip' command.z5There was an error checking the latest version of pip)exc_infoi`'i: )r packaging_versionparserr,datetimeutcnowr strptimer9 total_secondsrcreaterrfind_best_candidatebest_candidatestrrr@ base_versionrHformatr/ executableloggerwarning Exceptiondebug)sessionrLinstalled_version pip_versionr2r r=r1rPrQfinderr\remote_versionlocal_version_is_olderpip_cmdrrrpip_self_version_checkzsX          rl)1 __future__rrVrr&loggingos.pathr"r/Zpip._vendor.packagingrrTZpip._vendor.sixrpip._internal.index.collectorr"pip._internal.index.package_finderr$pip._internal.models.selection_prefsrpip._internal.utils.filesystemrr r pip._internal.utils.miscr r r pip._internal.utils.packagingrpip._internal.utils.typingroptparsetypingrrrrpip._internal.network.sessionrr9 getLoggerrArarobjectrrHrlrrrrs2          <