Changes
💡 New Features
- [python-package] Add
feature_names_in_
attribute for scikit-learn estimators (fixes #6279) @nicklamiller (#6310) - [R-package]: add num_trees_per_iter, num_trees, and num_iter methods @mayer79 (#6500)
🔨 Breaking
- [c++] remove HDFS support (fixes #6436) @jameslamb (#6534)
- [ci] [python-package] run macOS x86_64 tests on macOS 12 (Monterey), stop manually setting macOS wheel tags @jameslamb (#6487)
🚀 Efficiency Improvement
🐛 Bug Fixes
- [python-package] Correctly recognize LGBMClassifier(num_class=2, objective="multiclass") as multiclass classification @RektPunk (#6524)
- [cmake] Some improvements to handling of OpenMP on macOS @barracuda156 (#6489)
- [python-package] respect 'verbose' setting when using custom objective function (fixes #6014) @jameslamb (#6428)
- cmake: add missing lib_lightgbm_swig.so to lightgbmlib.jar on linux @shuttie (#6515)
📖 Documentation
- [docs] update GitHub Actions badges in README @StrikerRUS (#6570)
- [docs] Update badge for Link checks workflow @StrikerRUS (#6568)
- [python-package] [docs] Expand class docs for Dataset @Plenitude-ai (#6558)
- [docs] fix link to multiple OpenMP issue description @StrikerRUS (#6562)
- [docs] Add NuGet version badge @StrikerRUS (#6549)
- [docs] remove link to Roadmap (fixes #6556) @jameslamb (#6557)
- [docs] remove outdated docs from the repo @StrikerRUS (#6552)
- [docs] Add conda downloads badge @StrikerRUS (#6546)
- [docs] update and simplify installation docs @jameslamb (#6536)
- [doc] fix documentation for quantized training @shiyu1994 (#6528)
- [docs] fix FAQ markdown @StrikerRUS (#6521)
- [docs] [R-package] update cran-comments.md @jameslamb (#6499)
- [docs] remove pmml redirect, simplify some other docs @jameslamb (#6490)
🧰 Maintenance
- release v4.5.0 @jameslamb (#6538)
- [ci] modify CodeQL settings @jameslamb (#6563)
- [ci] revert clang-18 LD_LIBRARY_PATH workaround @jameslamb (#6559)
- [ci] [R-package] help linker find libstdc++.so.1 in clang18 job (fixes #6553) @jameslamb (#6554)
- [ci] update codeowners @jameslamb (#6542)
- [ci] [R-package] use --no-xattrs when re-tarring CRAN-style package @jameslamb (#6540)
- [ci] [R-package] add CI jobs covering more CRAN "additional checks", fix R_NO_REMAP warnings (fixes #6369) @jameslamb (#6523)
- [ci] [R-package] add arm64 macOS R-package CI job (fixes #6481) @jameslamb (#6494)
- [ci] restore aarch64 linux builds (fixes #6509) @jameslamb (#6527)
- [test][python] fix pandas DeprecationWarning about
is_sparse
function @StrikerRUS (#6532) - fix cpp casting errors "Comparison of narrow type with wide type in loop condition" @StrikerRUS (#6533)
- [python-package] avoid overwriting dependencies via 'build-python.sh install' @jameslamb (#6526)
- [tests][python] fix nan in pandas bool column @StrikerRUS (#6530)
- Remove template parameters from copy constructor @hgminh95 (#6514)
- [ci] prevent
lgb.model
andlgb.pkl
files being left behind after testing @nicklamiller (#6518) - [ci] [R-package] run 'R CMD check' as a foreground task @jameslamb (#6508)
- [CMake] Use CMAKE_MSVC_RUNTIME_LIBRARY to apply /MT @hcho3 (#6484)
- [ci] resolve shellcheck errors in .ci/check_python_dists.sh @Kunal-Singh-Dadhwal (#6503)
- [ci] skip aarch64 linux job @jameslamb (#6517)
- [R-package] Use
Rf_
-prefixed versions of protect/unprotect @david-cortes (#6502) - [ci] reduce repetition of BUILD_DIRECTORY in CI scripts @jameslamb (#6497)
- [ci] remove OpenMP / MKL workaround in CI jobs @jameslamb (#6496)
- [ci] [docs] fix link-checks job @jameslamb (#6495)
- [python-package] Change build settings to set strict-config to false @Jorricks (#6493)
- [ci] remove unnecessary package installations in CI @jameslamb (#6488)
- chore: update dataset_loader.cpp @eltociear (#6483)
- bump development version to 4.4.0.99 @jameslamb (#6485)