Compatibility break with bayesian-optimization > 1.5.1
Les mainteneurs répondent en général sous 3 jours
@peanutfun y travaille déjà.
Depuis le 16/5/2026.
Évaluation
Cette issue n'a pas encore été évaluée.
Description
Description
Integration tests are failing due to an ImportError in climada/util/calibrate/bayesian_optimizer.py. The bayesian-optimization package removed UtilityFunction from its top-level namespace in versions following 1.5.1.
Further down the road, Events class (also imported in integration tests) is removed after 2.0.4
Error Traceback
Traceback:
climada/test/test_util_calibrate.py:31: in <module>
from climada.util.calibrate import (
climada/util/calibrate/__init__.py:22: in <module>
from .bayesian_optimizer import (
climada/util/calibrate/bayesian_optimizer.py:36: in <module>
from bayes_opt import BayesianOptimization, Events, ScreenLogger, UtilityFunction
E ImportError: cannot import name 'UtilityFunction' from 'bayes_opt'
Root Cause
Versions of bayesian-optimization > 1.5.1 introduced breaking API changes:
UtilityFunction: Removed/Refactored (https://github.com/bayesian-optimization/BayesianOptimization/pull/447)
Futur problem
Versions of bayesian-optimization > 2.0.4 introduced other breaking API changes:
Events: Removed or refactored. (https://github.com/bayesian-optimization/BayesianOptimization/pull/557)
Proposed Fix
- Immediate: Pin the dependency in the environment/requirements:
bayesian-optimization <= 1.5.1
- Long-term: Refactor
bayesian_optimizer.pyto support the updated API.
Quick Fix for Devs
To resolve this locally and run tests:
mamba install "bayesian-optimization<=1.5.1"
- Langage dominant
- Jupyter Notebook
- Étoiles
- 478
- Forks
- 166
- Merge moyen
- 2 j 31 min
- PR mergées (30 j)
- 4
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Propose un modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de CLIMADA-project/climada_python
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
CLIMADA-project/climada_python#1337 ·
Les mainteneurs répondent en général sous 3 jours
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 85/100
CLIMADA-project/climada_python#1336 ·
Les mainteneurs répondent en général sous 3 jours
-
CartoDB basemaps now need an API key (somewhat urgent)Peut-être pris Une pull request liée à cette issue est ouverte ou déjà fusionnée. Ouvertebug
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
CLIMADA-project/climada_python#1332 · 4 commentaires · 1 réaction ·
Les mainteneurs répondent en général sous 3 jours
-
more than 20 open figuresOuvertewarnings
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
CLIMADA-project/climada_python#1241 ·
Les mainteneurs répondent en général sous 3 jours
-
ResourceWarningOuvertewarnings
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
CLIMADA-project/climada_python#1239 ·
Les mainteneurs répondent en général sous 3 jours