Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

release v4.5.0 #6538

Merged
merged 10 commits into from
Jul 25, 2024
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .appveyor.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
version: 4.4.0.99.{build}
version: 4.5.0.{build}

image: Visual Studio 2015
platform: x64
Expand Down
18 changes: 9 additions & 9 deletions R-package/configure
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.71 for lightgbm 4.4.0.99.
# Generated by GNU Autoconf 2.71 for lightgbm 4.5.0.
#
#
# Copyright (C) 1992-1996, 1998-2017, 2020-2021 Free Software Foundation,
Expand Down Expand Up @@ -607,8 +607,8 @@ MAKEFLAGS=
# Identity of this package.
PACKAGE_NAME='lightgbm'
PACKAGE_TARNAME='lightgbm'
PACKAGE_VERSION='4.4.0.99'
PACKAGE_STRING='lightgbm 4.4.0.99'
PACKAGE_VERSION='4.5.0'
PACKAGE_STRING='lightgbm 4.5.0'
PACKAGE_BUGREPORT=''
PACKAGE_URL=''

Expand Down Expand Up @@ -1211,7 +1211,7 @@ if test "$ac_init_help" = "long"; then
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
\`configure' configures lightgbm 4.4.0.99 to adapt to many kinds of systems.
\`configure' configures lightgbm 4.5.0 to adapt to many kinds of systems.

Usage: $0 [OPTION]... [VAR=VALUE]...

Expand Down Expand Up @@ -1273,7 +1273,7 @@ fi

if test -n "$ac_init_help"; then
case $ac_init_help in
short | recursive ) echo "Configuration of lightgbm 4.4.0.99:";;
short | recursive ) echo "Configuration of lightgbm 4.5.0:";;
esac
cat <<\_ACEOF

Expand Down Expand Up @@ -1341,7 +1341,7 @@ fi
test -n "$ac_init_help" && exit $ac_status
if $ac_init_version; then
cat <<\_ACEOF
lightgbm configure 4.4.0.99
lightgbm configure 4.5.0
generated by GNU Autoconf 2.71

Copyright (C) 2021 Free Software Foundation, Inc.
Expand Down Expand Up @@ -1378,7 +1378,7 @@ cat >config.log <<_ACEOF
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by lightgbm $as_me 4.4.0.99, which was
It was created by lightgbm $as_me 4.5.0, which was
generated by GNU Autoconf 2.71. Invocation command line was

$ $0$ac_configure_args_raw
Expand Down Expand Up @@ -2454,7 +2454,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
# report actual input values of CONFIG_FILES etc. instead of their
# values after options handling.
ac_log="
This file was extended by lightgbm $as_me 4.4.0.99, which was
This file was extended by lightgbm $as_me 4.5.0, which was
generated by GNU Autoconf 2.71. Invocation command line was

CONFIG_FILES = $CONFIG_FILES
Expand Down Expand Up @@ -2509,7 +2509,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
ac_cs_config='$ac_cs_config_escaped'
ac_cs_version="\\
lightgbm config.status 4.4.0.99
lightgbm config.status 4.5.0
configured by $0, generated by GNU Autoconf 2.71,
with options \\"\$ac_cs_config\\"

Expand Down
23 changes: 23 additions & 0 deletions R-package/cran-comments.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,28 @@
# CRAN Submission History

## v4.5.0 - Submission 1 - (TBD)

### CRAN response

TBD

### Maintainer Notes

This release was a response to a request from CRAN.
On July 4, 2024, CRAN notified us that the following compiler warnings raised by `gcc` 14 needed to be fixed by August 3, 2024.

```text
Result: WARN
Found the following significant warnings:
io/dense_bin.hpp:617:27: warning: template-id not allowed for constructor in C++20 [-Wtemplate-id-cdtor]
io/multi_val_dense_bin.hpp:346:26: warning: template-id not allowed for constructor in C++20 [-Wtemplate-id-cdtor]
io/multi_val_sparse_bin.hpp:433:36: warning: template-id not allowed for constructor in C++20 [-Wtemplate-id-cdtor]
io/sparse_bin.hpp:785:19: warning: template-id not allowed for constructor in C++20 [-Wtemplate-id-cdtor]
See ‘/data/gannet/ripley/R/packages/tests-devel/lightgbm.Rcheck/00install.out’ for details.
```

This release contains fixes for those issues.

## v4.4.0 - Submission 1 - (June 14, 2024)

### CRAN response
Expand Down
2 changes: 1 addition & 1 deletion R-package/pkgdown/_pkgdown.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ repo:
user: https://github.com/

development:
mode: unreleased
mode: released

authors:
Yu Shi:
Expand Down
2 changes: 1 addition & 1 deletion VERSION.txt
Original file line number Diff line number Diff line change
@@ -1 +1 @@
4.4.0.99
4.5.0
12 changes: 6 additions & 6 deletions docs/Parameters.rst
Original file line number Diff line number Diff line change
Expand Up @@ -149,7 +149,7 @@ Core Parameters

- ``goss``, Gradient-based One-Side Sampling

- *New in 4.0.0*
- *New in version 4.0.0*

- ``data`` :raw-html:`<a id="data" title="Permalink to this parameter" href="#data">&#x1F517;&#xFE0E;</a>`, default = ``""``, type = string, aliases: ``train``, ``train_data``, ``train_data_file``, ``data_filename``

