tessl install tessl/pypi-tox-pyenv@1.1.0tox plugin that makes tox use `pyenv which` to find python executables
Agent Success
Agent success rate when using this tile
98%
Improvement
Agent success rate improvement when using this tile compared to baseline
1.03x
Baseline
Agent success rate without this tile
95%
{
"context": "This evaluation assesses how effectively the engineer uses subprocess management to interact with pyenv commands for discovering Python executables based on local and global version configurations. The focus is on proper use of pyenv's 'which' command, handling of local vs global version resolution, and subprocess error handling.",
"type": "weighted_checklist",
"checklist": [
{
"name": "pyenv which usage",
"description": "Uses subprocess to execute 'pyenv which <version>' command to find Python executables for specific version names",
"max_score": 25
},
{
"name": "Local version detection",
"description": "Implements local version resolution by executing 'pyenv which python' in the current directory context, which automatically respects .python-version files",
"max_score": 20
},
{
"name": "Global version detection",
"description": "Implements global version resolution by executing 'pyenv which python' after ensuring no local context, or by using 'pyenv global' followed by 'pyenv which'",
"max_score": 20
},
{
"name": "Subprocess output handling",
"description": "Properly captures stdout from subprocess calls using subprocess.PIPE or subprocess.check_output, and strips whitespace from the returned executable paths",
"max_score": 15
},
{
"name": "Error handling",
"description": "Catches subprocess.CalledProcessError or OSError when pyenv commands fail, and raises RuntimeError with appropriate error messages including stderr when available",
"max_score": 15
},
{
"name": "Multiple version handling",
"description": "Handles multiple local versions by attempting to resolve each version in order until one succeeds, using iterative 'pyenv which' calls or version list parsing",
"max_score": 5
}
]
}