Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-scikit-learn for
openSUSE:Factory checked in at 2024-06-12 15:37:20
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-scikit-learn (Old)
and /work/SRC/openSUSE:Factory/.python-scikit-learn.new.19518 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-scikit-learn"
Wed Jun 12 15:37:20 2024 rev:31 rq:1180116 version:1.5.0
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-scikit-learn/python-scikit-learn.changes
2024-05-07 18:02:16.196033305 +0200
+++
/work/SRC/openSUSE:Factory/.python-scikit-learn.new.19518/python-scikit-learn.changes
2024-06-12 15:37:52.197132122 +0200
@@ -1,0 +2,44 @@
+Tue Jun 11 12:12:02 UTC 2024 - Daniel Garcia <[email protected]>
+
+- Update to 1.5.0 (bsc#1226185, CVE-2024-5206):
+ ## Security
+ * Fix feature_extraction.text.CountVectorizer and
+ feature_extraction.text.TfidfVectorizer no longer store discarded
+ tokens from the training set in their stop_words_ attribute. This
+ attribute would hold too frequent (above max_df) but also too rare
+ tokens (below min_df). This fixes a potential security issue (data
+ leak) if the discarded rare tokens hold sensitive information from
+ the training set without the model developerâs knowledge.
+ ## Changed models
+ * Efficiency The subsampling in preprocessing.QuantileTransformer is
+ now more efficient for dense arrays but the fitted quantiles and
+ the results of transform may be slightly different than before
+ (keeping the same statistical properties). #27344 by Xuefeng Xu.
+ * Enhancement decomposition.PCA, decomposition.SparsePCA and
+ decomposition.TruncatedSVD now set the sign of the components_
+ attribute based on the component values instead of using the
+ transformed data as reference. This change is needed to be able to
+ offer consistent component signs across all PCA solvers, including
+ the new svd_solver="covariance_eigh" option introduced in this
+ release.
+ ## Changes impacting many modules
+ * Fix Raise ValueError with an informative error message when
+ passing 1D sparse arrays to methods that expect 2D sparse inputs.
+ #28988 by Olivier Grisel.
+ * API Change The name of the input of the inverse_transform method
+ of estimators has been standardized to X. As a consequence, Xt is
+ deprecated and will be removed in version 1.7 in the following
+ estimators: cluster.FeatureAgglomeration,
+ decomposition.MiniBatchNMF, decomposition.NMF,
+ model_selection.GridSearchCV, model_selection.RandomizedSearchCV,
+ pipeline.Pipeline and preprocessing.KBinsDiscretizer. #28756 by
+ Will Dean.
+ ## Support for Array API
+ * sklearn.metrics.r2_score now supports Array API compliant inputs.
+ #27904 by Eric Lindgren, Franck Charras, Olivier Grisel and Tim
+ Head.
+ * linear_model.Ridge now supports the Array API for the svd solver.
+ See Array API support (experimental) for more details. #27800 by
+ Franck Charras, Olivier Grisel and Tim Head.
+
+-------------------------------------------------------------------
Old:
----
scikit-learn-1.4.2.tar.gz
New:
----
scikit_learn-1.5.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-scikit-learn.spec ++++++
--- /var/tmp/diff_new_pack.IfTtjc/_old 2024-06-12 15:37:54.749225573 +0200
+++ /var/tmp/diff_new_pack.IfTtjc/_new 2024-06-12 15:37:54.753225719 +0200
@@ -45,15 +45,16 @@
%bcond_with pytestcolor
Name: python-scikit-learn%{psuffix}
-Version: 1.4.2
+Version: 1.5.0
Release: 0
Summary: Python modules for machine learning and data mining
License: BSD-3-Clause
URL: https://scikit-learn.org/
-Source0:
https://files.pythonhosted.org/packages/source/s/scikit-learn/scikit-learn-%{version}.tar.gz
-BuildRequires: %{python_module Cython >= 3.0.8}
+Source0:
https://files.pythonhosted.org/packages/source/s/scikit-learn/scikit_learn-%{version}.tar.gz
+BuildRequires: %{python_module Cython >= 3.0.10}
BuildRequires: %{python_module devel >= 3.8}
BuildRequires: %{python_module joblib >= 1.2.0}
+BuildRequires: %{python_module meson-python}
BuildRequires: %{python_module numpy-devel >= 1.19.5}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module scipy >= 1.6.0}
@@ -61,8 +62,14 @@
BuildRequires: %{python_module threadpoolctl >= 2.0.0}
BuildRequires: %{python_module wheel}
BuildRequires: fdupes
+# Default gcc in leap is gcc 7
+%if 0%{?suse_version} == 1500 && 0%{?sle_version} <= 150600
+BuildRequires: gcc8-c++
+BuildRequires: gcc8-fortran
+%else
BuildRequires: gcc-c++
BuildRequires: gcc-fortran
+%endif
BuildRequires: openblas-devel
BuildRequires: python-rpm-macros
# Check sklearn/_min_dependencies.py for dependencies
@@ -97,14 +104,20 @@
scipy.
%prep
-%autosetup -p1 -n scikit-learn-%{version}
+%autosetup -p1 -n scikit_learn-%{version}
rm -rf sklearn/.pytest_cache
%if !%{with pytestcolor}
sed -i '/--color=yes/d' setup.cfg
%endif
+# Fix shebang for version, this is used during pyproject_wheel
+sed -i 's|python|python3|' sklearn/_build_utils/version.py
+
%build
%if !%{with test}
+%if 0%{?suse_version} == 1500 && 0%{?sle_version} <= 150600
+export CC=gcc-8 CXX=g++-8
+%endif
export CFLAGS="%{optflags}"
%pyproject_wheel
%endif
@@ -112,9 +125,27 @@
%install
%if !%{with test}
%pyproject_install
+
+%{python_expand #
+# Remove shebang from non executable
+sed -i '/#!.*env python/d'
%{buildroot}%{$python_sitearch}/sklearn/_build_utils/version.py
+# Remove empty file
+rm %{buildroot}%{$python_sitearch}/sklearn/_built_with_meson.py
+# Fix file permissions
+chmod 0644 %{buildroot}%{$python_sitearch}/sklearn/cluster/_optics.py
+chmod 0644
%{buildroot}%{$python_sitearch}/sklearn/ensemble/tests/test_weight_boosting.py
+}
+%python_compileall
+
%python_expand %fdupes %{buildroot}%{$python_sitearch}
%endif
+# Remove devel files
+%{python_expand #
+rm -rf %{buildroot}%{$python_sitearch}/sklearn/svm/src
+rm -rf %{buildroot}%{$python_sitearch}/sklearn/utils/src
+}
+
%if %{with test}
%check
mkdir test_dir
@@ -127,6 +158,7 @@
NO_TESTS+=" or test_convergence_dtype_consistency"
NO_TESTS+=" or test_imputation_missing_value_in_test_array"
NO_TESTS+=" or test_graphviz_toy"
+NO_TESTS+=" or test_forest_classifier_oob"
%endif
%pytest_arch -v --pyargs sklearn -n auto -k "not ($NO_TESTS)"
popd