Installation guide uses Python 3.8, which is incompatible with current OpenML requirements
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- python
- Área
- build-system, documentation, testing
Línea de trabajo
Start with the installation guide and pyproject.toml, comparing the documented Python version and editable test-install command with the declared requirements and test extra. Reproduce the reported failures, including missing openml_sklearn and minio, and inspect the affected tests. Done means supported shell-compatible setup works, dependencies resolve, and optional imports are skipped appropriately.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Description
The current installation guide and dependency configuration make it difficult to set up the development environment and run tests successfully. There are multiple inconsistencies that can lead to installation failures or missing dependencies.
Issues Identified
1. Outdated Python Version in Installation Guide
The installation instructions recommend using Python 3.8:
uv venv --seed --python 3.8 ~/.venvs/openml-python
However, the project requires:
Python >= 3.10,<3.15
This results in dependency resolution errors when installing:
uv pip install -e ".[test]"
2. Shell Compatibility Issue with Installation Command
The documentation suggests:
uv pip install -e .[test]
However, in shells like zsh, this results in:
zsh: no matches found: .[test]
because [] are treated as glob patterns.
This can be fixed by quoting or escaping:
uv pip install -e ".[test]"
3. Incomplete or Incorrect Test Dependencies
Installing test dependencies via:
uv pip install -e ".[test]"
does not always provide a fully working test environment.
For example, running tests can fail with:
ModuleNotFoundError: No module named 'openml_sklearn'
The test extra includes openml-sklearn, but this package does not appear to be available on PyPI, leading to unresolved dependencies.
4. Missing Core Dependency at Runtime (minio)
Although minio is listed as a core dependency in pyproject.toml, running the tests can result in:
ModuleNotFoundError: No module named 'minio'
This suggests that dependencies may not always be installed correctly via the current installation instructions, or that additional guidance is needed to ensure all runtime dependencies are properly installed.
5. Missing Dependency Handling in Tests
Some tests import optional dependencies (e.g., openml_sklearn) without guarding against missing packages, causing the entire test suite to fail.
It would be better to handle such imports using:
pytest.importorskip("openml_sklearn")
so that tests are skipped when optional dependencies are not available.
Expected Behavior
- Installation guide should use a supported Python version (>=3.10)
- Installation commands should be shell-compatible
- Installing
.[test]should provide all necessary dependencies to run tests - All core dependencies (e.g.,
minio) should be reliably installed - Optional dependencies should be handled gracefully in tests
Suggested Fixes
-
Update installation guide to use Python >= 3.10 (e.g., 3.11)
-
Update installation command to:
uv pip install -e ".[test]" -
Review and correct
testdependencies:- Verify or remove
openml-sklearn
- Verify or remove
-
Ensure all required dependencies (including
minio) are installed correctly -
Use
pytest.importorskipfor optional dependencies in tests
Impact
These issues can prevent new contributors from successfully setting up the project and running tests, which may discourage contributions.
Additional Context
I would be happy to help update the documentation and fix the test setup if needed.
- Lenguaje dominante
- Python
- Estrellas
- 361
- Forks
- 296
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de openml/openml-python
-
Documentation Good First Issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
openml/openml-python#1708 · 6 comentarios ·
-
Good First Issue module:Run testing
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
openml/openml-python#1646 · 7 comentarios · 2 reacciones ·
-
Good First Issue module:Data testing
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
openml/openml-python#1644 · 4 comentarios ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 45/100
openml/openml-python#1714 · 1 comentario ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 25/100
openml/openml-python#1711 · 1 comentario ·
Todos los issues de openml/openml-python
Issues similares
-
货币战争手改优先级配置缺少列表元素类型校验(P3) Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
syfoud/Simulated_Scepter#172 ·
-
A cancelled tests run makes the coverage comment workflow fail and reports it as a red check on main Abiertoarea: ci bug perceived difficulty: 3
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Nitjsefnie-Harness-Commons/daedalus#921 · 1 comentario ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 86/100
EleutherAI/lm-evaluation-harness#4207 ·
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 92/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
ClickHouse/clickhouse-connect#1057 ·