A fast, distributed, high performance gradient boosting (GBT, GBDT, GBRT, GBM or MART) framework based on decision tree algorithms, used for ranking, classification and many other machine learning tasks.
0
Light Gbm v4.0.0
Release date:
July 13, 2023
Previous version:
v3.3.5
(released January 7, 2023)
Magnitude:
27,932
Diff Delta
Contributors:
59 total committers
Commits:
562 Commits in this Release
Ordered by the degree to which they evolved the repo in this version.
Authored December 15, 2022
Authored December 28, 2022
Authored December 7, 2021
[R-package] enable saving Booster with saveRDS() and loading it with readRDS() (fixes #4296) (#4685)
Authored December 4, 2021
Authored February 14, 2023
Authored December 3, 2021
Authored May 4, 2023
Authored August 23, 2022
Authored July 30, 2022
Authored November 27, 2022
Authored November 16, 2021
Authored October 11, 2022
Authored December 13, 2022
Authored December 30, 2021
Authored February 1, 2023
Authored June 17, 2022
Authored January 17, 2022
Authored October 28, 2021
Authored February 15, 2022
Authored June 20, 2023
Authored November 18, 2021
Authored December 10, 2021
Authored February 11, 2022
Authored March 17, 2022
Authored August 31, 2022
Authored February 23, 2022
Authored February 14, 2023
Authored February 12, 2022
Authored June 27, 2022
Authored November 20, 2021
Authored February 24, 2022
Authored September 5, 2022
Authored November 10, 2021
Authored June 16, 2023
Authored March 28, 2022
Authored September 1, 2022
Browse Other Releases
Latest Pending
Unreleased π
v4.4.0
Released June 14, 2024
5,732 Ξ
v4.3.0
Released January 25, 2024
460 Ξ
v4.2.0
Released December 21, 2023
3,780 Ξ
v4.1.0
Released September 11, 2023
1,366 Ξ
v4.0.0
Released July 13, 2023
27,932 Ξ
v3.3.5
Released January 7, 2023
1,344 Ξ
v3.3.4
Released December 29, 2022
893 Ξ
v3.3.3
Released October 10, 2022
295 Ξ
v3.3.2
Released January 6, 2022
1,124 Ξ
v3.3.1
Released October 27, 2021
727 Ξ
Top Contributors in v4.0.0
jameslamb
StrikerRUS
jmoralez
david-cortes
shiyu1994
lyf-00
svotaw
TremaMiguel
chjinche
hzy46
Directory Browser for v4.0.0
We haven't yet finished calculating and confirming the files and directories changed in this release. Please check back soon.
Release Notes Published
Changes
This release contains all previously-unreleased changes since v3.3.1
over 1.5 years ago (link).
Summary of improvements:
- totally-rewritten CUDA implementation, and more operations in the CUDA implementation performed on the GPU
- quantized training can be used for greatly improved training speeds on CPU (paper link)
- support for C++17
- Python package:
- now uses
scikit-build-core
(link) as its build backend manylinux_2_28
Linux wheels now support GPU (OpenCL-based, not CUDA) build automatically... justpip install lightgbm
then pass{"device": "gpu"}
in params (thanks @jgiannuzzi!)- much more use of inline type hints, exported with
py.typed
so any code using LightGBM can benefit - support for Python 3.10, 3.11
- support for
pandas
nullable types - configurable threshold (
lgb.early_stopping(..., min_delta=n)
) for how much eval metrics must improve to be considered "improved" for early stopping - custom objective functions in Dask
scikit-learn
is no longer a required dependency- all callbacks are now pickleable (for better interoperability with e.g.
ray
, Dask) (thanks @Yard1!)
- now uses
- R package:
- efficient support for more data types in prediction, like
dgCMatrix
anddsparseMatrix
(thanks @david-cortes!) - much more idomatic interface... e.g. support for
saveRDS()
andreadRDS()
forBooster
,print()
andsummary()
methods forDataset
(thanks @david-cortes!) - various bug fixes related to multiple competing ways to provide parameters
- support for R 4.2, 4.3
- efficient support for more data types in prediction, like
Summary of breaking changes:
- Python package:
- dropped most testing, promise of support for Python 3.6 (although it should still technically be installable)
- dropped support for macOS Mojave (10.14)
- made many functions and class attributes private, including significantly reducing what is pulled in by
from lightgbm import *
- removed
setup.py
,pip install --install-optiion
supporrt - remove support for
pip install --install-option
(to work with newerpip
, see https://github.com/pypa/pip/issues/11358)- see https://github.com/microsoft/LightGBM/blob/master/python-package/README.rst for new patterns
- see https://github.com/pypa/pip/issues/11358 and #5061 for background
- dropped support for installation with
MSBUild.exe
... that now requires compilinglib_lightgbm.dll
separately and then building a wheel that bundles it
- R package:
- dropped support for Solaris
- removed most support for passing parameters through
...
- removed
lgb.unloader()
- switched to
predict(newdata, type = ...)
inpredict()
, for consistency with base R and most other machine learning projects
π‘ New Features
- [python-package] add 'pandas' extra @jameslamb (#5937)
- [CUDA] Add more CUDA Regression Metrics @Xuweijia-buaa (#5924)
- [python-package] adding max_category_values parameter to create_tree_digraph method (fixes #5687) @moziada (#5818)
- [c++] support building with Ninja on Linux @jameslamb (#5910)
- add CMakeLists options to disable building CLI, installing headers @jameslamb (#5880)
- Add quantized training (CPU part) @shiyu1994 (#5800)
- [CUDA] Add quantile regression objective for new CUDA version @shiyu1994 (#5605)
- [CUDA] Add quantile metric for new CUDA version (contribute to #5163) @shiyu1994 (#5665)
- [python-package] add Booster.set_leaf_output method @jmoralez (#5712)
- feature: Add serialization of reference dataset @svotaw (#5427)
- [R-package] Accept factor labels and use their levels @david-cortes (#5341)
- [CUDA] Add binary logloss metric for new CUDA version @shiyu1994 (#5635)
- [CUDA] Add binary logloss metric for new CUDA version @shiyu1994 (#5635)
- Decouple Boosting Types (fixes #3128) @lyf-00 (#4827)
- [CUDA] Add L2 metric for new CUDA version @shiyu1994 (#5633)
- [CUDA] Add rmse metric for new CUDA version @shiyu1994 (#5611)
- Build integrated OpenCL Linux wheels @jgiannuzzi (#5252)
- [CUDA] Add Poisson regression objective for cuda_exp and refactor objective functions for cuda_exp @shiyu1994 (#5486)
- [CUDA] Add multiclass_ova objective for cuda_exp @shiyu1994 (#5491)
- [python-package] add install option to enable printing of time costs @Remy-Luciani (#5497)
- [python-package][R-package] load parameters from model file (fixes #2613) @jmoralez (#5424)
- [CUDA] Add multiclass objective for cuda_exp @shiyu1994 (#5473)
- [CUDA] Add feature interaction constraint for cuda_exp (fix #4785) @shiyu1994 (#5474)
- [CUDA] Add rank_xendcg objective for cuda_exp @shiyu1994 (#5472)
- [CUDA] Add fair regression objective for cuda_exp @shiyu1994 (#5469)
- [CUDA] Add lambdarank objective for cuda_exp @shiyu1994 (#5453)
- [CUDA] Add Huber regression objective for cuda_exp @shiyu1994 (#5462)
- [CUDA] Add L1 regression objective for cuda_exp @shiyu1994 (#5457)
- [CUDA] L2 regression objective for cuda_exp @shiyu1994 (#5452)
- [CUDA] Add binary objective for cuda_exp @shiyu1994 (#5425)
- [R-package] Add remainder of prediction funtions @david-cortes (#5312)
- [python-package] support saving and loading CVBooster (fixes #3556) @nyanp (#5160)
- feature: Add true streaming APIs to reduce client-side memory usage @svotaw (#5299)
- [python-package] highlight the path a sample takes through a tree in
plot_tree
andcreate_tree_digraph
(fixes #4784) @jmoralez (#5119) - reproducible parameter alias resolution for wrappers (fixes #5304) @jmoralez (#5338)
- [CUDA] Initial work for boosting and evaluation with CUDA @shiyu1994 (#5279)
- [python-package] add validate_features argument to refit @jmoralez (#5331)
- [python-package] check feature names in predict with dataframe (fixes #812) @jmoralez (#4909)
- [R-package] Add sparse feature contribution predictions @david-cortes (#5108)
- [python-package][R-package] allow using feature names when retrieving number of bins @jmoralez (#5116)
- [R-package] Keep row names in output from
predict
@david-cortes (#4977) - [python] make
reset_parameter
callback pickleable @StrikerRUS (#5109) - [python] make
record_evaluation
callback pickleable @StrikerRUS (#5107) - [python] make
log_evaluation
callback pickleable @StrikerRUS (#5101) - [python] allow to register any custom logger (fixes #4783) @RustingSword (#4880)
- Load initial scores with binary data files in CLI version @shiyu1994 (#4807)
- [R-package] Rename
weight
->weights
@david-cortes (#4975) - [CUDA] New CUDA version Part 1 @shiyu1994 (#4630)
- [python] make
early_stopping
callback pickleable @Yard1 (#5012) - [c-api][python-package][R-package] expose feature num bin @jmoralez (#5048)
- [python-package] [R-package] propagate the best iteration of cvbooster into the individual boosters @jmoralez (#5066)
- [python-package] add support for pandas nullable types @jmoralez (#4927)
- [R-package] Promote objective and init_score to top-level arguments in
lightgbm()
@david-cortes (#4976) - [python] Start supporting Python 3.10 @StrikerRUS (#4893)
- [python-package] support customizing Dataset creation in Booster.refit() (fixes #3038) @TremaMiguel (#4894)
- [dask] add support for custom objective functions (fixes #3934) @jameslamb (#4920)
- [R-package] added argument eval_train_metric to lgb.cv() (fixes #4911) @mayer79 (#4918)
- Add support for Visual Studio 2022 @StrikerRUS (#4889)
- Add C API function that returns all parameter names with their aliases @StrikerRUS (#4829)
- [python][sklearn] respect parameters for predictions in
init()
andset_params()
methods @StrikerRUS (#4822) - Add customized parser support @chjinche (#4782)
- [R-package] Add
print()
andsummary()
methods for Booster @david-cortes (#4686) - Add 'nrounds' as an alias for 'num_iterations' (fixes #4743) @mikemahoney218 (#4746)
- [python-package] early stopping min_delta (fixes #2526) @jmoralez (#4580)
- [python][sklearn] respect objective aliases @StrikerRUS (#4758)
- [python][sklearn] add
n_estimators_
andn_iter_
post-fit attributes @StrikerRUS (#4753)
π¨ Breaking
- [python-package] make Booster and Dataset 'handle' attributes private (fixes #5313) @jameslamb (#5947)
- [python-package] remove hard dependency on 'scikit-learn', fix minimal runtime dependencies @jameslamb (#5942)
- [python-package] [ci] switch to PEP 517 / 518 builds (remove
setup.py
) (fixes #5061) @jameslamb (#5759) - [ci] [python-package] replace 'python setup.py' with a shell script @jameslamb (#5837)
- [R-package] use C++17 in the CRAN package @jameslamb (#5690)
- [python-package] make some Booster and Dataset attributes private @jameslamb (#5723)
- [CUDA] consolidate CUDA versions @jameslamb (#5677)
- [python-package] make public API members explicit with module-level all variables @jameslamb (#5655)
- [ci] migrate CI from macOS 10.15 to 11 (fixes #5391) @StrikerRUS (#5396)
- [ci] switch to manylinux_2_28 for Linux artifacts (fixes #5514, fixes #5589) @jameslamb (#5580)
- fix: Adjust LGBM_DatasetCreateFromSampledColumn to handle distributed data @svotaw (#5344)
- [python-package] allow custom weighing in fobj for scikit-learn API (closes #5027) @jmoralez (#5211)
- [R-package] Use
type
argument to control prediction types @david-cortes (#5133) - [python-package] Use scikit-learn interpretation of negative
n_jobs
and change default to number of cores @david-cortes (#5105) - [python-package] remove Booster.set_attr() and Booster.attr() @jameslamb (#5272)
- remove support for Solaris (fixes #5216) @jameslamb (#5226)
- [R-package] stop automatically calculating eval metrics on training data in lightgbm() @jameslamb (#5209)
- [R-package] remove lgb.unloader() @jameslamb (#5204)
- [python-package] remove 'fobj' in favor of passing custom objective function in params @TremaMiguel (#5052)
- [python-package] remove is_reshape argument in Booster.predict (fixes #5115) @jmoralez (#5117)
- [R-package] Remove
reshape
argument inpredict
@david-cortes (#4971) - [R-package] Promote number of threads to top-level argument in
lightgbm()
and change default to number of cores @david-cortes (#4972) - [R-package] Rename
data
->newdata
inpredict
@david-cortes (#4973) - Build Windows artifacts in
windows-2019
image instead ofvs2017-win2016
@StrikerRUS (#5059) - [python-package] use 2d collections for predictions, grads and hess in multiclass custom objective @jmoralez (#4925)
- [R-package] prefer params to keyword argument in lgb.train() @jameslamb (#5007)
- [R-package] remove behavior where lightgbm() saves model to disk @david-cortes (#4974)
- [python-package] make record_evaluation compatible with cv (fixes #4943) @jmoralez (#4947)
- [python] remove
early_stopping_rounds
argument oftrain()
andcv()
functions @StrikerRUS (#4908) - [python] remove
evals_result
argument oftrain()
function @StrikerRUS (#4882) - [python][sklearn] do not replace empty dict with
None
forevals_result_
@StrikerRUS (#4884) - [python] Drop Python 3.6 support @StrikerRUS (#4891)
- [python] remove
verbose_eval
argument oftrain()
andcv()
functions @StrikerRUS (#4878) - [python] remove
verbose
argument ofmodel_from_string()
method of Booster class @StrikerRUS (#4877) - [python][sklearn] Remove
early_stopping_rounds
argument offit()
method @StrikerRUS (#4846) - [R-package] remove support for '...' in
slice()
@jameslamb (#4872) - [R-package] remove support for '...' in
lgb.Dataset()
@jameslamb (#4874) - [R-package] remove support for '...' in
dim.lgb.Dataset()
@jameslamb (#4873) - [R-package] remove support for '...' in lgb.train() @jameslamb (#4863)
- [R-package] remove support for '...' in
create_valid()
@jameslamb (#4865) - [R-package] remove support for 'info' in Dataset @jameslamb (#4866)
- [R-package] remove Dataset getinfo() @jameslamb (#4864)
- [R-package] remove support for '...' in lgb.cv() @jameslamb (#4860)
- [R-package] remove Dataset setinfo() @jameslamb (#4854)
- [R-package] remove support for '...' in predict() @jameslamb (#4857)
- [R-package] remove support for '...' in Booster reset_parameter() @jameslamb (#4856)
- [python][sklearn] unify values of
best_iteration
for sklearn and standard APIs @StrikerRUS (#4845) - [ci] migrate CI from macOS 10.14 to 10.15 and drop support of Mojave @StrikerRUS (#4849)
- [R-package] enable saving Booster with saveRDS() and loading it with readRDS() (fixes #4296) @david-cortes (#4685)
- [python][sklearn] remove
verbose
argument fromfit()
method @StrikerRUS (#4832) - [python] remove
learning_rates
argument oftrain()
function @StrikerRUS (#4831) - [python] remove "auto" value of
ylabel
argument ofplot_metric()
function @StrikerRUS (#4818) - [python] Remove
print_evaluation()
function @StrikerRUS (#4819) - [python] Remove
silent
argument @StrikerRUS (#4800)
π Efficiency Improvement
- Add quantized training (CPU part) @shiyu1994 (#5800)
- [python-package] replace .values usage with .to_numpy() @superlaut (#5612)
- clear memory allocated for sampled data when constructing Dataset from text file @xuchuanyin (#4890)
- [python] Faster categorical column names selection @Neronuser (#4787)
- [R-package] parallelize compilation in CMake-based builds @jameslamb (#4525)
- [python-package] simplify Dataset processing of label @jameslamb (#5456)
- [python-package] make a shallow copy on dataframe rename (fixes #4596) @jmoralez (#5254)
- [python-package] make a shallow copy when replacing categorical features with codes (fixes #4596) @jmoralez (#5225)
- [R-package] reduce cost of repeated parameter alias checks @jameslamb (#5141)
- reduce duplicate computation in poisson, gamma, and tweedie objectives @lorentzenchr (#4950)
π Bug Fixes
- move LightGBM-vendored json11 into a LightGBM-specific namespace (fixes #5944) @maskedcoder1337 (#5946)
- [dask] hold ports until training @jmoralez (#5890)
- update MSBuild solution to Windows SDK v10.0, add inet_pton define (fixes #5856) @jameslamb (#5884)
- Fix DEBUG-mode GPU builds @GinkoBalboa (#5778)
- cast data_index as size_t in cuda_row_data to avoid integer overflow @SiNZeRo (#5706)
- [ci] [R-package] fix clang 15 warning about unqualified calls (fixes #5661) @jameslamb (#5662)
- Check feature indexes in forced split file (fixes #5517) @btrotta (#5653)
- fix feature index in Dataset::AddFeaturesFrom (fixes #5410) @jameslamb (#5650)
- Check feature indexes in forced split file (fixes #5517) @btrotta (#5653)
- fix feature index in Dataset::AddFeaturesFrom (fixes #5410) @jameslamb (#5650)
- [ci] [python-package] fix missing import, test that lightgbm can be imported with only required dependencies (fixes #5631) @jameslamb (#5632)
- Fix OpenMP thread allocation in Linux @svotaw (#5551)
- [R-package] correctly quote paths on Windows for CMake-based builds @jameslamb (#5607)
- [ci] [python-package] correct tag on x86_64 wheels @jameslamb (#5598)
- [tests][dask] fix workers without data test (fixes #5537) @jmoralez (#5544)
- prefer 'vsnprintf' to 'vsprintf' @jameslamb (#5561)
- [ci] fix R-package CI jobs and compatibility with OpenMP 15+ (fixes #5549, #5562) @jameslamb (#5563)
- include parameters from reference dataset on subset (fixes #5402) @jmoralez (#5416)
- [python-package] ignore training set on early stopping callback (fixes #5354) @jmoralez (#5412)
- [fix] change the destructor of ScoreUpdater to virtual (fixes #5400) @shiyu1994 (#5403)
- Add default definition for GetColWiseData and GetColWiseData @shiyu1994 (#5413)
- Fix potential overflow in linear trees @StrikerRUS (#5395)
- Use double precision in threaded calculation of linear tree coefficients (fixes #5226) @btrotta (#5368)
- [R-package] raise an informative error when custom objective produces incorrect output (fixes #5323) @jmoralez (#5329)
- Clear split info buffer in cost efficient gradient boosting before every iteration (fix partially #3679) @shiyu1994 (#5164)
- [c++][fix] check nullable of bin mappers in dataset_loader.cpp (fix #5221) @shiyu1994 (#5258)
- [python] Fix training on subset constructed without params @StrikerRUS (#5213)
- Check existence of inet_pton for win32 in CMakeLists.txt (fixes #5019) @shiyu1994 (#5159)
- Fix potential overflow "Multiplication result converted to larger type" @StrikerRUS (#5189)
- [R-package] ensure that callbacks respect verbosity from params @jameslamb (#5199)
- fix precision lost in tree's ToIfElse @Grass-CLP (#5187)
- fix some wrong format specifiers @StrikerRUS (#5190)
- [R-package] allow use of categorical_features in Dataset when raw data does not have column names (fixes #4374) @jmoralez (#5184)
- [c-api] check number of features when retrieving number of bins @jmoralez (#5183)
- [CUDA] Fix integer overflow in cuda row-wise data @shiyu1994 (#5167)
- [R-package] ensure values in params override keyword arguments to predict() (fixes #4670) @jameslamb (#5122)
- check nullable of bin_mappers in DatasetLoader::CheckCategoricalFeatureNumBin (fix #5145) @shiyu1994 (#5146)
- [CUDA] Fix row-wise histogram construction with dense data matrix @shiyu1994 (#5103)
- [fix] fix duplicate added initial scores for single-leaf trees @shiyu1994 (#5050)
- [python] fixes for supporting 2d numpy arrays for predictions, grads and hess in multiclass custom objective and eval @StrikerRUS (#5030)
- CUDATreeLearner: free GPU memory in destructor if any allocated @denmoroz (#4963)
- Use
delete[]
where appropriate instead ofdelete
@david-cortes (#4984) - Pass train dataset parser config to valid dataset loading parser @chjinche (#4985)
- [R-package] Fix custom objective detection in
print.lgb.Booster()
@StrikerRUS (#4941) - gpu allocate memory overflow (fixes #4926) @jiapengwen (#4928)
- [R-package] respect 'verbose' argument in lgb.cv() (fixes #4667) @jameslamb (#4903)
- [R-package] Apply patch for R4.2 on Windows @shiyu1994 (#4923)
- [R-package] respect aliases for objective and metric and lgb.train() and lgb.cv() @jameslamb (#4913)
- [python] raise an informative error instead of segfaulting when custom objective produces incorrect output @yaxxie (#4815)
- [R-package] fix handling of duplicate parameters (fixes #4521) @jameslamb (#4914)
- [R-package] update parameter 'verbosity' based on keyword arg 'verbose' @jameslamb (#4899)
- [R-package] fix CVBooster reset_parameter() method (fixes #4900) @jameslamb (#4901)
- [python] reset storage in record evaluation callback each time before starting training @StrikerRUS (#4885)
- [python] reset storages in early stopping callback after finishing training @StrikerRUS (#4868)
- [R-package] fix
--no-build-vignettes
option forbuild-cran-package.sh
@jameslamb (#4848) - [python][docs] fix type hints for custom functions and remove vague
array-like
wording @StrikerRUS (#4816) - Always respect forced splits, even when feature_fraction < 1.0 (fixes #4601) @tongwu-msft (#4725)
- Reset OpenMP thread number if num_threads <= 0 @hzy46 (#4704)
π Documentation
- [docs] fix broken link to contributor GitHub account @jameslamb (#5959)
- [docs] add versionadded notes for v4.0.0 features @jameslamb (#5948)
- [docs] Add scikit-learn for intersphinx (fixes #5954) @thomasjpfan (#5956)
- [docs] more fixes for broken links @jameslamb (#5941)
- [docs] remove outdated information in Python install docs @jameslamb (#5938)
- [docs] fix broken links in docs @jameslamb (#5939)
- [docs] add quantized training paper to docs @jameslamb (#5923)
- [docs] Update Quick Start @jaceklaskowski (#5900)
- [docs] recommend a more efficient source installation of the python package @jameslamb (#5881)
- adjusted bagging_freq parameter description @moziada (#5698)
- [docs] remove unnecessary interactivity in 'docker run' instructions @jameslamb (#5692)
- [docs] [R-package] mention {bonsai} in the docs @jameslamb (#5652)
- [docs] encourage use of releases for GUI-only installations @jameslamb (#5649)
- [docs] update CPU dockerfiles (fixes #5550) @jameslamb (#5601)
- [docs] update cran-comments.md for v3.3.4 release @jameslamb (#5646)
- [docs] add postgresml to list of external repos @jameslamb (#5565)
- [docs] Improve docs: fix consistency of dots in C API and add notes about new
time-costs
Python-package build option @StrikerRUS (#5554) - [R-package] [docs] use CRAN canonical form for package links @jameslamb (#5504)
- [docs] Fix link to Optuna's LightGBMTuner example @knshnb (#5519)
- [docs]fix a typo in docs/Features.rst @JiantingFeng (#5463)
- Use ROC-AUC metric for classification model in examples @Green-16 (#5440)
- [docs] Fix links @StrikerRUS (#5451)
- [R-package] Fix docstrings for predict functions @StrikerRUS (#5444)
- [R-package] [docs] clarify shape of predictions @jameslamb (#5384)
- [python-package] Improve readme on experimental cuda usage @thomasaarholt (#5386)
- [docs] [R-package] document how to regenerate roxygen docs @jameslamb (#5382)
- [R-package] [docs] fix typo in documentation on init_model @sebffischer (#5379)
- [docs] [R-package] upgrade to roxygen2 7.2.1 @jameslamb (#5381)
- [ci] make check-docs job compatible with rstcheck 6.x @jameslamb (#5388)
- [docs][python] Fix return types in docstrings @StrikerRUS (#5326)
- [docs] set language = 'en' in Sphinx config @jameslamb (#5322)
- [R-package] [docs] document difference between lightgbm() and lgb.train() (fixes #5203) @jameslamb (#5273)
- [docs] Use https links in docs @StrikerRUS (#5284)
- [R-package] [docs] upgrade docs to roxygen2==7.2.0 @jameslamb (#5251)
- [docs] Update broken links in docs @StrikerRUS (#5265)
- [docs] add Microsoft security policy (fixes #5235) @jameslamb (#5264)
- [R-package] update roles in DESCRIPTION @StrikerRUS (#5192)
- [docs] Fix formula in path smoothing docs (fixes #5139) @samFarrellDay (#5154)
- [docs] Document behaviour of the first linear estimator @Pablo-Davila (#5132)
- [docs] use 'docker run --rm' in valgrind instructions @jameslamb (#5127)
- [docs] use 'docker run --rm' in autoconf instructions @jameslamb (#5125)
- [docs] Improve rendering of class properties in docs @StrikerRUS (#5078)
- [python-package][docs] Booster eval methods accept list of callables @TremaMiguel (#5054)
- [docs] update categorical feature description in Advanced Topics @StrikerRUS (#5044)
- Correct documentation for sparse predictions @david-cortes (#4979)
- [docs][R-package] Use direct link for the list of supported objectives @StrikerRUS (#5029)
- [Docs] Weights non-negative for train data @TremaMiguel (#5013)
- [docs] improve docs for sklearn wrapper @StrikerRUS (#5026)
- [docs] clarify that categorical features will be converted to integers internally @jmoralez (#4959)
- [docs] clarify that custom eval functions are not only used on training data @jameslamb (#5011)
- [docs] document rounding behavior of floating point numbers in categorical features @StrikerRUS (#5009)
- Change docs for feval @akshitadixit (#5002)
- [docs] document
conda-forge
channel preference overdefault
one and describe possible workaround for OpenMP conflicts in FAQ @StrikerRUS (#4994) - Add Nyoka to README @StrikerRUS (#4992)
- [docs] minor docs improvements @StrikerRUS (#4938)
- [R-package] [docs] fix calculation of R test coverage (fixes #4919) @jameslamb (#4922)
- [docs] Update link to FLAML code example @qingyun-wu (#4892)
- [R-package] [docs] add Michael Mayer to DESCRIPTION @jameslamb (#4867)
- [docs] document that
pred_early_stop
can be used only in normal and raw scores prediction @StrikerRUS (#4823) - [R-package] [docs] add intro vignette (#3946) @jameslamb (#4775)
- [docs] fix broken SynapseML link @StrikerRUS (#4795)
- [docs] [dask] Add return information to Dask fit() docs (fixes #4402) @jameslamb (#4716)
- [docs] add specific estimator names to sklearn fit() docs @jameslamb (#4774)
- [docs] [R-package] update cran-comments for v3.3.1 release @jameslamb (#4738)
- [ci] only use conda-forge when installing R packages in docs builds @jameslamb (#4767)
- [docs] improve docs about
nthreads
parameter @StrikerRUS (#4756) - [docs] update link to LightGBM Ruby @StrikerRUS (#4740)
- [docs] fix broken SynapseML link @jameslamb (#4712)
π§° Maintenance
- [c++] virtual destructor for gradient discretizer @shiyu1994 (#5965)
- [python-package] avoid data_has_header check in predict() @jameslamb (#5970)
- [ci] [python-package] Add CI job testing compatibility with oldest possible versions @jameslamb (#5936)
- [ci] add Python 3.11 test coverage @jameslamb (#5922)
- [ci] increase valgrind timeout to 6 hours @jameslamb (#5953)
- [python-package] ignore pip cache dir in build-python.sh @jameslamb (#5945)
- [ci] remove brew update-reset again (fixes #5670) @jameslamb (#5925)
- [python-package] ensure 'build-python.sh' always reinstalls (fixes #5906) @jameslamb (#5907)
- [python-package] remove unnecessary Boost files from sdists @jameslamb (#5912)
- [ci] stop relying on cran.microsoft.com in CI jobs @jameslamb (#5909)
- [ci] use an MRAN snapshot for R 3.6 Linux jobs (fixes #5898) @jameslamb (#5903)
- [ci] [python-package] use ruff, enforce flake8-bugbear and flake8-comprehensions checks @jameslamb (#5871)
- [ci] [python-package] fix mypy errors in sklearn.py @jameslamb (#5886)
- Add SWIG byte pointers @svotaw (#5832)
- [ci] [python-package] fix mypy error in Dataset.set_categorical_feature() @jameslamb (#5883)
- [ci] fix wheel renaming in test.sh @jameslamb (#5877)
- [ci] [python-package] tell mypy 'auto' has a special meaning for feature_name and categorical_feature @jameslamb (#5874)
- [ci] [python-package] move tool configuration to pyproject.toml @jameslamb (#5872)
- [ci] use Python 3.11 in linting CI job @jameslamb (#5873)
- [ci] use lowercase library names in linker flags @characat0 (#5870)
- [ci] minor fixes to build-python.sh @jameslamb (#5869)
- [ci] [python-package] resolve remaining mypy errors in dask.py @jameslamb (#5858)
- [ci] [python-package] check distributions with pydistcheck @jameslamb (#5838)
- [ci] remove R 3.6 macOS CI jobs @jameslamb (#5859)
- [ci] [python-package] fix mypy errors about Dataset._set_init_score_by_predictor() @jameslamb (#5850)
- [python-package] [ci] fix mypy errors in Booster.__inner_predict() @jameslamb (#5852)
- [ci] [python-package] fix mypy errors in Booster.refit() @jameslamb (#5853)
- [ci] add tests on cv() with an init_model @jameslamb (#5851)
- [ci] [python-package] fix mypy error about dask._predict_part() @jameslamb (#5849)
- [ci] [python-package] fix mypy error about return_cvbooster in cv() @jameslamb (#5845)
- [python-package] move validation up earlier in cv() and train() @jameslamb (#5836)
- [python-package] remove default arguments in internal functions @jameslamb (#5834)
- [python-package] fix mypy error about used_indices in Dataset.subset() @jameslamb (#5833)
- [ci] put a temporary ceiling on pip @jameslamb (#5835)
- [ci] [dask] fix mypy errors about predict() signature @jameslamb (#5827)
- [python-package] fix mypy error in Dataset.__init_from_list_np2d() @jameslamb (#5826)
- [ci] [python-package] fix mypy errors in cv() @jameslamb (#5828)
- [python-package] [docs] complete type annotations for scikit-learn fit() methods @jameslamb (#5816)
- [ci] remove pin on tinytex in R CI jobs @jameslamb (#5821)
- [ci] moving linting into small scripts (fixes #5142) @jameslamb (#5809)
- [python-package] add more type annotations in basic.py @jameslamb (#5812)
- [python-package] add type annotations on some array methods in basic.py @jameslamb (#5813)
- [python-package] add type annotations on Booster.trees_to_dataframe() inner functions @jameslamb (#5811)
- [python-package] fix type annotations for eval result tracking @jameslamb (#5793)
- [python-package] fix mypy error in Booster.get_split_value_histogram() @jameslamb (#5794)
- [python-package] fix mypy errors about early stopping rounds @jameslamb (#5795)
- [python-package] fix mypy errors about custom eval and metric functions @jameslamb (#5790)
- [python-packages] [docs] add type hints and define 'array-like' for X, y, group in scikit-learn interface @jameslamb (#5757)
- remove unused variables from bin.cpp @jmoralez (#5801)
- [ci] fix LaTeX tools installation in R jobs (fixes #5802) @jameslamb (#5807)
- [python-package] fix mypy errors about scikit-learn properties @jameslamb (#5788)
- [python-package] add hint on dtypes in Dataset.set_field() @jameslamb (#5787)
- [python-package] replace uses of scipy.sparse.issparse() with isinstance() @jameslamb (#5784)
- [python-package] fix mypy error about cpu_count() methods @jameslamb (#5786)
- [python-package] fix mypy errors about Dataset.params @jameslamb (#5780)
- [python-package] ignore some mypy errors in _DaskLGBMModel @jameslamb (#5774)
- [python-package] fix mypy errors about ctypes pointers @jameslamb (#5779)
- [python-package] fix mypy error about dask.HostWorkers.eq_() @jameslamb (#5782)
- [python-package] fix mypy errors about validation sets in sklearn.py @jameslamb (#5724)
- [python-package] fix mypy errors about missing annotations and incompatible types @IdoKendo (#5672)
- [python-package] add type hints on sklearn properties @jameslamb (#5771)
- [python-package] add type hints for functions accepting dtypes @jameslamb (#5773)
- [ci] isolate c_api_test library-loading from Python source tree @jameslamb (#5761)
- [python-package] [dask] add type annotations on dask._HostWorkers @jameslamb (#5766)
- [python-package] [dask] fix mypy errors about Dask fit() return types @jameslamb (#5756)
- [python-package] use keyword arguments in predict() calls @jameslamb (#5755)
- [python-package] add type hints on label @jameslamb (#5754)
- [python-package] add type hints on group, init_score, and weight @jameslamb (#5753)
- [python-package] add type hints on raw data passed to Dataset and Booster @jameslamb (#5752)
- [python-package] add type hints on feature_name and categorical_feature in sklearn interface @jameslamb (#5747)
- [python-package] add type hints on fit() return and callbacks in sklearn.py @jameslamb (#5748)
- [python-package] add type hints on Booster predict() methods @jameslamb (#5749)
- [python-package] add more type hints in basic.py @jameslamb (#5729)
- [python-package] fix mypy error about ctypes array creation @jameslamb (#5726)
- [python-package] add type hints on Dataset feature processing @jameslamb (#5745)
- [ci] speed up conda setup for macOS and Linux jobs @jameslamb (#5743)
- [python-package] remove default values in internal functions @jameslamb (#5730)
- [python-package] use _DatasetHandle type hint @jameslamb (#5740)
- [ci] skip Dask tests on GPU builds @jameslamb (#5741)
- [python-package] fix _LGBM_CustomMetricFunction typing @Deimos357 (#5736)
- [python-package] fix mypy errors about Dataset handle @jameslamb (#5722)
- [python-package] fix mypy errors about cv() internals @jameslamb (#5725)
- [python-package] change types in sklearn.py initializations @jameslamb (#5718)
- [python-package] [dask] fix mypy errors regarding predict_proba @IdoKendo (#5728)
- [python-package] fix mypy errors about custom eval functions in sklearn.py @jameslamb (#5721)
- [python-package] fix mypy error about log callback @jameslamb (#5720)
- [python-package] fix mypy errors around eval metrics in sklearn.py @jameslamb (#5719)
- [python-package] fix mypy errors about _InnerPredictor @jameslamb (#5714)
- [dask] fix mypy errors about padded eval_results @jameslamb (#5716)
- [python-package] fix mypy errors in compat.py and libpath.py @jameslamb (#5711)
- [python-package] add more type hints in sklearn.py @jameslamb (#5710)
- [python-package] add type hints on plotting code @jameslamb (#5708)
- [ci] [python-package] enforce 'twine check' and 'check-wheel-contents' on Python distributions @jameslamb (#5707)
- [python-package] declare the use of inline type hints @jameslamb (#5709)
- [python-package] remove some inner function definitions @jameslamb (#5704)
- [python-package] add more type hints @jameslamb (#5694)
- [ci] restore flake8 checks @jameslamb (#5703)
- [python-package] Fix mypy errors for fit() incompatible signature @IdoKendo (#5679)
- [R-package] discourage use of regex for fixed string comparisons @jameslamb (#5685)
- [ci] get clang-15 from bookworm repository (fixes #5688) @jameslamb (#5689)
- [ci] speed up conda setup for some jobs @jameslamb (#5668)
- bump development version to v3.3.5.99 @jameslamb (#5681)
- [python-package] Fix mypy errors for predict() method @IdoKendo (#5678)
- [python-package] fix mypy errors for eval_at and basic @IdoKendo (#5674)
- [ci] [python-package] enforce flake8 checks (fixes #5566) @jameslamb (#5659)
- [python-package] remove
Dataset.feature_penalty
@jameslamb (#5656) - [ci] fix brew errors in R macOS jobs (fixes #5670) @jameslamb (#5671)
- [ci] run r-package Linux jobs in containers @jameslamb (#5638)
- [ci][dask][gpu] Run Dask tests with LightGBM GPU version @jgiannuzzi (#5292)
- [python-package] prefix internal objects with '_' @jameslamb (#5654)
- [ci] speed up Windows jobs (fixes #5647) @jameslamb (#5648)
- [ci] automatically cancel GitHub Actions runs for outdated commits @jameslamb (#5651)
- [ci][dask][gpu] Run Dask tests with LightGBM GPU version @jgiannuzzi (#5292)
- [python-package] prefix internal objects with '_' @jameslamb (#5654)
- [ci] speed up Windows jobs (fixes #5647) @jameslamb (#5648)
- [ci] automatically cancel GitHub Actions runs for outdated commits @jameslamb (#5651)
- [ci] use LightGBM CI image for building aarch64 wheels (fixes #5595) @jameslamb (#5622)
- [ci] allow ubuntu-latest to float for some GitHub Actions jobs @jameslamb (#5644)
- [ci] fix locale-setting in jobs running in ubuntu container @jameslamb (#5643)
- [ci] make GitHub Actions branch protection stricter (fixes #5501) @jameslamb (#5645)
- [ci] Use Ubuntu 22.04 as
ubuntu-latest
at CI (fixes #5186) @StrikerRUS (#5288) - [tests][python-package] remove remaining tests using load_boston (fixes #4793) @jmoralez (#5581)
- [python-package] prefix c_int_array and c_float_array with _ @OmarManzoor (#5614)
- [ci] test against R 4.2.2 @jameslamb (#5621)
- [python-package] prefix basic.convert_from_sliced_object with _ @OmarManzoor (#5613)
- [ci] detect non-default dynamic symbols in check_dynamic_dependencies.py @jameslamb (#5610)
- [ci] add docs and specific error messages in check_dynamic_dependencies.py @jameslamb (#5582)
- [ci] update versions of GitHub Actions @jameslamb (#5590)
- [swig] switch to SWIG_ADD_LIBRARY() in CMakeLists.txt (fixes #5586) @shogohida (#5603)
- [ci] switch from MiKTeX to tinytex on Windows R jobs (fixes #5600) @jameslamb (#5602)
- [python-package] prefix several internal functions with _ @Madnex (#5545)
- [python-package] remove unused imports @jameslamb (#5559)
- [ci] prefer CPython in Linux and macOS test environment @StrikerRUS (#5555)
- [docs] bump development version to 3.3.3.99 @jameslamb (#5533)
- [ci] upgrade macOS_regular job to Python 3.9 (fixes #5569) @jameslamb (#5570)
- [tests] Fix cpp streaming data tests @StrikerRUS (#5481)
- [python-package] prefix is_numpy_column_array with _ @Madnex (#5531)
- renamed cur_cat => cur_cat_idx and added some comments @zyxue (#5522)
- [python-package] prefix cast_numpy_array_to_dtype with _ @Madnex (#5532)
- suppress alias warnings with verbosity<0 (fixes #4518) @jmoralez (#5253)
- renamed tmp_num_sample_values to non_na_cnt @zyxue (#5521)
- [ci] run Appveyor checks on PRs targeting release/ branches @jameslamb (#5528)
- [ci] run CI on pull requests targeting release/ branches @jameslamb (#5527)
- [python-package] prefix is_numpy_1d_array with _ @Madnex (#5520)
- replace
pandas.Series.iteritems
withpandas.Series.items
@jmoralez (#5506) - [ci] prefer CPython in Windows test environment and use safer approach for cleaning up network (fixes #5509) @jameslamb (#5510)
- [ci] test against R 4.2 for macOS and Linux CI jobs @jameslamb (#5484)
- [R-package] improve safety of index selection in plotting @jameslamb (#5485)
- [ci] [R-package] ensure that MSVC jobs fail when tests fail (fixes #5439) @jameslamb (#5448)
- [python-package] add more hints in sklearn.py @jameslamb (#5460)
- [R-package] [ci] restore R 3.6 Windows cran CI job (fixes #5036) @jameslamb (#5479)
- Remove redundant whitespaces @ch3rn0v (#5480)
- fix references to 'object function' @jameslamb (#5468)
- [python] Fix typehints in Sequence API @StrikerRUS (#5465)
- fix: Revert leftover debugging in streaming test @svotaw (#5467)
- Fix CUDA
#ifndef
guards @StrikerRUS (#5466) - [python-package] add type hints on Dataset constructors @jameslamb (#5458)
- Add streaming concurrency tests @svotaw (#5437)
- Rename Metadata num_classes to be more clear @svotaw (#5461)
- [R-package] fix function references in error messages @jameslamb (#5455)
- [python-package] fix type hints on ctypes array converters @jameslamb (#5446)
- [python-package] fix mypy errors about callbacks @jameslamb (#5450)
- [python-package] add type hints on empty initializations @jameslamb (#5445)
- [python-package] fix mypy error about type change in Dataset.feature_num_bin() @jameslamb (#5447)
- [ci][fix] Fix cuda_exp ci @shiyu1994 (#5438)
- [python] remove unused import @StrikerRUS (#5443)
- [ci] bump CUDA version from
11.7.0
to11.7.1
at CI @StrikerRUS (#5442) - [python-package] add type hints on Booster eval methods @jameslamb (#5433)
- update tree to if-else @jmoralez (#5422)
- [ci] bump CUDA version from
11.6.2
to11.7.0
at CI @StrikerRUS (#5287) - [python-package] add more type hints on Dataset @jameslamb (#5431)
- [python-package] add more type hints on Booster @jameslamb (#5432)
- [ci] increase valgrind bytes lost limit to 352 @jameslamb (#5429)
- [python] Prefix
basic.is_numeric()
with _ @ak04p (#5421) - [ci] increase valgrind timeout to 5 hours @jameslamb (#5414)
- [python-package] add more type hints in basic.py @jameslamb (#5407)
- [python-package] prefix NUMERIC_TYPES with _ to make it a internal object @thomasjpfan (#5409)
- [python-package] add type hints on Booster.save_model() @jameslamb (#5406)
- Minor CUDA cleanup @StrikerRUS (#5394)
- [ci] temporarily pin scipy version and fix Python linting error @StrikerRUS (#5398)
- [python-package] add type hints on some functions in basic.py @makquel (#5362)
- [python-package] add more type hints on Booster @jameslamb (#5360)
- [python-package] make library-loading stricter @jameslamb (#5357)
- [python-package] add type hints on Booster.update() @jameslamb (#5359)
- [python-package] add more type hints on basic.py @jameslamb (#5356)
- [python-package] add type hints on Dataset @jameslamb (#5353)
- [python-package] remove inner function _construct_dataset() in LGBMModel.fiit() @jameslamb (#5333)
- [python-package] add type hints on predict() methods @jameslamb (#5334)
- [python-package] add more type hints in basic.py @jameslamb (#5330)
- [ci][R-package] Minor refactoring for
lintr
code @StrikerRUS (#5327) - [python-package] add more type hints in engine.py @jameslamb (#5301)
- [ci] [R-package] Add string_boundary_linter @CuriousCorrelation (#5324)
- [python-package] add more type hints on Booster @jameslamb (#5309)
- [ci] [R-package] Add paste_linter @CuriousCorrelation (#5320)
- [ci] [R-package] Add duplicate_argument_linter @SaumyaBhushan (#5310)
- [ci] [R-package] Add a few more linters @CuriousCorrelation (#5311)
- [ci] [R-package] Add class_equals linter @CuriousCorrelation (#5307)
- [python][sklearn] Simplify params handling in
predict()
with_choose_param_value()
@StrikerRUS (#5308) - [ci] [R-package] Add any_is_na_linter @CuriousCorrelation (#5306)
- [python-package] add some type hints on Booster @jameslamb (#5302)
- [python] preserve None in _choose_param_value() @jameslamb (#5289)
- [ci] Install PoCL in Docker for old Ubuntu 14.04 @StrikerRUS (#5286)
- [R-package] Specify concrete linting rule that is being ignored via
nolint
mark @StrikerRUS (#5300) - [python-package] add type hints on cv() @jameslamb (#5271)
- [ci] [R-package] upgrade to lintr v3.0 (fixes #5228) @jameslamb (#5294)
- [ci] Pin lintr to <3.0 @jgiannuzzi (#5290)
- [ci] Run Linux OpenCL tests against POCL instead of the AMD App SDK @jgiannuzzi (#5282)
- [tests][python] Make test that checks original pandas data isn't modified more strict @StrikerRUS (#5267)
- [python] add more type hints in basic.py @jameslamb (#5255)
- [python] add more type hints on LGBMModel methods @jameslamb (#5239)
- [R-package] address linter warnings about portable paths @jameslamb (#5249)
- [R-package] [ci] silence more logs in tests (fixes #4862) @jameslamb (#5250)
- Remove leftovers after the drop of Solaris support @StrikerRUS (#5248)
- [python] add type hints on sklearn metric and eval wrappers @jameslamb (#5238)
- [R-package] silence logs in print(), show(), summary() tests @jameslamb (#5237)
- [R-package] standardize style for placement of braces @jameslamb (#5240)
- [R-package] remove semicolon in R code @jameslamb (#5232)
- [R-package] remove Solaris reference in test message @jameslamb (#5231)
- [R-package] silence more logs in unit tests @jameslamb (#5227)
- [ci] switch CRAN mirror to RStudio @jameslamb (#5230)
- Cleanup codeowners @StrikerRUS (#5215)
- [R-package] minor improvements on weight demo @jmoralez (#5212)
- [ci] fix R Hub token @jameslamb (#5210)
- [R-package] silence more logs in tests @jameslamb (#5208)
- [ci] Prevent Python downgrading to pypy on Windows (2) @StrikerRUS (#5198)
- [ci] Prevent Python downgrading to pypy on Windows @StrikerRUS (#5197)
- [ci] fix git checkout for comment-triggered CI jobs @jameslamb (#5169)
- [python] remove unused import from
basic.py
@StrikerRUS (#5188) - [tests] replace
fobj
withcustom objective
in test comments and make tests stricter @StrikerRUS (#5173) - [ci] Update version of Azure REST API @StrikerRUS (#5172)
- [ci] skip auto-injected tasks at Azure Pipelines @StrikerRUS (#5175)
- fix typo in CEGB method name @jameslamb (#5168)
- [ci] temporarily pin Azure Devops jobs to ubuntu 20.04 @jameslamb (#5174)
- [ci] fix git checkout for CI jobs (fixes #5151) @jameslamb (#5152)
- [ci] bump CUDA version from
11.5.1
to11.6.2
at CI @StrikerRUS (#5149) - [python] Use predefined constant in feature importance type comparison instead of raw int literal @StrikerRUS (#5148)
- [ci] update to R 4.1.3 and use macOS-latest for R jobs (fixes #4990) @jameslamb (#5137)
- [ci] have no-response bot post as github-actions user @jameslamb (#5136)
- [ci] fail R macOS CI jobs earlier when installations fail @jameslamb (#5129)
- [ci] use lee-dohm/no-response to close stale issues (fixes #5060) @jameslamb (#5120)
- [ci] Remove temp workaround for graphviz installation @StrikerRUS (#5126)
- [R-package] rename internal callback functions @mayer79 (#5123)
- [R-package] ensure boosting happens in tests on small datasets @jameslamb (#5121)
- [R-package] Add missed packages into dependencies list @StrikerRUS (#5118)
- [R-package] add assertions to test on lightgbm() weights @jameslamb (#5110)
- Log warnings for number of bins of categorical features @shiyu1994 (#4448)
- clarify no-meaningful-features warning in Dataset construction (fixes #5081) @jameslamb (#5083)
- [ci] Add text file with GitHub commit hash to nightly builds @StrikerRUS (#5082)
- [ci] remove Visual Studio 2017 CI job for R-package @StrikerRUS (#5079)
- [python-package] Better column dtype logging when column has "bad dtype" @hsorsky (#5065)
- [ci] update CODEOWNERS @jameslamb (#5063)
- [ci] fix current
master
fails with graphviz-related error @StrikerRUS (#5068) - [ci] temporarily remove R3.6 CRAN CI build @jameslamb (#5049)
- [tests][python] move tests that use
train()
function defined inengine.py
fromtest_basic.py
totest_engine.py
@StrikerRUS (#5034) - [R-package] remove internal function lgb.check.obj() @jameslamb (#5021)
- [ci] use Python 3.8 for
bdist
CI job in old Ubuntu container @StrikerRUS (#5022) - [R-package] raise informative errors directly when Booster creation fails @jameslamb (#5014)
- [ci] [docs] use miniforge for readthedocs builds (fixes #4954) @jameslamb (#4957)
- [ci] Enclose Python versions in quotes in config yml files @StrikerRUS (#5015)
- [python] enforce a floor of Python 3.6 (fixes #5004) @PyVCEchecker (#5006)
- Update versions of LightGBM dependencies @StrikerRUS (#4935)
- [tests][python] remove compatibility code for old versions in tests @StrikerRUS (#4978)
- [ci] use conda-forge in Windows CI jobs and Docker images @StrikerRUS (#4993)
- [ci] use
latest
tag again for Ubuntu 14 CI Docker @StrikerRUS (#5001) - [ci] use conda-forge in Linux and macOS CI jobs @jameslamb (#4953)
- [ci] upgrade to R 4.1.2 in CI, change approach to macOS-latest R CI builds (fixes #4988) @jameslamb (#4989)
- [ci] bump CUDA version from
11.5.0
to11.5.1
at CI @StrikerRUS (#4967) - [ci] use
-1
for exit code in case of failure @StrikerRUS (#4939) - [tests][R-package] use one
#
symbol for comments @StrikerRUS (#4940) - [ci] bump CUDA version from 11.4.2 to 11.5.0 at CI @StrikerRUS (#4937)
- [ci] Bump version for development @StrikerRUS (#4933)
- [R-package] [tests] remove uses of testthat::context() @jameslamb (#4915)
- [R-package][tests] remove uses of
testthat::expect_is()
@jameslamb (#4916) - [R-package] remove unnecessary comments and fix typos in comments @jameslamb (#4902)
- [R-package] reduce verbosity in tests using lgb.train() @jameslamb (#4896)
- [tests][python-package] change boston dataset to synthetic dataset in tests that don't check score @jmoralez (#4895)
- [R-package] reduce verbosity in some unit tests @jameslamb (#4879)
- [R-package] remove unused callback cb.reset.parameter @jameslamb (#4871)
- [python-package][dask] handle failures parsing worker host names @jameslamb (#4852)
- [python-package] [dask] fix mypy error about worker_addresses @jameslamb (#4851)
- [python] remove workaround for
UnboundLocalError
in early stopping callback for Python 2 @StrikerRUS (#4855) - [python-package] remove unused imports @jameslamb (#4850)
- [python-package] fix mypy errors in engine.py @jameslamb (#4839)
- [python-package] [dask] fix mypy errors from dask.py docstrings @jameslamb (#4844)
- [python-package] fix mypy errors in sklearn.py @jameslamb (#4837)
- [tests][dask] fix argument names in custom eval function in Dask test @StrikerRUS (#4833)
- [python-package] fix mypy errors in plotting.py @jameslamb (#4838)
- [python-package] fix mypy error about missing type hint in dask.py @jameslamb (#4840)
- [python-package] fix mypy errors in compat.py and setup.py @jameslamb (#4836)
- [docs][python] simplify mocking in docs @StrikerRUS (#4830)
- [python] add type hints to
_compare_params_for_warning()
and make it reusable @StrikerRUS (#4824) - [R-package] Move R6 to Imports @david-cortes (#4812)
- [ci] Fix CI job for R artifact @StrikerRUS (#4811)
- [ci] fix getting status of optional workflows in PRs with a lot of comments @StrikerRUS (#4806)
- [python] add type hints for custom objective and metric functions in scikit-learn interface @jameslamb (#4547)
- [c_api] Improve ANSI compatibility by avoiding <stdbool.h> @drewmiller (#4697)
- [ci] ignore CMakeLint errors related to package names @StrikerRUS (#4801)
- [ci] fix CMakeLint errors related to function naming case @StrikerRUS (#4794)
- [ci] simplify processing of
CMAKE_CUDA_FLAGS
variable inCMakeLists.txt
@StrikerRUS (#4799) - [ci] fix CMakeLint
linelength
errors @StrikerRUS (#4796) - [ci] use pure
endif()
andendfunction()
without expression inside inCMakeLists.txt
@StrikerRUS (#4798) - cmake: use object library to avoid duplicate compilation. @cyfdecyf (#4489)
- Suppress categorical warning (fixes #3379) @hzy46 (#4768)
- [ci][tests][python] remove assertion for
filename
that is no longer true with new version of graphviz @StrikerRUS (#4778) - [ci] Revert temp workaround for
freetype
version @StrikerRUS (#4776) - [ci] increase timeout for valgrind job to 240 minutes @jameslamb (#4773)
- [python] improve warning message about aliases in
cv()
function @StrikerRUS (#4766) - [ci] Temporary pin dask version at CI @StrikerRUS (#4770)
- [ci] use wch1/r-debug image in Solaris tests @jameslamb (#4765)
- [ci] upgrade actions/checkout to v2.4.0 @jameslamb (#4763)
- [docs][python] add
datatable
to the mocked modules during docs building process and sort them alphabetically @StrikerRUS (#4750) - [R-package] allow use of custom R executable when building CRAN package @jameslamb (#4754)
- [R-package] remove temporary files created in configure.win @jameslamb (#4752)
- [ci] indicate support of Monterey @StrikerRUS (#4732)
- [python] Make dummy classes constructible with any arguments @StrikerRUS (#4749)
- [ci] Temporary pin freetype version at Windows CI @StrikerRUS (#4747)
- Remove checks for label when loading dataset from binary file because label is ignored in that case @StrikerRUS (#4737)
- [tests][python] add test for non-serializable callback @StrikerRUS (#4741)
- Improve warning wordings @StrikerRUS (#4731)
- [ci] Bump version for development @StrikerRUS (#4730)
- Add some warnings when loading dataset from binary file @StrikerRUS (#4724)