diff --git a/.gitignore b/.gitignore index 199c2bd85d9978..3b22065f89fa8e 100644 --- a/.gitignore +++ b/.gitignore @@ -106,3 +106,5 @@ sklearn/neighbors/_kd_tree.pyx # Default JupyterLite content jupyterlite_contents + +.pybuild diff --git a/debian/.gitignore b/debian/.gitignore new file mode 100644 index 00000000000000..ee8e7abe871311 --- /dev/null +++ b/debian/.gitignore @@ -0,0 +1,7 @@ +*.substvars +*debhelper* +.debhelper +files +python3-sklearn +python3-sklearn-lib +tmp diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 00000000000000..d549808d10658b --- /dev/null +++ b/debian/changelog @@ -0,0 +1,5 @@ +python-scikit-learn (100:1.4.1.post1-1) UNRELEASED; urgency=medium + + * https://github.com/scikit-learn/scikit-learn/releases/tag/1.4.1.post1 + + -- Wong Hoi Sing Edison Tue, 27 Feb 2024 11:57:35 +0800 diff --git a/debian/control b/debian/control new file mode 100644 index 00000000000000..885e284906a081 --- /dev/null +++ b/debian/control @@ -0,0 +1,49 @@ +Source: python-scikit-learn +Section: python +Priority: optional +Standards-Version: 4.5.0 +Maintainer: Wong Hoi Sing Edison +Homepage: https://github.com/scikit-learn/scikit-learn/tags +Vcs-Browser: https://github.com/alvistack/scikit-learn-scikit-learn +Vcs-Git: https://github.com/alvistack/scikit-learn-scikit-learn.git +Build-Depends: + debhelper, + debhelper-compat (= 10), + dh-python, + cython3, + fdupes, + python3-dev, + python3-joblib (>= 1.2.0), + python3-numpy (>= 1.19.5), + python3-scipy (>= 1.6.0), + python3-setuptools, + python3-threadpoolctl (>= 2.0.0), + +Package: python3-sklearn +Architecture: amd64 +Description: Python module for machine learning + Scikit-learn is an open source machine learning library that supports + supervised and unsupervised learning. It also provides various tools for + model fitting, data preprocessing, model selection, model evaluation, + and many other utilities. +Depends: + ${misc:Depends}, + ${shlibs:Depends}, + ${python3:Depends}, + python3, + python3-joblib (>= 1.2.0), + python3-numpy (>= 1.19.5), + python3-scipy (>= 1.6.0), + python3-sklearn-lib(>= ${source:Version}), + python3-threadpoolctl (>= 2.0.0), + +Package: python3-sklearn-lib +Architecture: amd64 +Description: low-level implementations and bindings for scikit-learn - Python 3 + This package contains the Python 3 version. +Depends: + ${misc:Depends}, + ${shlibs:Depends}, + ${python3:Depends}, + python3, + python3-numpy (>= 1.19.5), diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 00000000000000..12900b4193ce86 --- /dev/null +++ b/debian/copyright @@ -0,0 +1,21 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ + +Files: debian/* +Copyright: 2024 Wong Hoi Sing Edison +License: Apache-2.0 + +License: Apache-2.0 + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + . + http://www.apache.org/licenses/LICENSE-2.0 + . + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + . + The complete text of the Apache version 2.0 license + can be found in "/usr/share/common-licenses/Apache-2.0". diff --git a/debian/python3-sklearn-lib.install b/debian/python3-sklearn-lib.install new file mode 100644 index 00000000000000..c9debf16b9f969 --- /dev/null +++ b/debian/python3-sklearn-lib.install @@ -0,0 +1,3 @@ +usr/lib/python*/*-packages/*/*.so +usr/lib/python*/*-packages/*/*/*.so +usr/lib/python*/*-packages/*/*/*/*.so diff --git a/debian/python3-sklearn-lib.lintian-overrides b/debian/python3-sklearn-lib.lintian-overrides new file mode 100644 index 00000000000000..99e724e55c689f --- /dev/null +++ b/debian/python3-sklearn-lib.lintian-overrides @@ -0,0 +1,3 @@ +python3-sklearn-lib: copyright-without-copyright-notice +python3-sklearn-lib: initial-upload-closes-no-bugs +python3-sklearn-lib: zero-byte-file-in-doc-directory diff --git a/debian/python3-sklearn.install b/debian/python3-sklearn.install new file mode 100644 index 00000000000000..e3da3e75536a95 --- /dev/null +++ b/debian/python3-sklearn.install @@ -0,0 +1 @@ +usr/lib/python*/*-packages/* diff --git a/debian/python3-sklearn.lintian-overrides b/debian/python3-sklearn.lintian-overrides new file mode 100644 index 00000000000000..c834e2e1ed4bf0 --- /dev/null +++ b/debian/python3-sklearn.lintian-overrides @@ -0,0 +1,4 @@ +python3-sklearn: copyright-without-copyright-notice +python3-sklearn: initial-upload-closes-no-bugs +python3-sklearn: no-manual-page +python3-sklearn: zero-byte-file-in-doc-directory diff --git a/debian/rules b/debian/rules new file mode 100755 index 00000000000000..6890f37b030832 --- /dev/null +++ b/debian/rules @@ -0,0 +1,19 @@ +#!/usr/bin/make -f + +SHELL := /bin/bash + +override_dh_auto_install: + dh_auto_install --destdir=debian/tmp + find debian/tmp/usr/lib/python*/*-packages -type f -name '*.pyc' -exec rm -rf {} \; + fdupes -qnrps debian/tmp/usr/lib/python*/*-packages + +override_dh_install: + dh_install + find debian/python3-sklearn/usr/lib/python*/*-packages -type f -name '*.so' -exec rm -rf {} \; + +override_dh_auto_test: + +override_dh_auto_clean: + +%: + dh $@ --buildsystem=pybuild --with python3 diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 00000000000000..163aaf8d82b6c5 --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/debian/source/lintian-overrides b/debian/source/lintian-overrides new file mode 100644 index 00000000000000..931bef66ddae4c --- /dev/null +++ b/debian/source/lintian-overrides @@ -0,0 +1,5 @@ +python-scikit-learn source: file-without-copyright-information +python-scikit-learn source: no-debian-changes +python-scikit-learn source: source-contains-prebuilt-windows-binary +python-scikit-learn source: source-is-missing +python-scikit-learn source: source-package-encodes-python-version diff --git a/python-scikit-learn.spec b/python-scikit-learn.spec new file mode 100644 index 00000000000000..ef22a7672ac22c --- /dev/null +++ b/python-scikit-learn.spec @@ -0,0 +1,107 @@ +# Copyright 2024 Wong Hoi Sing Edison +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +%global debug_package %{nil} + +%global source_date_epoch_from_changelog 0 + +%global _lto_cflags %{?_lto_cflags} -ffat-lto-objects + +Name: python-scikit-learn +Epoch: 100 +Version: 1.4.1.post1 +Release: 1%{?dist} +Summary: Python module for machine learning +License: BSD-3-Clause +URL: https://github.com/scikit-learn/scikit-learn/tags +Source0: %{name}_%{version}.orig.tar.gz +BuildRequires: fdupes +BuildRequires: gcc +BuildRequires: gcc-c++ +BuildRequires: python-rpm-macros +BuildRequires: python3-Cython3 +BuildRequires: python3-devel +BuildRequires: python3-joblib >= 1.2.0 +BuildRequires: python3-numpy >= 1.19.5 +BuildRequires: python3-numpy-f2py >= 1.19.5 +BuildRequires: python3-scipy >= 1.6.0 +BuildRequires: python3-setuptools +BuildRequires: python3-threadpoolctl >= 2.0.0 + +%description +Scikit-learn is an open source machine learning library that supports +supervised and unsupervised learning. It also provides various tools for +model fitting, data preprocessing, model selection, model evaluation, +and many other utilities. + +%prep +%autosetup -T -c -n %{name}_%{version}-%{release} +tar -zx -f %{S:0} --strip-components=1 -C . + +%build +export CFLAGS="%{optflags} -fno-strict-aliasing -Wno-error=incompatible-pointer-types" +%py3_build + +%install +%py3_install +find %{buildroot}%{python3_sitearch} -type f -name '*.pyc' -exec rm -rf {} \; +fdupes -qnrps %{buildroot}%{python3_sitearch} + +%check + +%if 0%{?suse_version} > 1500 +%package -n python%{python3_version_nodots}-scikit-learn +Summary: Python module for machine learning +Requires: python3 +Provides: python3-scikit-learn = %{epoch}:%{version}-%{release} +Provides: python3dist(scikit-learn) = %{epoch}:%{version}-%{release} +Provides: python%{python3_version}-scikit-learn = %{epoch}:%{version}-%{release} +Provides: python%{python3_version}dist(scikit-learn) = %{epoch}:%{version}-%{release} +Provides: python%{python3_version_nodots}-scikit-learn = %{epoch}:%{version}-%{release} +Provides: python%{python3_version_nodots}dist(scikit-learn) = %{epoch}:%{version}-%{release} + +%description -n python%{python3_version_nodots}-scikit-learn +Scikit-learn is an open source machine learning library that supports +supervised and unsupervised learning. It also provides various tools for +model fitting, data preprocessing, model selection, model evaluation, +and many other utilities. + +%files -n python%{python3_version_nodots}-scikit-learn +%license COPYING +%{python3_sitearch}/* +%endif + +%if !(0%{?suse_version} > 1500) +%package -n python3-scikit-learn +Summary: Python module for machine learning +Requires: python3 +Provides: python3-scikit-learn = %{epoch}:%{version}-%{release} +Provides: python3dist(scikit-learn) = %{epoch}:%{version}-%{release} +Provides: python%{python3_version}-scikit-learn = %{epoch}:%{version}-%{release} +Provides: python%{python3_version}dist(scikit-learn) = %{epoch}:%{version}-%{release} +Provides: python%{python3_version_nodots}-scikit-learn = %{epoch}:%{version}-%{release} +Provides: python%{python3_version_nodots}dist(scikit-learn) = %{epoch}:%{version}-%{release} + +%description -n python3-scikit-learn +Scikit-learn is an open source machine learning library that supports +supervised and unsupervised learning. It also provides various tools for +model fitting, data preprocessing, model selection, model evaluation, +and many other utilities. + +%files -n python3-scikit-learn +%license COPYING +%{python3_sitearch}/* +%endif + +%changelog