diff --git a/pyproject.toml b/pyproject.toml index 871cd2a..8e55d30 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -38,7 +38,13 @@ dev = [ "mypy>=1.10", "pre-commit>=3.7", "types-pyyaml>=6.0", - "scikit-learn>=1.3", + # scikit-learn 1.9.0 changed HistGradientBoostingClassifier defaults in a + # way that improves the flat GBM more than the engineered one, making the + # headline GBM(eng)−GBM(flat) lift in NB02 go non-positive and breaking + # the G13.1 CI gate. Pin <1.9 while the notebook targets are recalibrated + # or the engineered features are updated to restore positive lift on 1.9. + # See: https://github.com/leadforge-dev/leadforge/issues/114 + "scikit-learn>=1.3,<1.9", "matplotlib>=3.7", # PR 7.2: the preview-page renderers (scripts/preview_{kaggle,hf}_page.py) # call into markdown-it-py at test time via render_*_html(). Keeping @@ -49,7 +55,7 @@ dev = [ "markdown-it-py>=3.0", ] scripts = [ - "scikit-learn>=1.3", + "scikit-learn>=1.3,<1.9", # keep in sync with [dev] pin above "matplotlib>=3.7", ] # Optional dependencies for the platform release packagers. Installing @@ -81,7 +87,7 @@ notebooks = [ # python3`` because the GitHub-hosted runner has no kernelspecs # registered out of the box (local dev environments usually do). "ipykernel>=6.0", - "scikit-learn>=1.3", + "scikit-learn>=1.3,<1.9", # keep in sync with [dev] pin above "matplotlib>=3.7", ]