You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
Version 0.5.2:
Breaking Changes
Dropped support for Python 3.8 and 3.9 (Python 3.9 reached end-of-life). Minimum Python version is now 3.10
Now explicitly supports and tests on Python 3.10, 3.11, 3.12, and 3.13
Improvements
Removed upper version constraints for dash and plotly dependencies, now supports Dash 2.10+ and 3.0+, and Plotly 5.0+ and 6.0+
Added backward compatibility code to support both Dash 2.x (app.run_server()) and Dash 3.x (app.run()) APIs
Fixed Plotly 6.0 compatibility by updating titlefont to title.font format
Improved integration test setup with automatic ChromeDriver management via webdriver-manager
Fixed threading issues with Plotly validator initialization by switching to recommended plotly.graph_objects import
Made torch and skorch optional dependencies on Intel Macs (where torch wheels are not available)
Bug Fixes
Fixed SystemExit warnings in integration tests caused by Plotly validator initialization in multi-threaded contexts
Updated .gitignore to exclude webdriver-manager cache directories and uv.lock file
XGBoost 3.1+ compatibility: Fixed handling of string-formatted predictions and base_score values returned by XGBoost 3.1+. Added robust string-to-numeric conversion with proper regex fallback to handle various string formats (e.g., '[3.2967056E1]', '[8.563135E-2,7.169811E-1,1.9738752E-1]')
XGBoost SHAP initialization: Fixed base_score conversion in both get_params() and booster's internal JSON configuration to ensure SHAP TreeExplainer initializes correctly with XGBoost 3.1+
RandomForest dtreeviz compatibility: Fixed dtype handling for y_train (now uses int instead of int16) and observation array conversion for predict_path() to work with newer dtreeviz versions
Dtreeviz decisiontree_view: Ensure observations are passed as numpy arrays to avoid pandas label lookup errors when dtreeviz indexes features by integer position
PyPI packaging: Removed duplicate wheel entries from hatchling build config to fix "Duplicate filename in local headers" upload errors
Pandas deprecation warnings: Removed deprecated pd.option_context("future.no_silent_downcasting") and copy=False parameter from .infer_objects() calls
Runtime warnings: Fixed divide-by-zero warnings in classification plots and residuals plots (log-ratio calculations) by adding proper zero checks and using np.divide() with where parameter