Subject: [bug#67051] [PATCH] gnu: Add python-scikit-learn-extra

From: Timothee Mathieu <[email-masked]>
Date: Fri, 10 Nov 2023 18:27:43 +0100 (CET)

>From 59c388e64c12e39f7fb91ca538be332a130a3872 Mon Sep 17 00:00:00 2001 
Message-ID: <59c388e6[email-masked]> 
From: Timothee Mathieu <[email-masked]> 
Date: Fri, 10 Nov 2023 17:54:05 +0100 
Subject: [PATCH] gnu: Add python-scikit-learn-extra. 

* gnu/packages/machine-learning.scm (python-scikit-learn-extra): New variable. 

Change-Id: I50992ceaa76608f3345df6d74a5d9e4aa7c485a5 
--- 
gnu/packages/machine-learning.scm | 41 +++++++++++++++++++++++++++++++ 
1 file changed, 41 insertions(+) 

diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm 
index a84377e1eb..1d0b796c68 100644 
--- a/gnu/packages/machine-learning.scm 
+++ b/gnu/packages/machine-learning.scm 
@@ -1532,6 +1532,47 @@ (define-public python-scikit-learn 
data analysis.") 
(license license:bsd-3))) 

+(define-public python-scikit-learn-extra 
+(package 
+ (name "python-scikit-learn-extra") 
+ (version "0.3.0") 
+(source 
+ (origin 
+ (method git-fetch) 
+ (uri (git-reference 
+ (url "https://github.com/scikit-learn-contrib/scikit-learn-extra") 
+ (commit "v0.3.0"))) 
+ (file-name (git-file-name name version)) 
+ (sha256 (base32 "0yy6ka94ss88f3r7b6mpjf1l8lnv7aabhsg844pigfj8lfiv0wvl")))) 
+ (build-system pyproject-build-system) 
+ (arguments 
+ `(#:phases 
+ (modify-phases %standard-phases 
+ (add-after 'build 'build-ext 
+ (lambda _ (invoke "python" "setup.py" "build_ext" "--inplace"))) 
+ (replace 'check 
+ (lambda* (#:key tests? #:allow-other-keys) 
+ (when tests? 
+ ;; Restrict OpenBLAS threads to prevent segfaults while testing! 
+ (setenv "OPENBLAS_NUM_THREADS" "1") 
+ 
+ ;; Some tests require write access to $HOME. 
+ (setenv "HOME" "/tmp") 
+ 
+ ;; Step out of the source directory to avoid interference; 
+ ;; we want to run the installed code with extensions etc. 
+ (with-directory-excursion "/tmp" 
+ (invoke "pytest" "-vv" "--pyargs" "sklearn_extra" 
+ ;; ignore tests that require network 
+ "-k" "not test_build")))))))) 
+ (propagated-inputs (list python-numpy python-scikit-learn python-scipy)) 
+ (native-inputs (list python-pytest python-pytest-cov python-cython)) 
+ (home-page "https://github.com/scikit-learn-contrib/scikit-learn-extra") 
+ (synopsis "Set of tools for scikit-learn") 
+ (description "This package provides a set of tools for scikit-learn.") 
+ (license license:bsd-3)) 
+) 
+ 
(define-public python-thinc 
(package 
(name "python-thinc") 

base-commit: bb3ab24a296ffa5273b2e82a02ed057e90c095f3 
-- 
2.42.1