Expand Down Expand Up @@ -414,7 +414,7 @@ Learning Control Parameters

- when early stopping is used (i.e. ``early_stopping_round > 0``), require the early stopping metric to improve by at least this delta to be considered an improvement

- *New in 4.4.0*
- *New in version 4.4.0*

- ``first_metric_only`` :raw-html:`<a id="first_metric_only" title="Permalink to this parameter" href="#first_metric_only">&#x1F517;&#xFE0E;</a>`, default = ``false``, type = bool

Expand Down Expand Up @@ -692,7 +692,7 @@ Learning Control Parameters

- **Note**: can be used only with ``device_type = cpu`` and ``device_type=cuda``

- *New in 4.0.0*
- *New in version 4.0.0*

- ``quant_train_renew_leaf`` :raw-html:`<a id="quant_train_renew_leaf" title="Permalink to this parameter" href="#quant_train_renew_leaf">&#x1F517;&#xFE0E;</a>`, default = ``false``, type = bool

Expand All @@ -702,15 +702,15 @@ Learning Control Parameters

- **Note**: can be used only with ``device_type = cpu`` and ``device_type=cuda``

- *New in 4.0.0*
- *New in version 4.0.0*

- ``stochastic_rounding`` :raw-html:`<a id="stochastic_rounding" title="Permalink to this parameter" href="#stochastic_rounding">&#x1F517;&#xFE0E;</a>`, default = ``true``, type = bool

- whether to use stochastic rounding in gradient quantization

- **Note**: can be used only with ``device_type = cpu`` and ``device_type=cuda``

- *New in 4.0.0*
- *New in version 4.0.0*

IO Parameters
-------------
Expand Down Expand Up @@ -930,7 +930,7 @@ Dataset Parameters

- **Note**: ``lightgbm-transform`` is not maintained by LightGBM's maintainers. Bug reports or feature requests should go to `issues page <https://github.com/microsoft/lightgbm-transform/issues>`__

- *New in 4.0.0*
- *New in version 4.0.0*

