Installation guide uses Python 3.8, which is incompatible with current OpenML requirements
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 35/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- python
- Ambito
- build-system, documentation, testing
Direzione di ricerca
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.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
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.
- Lingua principale
- Python
- Stelle
- 361
- Fork
- 296
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di openml/openml-python
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
openml/openml-python#1749 ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 92/100
openml/openml-python#1746 ·
-
Documentation Good First Issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
openml/openml-python#1708 · 6 commenti ·
-
Good First Issue module:Run testing
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
openml/openml-python#1646 · 7 commenti · 2 reazioni ·
-
Good First Issue module:Data testing
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
openml/openml-python#1644 · 4 commenti ·
Tutte le issue di openml/openml-python
Issue simili
-
货币战争手改优先级配置缺少列表元素类型校验(P3) Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 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 Apertaarea: ci bug perceived difficulty: 3
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
Nitjsefnie-Harness-Commons/daedalus#921 · 1 commento ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
EleutherAI/lm-evaluation-harness#4207 ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 92/100
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
ClickHouse/clickhouse-connect#1057 ·