juc500 정상동작
This commit is contained in:
+1
@@ -0,0 +1 @@
|
||||
pip
|
||||
+109
@@ -0,0 +1,109 @@
|
||||
Metadata-Version: 2.4
|
||||
Name: python-discovery
|
||||
Version: 1.4.4
|
||||
Summary: Python interpreter discovery
|
||||
Project-URL: Changelog, https://github.com/tox-dev/python-discovery/releases
|
||||
Project-URL: Documentation, https://python-discovery.readthedocs.io
|
||||
Project-URL: Homepage, https://github.com/tox-dev/python-discovery
|
||||
Project-URL: Source, https://github.com/tox-dev/python-discovery
|
||||
Project-URL: Tracker, https://github.com/tox-dev/python-discovery/issues
|
||||
Maintainer-email: Bernát Gábor <gaborjbernat@gmail.com>
|
||||
License: Permission is hereby granted, free of charge, to any person obtaining a
|
||||
copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included
|
||||
in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
License-File: LICENSE
|
||||
Keywords: discovery,interpreter,python
|
||||
Classifier: Development Status :: 5 - Production/Stable
|
||||
Classifier: Intended Audience :: Developers
|
||||
Classifier: License :: OSI Approved :: MIT License
|
||||
Classifier: Operating System :: MacOS :: MacOS X
|
||||
Classifier: Operating System :: Microsoft :: Windows
|
||||
Classifier: Operating System :: POSIX
|
||||
Classifier: Programming Language :: Python :: 3 :: Only
|
||||
Classifier: Programming Language :: Python :: 3.8
|
||||
Classifier: Programming Language :: Python :: 3.9
|
||||
Classifier: Programming Language :: Python :: 3.10
|
||||
Classifier: Programming Language :: Python :: 3.11
|
||||
Classifier: Programming Language :: Python :: 3.12
|
||||
Classifier: Programming Language :: Python :: 3.13
|
||||
Classifier: Programming Language :: Python :: 3.14
|
||||
Classifier: Programming Language :: Python :: Implementation :: CPython
|
||||
Classifier: Topic :: Software Development :: Libraries
|
||||
Classifier: Topic :: Utilities
|
||||
Requires-Python: >=3.8
|
||||
Requires-Dist: filelock>=3.15.4
|
||||
Requires-Dist: platformdirs<5,>=4.3.6
|
||||
Provides-Extra: docs
|
||||
Requires-Dist: furo>=2025.12.19; extra == 'docs'
|
||||
Requires-Dist: sphinx-autodoc-typehints>=3.6.3; extra == 'docs'
|
||||
Requires-Dist: sphinx>=9.1; extra == 'docs'
|
||||
Requires-Dist: sphinxcontrib-mermaid>=2; extra == 'docs'
|
||||
Requires-Dist: sphinxcontrib-towncrier>=0.4; extra == 'docs'
|
||||
Requires-Dist: towncrier>=25.8; extra == 'docs'
|
||||
Provides-Extra: testing
|
||||
Requires-Dist: covdefaults>=2.3; extra == 'testing'
|
||||
Requires-Dist: coverage>=7.5.4; extra == 'testing'
|
||||
Requires-Dist: pytest-mock>=3.14; extra == 'testing'
|
||||
Requires-Dist: pytest>=8.3.5; extra == 'testing'
|
||||
Requires-Dist: setuptools>=75.1; extra == 'testing'
|
||||
Description-Content-Type: text/markdown
|
||||
|
||||
# [`python-discovery`](https://python-discovery.readthedocs.io/en/latest/)
|
||||
|
||||
[](https://pypi.org/project/python-discovery/)
|
||||
[](https://pypi.org/project/python-discovery/)
|
||||
[](https://pepy.tech/project/python-discovery)
|
||||
[](https://github.com/tox-dev/python-discovery/actions/workflows/check.yaml)
|
||||
[](https://python-discovery.readthedocs.io/en/latest/?badge=latest)
|
||||
|
||||
## What is python-discovery?
|
||||
|
||||
`python-discovery` is a library for discovering Python interpreters installed on your machine. You may have multiple
|
||||
Python versions from system packages, [pyenv](https://github.com/pyenv/pyenv), [mise](https://mise.jdx.dev/),
|
||||
[asdf](https://asdf-vm.com/), [uv](https://docs.astral.sh/uv/), or the Windows registry (PEP 514). This library finds
|
||||
the right one for you.
|
||||
|
||||
Give it a requirement like `python3.12` or `>=3.11,<3.13`, and it searches all known locations, verifies each candidate,
|
||||
and returns detailed metadata about the match. Results are cached to disk so repeated lookups are fast.
|
||||
|
||||
## Usage
|
||||
|
||||
```python
|
||||
from pathlib import Path
|
||||
|
||||
from python_discovery import DiskCache, get_interpreter
|
||||
|
||||
cache = DiskCache(root=Path("~/.cache/python-discovery").expanduser())
|
||||
result = get_interpreter("python3.12", cache=cache)
|
||||
if result is not None:
|
||||
print(result.executable) # /usr/bin/python3.12
|
||||
print(result.implementation) # CPython
|
||||
print(result.version_info[:3]) # (3, 12, 1)
|
||||
```
|
||||
|
||||
The `get_interpreter()` function accepts various specification formats:
|
||||
|
||||
- Absolute path: `/usr/bin/python3.12`
|
||||
- Version: `3.12`
|
||||
- Implementation prefix: `cpython3.12`
|
||||
- [Version specifier](https://packaging.python.org/en/latest/specifications/version-specifiers/): `>=3.10`,
|
||||
`>=3.11,<3.13`
|
||||
|
||||
## Documentation
|
||||
|
||||
Full documentation is available at [python-discovery.readthedocs.io](https://python-discovery.readthedocs.io/en/latest/)
|
||||
+28
@@ -0,0 +1,28 @@
|
||||
python_discovery-1.4.4.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
|
||||
python_discovery-1.4.4.dist-info/METADATA,sha256=15xJaaopcuujqLtLazKC4ZadMMCtHPWntqISeeYMFCQ,5592
|
||||
python_discovery-1.4.4.dist-info/RECORD,,
|
||||
python_discovery-1.4.4.dist-info/WHEEL,sha256=lCkmxWfQsSc9CfIClYeavTdQeEX2toPqufh9gI35EQA,87
|
||||
python_discovery-1.4.4.dist-info/licenses/LICENSE,sha256=kOJeH68qSq6o2V7o5_VziwUqGswMnFgGgQH5Mahr1Yg,1023
|
||||
python_discovery/__init__.py,sha256=Hi4j3pMvC8Fo8KoNL-wOHsPSCUHwY4c0qvv5sjnFzME,808
|
||||
python_discovery/__pycache__/__init__.cpython-311.pyc,,
|
||||
python_discovery/__pycache__/_cache.cpython-311.pyc,,
|
||||
python_discovery/__pycache__/_cached_py_info.cpython-311.pyc,,
|
||||
python_discovery/__pycache__/_compat.cpython-311.pyc,,
|
||||
python_discovery/__pycache__/_discovery.cpython-311.pyc,,
|
||||
python_discovery/__pycache__/_py_info.cpython-311.pyc,,
|
||||
python_discovery/__pycache__/_py_spec.cpython-311.pyc,,
|
||||
python_discovery/__pycache__/_specifier.cpython-311.pyc,,
|
||||
python_discovery/_cache.py,sha256=bG4fD-h2pdPmb4v9BldbXmJ5Tlt1boiH1Qrz8kp9Dds,5063
|
||||
python_discovery/_cached_py_info.py,sha256=1AFEoc_-OaCi1PXmaFz9Iy_bEuqOhJdFSDFHljzD-EE,8540
|
||||
python_discovery/_compat.py,sha256=iqxGuhK9rPaiui80G1H1KrweoMJ16gyLYEmUrSXrp5c,709
|
||||
python_discovery/_discovery.py,sha256=cdo6xlktNMEwsQn2R8pn4T1VDE4LD2EJPUyCT7vlHnM,16830
|
||||
python_discovery/_py_info.py,sha256=fFhS-gZoYIJYscqM56h1RwFknJou8bgf3h8VXrqm5g8,36974
|
||||
python_discovery/_py_spec.py,sha256=FN7nsWOkxdFpmd5st5hz5e2f7egbLzzbRiNiBndAYZc,10877
|
||||
python_discovery/_specifier.py,sha256=PTh6suNTC0hMnFSxFYF_vggdciFLnwxoh1YflSbgCXA,10368
|
||||
python_discovery/_windows/__init__.py,sha256=qthcyGh36b3WkeSbZ4ECRRYLbCOCaQu5X_DRZ98tXfk,315
|
||||
python_discovery/_windows/__pycache__/__init__.cpython-311.pyc,,
|
||||
python_discovery/_windows/__pycache__/_pep514.cpython-311.pyc,,
|
||||
python_discovery/_windows/__pycache__/_propose.cpython-311.pyc,,
|
||||
python_discovery/_windows/_pep514.py,sha256=zXxje07QIXfrCB3eYbZHOBgXcvAQQpZ-ZWun3_zrapA,7688
|
||||
python_discovery/_windows/_propose.py,sha256=iMJf6l0TU4SvuV8UsCHHINAe9L5dUT949xyeyMVdong,1565
|
||||
python_discovery/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
||||
+4
@@ -0,0 +1,4 @@
|
||||
Wheel-Version: 1.0
|
||||
Generator: hatchling 1.31.0
|
||||
Root-Is-Purelib: true
|
||||
Tag: py3-none-any
|
||||
+18
@@ -0,0 +1,18 @@
|
||||
Permission is hereby granted, free of charge, to any person obtaining a
|
||||
copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included
|
||||
in all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
||||
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
Reference in New Issue
Block a user