Predict Parameters
~~~~~~~~~~~~~~~~~~
Expand Down
12 changes: 6 additions & 6 deletions include/LightGBM/config.h
Original file line number Diff line number Diff line change
Expand Up @@ -181,7 +181,7 @@ struct Config {
// desc = ``bagging``, Randomly Bagging Sampling
// descl2 = **Note**: ``bagging`` is only effective when ``bagging_freq > 0`` and ``bagging_fraction < 1.0``
// desc = ``goss``, Gradient-based One-Side Sampling
// desc = *New in 4.0.0*
// desc = *New in version 4.0.0*
std::string data_sample_strategy = "bagging";

// alias = train, train_data, train_data_file, data_filename
Expand Down Expand Up @@ -396,7 +396,7 @@ struct Config {

// check = >=0.0
// desc = when early stopping is used (i.e. ``early_stopping_round > 0``), require the early stopping metric to improve by at least this delta to be considered an improvement
// desc = *New in 4.4.0*
// desc = *New in version 4.4.0*
double early_stopping_min_delta = 0.0;

// desc = LightGBM allows you to provide multiple evaluation metrics. Set this to ``true``, if you want to use only the first metric for early stopping
Expand Down Expand Up @@ -626,18 +626,18 @@ struct Config {
// desc = number of bins to quantization gradients and hessians
// desc = with more bins, the quantized training will be closer to full precision training
// desc = **Note**: can be used only with ``device_type = cpu`` and ``device_type=cuda``
// desc = *New in 4.0.0*
// desc = *New in version 4.0.0*
int num_grad_quant_bins = 4;

// desc = whether to renew the leaf values with original gradients when quantized training
// desc = renewing is very helpful for good quantized training accuracy for ranking objectives
// desc = **Note**: can be used only with ``device_type = cpu`` and ``device_type=cuda``
// desc = *New in 4.0.0*
// desc = *New in version 4.0.0*
bool quant_train_renew_leaf = false;

// desc = whether to use stochastic rounding in gradient quantization
// desc = **Note**: can be used only with ``device_type = cpu`` and ``device_type=cuda``
// desc = *New in 4.0.0*
// desc = *New in version 4.0.0*
bool stochastic_rounding = true;

#ifndef __NVCC__
Expand Down Expand Up @@ -801,7 +801,7 @@ struct Config {
// desc = path to a ``.json`` file that specifies customized parser initialized configuration
// desc = see `lightgbm-transform <https://github.com/microsoft/lightgbm-transform>`__ for usage examples
// desc = **Note**: ``lightgbm-transform`` is not maintained by LightGBM's maintainers. Bug reports or feature requests should go to `issues page <https://github.com/microsoft/lightgbm-transform/issues>`__
// desc = *New in 4.0.0*
// desc = *New in version 4.0.0*
std::string parser_config_file = "";

#ifndef __NVCC__
Expand Down
5 changes: 4 additions & 1 deletion python-package/lightgbm/sklearn.py
Original file line number Diff line number Diff line change
Expand Up @@ -1156,7 +1156,10 @@ def feature_name_(self) -> List[str]:

@property
def feature_names_in_(self) -> np.ndarray:
""":obj:`array` of shape = [n_features]: scikit-learn compatible version of ``.feature_name_``."""
""":obj:`array` of shape = [n_features]: scikit-learn compatible version of ``.feature_name_``.

.. versionadded:: 4.5.0
"""
if not self.__sklearn_is_fitted__():
raise LGBMNotFittedError("No feature_names_in_ found. Need to call fit beforehand.")
return np.array(self.feature_name_)
Expand Down
2 changes: 1 addition & 1 deletion python-package/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ maintainers = [
name = "lightgbm"
readme = "README.rst"
requires-python = ">=3.7"
version = "4.4.0.99"
version = "4.4.0"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess it was a typo.

Suggested change
version = "4.4.0"
version = "4.5.0"

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ah!! yes, thank you. Maybe in the future we should have a script that automates these changes, like my colleagues do in the RAPIDS repos: https://github.com/rapidsai/cuml/blob/branch-24.08/ci/release/update-version.sh

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great idea!

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very sorry for resolving this without answering you @borchero , that was unintentional.

I'm -1 on using tools like setuptools-scm or versioneer here. In my experience, they introduce much more complexity than they reduce, at least for projects like LightGBM with a linear sequence of releases (no long-term-support branches, backporting, etc.).

For example, they can be the source of hard-to-debug differences between local and CI builds, unless you're diligent about running git fetch upstream --tags or similar regularly.

You might find some of the other discussion in https://discuss.python.org/t/please-make-package-version-go-away/58501 interesting (although I don't agree with the original post... I believe we should continue to support lightgbm.__version__).


[project.optional-dependencies]
arrow = [
Expand Down
Loading