ducktools-pythonfinder 0.6.4__tar.gz → 0.6.6__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. {ducktools_pythonfinder-0.6.4/src/ducktools_pythonfinder.egg-info → ducktools_pythonfinder-0.6.6}/PKG-INFO +1 -1
  2. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/src/ducktools/pythonfinder/__main__.py +4 -6
  3. ducktools_pythonfinder-0.6.6/src/ducktools/pythonfinder/_version.py +2 -0
  4. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/src/ducktools/pythonfinder/linux/__init__.py +1 -1
  5. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/src/ducktools/pythonfinder/win32/registry_search.py +7 -2
  6. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6/src/ducktools_pythonfinder.egg-info}/PKG-INFO +1 -1
  7. ducktools_pythonfinder-0.6.4/src/ducktools/pythonfinder/_version.py +0 -2
  8. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/.gitignore +0 -0
  9. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/LICENSE +0 -0
  10. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/MANIFEST.in +0 -0
  11. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/README.md +0 -0
  12. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/pyproject.toml +0 -0
  13. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/scripts/build_zipapp.py +0 -0
  14. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/scripts/detail_this_python.py +0 -0
  15. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/scripts/print_python_versions.py +0 -0
  16. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/setup.cfg +0 -0
  17. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/src/ducktools/pythonfinder/__init__.py +0 -0
  18. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/src/ducktools/pythonfinder/darwin/__init__.py +0 -0
  19. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/src/ducktools/pythonfinder/details_script.py +0 -0
  20. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/src/ducktools/pythonfinder/linux/pyenv_search.py +0 -0
  21. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/src/ducktools/pythonfinder/pythonorg_search.py +0 -0
  22. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/src/ducktools/pythonfinder/shared.py +0 -0
  23. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/src/ducktools/pythonfinder/win32/__init__.py +0 -0
  24. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/src/ducktools/pythonfinder/win32/pyenv_search.py +0 -0
  25. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/src/ducktools_pythonfinder.egg-info/SOURCES.txt +0 -0
  26. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/src/ducktools_pythonfinder.egg-info/dependency_links.txt +0 -0
  27. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/src/ducktools_pythonfinder.egg-info/entry_points.txt +0 -0
  28. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/src/ducktools_pythonfinder.egg-info/requires.txt +0 -0
  29. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/src/ducktools_pythonfinder.egg-info/top_level.txt +0 -0
  30. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/tests/conftest.py +0 -0
  31. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/tests/sources/python_versions.txt +0 -0
  32. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/tests/sources/release.json +0 -0
  33. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/tests/sources/release_file.json +0 -0
  34. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/tests/test_details_script.py +0 -0
  35. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/tests/test_foldersearch.py +0 -0
  36. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/tests/test_orgsearch.py +0 -0
  37. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/tests/test_pyenv.py +0 -0
  38. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/tests/test_shared.py +0 -0
  39. {ducktools_pythonfinder-0.6.4 → ducktools_pythonfinder-0.6.6}/tests/test_uv_finder.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ducktools-pythonfinder
3
- Version: 0.6.4
3
+ Version: 0.6.6
4
4
  Summary: Cross platform tool to find available python installations
5
5
  Author: David C Ellis
6
6
  Project-URL: Homepage, https://github.com/davidcellis/ducktools-pythonfinder
@@ -157,12 +157,10 @@ def display_local_installs(
157
157
  elif max_ver and install.version > max_ver:
158
158
  continue
159
159
  elif compatible:
160
- mismatch = False
161
- for i, val in enumerate(compatible):
162
- if val != install.version[i]:
163
- mismatch = True
164
- break
165
- if mismatch:
160
+ if install.version < compatible:
161
+ continue
162
+ version_parts = len(compatible) - 1
163
+ if install.version[:version_parts] > compatible[:-1]:
166
164
  continue
167
165
 
168
166
  version_str = install.version_str
@@ -0,0 +1,2 @@
1
+ __version__ = "0.6.6"
2
+ __version_tuple__ = (0, 6, 6)
@@ -34,7 +34,7 @@ from .pyenv_search import get_pyenv_pythons
34
34
  def get_path_pythons() -> Iterator[PythonInstall]:
35
35
  exe_names = set()
36
36
 
37
- path_folders = os.environ.get("PATH").split(":")
37
+ path_folders = os.environ.get("PATH", "").split(":")
38
38
  pyenv_root = os.environ.get("PYENV_ROOT")
39
39
  uv_root = get_uv_python_path()
40
40
 
@@ -74,13 +74,18 @@ def get_registered_pythons() -> Iterator[PythonInstall]:
74
74
  continue
75
75
 
76
76
  with winreg.OpenKey(base_key, company) as company_key:
77
- comp_metadata = {}
77
+ comp_metadata = {
78
+ "Company": company
79
+ }
78
80
 
79
81
  for name, data, _ in enum_values(company_key):
80
82
  comp_metadata[f"Company{name}"] = data
81
83
 
82
84
  for py_keyname in enum_keys(company_key):
83
- metadata = {**comp_metadata}
85
+ metadata = {
86
+ **comp_metadata,
87
+ "Tag": py_keyname,
88
+ }
84
89
 
85
90
  with winreg.OpenKey(company_key, py_keyname) as py_key:
86
91
  for name, data, _ in enum_values(py_key):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ducktools-pythonfinder
3
- Version: 0.6.4
3
+ Version: 0.6.6
4
4
  Summary: Cross platform tool to find available python installations
5
5
  Author: David C Ellis
6
6
  Project-URL: Homepage, https://github.com/davidcellis/ducktools-pythonfinder
@@ -1,2 +0,0 @@
1
- __version__ = "0.6.4"
2
- __version_tuple__ = (0, 6, 4)