* [bug#47976] [PATCH 00/10] Add Orange @ 2021-04-23 17:25 Vinicius Monego 2021-04-23 17:28 ` [bug#47976] [PATCH 01/10] gnu: Add python-anyqt Vinicius Monego ` (2 more replies) 0 siblings, 3 replies; 29+ messages in thread From: Vinicius Monego @ 2021-04-23 17:25 UTC (permalink / raw) To: 47976; +Cc: Vinicius Monego This patchset adds the Orange data mining / data visualization / machine learning toolkit. I had to disable tests for the orange widget base because unittest failed to load a file. But all tests for orange itself are passing. Vinicius Monego (10): gnu: Add python-anyqt. gnu: Add python-pyqtgraph. gnu: Add python-qasync. gnu: Add python-orange-canvas-core. gnu: Add python-orange-widget-base. gnu: Add python-serverfiles. gnu: Add python-python-louvain. gnu: python-pynndescent: Update to 0.5.2. gnu: python-opentsne: Update to 0.5.2. gnu: Add orange. gnu/local.mk | 1 + gnu/packages/graph.scm | 22 ++++ gnu/packages/machine-learning.scm | 8 +- gnu/packages/orange.scm | 211 ++++++++++++++++++++++++++++++ gnu/packages/python-xyz.scm | 113 ++++++++++++++++ 5 files changed, 351 insertions(+), 4 deletions(-) create mode 100644 gnu/packages/orange.scm -- 2.31.1 ^ permalink raw reply [flat|nested] 29+ messages in thread
* [bug#47976] [PATCH 01/10] gnu: Add python-anyqt. 2021-04-23 17:25 [bug#47976] [PATCH 00/10] Add Orange Vinicius Monego @ 2021-04-23 17:28 ` Vinicius Monego 2021-04-23 17:28 ` [bug#47976] [PATCH 02/10] gnu: Add python-pyqtgraph Vinicius Monego ` (8 more replies) 2021-04-23 19:29 ` [bug#47976] [PATCH 00/10] Add Orange Leo Famulari 2021-04-25 3:25 ` [bug#47976] [PATCH v2 01/10] gnu: Add python-anyqt Vinicius Monego 2 siblings, 9 replies; 29+ messages in thread From: Vinicius Monego @ 2021-04-23 17:28 UTC (permalink / raw) To: 47976; +Cc: Vinicius Monego * gnu/packages/python-xyz.scm (python-anyqt): New variable. --- gnu/packages/python-xyz.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index c01993ecd7..7366dd190c 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -12395,6 +12395,32 @@ ISO 8859, etc.).") (define-public python2-translitcodec (package-with-python2 python-translitcodec)) +(define-public python-anyqt + (package + (name "python-anyqt") + (version "0.0.11") + (source + (origin + (method url-fetch) + (uri (pypi-uri "AnyQt" version)) + (sha256 + (base32 "0gl2czirzjvhbq963i2awxp8kwbc1grh67lpcwfipyn9w3kdwdj4")))) + (build-system python-build-system) + (arguments + `(#:tests? #f ;there are no tests + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'delete-files + ;; Delete files related to other operating systems. + (lambda _ + (delete-file "AnyQt/QtMacExtras.py") + (delete-file "AnyQt/QtWinExtras.py") + #t))))) + (home-page "https://github.com/ales-erjavec/anyqt") + (synopsis "PyQt4/PyQt5 compatibility layer") + (description "AnyQt is a PyQt4/PyQt5 compatibility layer.") + (license license:gpl3))) + (define-public python-editor (package (name "python-editor") -- 2.31.1 ^ permalink raw reply related [flat|nested] 29+ messages in thread
* [bug#47976] [PATCH 02/10] gnu: Add python-pyqtgraph. 2021-04-23 17:28 ` [bug#47976] [PATCH 01/10] gnu: Add python-anyqt Vinicius Monego @ 2021-04-23 17:28 ` Vinicius Monego 2021-04-23 17:28 ` [bug#47976] [PATCH 03/10] gnu: Add python-qasync Vinicius Monego ` (7 subsequent siblings) 8 siblings, 0 replies; 29+ messages in thread From: Vinicius Monego @ 2021-04-23 17:28 UTC (permalink / raw) To: 47976; +Cc: Vinicius Monego * gnu/packages/python-xyz.scm (python-pyqtgraph): New variable. --- The homepage does not support https. gnu/packages/python-xyz.scm | 52 +++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 7366dd190c..e3e55c010a 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -12421,6 +12421,58 @@ ISO 8859, etc.).") (description "AnyQt is a PyQt4/PyQt5 compatibility layer.") (license license:gpl3))) +(define-public python-pyqtgraph + (package + (name "python-pyqtgraph") + (version "0.12.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pyqtgraph" version)) + (sha256 + (base32 "0kc7ncv0lr3spni29i9g8nszyr4xinswqi2zzs6v8kqqi593pvyj")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'check 'set-home-and-qpa + (lambda _ + (setenv "HOME" "/tmp") + (setenv "QT_QPA_PLATFORM" "offscreen") + #t)) + (replace 'check + (lambda* (#:key inputs outputs #:allow-other-keys) + (add-installed-pythonpath inputs outputs) + (invoke "pytest" "-vv" "-k" + ;; These tests try to download online data. + (string-append "not test_PolyLineROI" + " and not test_getArrayRegion_axisorder" + " and not test_getArrayRegion" + " and not test_PlotCurveItem" + " and not test_NonUniformImage_colormap" + " and not test_NonUniformImage_lut" + " and not test_ImageItem_axisorder" + " and not test_ImageItem"))))))) + (native-inputs + `(("python-pytest" ,python-pytest) + ("python-pytest-cov" ,python-pytest-cov) + ("python-pytest-xdist" ,python-pytest-xdist))) + (inputs + `(("qtbase" ,qtbase))) + (propagated-inputs + `(("python-h5py" ,python-h5py) + ("python-numpy" ,python-numpy) + ("python-pyopengl" ,python-pyopengl) + ("python-scipy" ,python-scipy) + ("python-pyqt" ,python-pyqt))) + (home-page "http://www.pyqtgraph.org") + (synopsis "Scientific Graphics and GUI Library for Python") + (description + "PyQtGraph is a Pure-python graphics library for PyQt5, PyQt6, PySide2 +and PySide6. It is intended for use in mathematics, scientific or engineering +applications.") + (license license:expat))) + (define-public python-editor (package (name "python-editor") -- 2.31.1 ^ permalink raw reply related [flat|nested] 29+ messages in thread
* [bug#47976] [PATCH 03/10] gnu: Add python-qasync. 2021-04-23 17:28 ` [bug#47976] [PATCH 01/10] gnu: Add python-anyqt Vinicius Monego 2021-04-23 17:28 ` [bug#47976] [PATCH 02/10] gnu: Add python-pyqtgraph Vinicius Monego @ 2021-04-23 17:28 ` Vinicius Monego 2021-04-23 17:28 ` [bug#47976] [PATCH 04/10] gnu: Add python-orange-canvas-core Vinicius Monego ` (6 subsequent siblings) 8 siblings, 0 replies; 29+ messages in thread From: Vinicius Monego @ 2021-04-23 17:28 UTC (permalink / raw) To: 47976; +Cc: Vinicius Monego * gnu/packages/python-xyz.scm (python-qasync): New variable. --- gnu/packages/python-xyz.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index e3e55c010a..66f9a98091 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -12473,6 +12473,41 @@ and PySide6. It is intended for use in mathematics, scientific or engineering applications.") (license license:expat))) +(define-public python-qasync + (package + (name "python-qasync") + (version "0.15.0") + (source + (origin + ;; There are no tests in the PyPI tarball. + (method git-fetch) + (uri (git-reference + (url "https://github.com/CabbageDevelopment/qasync/") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0va9h6v102d7mxz608banjc0l0v02dq3ywhr5i4nqaxx3qkazc2l")))) + (build-system python-build-system) + (arguments + `(#:test-target "pytest" + #:phases + (modify-phases %standard-phases + (add-before 'check 'set-qpa + (lambda _ + (setenv "QT_QPA_PLATFORM" "offscreen") + #t))))) + (native-inputs + `(("python-pytest" ,python-pytest) + ("python-pytest-runner" ,python-pytest-runner))) + (propagated-inputs + `(("python-pyqt" ,python-pyqt))) + (home-page "https://github.com/CabbageDevelopment/qasync") + (synopsis "Implementation of the PEP 3156 Event-Loop with Qt") + (description + "@code{qasync} allows coroutines to be used in PyQt/PySide applications +by providing an implementation of the PEP 3156 event-loop.") + (license license:bsd-3))) + (define-public python-editor (package (name "python-editor") -- 2.31.1 ^ permalink raw reply related [flat|nested] 29+ messages in thread
* [bug#47976] [PATCH 04/10] gnu: Add python-orange-canvas-core. 2021-04-23 17:28 ` [bug#47976] [PATCH 01/10] gnu: Add python-anyqt Vinicius Monego 2021-04-23 17:28 ` [bug#47976] [PATCH 02/10] gnu: Add python-pyqtgraph Vinicius Monego 2021-04-23 17:28 ` [bug#47976] [PATCH 03/10] gnu: Add python-qasync Vinicius Monego @ 2021-04-23 17:28 ` Vinicius Monego 2021-04-23 17:28 ` [bug#47976] [PATCH 05/10] gnu: Add python-orange-widget-base Vinicius Monego ` (5 subsequent siblings) 8 siblings, 0 replies; 29+ messages in thread From: Vinicius Monego @ 2021-04-23 17:28 UTC (permalink / raw) To: 47976; +Cc: Vinicius Monego * gnu/packages/orange.scm: New file. * gnu/packages/local.mk (GNU_SYSTEM_MODULES): Add it. --- gnu/local.mk | 1 + gnu/packages/orange.scm | 67 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 68 insertions(+) create mode 100644 gnu/packages/orange.scm diff --git a/gnu/local.mk b/gnu/local.mk index 50b11a8ca2..e8b6effb36 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -420,6 +420,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/openldap.scm \ %D%/packages/openpgp.scm \ %D%/packages/openstack.scm \ + %D%/packages/orange.scm \ %D%/packages/orpheus.scm \ %D%/packages/ots.scm \ %D%/packages/package-management.scm \ diff --git a/gnu/packages/orange.scm b/gnu/packages/orange.scm new file mode 100644 index 0000000000..9f30befde2 --- /dev/null +++ b/gnu/packages/orange.scm @@ -0,0 +1,67 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2021 Vinicius Monego <monego@posteo.net> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +(define-module (gnu packages orange) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system python) + #:use-module (gnu packages) + #:use-module (gnu packages python-web) + #:use-module (gnu packages python-xyz) + #:use-module (gnu packages qt)) + +(define-public python-orange-canvas-core + (package + (name "python-orange-canvas-core") + (version "0.1.19") + (source + (origin + (method url-fetch) + (uri (pypi-uri "orange-canvas-core" version)) + (sha256 + (base32 "03wav2msfm32y8zwq69v1v6qyh1ld76xla2z60avf49yhbwjgwal")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'check 'check-setup + (lambda _ + ;; This test fails with: RuntimeError: Event loop is closed. + (substitute* "orangecanvas/application/tests/test_mainwindow.py" + (("test_help_requests") "_test_help_requests")) + (setenv "HOME" "/tmp") + (setenv "QT_QPA_PLATFORM" "offscreen") + #t))))) + (propagated-inputs + `(("python-anyqt" ,python-anyqt) + ("python-cachecontrol" ,python-cachecontrol) + ("python-commonmark" ,python-commonmark) + ("python-dictdiffer" ,python-dictdiffer) + ("python-docutils" ,python-docutils) + ("python-pyqt" ,python-pyqt) + ("python-qasync" ,python-qasync) + ("python-requests" ,python-requests) + ("python-setuptools" ,python-setuptools))) + (home-page "https://github.com/biolab/orange-canvas-core") + (synopsis "Core component of Orange Canvas") + (description + "Orange Canvas Core is a framework for building graphical user interfaces +for editing workflows. It is a component used to build the Orange Canvas +data-mining application.") + (license license:gpl3+))) -- 2.31.1 ^ permalink raw reply related [flat|nested] 29+ messages in thread
* [bug#47976] [PATCH 05/10] gnu: Add python-orange-widget-base. 2021-04-23 17:28 ` [bug#47976] [PATCH 01/10] gnu: Add python-anyqt Vinicius Monego ` (2 preceding siblings ...) 2021-04-23 17:28 ` [bug#47976] [PATCH 04/10] gnu: Add python-orange-canvas-core Vinicius Monego @ 2021-04-23 17:28 ` Vinicius Monego 2021-04-23 19:20 ` Leo Famulari 2021-04-23 17:28 ` [bug#47976] [PATCH 06/10] gnu: Add python-serverfiles Vinicius Monego ` (4 subsequent siblings) 8 siblings, 1 reply; 29+ messages in thread From: Vinicius Monego @ 2021-04-23 17:28 UTC (permalink / raw) To: 47976; +Cc: Vinicius Monego * gnu/packages/orange.scm (python-orange-widget-base): New variable. --- gnu/packages/orange.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/orange.scm b/gnu/packages/orange.scm index 9f30befde2..1788163721 100644 --- a/gnu/packages/orange.scm +++ b/gnu/packages/orange.scm @@ -65,3 +65,38 @@ for editing workflows. It is a component used to build the Orange Canvas data-mining application.") (license license:gpl3+))) + +(define-public python-orange-widget-base + (package + (name "python-orange-widget-base") + (version "4.12.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "orange-widget-base" version)) + (sha256 + (base32 "13sy3s8rdqs3i3ghixljpqvnfz81qmbb0kqlasw39zvf39qc22kz")))) + (build-system python-build-system) + (arguments + `(;; unittest fails to load one test, all other tests are passing: + ;; AttributeError: module 'orangewidget' has no attribute 'version'. + #:tests? #f + #:phases + (modify-phases %standard-phases + (add-before 'check 'check-setup + (lambda _ + (setenv "HOME" "/tmp") + (setenv "QT_QPA_PLATFORM" "offscreen") + #t))))) + (propagated-inputs + `(("python-anyqt" ,python-anyqt) + ("python-matplotlib" ,python-matplotlib) + ("python-orange-canvas-core" + ,python-orange-canvas-core) + ("python-pyqtgraph" ,python-pyqtgraph))) + (home-page "https://github.com/biolab/orange-widget-base") + (synopsis "Base Widget for Orange Canvas") + (description + "Orange Widget Base provides a base widget component for a interactive +GUI based workflow. It is primarily used in the Orange framework.") + (license license:gpl3+))) -- 2.31.1 ^ permalink raw reply related [flat|nested] 29+ messages in thread
* [bug#47976] [PATCH 05/10] gnu: Add python-orange-widget-base. 2021-04-23 17:28 ` [bug#47976] [PATCH 05/10] gnu: Add python-orange-widget-base Vinicius Monego @ 2021-04-23 19:20 ` Leo Famulari 0 siblings, 0 replies; 29+ messages in thread From: Leo Famulari @ 2021-04-23 19:20 UTC (permalink / raw) To: Vinicius Monego; +Cc: 47976 On Fri, Apr 23, 2021 at 05:28:11PM +0000, Vinicius Monego wrote: > * gnu/packages/orange.scm (python-orange-widget-base): New variable. > + `(;; unittest fails to load one test, all other tests are passing: > + ;; AttributeError: module 'orangewidget' has no attribute 'version'. > + #:tests? #f Sometimes I see this similar errors caused by removal of the ".git" metadata repository. The build scripts try to use Git to check the version and fail. Anyways, it's not a big deal. ^ permalink raw reply [flat|nested] 29+ messages in thread
* [bug#47976] [PATCH 06/10] gnu: Add python-serverfiles. 2021-04-23 17:28 ` [bug#47976] [PATCH 01/10] gnu: Add python-anyqt Vinicius Monego ` (3 preceding siblings ...) 2021-04-23 17:28 ` [bug#47976] [PATCH 05/10] gnu: Add python-orange-widget-base Vinicius Monego @ 2021-04-23 17:28 ` Vinicius Monego 2021-04-23 17:28 ` [bug#47976] [PATCH 07/10] gnu: Add python-python-louvain Vinicius Monego ` (3 subsequent siblings) 8 siblings, 0 replies; 29+ messages in thread From: Vinicius Monego @ 2021-04-23 17:28 UTC (permalink / raw) To: 47976; +Cc: Vinicius Monego * gnu/packages/orange.scm (python-serverfiles): New variable. --- gnu/packages/orange.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/orange.scm b/gnu/packages/orange.scm index 1788163721..5713516e58 100644 --- a/gnu/packages/orange.scm +++ b/gnu/packages/orange.scm @@ -100,3 +100,24 @@ data-mining application.") "Orange Widget Base provides a base widget component for a interactive GUI based workflow. It is primarily used in the Orange framework.") (license license:gpl3+))) + +(define-public python-serverfiles + (package + (name "python-serverfiles") + (version "0.3.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "serverfiles" version)) + (sha256 + (base32 "1qgbzgnaxj4wsp2rdas53qxsh0j7xpibq25w6lviwyaqwwrgq42y")))) + (build-system python-build-system) + (propagated-inputs + `(("python-requests" ,python-requests))) + (home-page "https://github.com/biolab/serverfiles") + (synopsis "Utility to access files on a HTTP server and store them locally") + (description + "This package provides an utility that accesses files on a HTTP server +and stores them locally for reuse. It is primarily used by the Orange +framework.") + (license license:gpl3+))) -- 2.31.1 ^ permalink raw reply related [flat|nested] 29+ messages in thread
* [bug#47976] [PATCH 07/10] gnu: Add python-python-louvain. 2021-04-23 17:28 ` [bug#47976] [PATCH 01/10] gnu: Add python-anyqt Vinicius Monego ` (4 preceding siblings ...) 2021-04-23 17:28 ` [bug#47976] [PATCH 06/10] gnu: Add python-serverfiles Vinicius Monego @ 2021-04-23 17:28 ` Vinicius Monego 2021-04-23 17:28 ` [bug#47976] [PATCH 08/10] gnu: python-pynndescent: Update to 0.5.2 Vinicius Monego ` (2 subsequent siblings) 8 siblings, 0 replies; 29+ messages in thread From: Vinicius Monego @ 2021-04-23 17:28 UTC (permalink / raw) To: 47976; +Cc: Vinicius Monego * gnu/packages/graph.scm (python-python-louvain): New variable. --- gnu/packages/graph.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/graph.scm b/gnu/packages/graph.scm index d2e4c875a1..7b61c8f103 100644 --- a/gnu/packages/graph.scm +++ b/gnu/packages/graph.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2019 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2020 Alexander Krotov <krotov@iitp.ru> ;;; Copyright © 2020 Pierre Langlois <pierre.langlos@gmx.com> +;;; Copyright © 2021 Vinicius Monego <monego@posteo.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -228,6 +229,27 @@ subplots, multiple-axes, polar charts, and bubble charts. ") (define-public python2-plotly (package-with-python2 python-plotly-2.4.1)) +(define-public python-python-louvain + (package + (name "python-python-louvain") + (version "0.15") + (source + (origin + (method url-fetch) + (uri (pypi-uri "python-louvain" version)) + (sha256 + (base32 "1sqp97fwh4asx0jr72x8hil8z8fcg2xq92jklmh2m599pvgnx19a")))) + (build-system python-build-system) + (propagated-inputs + `(("python-networkx" ,python-networkx) + ("python-numpy" ,python-numpy))) + (home-page "https://github.com/taynaud/python-louvain") + (synopsis "Louvain algorithm for community detection") + (description + "This package provides a pure Python implementation of the Louvain +algorithm for community detection in large networks.") + (license license:bsd-3))) + (define-public python-louvain (package (name "python-louvain") -- 2.31.1 ^ permalink raw reply related [flat|nested] 29+ messages in thread
* [bug#47976] [PATCH 08/10] gnu: python-pynndescent: Update to 0.5.2. 2021-04-23 17:28 ` [bug#47976] [PATCH 01/10] gnu: Add python-anyqt Vinicius Monego ` (5 preceding siblings ...) 2021-04-23 17:28 ` [bug#47976] [PATCH 07/10] gnu: Add python-python-louvain Vinicius Monego @ 2021-04-23 17:28 ` Vinicius Monego 2021-04-23 17:28 ` [bug#47976] [PATCH 09/10] gnu: python-opentsne: " Vinicius Monego 2021-04-23 17:28 ` [bug#47976] [PATCH 10/10] gnu: Add orange Vinicius Monego 8 siblings, 0 replies; 29+ messages in thread From: Vinicius Monego @ 2021-04-23 17:28 UTC (permalink / raw) To: 47976; +Cc: Vinicius Monego * gnu/packages/machine-learning.scm (python-pynndescent): Update to 0.5.2. --- gnu/packages/machine-learning.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm index ddd600d0f0..fd4e55f30a 100644 --- a/gnu/packages/machine-learning.scm +++ b/gnu/packages/machine-learning.scm @@ -915,13 +915,13 @@ for scientific computing and data science (e.g. BLAS and OpenMP).") (define-public python-pynndescent (package (name "python-pynndescent") - (version "0.4.8") + (version "0.5.2") (source (origin (method url-fetch) (uri (pypi-uri "pynndescent" version)) (sha256 - (base32 "0li1fclif50v6xrq7wh3lif9vv5jpj7xhrb0z6g89wwjnp9b9833")))) + (base32 "0w87c2v0li2rdbx6qfc2lb6y6bxpdy3jwfgzfs1kcr4d1chj5zfr")))) (build-system python-build-system) (native-inputs `(("python-nose" ,python-nose))) -- 2.31.1 ^ permalink raw reply related [flat|nested] 29+ messages in thread
* [bug#47976] [PATCH 09/10] gnu: python-opentsne: Update to 0.5.2. 2021-04-23 17:28 ` [bug#47976] [PATCH 01/10] gnu: Add python-anyqt Vinicius Monego ` (6 preceding siblings ...) 2021-04-23 17:28 ` [bug#47976] [PATCH 08/10] gnu: python-pynndescent: Update to 0.5.2 Vinicius Monego @ 2021-04-23 17:28 ` Vinicius Monego 2021-04-23 17:28 ` [bug#47976] [PATCH 10/10] gnu: Add orange Vinicius Monego 8 siblings, 0 replies; 29+ messages in thread From: Vinicius Monego @ 2021-04-23 17:28 UTC (permalink / raw) To: 47976; +Cc: Vinicius Monego * gnu/packages/machine-learning.scm (python-opentsne): Update to 0.5.2. --- gnu/packages/machine-learning.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm index fd4e55f30a..837ebbba67 100644 --- a/gnu/packages/machine-learning.scm +++ b/gnu/packages/machine-learning.scm @@ -941,7 +941,7 @@ for k-neighbor-graph construction and approximate nearest neighbor search.") (define-public python-opentsne (package (name "python-opentsne") - (version "0.4.4") + (version "0.5.2") (source (origin ;; No tests in the PyPI tarball. @@ -951,7 +951,7 @@ for k-neighbor-graph construction and approximate nearest neighbor search.") (commit (string-append "v" version)))) (file-name (string-append name "-" version "-checkout")) (sha256 - (base32 "08wamsssmyf6511cbmglm67dp48i6xazs89m1cskdk219v90bc76")))) + (base32 "1hl42wmafydk4fxdx05l180k3canmqw8h9r20fsqq2aq440b09gh")))) (build-system python-build-system) (arguments `(#:phases -- 2.31.1 ^ permalink raw reply related [flat|nested] 29+ messages in thread
* [bug#47976] [PATCH 10/10] gnu: Add orange. 2021-04-23 17:28 ` [bug#47976] [PATCH 01/10] gnu: Add python-anyqt Vinicius Monego ` (7 preceding siblings ...) 2021-04-23 17:28 ` [bug#47976] [PATCH 09/10] gnu: python-opentsne: " Vinicius Monego @ 2021-04-23 17:28 ` Vinicius Monego 2021-04-23 19:25 ` Leo Famulari 8 siblings, 1 reply; 29+ messages in thread From: Vinicius Monego @ 2021-04-23 17:28 UTC (permalink / raw) To: 47976; +Cc: Vinicius Monego * gnu/packages/orange.scm (orange): New variable. --- gnu/packages/orange.scm | 88 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 88 insertions(+) diff --git a/gnu/packages/orange.scm b/gnu/packages/orange.scm index 5713516e58..f70bd83c47 100644 --- a/gnu/packages/orange.scm +++ b/gnu/packages/orange.scm @@ -22,6 +22,11 @@ #:use-module (guix download) #:use-module (guix build-system python) #:use-module (gnu packages) + #:use-module (gnu packages freedesktop) + #:use-module (gnu packages graph) + #:use-module (gnu packages machine-learning) + #:use-module (gnu packages python-crypto) + #:use-module (gnu packages python-science) #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) #:use-module (gnu packages qt)) @@ -101,6 +106,89 @@ data-mining application.") GUI based workflow. It is primarily used in the Orange framework.") (license license:gpl3+))) +(define-public orange + (package + (name "orange") + (version "3.28.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "Orange3" version)) + (sha256 + (base32 "1ac4xjjkx06z10hl7k0zh1z3qhkl5vng15l9jkpkmck9spinbzil")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'preparations + (lambda _ + ;; Delete test that opens an outgoing connection. + (delete-file "Orange/tests/test_url_reader.py") + ;; This is a binary file and it breaks runpath validation. + (delete-file "Orange/tests/datasets/binary-blob.tab") + ;; Skip the test which uses that binary file. + (substitute* "Orange/tests/test_txt_reader.py" + (("test_read_nonutf8_encoding") "_test_read_nonutf8_encoding")) + ;; Relax some dependency versions. + (substitute* "requirements-gui.txt" (("PyQtWebEngine>=5.12") "")) + (substitute* "requirements-core.txt" + (("httpx>=0.14.0,<0.17") "httpx")) + #t)) + (add-before 'check 'set-HOME + ;; Tests need a writable home. + (lambda _ (setenv "HOME" "/tmp") #t)) + (add-after 'install 'wrap-executable + ;; Ensure that icons are found at runtime. + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (wrap-program (string-append out "/bin/orange-canvas") + `("QT_PLUGIN_PATH" prefix + ,(list (string-append (assoc-ref inputs "qtsvg") + "/lib/qt5/plugins/"))))) + #t))))) + (native-inputs + `(("python-cython" ,python-cython))) + (inputs + `(("python-anyqt" ,python-anyqt) + ("python-baycomp" ,python-baycomp) + ("python-bottleneck" ,python-bottleneck) + ("python-chardet" ,python-chardet) + ("python-httpx" ,python-httpx) + ("python-joblib" ,python-joblib) + ("python-keyring" ,python-keyring) + ("python-keyrings.alt" ,python-keyrings.alt) + ("python-louvain" ,python-python-louvain) + ("python-matplotlib" ,python-matplotlib) + ("python-networkx" ,python-networkx) + ("python-numpy" ,python-numpy) + ("python-openpyxl" ,python-openpyxl) + ("python-opentsne" ,python-opentsne) + ("python-orange-canvas-core" + ,python-orange-canvas-core) + ("python-orange-widget-base" + ,python-orange-widget-base) + ("python-pandas" ,python-pandas) + ("python-pyqt" ,python-pyqt) + ("python-pyqtgraph" ,python-pyqtgraph) + ("python-pyqtwebengine" ,python-pyqtwebengine) + ("python-pyyaml" ,python-pyyaml) + ("python-requests" ,python-requests) + ("python-scikit-learn" ,python-scikit-learn) + ("python-scipy" ,python-scipy) + ("python-serverfiles" ,python-serverfiles) + ("python-xlrd" ,python-xlrd) + ("python-xlsxwriter" ,python-xlsxwriter) + ("qtbase" ,qtbase) + ("qtsvg" ,qtsvg) + ("xdg-utils" ,xdg-utils))) + (home-page "https://orangedatamining.com/") + (synopsis "Component-based data mining framework") + (description + "Orange is a graphical toolkit for machine learning, data analysis and +visualization based on the Qt framework. It is easy to use and enables rapid +experimenting with its tools.") + (license license:gpl3+))) + (define-public python-serverfiles (package (name "python-serverfiles") -- 2.31.1 ^ permalink raw reply related [flat|nested] 29+ messages in thread
* [bug#47976] [PATCH 10/10] gnu: Add orange. 2021-04-23 17:28 ` [bug#47976] [PATCH 10/10] gnu: Add orange Vinicius Monego @ 2021-04-23 19:25 ` Leo Famulari 2021-04-23 21:04 ` Vinicius Monego 0 siblings, 1 reply; 29+ messages in thread From: Leo Famulari @ 2021-04-23 19:25 UTC (permalink / raw) To: Vinicius Monego; +Cc: 47976 On Fri, Apr 23, 2021 at 05:28:16PM +0000, Vinicius Monego wrote: > * gnu/packages/orange.scm (orange): New variable. > + (add-after 'unpack 'preparations > + (lambda _ > + ;; Delete test that opens an outgoing connection. > + (delete-file "Orange/tests/test_url_reader.py") Okay. > + ;; This is a binary file and it breaks runpath validation. > + (delete-file "Orange/tests/datasets/binary-blob.tab") > + ;; Skip the test which uses that binary file. > + (substitute* "Orange/tests/test_txt_reader.py" > + (("test_read_nonutf8_encoding") "_test_read_nonutf8_encoding")) If 'binary-blob.tab' is software, we should remove it in an origin snippet. If it's just data, then it's fine to do it like this. > + ;; Relax some dependency versions. > + (substitute* "requirements-gui.txt" (("PyQtWebEngine>=5.12") "")) Isn't this unecessary? We have PyQtWebEngine 5.15.2. > + (substitute* "requirements-core.txt" > + (("httpx>=0.14.0,<0.17") "httpx")) And for this, we have 0.16.1. ^ permalink raw reply [flat|nested] 29+ messages in thread
* [bug#47976] [PATCH 10/10] gnu: Add orange. 2021-04-23 19:25 ` Leo Famulari @ 2021-04-23 21:04 ` Vinicius Monego 2021-04-23 21:15 ` Leo Famulari 0 siblings, 1 reply; 29+ messages in thread From: Vinicius Monego @ 2021-04-23 21:04 UTC (permalink / raw) To: Leo Famulari; +Cc: 47976 Leo Famulari writes: >> + ;; This is a binary file and it breaks runpath validation. >> + (delete-file "Orange/tests/datasets/binary-blob.tab") >> + ;; Skip the test which uses that binary file. >> + (substitute* "Orange/tests/test_txt_reader.py" >> + (("test_read_nonutf8_encoding") "_test_read_nonutf8_encoding")) > > If 'binary-blob.tab' is software, we should remove it in an origin > snippet. If it's just data, then it's fine to do it like this. > It is just data. >> + ;; Relax some dependency versions. >> + (substitute* "requirements-gui.txt" (("PyQtWebEngine>=5.12") "")) > > Isn't this unecessary? We have PyQtWebEngine 5.15.2. > There's something with pyqtwebengine not being found. The check phase will fail to find it if I don't remove it from requirements. The same happened in the Spyder package, but in that case the executable would complain. I'm not sure why this happens. >> + (substitute* "requirements-core.txt" >> + (("httpx>=0.14.0,<0.17") "httpx")) > > And for this, we have 0.16.1. Ok, 0.17 has been out for a while now and I have an update for it, but did not submit yet. I will leave this substitution for later then. ^ permalink raw reply [flat|nested] 29+ messages in thread
* [bug#47976] [PATCH 10/10] gnu: Add orange. 2021-04-23 21:04 ` Vinicius Monego @ 2021-04-23 21:15 ` Leo Famulari 0 siblings, 0 replies; 29+ messages in thread From: Leo Famulari @ 2021-04-23 21:15 UTC (permalink / raw) To: Vinicius Monego; +Cc: 47976 On Fri, Apr 23, 2021 at 09:04:22PM +0000, Vinicius Monego wrote: > Ok, 0.17 has been out for a while now and I have an update for it, but > did not submit yet. I will leave this substitution for later then. We don't usually relax version restrictions to use non-approved versions. The program will have to be changed upstream to work with httpx 0.17. So, this substitution should be removed from the patch. ^ permalink raw reply [flat|nested] 29+ messages in thread
* [bug#47976] [PATCH 00/10] Add Orange 2021-04-23 17:25 [bug#47976] [PATCH 00/10] Add Orange Vinicius Monego 2021-04-23 17:28 ` [bug#47976] [PATCH 01/10] gnu: Add python-anyqt Vinicius Monego @ 2021-04-23 19:29 ` Leo Famulari 2021-04-23 21:20 ` Vinicius Monego 2021-04-25 3:25 ` [bug#47976] [PATCH v2 01/10] gnu: Add python-anyqt Vinicius Monego 2 siblings, 1 reply; 29+ messages in thread From: Leo Famulari @ 2021-04-23 19:29 UTC (permalink / raw) To: Vinicius Monego; +Cc: 47976 On Fri, Apr 23, 2021 at 05:25:47PM +0000, Vinicius Monego wrote: > This patchset adds the Orange data mining / data visualization / machine learning toolkit. > > I had to disable tests for the orange widget base because unittest failed to load a file. But all tests for orange itself are passing. > > Vinicius Monego (10): > gnu: Add python-anyqt. > gnu: Add python-pyqtgraph. > gnu: Add python-qasync. > gnu: Add python-orange-canvas-core. > gnu: Add python-orange-widget-base. > gnu: Add python-serverfiles. > gnu: Add python-python-louvain. > gnu: python-pynndescent: Update to 0.5.2. > gnu: python-opentsne: Update to 0.5.2. > gnu: Add orange. Thanks! I sent some comments. Otherwise, the patches look good to me, based on these standard assumptions: 1) You linted and built the packages 2) The packages are using the latest upstream versions 3) You checked that the licenses are correct ^ permalink raw reply [flat|nested] 29+ messages in thread
* [bug#47976] [PATCH 00/10] Add Orange 2021-04-23 19:29 ` [bug#47976] [PATCH 00/10] Add Orange Leo Famulari @ 2021-04-23 21:20 ` Vinicius Monego 2021-04-23 21:46 ` Leo Famulari 0 siblings, 1 reply; 29+ messages in thread From: Vinicius Monego @ 2021-04-23 21:20 UTC (permalink / raw) To: Leo Famulari; +Cc: 47976 Leo Famulari writes: > On Fri, Apr 23, 2021 at 05:25:47PM +0000, Vinicius Monego wrote: >> This patchset adds the Orange data mining / data visualization / machine learning toolkit. >> >> I had to disable tests for the orange widget base because unittest failed to load a file. But all tests for orange itself are passing. >> >> Vinicius Monego (10): >> gnu: Add python-anyqt. >> gnu: Add python-pyqtgraph. >> gnu: Add python-qasync. >> gnu: Add python-orange-canvas-core. >> gnu: Add python-orange-widget-base. >> gnu: Add python-serverfiles. >> gnu: Add python-python-louvain. >> gnu: python-pynndescent: Update to 0.5.2. >> gnu: python-opentsne: Update to 0.5.2. >> gnu: Add orange. > > Thanks! I sent some comments. > > Otherwise, the patches look good to me, based on these standard > assumptions: > > 1) You linted and built the packages > 2) The packages are using the latest upstream versions > 3) You checked that the licenses are correct Thanks for the reminder. I spotted some issues. - python-setuptools can be removed from the inputs of python-orange-canvas-core. The linter will also complain about python-docutils being propagated, but that is how it should be. - python-qasync's license is bsd-2, not bsd-3. - httpx doesn't need version substitution in orange (already commented in the other reply). Orange also states in the website that "non-code" parts are licensed under CC-BY-SA (version not specified), if that's relevant: https://orangedatamining.com/license/ All versions are up to date and all packages were built. Should I send a v2 only for the affected patches? ^ permalink raw reply [flat|nested] 29+ messages in thread
* [bug#47976] [PATCH 00/10] Add Orange 2021-04-23 21:20 ` Vinicius Monego @ 2021-04-23 21:46 ` Leo Famulari 0 siblings, 0 replies; 29+ messages in thread From: Leo Famulari @ 2021-04-23 21:46 UTC (permalink / raw) To: Vinicius Monego; +Cc: 47976 On Fri, Apr 23, 2021 at 09:20:08PM +0000, Vinicius Monego wrote: > Should I send a v2 only for the affected patches? Can you send the full patch series as v2? If that's not convenient, I can pick between v1 and v2. ^ permalink raw reply [flat|nested] 29+ messages in thread
* [bug#47976] [PATCH v2 01/10] gnu: Add python-anyqt. 2021-04-23 17:25 [bug#47976] [PATCH 00/10] Add Orange Vinicius Monego 2021-04-23 17:28 ` [bug#47976] [PATCH 01/10] gnu: Add python-anyqt Vinicius Monego 2021-04-23 19:29 ` [bug#47976] [PATCH 00/10] Add Orange Leo Famulari @ 2021-04-25 3:25 ` Vinicius Monego 2021-04-25 3:26 ` [bug#47976] [PATCH v2 02/10] gnu: Add python-pyqtgraph Vinicius Monego ` (8 more replies) 2 siblings, 9 replies; 29+ messages in thread From: Vinicius Monego @ 2021-04-25 3:25 UTC (permalink / raw) To: 47976; +Cc: Vinicius Monego * gnu/packages/python-xyz.scm (python-anyqt): New variable. --- No changes. gnu/packages/python-xyz.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index c01993ecd7..7366dd190c 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -12395,6 +12395,32 @@ ISO 8859, etc.).") (define-public python2-translitcodec (package-with-python2 python-translitcodec)) +(define-public python-anyqt + (package + (name "python-anyqt") + (version "0.0.11") + (source + (origin + (method url-fetch) + (uri (pypi-uri "AnyQt" version)) + (sha256 + (base32 "0gl2czirzjvhbq963i2awxp8kwbc1grh67lpcwfipyn9w3kdwdj4")))) + (build-system python-build-system) + (arguments + `(#:tests? #f ;there are no tests + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'delete-files + ;; Delete files related to other operating systems. + (lambda _ + (delete-file "AnyQt/QtMacExtras.py") + (delete-file "AnyQt/QtWinExtras.py") + #t))))) + (home-page "https://github.com/ales-erjavec/anyqt") + (synopsis "PyQt4/PyQt5 compatibility layer") + (description "AnyQt is a PyQt4/PyQt5 compatibility layer.") + (license license:gpl3))) + (define-public python-editor (package (name "python-editor") -- 2.31.1 ^ permalink raw reply related [flat|nested] 29+ messages in thread
* [bug#47976] [PATCH v2 02/10] gnu: Add python-pyqtgraph. 2021-04-25 3:25 ` [bug#47976] [PATCH v2 01/10] gnu: Add python-anyqt Vinicius Monego @ 2021-04-25 3:26 ` Vinicius Monego 2021-04-25 3:26 ` [bug#47976] [PATCH v2 03/10] gnu: Add python-qasync Vinicius Monego ` (7 subsequent siblings) 8 siblings, 0 replies; 29+ messages in thread From: Vinicius Monego @ 2021-04-25 3:26 UTC (permalink / raw) To: 47976; +Cc: Vinicius Monego * gnu/packages/python-xyz.scm (python-pyqtgraph): New variable. --- Changed casing in synopsis. gnu/packages/python-xyz.scm | 52 +++++++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 7366dd190c..9bd78986bd 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -12421,6 +12421,58 @@ ISO 8859, etc.).") (description "AnyQt is a PyQt4/PyQt5 compatibility layer.") (license license:gpl3))) +(define-public python-pyqtgraph + (package + (name "python-pyqtgraph") + (version "0.12.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pyqtgraph" version)) + (sha256 + (base32 "0kc7ncv0lr3spni29i9g8nszyr4xinswqi2zzs6v8kqqi593pvyj")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'check 'set-home-and-qpa + (lambda _ + (setenv "HOME" "/tmp") + (setenv "QT_QPA_PLATFORM" "offscreen") + #t)) + (replace 'check + (lambda* (#:key inputs outputs #:allow-other-keys) + (add-installed-pythonpath inputs outputs) + (invoke "pytest" "-vv" "-k" + ;; These tests try to download online data. + (string-append "not test_PolyLineROI" + " and not test_getArrayRegion_axisorder" + " and not test_getArrayRegion" + " and not test_PlotCurveItem" + " and not test_NonUniformImage_colormap" + " and not test_NonUniformImage_lut" + " and not test_ImageItem_axisorder" + " and not test_ImageItem"))))))) + (native-inputs + `(("python-pytest" ,python-pytest) + ("python-pytest-cov" ,python-pytest-cov) + ("python-pytest-xdist" ,python-pytest-xdist))) + (inputs + `(("qtbase" ,qtbase))) + (propagated-inputs + `(("python-h5py" ,python-h5py) + ("python-numpy" ,python-numpy) + ("python-pyopengl" ,python-pyopengl) + ("python-scipy" ,python-scipy) + ("python-pyqt" ,python-pyqt))) + (home-page "http://www.pyqtgraph.org") + (synopsis "Scientific graphics and GUI library for Python") + (description + "PyQtGraph is a Pure-python graphics library for PyQt5, PyQt6, PySide2 +and PySide6. It is intended for use in mathematics, scientific or engineering +applications.") + (license license:expat))) + (define-public python-editor (package (name "python-editor") -- 2.31.1 ^ permalink raw reply related [flat|nested] 29+ messages in thread
* [bug#47976] [PATCH v2 03/10] gnu: Add python-qasync. 2021-04-25 3:25 ` [bug#47976] [PATCH v2 01/10] gnu: Add python-anyqt Vinicius Monego 2021-04-25 3:26 ` [bug#47976] [PATCH v2 02/10] gnu: Add python-pyqtgraph Vinicius Monego @ 2021-04-25 3:26 ` Vinicius Monego 2021-04-25 3:26 ` [bug#47976] [PATCH v2 04/10] gnu: Add python-orange-canvas-core Vinicius Monego ` (6 subsequent siblings) 8 siblings, 0 replies; 29+ messages in thread From: Vinicius Monego @ 2021-04-25 3:26 UTC (permalink / raw) To: 47976; +Cc: Vinicius Monego * gnu/packages/python-xyz.scm (python-qasync): New variable. --- Changed license from bsd-3 to bsd-2. gnu/packages/python-xyz.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 9bd78986bd..d77599d53d 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -12473,6 +12473,41 @@ and PySide6. It is intended for use in mathematics, scientific or engineering applications.") (license license:expat))) +(define-public python-qasync + (package + (name "python-qasync") + (version "0.15.0") + (source + (origin + ;; There are no tests in the PyPI tarball. + (method git-fetch) + (uri (git-reference + (url "https://github.com/CabbageDevelopment/qasync/") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0va9h6v102d7mxz608banjc0l0v02dq3ywhr5i4nqaxx3qkazc2l")))) + (build-system python-build-system) + (arguments + `(#:test-target "pytest" + #:phases + (modify-phases %standard-phases + (add-before 'check 'set-qpa + (lambda _ + (setenv "QT_QPA_PLATFORM" "offscreen") + #t))))) + (native-inputs + `(("python-pytest" ,python-pytest) + ("python-pytest-runner" ,python-pytest-runner))) + (propagated-inputs + `(("python-pyqt" ,python-pyqt))) + (home-page "https://github.com/CabbageDevelopment/qasync") + (synopsis "Implementation of the PEP 3156 Event-Loop with Qt") + (description + "@code{qasync} allows coroutines to be used in PyQt/PySide applications +by providing an implementation of the PEP 3156 event-loop.") + (license license:bsd-2))) + (define-public python-editor (package (name "python-editor") -- 2.31.1 ^ permalink raw reply related [flat|nested] 29+ messages in thread
* [bug#47976] [PATCH v2 04/10] gnu: Add python-orange-canvas-core. 2021-04-25 3:25 ` [bug#47976] [PATCH v2 01/10] gnu: Add python-anyqt Vinicius Monego 2021-04-25 3:26 ` [bug#47976] [PATCH v2 02/10] gnu: Add python-pyqtgraph Vinicius Monego 2021-04-25 3:26 ` [bug#47976] [PATCH v2 03/10] gnu: Add python-qasync Vinicius Monego @ 2021-04-25 3:26 ` Vinicius Monego 2021-04-25 3:26 ` [bug#47976] [PATCH v2 05/10] gnu: Add python-orange-widget-base Vinicius Monego ` (5 subsequent siblings) 8 siblings, 0 replies; 29+ messages in thread From: Vinicius Monego @ 2021-04-25 3:26 UTC (permalink / raw) To: 47976; +Cc: Vinicius Monego * gnu/packages/orange.scm: New file. * gnu/packages/local.mk (GNU_SYSTEM_MODULES): Add it. --- Removed python-setuptools from propagated-inputs. Changed license from gpl3+ to gpl3 (setup.py does not mention any later versions). gnu/local.mk | 1 + gnu/packages/orange.scm | 66 +++++++++++++++++++++++++++++++++++++++++ 2 files changed, 67 insertions(+) create mode 100644 gnu/packages/orange.scm diff --git a/gnu/local.mk b/gnu/local.mk index 50b11a8ca2..e8b6effb36 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -420,6 +420,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/openldap.scm \ %D%/packages/openpgp.scm \ %D%/packages/openstack.scm \ + %D%/packages/orange.scm \ %D%/packages/orpheus.scm \ %D%/packages/ots.scm \ %D%/packages/package-management.scm \ diff --git a/gnu/packages/orange.scm b/gnu/packages/orange.scm new file mode 100644 index 0000000000..fb273cbbec --- /dev/null +++ b/gnu/packages/orange.scm @@ -0,0 +1,66 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2021 Vinicius Monego <monego@posteo.net> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +(define-module (gnu packages orange) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system python) + #:use-module (gnu packages) + #:use-module (gnu packages python-web) + #:use-module (gnu packages python-xyz) + #:use-module (gnu packages qt)) + +(define-public python-orange-canvas-core + (package + (name "python-orange-canvas-core") + (version "0.1.19") + (source + (origin + (method url-fetch) + (uri (pypi-uri "orange-canvas-core" version)) + (sha256 + (base32 "03wav2msfm32y8zwq69v1v6qyh1ld76xla2z60avf49yhbwjgwal")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'check 'check-setup + (lambda _ + ;; This test fails with: RuntimeError: Event loop is closed. + (substitute* "orangecanvas/application/tests/test_mainwindow.py" + (("test_help_requests") "_test_help_requests")) + (setenv "HOME" "/tmp") + (setenv "QT_QPA_PLATFORM" "offscreen") + #t))))) + (propagated-inputs + `(("python-anyqt" ,python-anyqt) + ("python-cachecontrol" ,python-cachecontrol) + ("python-commonmark" ,python-commonmark) + ("python-dictdiffer" ,python-dictdiffer) + ("python-docutils" ,python-docutils) + ("python-pyqt" ,python-pyqt) + ("python-qasync" ,python-qasync) + ("python-requests" ,python-requests))) + (home-page "https://github.com/biolab/orange-canvas-core") + (synopsis "Core component of Orange Canvas") + (description + "Orange Canvas Core is a framework for building graphical user interfaces +for editing workflows. It is a component used to build the Orange Canvas +data-mining application.") + (license license:gpl3))) -- 2.31.1 ^ permalink raw reply related [flat|nested] 29+ messages in thread
* [bug#47976] [PATCH v2 05/10] gnu: Add python-orange-widget-base. 2021-04-25 3:25 ` [bug#47976] [PATCH v2 01/10] gnu: Add python-anyqt Vinicius Monego ` (2 preceding siblings ...) 2021-04-25 3:26 ` [bug#47976] [PATCH v2 04/10] gnu: Add python-orange-canvas-core Vinicius Monego @ 2021-04-25 3:26 ` Vinicius Monego 2021-04-25 3:26 ` [bug#47976] [PATCH v2 06/10] gnu: Add python-serverfiles Vinicius Monego ` (4 subsequent siblings) 8 siblings, 0 replies; 29+ messages in thread From: Vinicius Monego @ 2021-04-25 3:26 UTC (permalink / raw) To: 47976; +Cc: Vinicius Monego * gnu/packages/orange.scm (python-orange-widget-base): New variable. --- No changes. gnu/packages/orange.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/orange.scm b/gnu/packages/orange.scm index fb273cbbec..8cb8159594 100644 --- a/gnu/packages/orange.scm +++ b/gnu/packages/orange.scm @@ -64,3 +64,38 @@ for editing workflows. It is a component used to build the Orange Canvas data-mining application.") (license license:gpl3))) + +(define-public python-orange-widget-base + (package + (name "python-orange-widget-base") + (version "4.12.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "orange-widget-base" version)) + (sha256 + (base32 "13sy3s8rdqs3i3ghixljpqvnfz81qmbb0kqlasw39zvf39qc22kz")))) + (build-system python-build-system) + (arguments + `(;; unittest fails to load one test, all other tests are passing: + ;; AttributeError: module 'orangewidget' has no attribute 'version'. + #:tests? #f + #:phases + (modify-phases %standard-phases + (add-before 'check 'check-setup + (lambda _ + (setenv "HOME" "/tmp") + (setenv "QT_QPA_PLATFORM" "offscreen") + #t))))) + (propagated-inputs + `(("python-anyqt" ,python-anyqt) + ("python-matplotlib" ,python-matplotlib) + ("python-orange-canvas-core" + ,python-orange-canvas-core) + ("python-pyqtgraph" ,python-pyqtgraph))) + (home-page "https://github.com/biolab/orange-widget-base") + (synopsis "Base Widget for Orange Canvas") + (description + "Orange Widget Base provides a base widget component for a interactive +GUI based workflow. It is primarily used in the Orange framework.") + (license license:gpl3+))) -- 2.31.1 ^ permalink raw reply related [flat|nested] 29+ messages in thread
* [bug#47976] [PATCH v2 06/10] gnu: Add python-serverfiles. 2021-04-25 3:25 ` [bug#47976] [PATCH v2 01/10] gnu: Add python-anyqt Vinicius Monego ` (3 preceding siblings ...) 2021-04-25 3:26 ` [bug#47976] [PATCH v2 05/10] gnu: Add python-orange-widget-base Vinicius Monego @ 2021-04-25 3:26 ` Vinicius Monego 2021-04-25 3:26 ` [bug#47976] [PATCH v2 07/10] gnu: Add python-python-louvain Vinicius Monego ` (3 subsequent siblings) 8 siblings, 0 replies; 29+ messages in thread From: Vinicius Monego @ 2021-04-25 3:26 UTC (permalink / raw) To: 47976; +Cc: Vinicius Monego * gnu/packages/orange.scm (python-serverfiles): New variable. --- No changes. gnu/packages/orange.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/orange.scm b/gnu/packages/orange.scm index 8cb8159594..97be36e489 100644 --- a/gnu/packages/orange.scm +++ b/gnu/packages/orange.scm @@ -99,3 +99,24 @@ data-mining application.") "Orange Widget Base provides a base widget component for a interactive GUI based workflow. It is primarily used in the Orange framework.") (license license:gpl3+))) + +(define-public python-serverfiles + (package + (name "python-serverfiles") + (version "0.3.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "serverfiles" version)) + (sha256 + (base32 "1qgbzgnaxj4wsp2rdas53qxsh0j7xpibq25w6lviwyaqwwrgq42y")))) + (build-system python-build-system) + (propagated-inputs + `(("python-requests" ,python-requests))) + (home-page "https://github.com/biolab/serverfiles") + (synopsis "Utility to access files on a HTTP server and store them locally") + (description + "This package provides an utility that accesses files on a HTTP server +and stores them locally for reuse. It is primarily used by the Orange +framework.") + (license license:gpl3+))) -- 2.31.1 ^ permalink raw reply related [flat|nested] 29+ messages in thread
* [bug#47976] [PATCH v2 07/10] gnu: Add python-python-louvain. 2021-04-25 3:25 ` [bug#47976] [PATCH v2 01/10] gnu: Add python-anyqt Vinicius Monego ` (4 preceding siblings ...) 2021-04-25 3:26 ` [bug#47976] [PATCH v2 06/10] gnu: Add python-serverfiles Vinicius Monego @ 2021-04-25 3:26 ` Vinicius Monego 2021-04-25 3:26 ` [bug#47976] [PATCH v2 08/10] gnu: python-pynndescent: Update to 0.5.2 Vinicius Monego ` (2 subsequent siblings) 8 siblings, 0 replies; 29+ messages in thread From: Vinicius Monego @ 2021-04-25 3:26 UTC (permalink / raw) To: 47976; +Cc: Vinicius Monego * gnu/packages/graph.scm (python-python-louvain): New variable. --- No changes. gnu/packages/graph.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/graph.scm b/gnu/packages/graph.scm index d2e4c875a1..7b61c8f103 100644 --- a/gnu/packages/graph.scm +++ b/gnu/packages/graph.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2019 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2020 Alexander Krotov <krotov@iitp.ru> ;;; Copyright © 2020 Pierre Langlois <pierre.langlos@gmx.com> +;;; Copyright © 2021 Vinicius Monego <monego@posteo.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -228,6 +229,27 @@ subplots, multiple-axes, polar charts, and bubble charts. ") (define-public python2-plotly (package-with-python2 python-plotly-2.4.1)) +(define-public python-python-louvain + (package + (name "python-python-louvain") + (version "0.15") + (source + (origin + (method url-fetch) + (uri (pypi-uri "python-louvain" version)) + (sha256 + (base32 "1sqp97fwh4asx0jr72x8hil8z8fcg2xq92jklmh2m599pvgnx19a")))) + (build-system python-build-system) + (propagated-inputs + `(("python-networkx" ,python-networkx) + ("python-numpy" ,python-numpy))) + (home-page "https://github.com/taynaud/python-louvain") + (synopsis "Louvain algorithm for community detection") + (description + "This package provides a pure Python implementation of the Louvain +algorithm for community detection in large networks.") + (license license:bsd-3))) + (define-public python-louvain (package (name "python-louvain") -- 2.31.1 ^ permalink raw reply related [flat|nested] 29+ messages in thread
* [bug#47976] [PATCH v2 08/10] gnu: python-pynndescent: Update to 0.5.2. 2021-04-25 3:25 ` [bug#47976] [PATCH v2 01/10] gnu: Add python-anyqt Vinicius Monego ` (5 preceding siblings ...) 2021-04-25 3:26 ` [bug#47976] [PATCH v2 07/10] gnu: Add python-python-louvain Vinicius Monego @ 2021-04-25 3:26 ` Vinicius Monego 2021-04-25 3:26 ` [bug#47976] [PATCH v2 09/10] gnu: python-opentsne: " Vinicius Monego 2021-04-25 3:26 ` [bug#47976] [PATCH v2 10/10] gnu: Add orange Vinicius Monego 8 siblings, 0 replies; 29+ messages in thread From: Vinicius Monego @ 2021-04-25 3:26 UTC (permalink / raw) To: 47976; +Cc: Vinicius Monego * gnu/packages/machine-learning.scm (python-pynndescent): Update to 0.5.2. --- No changes. gnu/packages/machine-learning.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm index ddd600d0f0..fd4e55f30a 100644 --- a/gnu/packages/machine-learning.scm +++ b/gnu/packages/machine-learning.scm @@ -915,13 +915,13 @@ for scientific computing and data science (e.g. BLAS and OpenMP).") (define-public python-pynndescent (package (name "python-pynndescent") - (version "0.4.8") + (version "0.5.2") (source (origin (method url-fetch) (uri (pypi-uri "pynndescent" version)) (sha256 - (base32 "0li1fclif50v6xrq7wh3lif9vv5jpj7xhrb0z6g89wwjnp9b9833")))) + (base32 "0w87c2v0li2rdbx6qfc2lb6y6bxpdy3jwfgzfs1kcr4d1chj5zfr")))) (build-system python-build-system) (native-inputs `(("python-nose" ,python-nose))) -- 2.31.1 ^ permalink raw reply related [flat|nested] 29+ messages in thread
* [bug#47976] [PATCH v2 09/10] gnu: python-opentsne: Update to 0.5.2. 2021-04-25 3:25 ` [bug#47976] [PATCH v2 01/10] gnu: Add python-anyqt Vinicius Monego ` (6 preceding siblings ...) 2021-04-25 3:26 ` [bug#47976] [PATCH v2 08/10] gnu: python-pynndescent: Update to 0.5.2 Vinicius Monego @ 2021-04-25 3:26 ` Vinicius Monego 2021-04-25 3:26 ` [bug#47976] [PATCH v2 10/10] gnu: Add orange Vinicius Monego 8 siblings, 0 replies; 29+ messages in thread From: Vinicius Monego @ 2021-04-25 3:26 UTC (permalink / raw) To: 47976; +Cc: Vinicius Monego * gnu/packages/machine-learning.scm (python-opentsne): Update to 0.5.2. --- No changes. gnu/packages/machine-learning.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm index fd4e55f30a..837ebbba67 100644 --- a/gnu/packages/machine-learning.scm +++ b/gnu/packages/machine-learning.scm @@ -941,7 +941,7 @@ for k-neighbor-graph construction and approximate nearest neighbor search.") (define-public python-opentsne (package (name "python-opentsne") - (version "0.4.4") + (version "0.5.2") (source (origin ;; No tests in the PyPI tarball. @@ -951,7 +951,7 @@ for k-neighbor-graph construction and approximate nearest neighbor search.") (commit (string-append "v" version)))) (file-name (string-append name "-" version "-checkout")) (sha256 - (base32 "08wamsssmyf6511cbmglm67dp48i6xazs89m1cskdk219v90bc76")))) + (base32 "1hl42wmafydk4fxdx05l180k3canmqw8h9r20fsqq2aq440b09gh")))) (build-system python-build-system) (arguments `(#:phases -- 2.31.1 ^ permalink raw reply related [flat|nested] 29+ messages in thread
* [bug#47976] [PATCH v2 10/10] gnu: Add orange. 2021-04-25 3:25 ` [bug#47976] [PATCH v2 01/10] gnu: Add python-anyqt Vinicius Monego ` (7 preceding siblings ...) 2021-04-25 3:26 ` [bug#47976] [PATCH v2 09/10] gnu: python-opentsne: " Vinicius Monego @ 2021-04-25 3:26 ` Vinicius Monego 2021-04-25 18:59 ` bug#47976: " Leo Famulari 8 siblings, 1 reply; 29+ messages in thread From: Vinicius Monego @ 2021-04-25 3:26 UTC (permalink / raw) To: 47976; +Cc: Vinicius Monego * gnu/packages/orange.scm (orange): New variable. --- Removed httpx version substitution, rewritten description. gnu/packages/orange.scm | 85 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) diff --git a/gnu/packages/orange.scm b/gnu/packages/orange.scm index 97be36e489..19014c748d 100644 --- a/gnu/packages/orange.scm +++ b/gnu/packages/orange.scm @@ -22,6 +22,11 @@ #:use-module (guix download) #:use-module (guix build-system python) #:use-module (gnu packages) + #:use-module (gnu packages freedesktop) + #:use-module (gnu packages graph) + #:use-module (gnu packages machine-learning) + #:use-module (gnu packages python-crypto) + #:use-module (gnu packages python-science) #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) #:use-module (gnu packages qt)) @@ -100,6 +105,86 @@ data-mining application.") GUI based workflow. It is primarily used in the Orange framework.") (license license:gpl3+))) +(define-public orange + (package + (name "orange") + (version "3.28.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "Orange3" version)) + (sha256 + (base32 "1ac4xjjkx06z10hl7k0zh1z3qhkl5vng15l9jkpkmck9spinbzil")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'preparations + (lambda _ + ;; Delete test that opens an outgoing connection. + (delete-file "Orange/tests/test_url_reader.py") + ;; This is a binary data file and it breaks runpath validation. + (delete-file "Orange/tests/datasets/binary-blob.tab") + ;; Skip the test which uses that binary file. + (substitute* "Orange/tests/test_txt_reader.py" + (("test_read_nonutf8_encoding") "_test_read_nonutf8_encoding")) + ;; Relax some dependency versions. + (substitute* "requirements-gui.txt" (("PyQtWebEngine>=5.12") "")) + #t)) + (add-before 'check 'set-HOME + ;; Tests need a writable home. + (lambda _ (setenv "HOME" "/tmp") #t)) + (add-after 'install 'wrap-executable + ;; Ensure that icons are found at runtime. + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (wrap-program (string-append out "/bin/orange-canvas") + `("QT_PLUGIN_PATH" prefix + ,(list (string-append (assoc-ref inputs "qtsvg") + "/lib/qt5/plugins/"))))) + #t))))) + (native-inputs + `(("python-cython" ,python-cython))) + (inputs + `(("python-anyqt" ,python-anyqt) + ("python-baycomp" ,python-baycomp) + ("python-bottleneck" ,python-bottleneck) + ("python-chardet" ,python-chardet) + ("python-httpx" ,python-httpx) + ("python-joblib" ,python-joblib) + ("python-keyring" ,python-keyring) + ("python-keyrings.alt" ,python-keyrings.alt) + ("python-louvain" ,python-python-louvain) + ("python-matplotlib" ,python-matplotlib) + ("python-networkx" ,python-networkx) + ("python-numpy" ,python-numpy) + ("python-openpyxl" ,python-openpyxl) + ("python-opentsne" ,python-opentsne) + ("python-orange-canvas-core" + ,python-orange-canvas-core) + ("python-orange-widget-base" + ,python-orange-widget-base) + ("python-pandas" ,python-pandas) + ("python-pyqt" ,python-pyqt) + ("python-pyqtgraph" ,python-pyqtgraph) + ("python-pyqtwebengine" ,python-pyqtwebengine) + ("python-pyyaml" ,python-pyyaml) + ("python-requests" ,python-requests) + ("python-scikit-learn" ,python-scikit-learn) + ("python-scipy" ,python-scipy) + ("python-serverfiles" ,python-serverfiles) + ("python-xlrd" ,python-xlrd) + ("python-xlsxwriter" ,python-xlsxwriter) + ("qtbase" ,qtbase) + ("qtsvg" ,qtsvg) + ("xdg-utils" ,xdg-utils))) + (home-page "https://orangedatamining.com/") + (synopsis "Component-based data mining framework") + (description + "Orange is a component-based, graphical framework for machine learning, +data analysis, data mining and data visualization.") + (license license:gpl3+))) + (define-public python-serverfiles (package (name "python-serverfiles") -- 2.31.1 ^ permalink raw reply related [flat|nested] 29+ messages in thread
* bug#47976: [PATCH v2 10/10] gnu: Add orange. 2021-04-25 3:26 ` [bug#47976] [PATCH v2 10/10] gnu: Add orange Vinicius Monego @ 2021-04-25 18:59 ` Leo Famulari 0 siblings, 0 replies; 29+ messages in thread From: Leo Famulari @ 2021-04-25 18:59 UTC (permalink / raw) To: Vinicius Monego; +Cc: 47976-done On Sun, Apr 25, 2021 at 03:26:08AM +0000, Vinicius Monego wrote: > * gnu/packages/orange.scm (orange): New variable. Thanks for the v2 patches. I pushed as 5461efe81f680b577cb12ba7d003e38009628b81 after making the following changes: > + ;; Relax some dependency versions. > + (substitute* "requirements-gui.txt" (("PyQtWebEngine>=5.12") "")) I rewrote this comment to explain the reason for the substitution. Like I said, we do not change version constraints that are chosen by upstream developers without a good reason, and so this comment was not sufficient. > + ("python-louvain" ,python-python-louvain) I missed this in the first round of review but, as specified in our manual section Python Modules, we don't name packages "python-python-foo", but instead just "python-foo". After I changed it, I realized that we already have a python-louvain package. Anyways, I changed the pre-existing python-louvain package to be called python-louvain-0.6, adjusted its user, and renamed your package to python-louvain. It would be nice to check if python-scanpy, which uses python-louvain-0.6, can instead use python-louvain. Let us know if you want advice about how to handle this situation in the future. ^ permalink raw reply [flat|nested] 29+ messages in thread
end of thread, other threads:[~2021-04-25 19:00 UTC | newest] Thread overview: 29+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2021-04-23 17:25 [bug#47976] [PATCH 00/10] Add Orange Vinicius Monego 2021-04-23 17:28 ` [bug#47976] [PATCH 01/10] gnu: Add python-anyqt Vinicius Monego 2021-04-23 17:28 ` [bug#47976] [PATCH 02/10] gnu: Add python-pyqtgraph Vinicius Monego 2021-04-23 17:28 ` [bug#47976] [PATCH 03/10] gnu: Add python-qasync Vinicius Monego 2021-04-23 17:28 ` [bug#47976] [PATCH 04/10] gnu: Add python-orange-canvas-core Vinicius Monego 2021-04-23 17:28 ` [bug#47976] [PATCH 05/10] gnu: Add python-orange-widget-base Vinicius Monego 2021-04-23 19:20 ` Leo Famulari 2021-04-23 17:28 ` [bug#47976] [PATCH 06/10] gnu: Add python-serverfiles Vinicius Monego 2021-04-23 17:28 ` [bug#47976] [PATCH 07/10] gnu: Add python-python-louvain Vinicius Monego 2021-04-23 17:28 ` [bug#47976] [PATCH 08/10] gnu: python-pynndescent: Update to 0.5.2 Vinicius Monego 2021-04-23 17:28 ` [bug#47976] [PATCH 09/10] gnu: python-opentsne: " Vinicius Monego 2021-04-23 17:28 ` [bug#47976] [PATCH 10/10] gnu: Add orange Vinicius Monego 2021-04-23 19:25 ` Leo Famulari 2021-04-23 21:04 ` Vinicius Monego 2021-04-23 21:15 ` Leo Famulari 2021-04-23 19:29 ` [bug#47976] [PATCH 00/10] Add Orange Leo Famulari 2021-04-23 21:20 ` Vinicius Monego 2021-04-23 21:46 ` Leo Famulari 2021-04-25 3:25 ` [bug#47976] [PATCH v2 01/10] gnu: Add python-anyqt Vinicius Monego 2021-04-25 3:26 ` [bug#47976] [PATCH v2 02/10] gnu: Add python-pyqtgraph Vinicius Monego 2021-04-25 3:26 ` [bug#47976] [PATCH v2 03/10] gnu: Add python-qasync Vinicius Monego 2021-04-25 3:26 ` [bug#47976] [PATCH v2 04/10] gnu: Add python-orange-canvas-core Vinicius Monego 2021-04-25 3:26 ` [bug#47976] [PATCH v2 05/10] gnu: Add python-orange-widget-base Vinicius Monego 2021-04-25 3:26 ` [bug#47976] [PATCH v2 06/10] gnu: Add python-serverfiles Vinicius Monego 2021-04-25 3:26 ` [bug#47976] [PATCH v2 07/10] gnu: Add python-python-louvain Vinicius Monego 2021-04-25 3:26 ` [bug#47976] [PATCH v2 08/10] gnu: python-pynndescent: Update to 0.5.2 Vinicius Monego 2021-04-25 3:26 ` [bug#47976] [PATCH v2 09/10] gnu: python-opentsne: " Vinicius Monego 2021-04-25 3:26 ` [bug#47976] [PATCH v2 10/10] gnu: Add orange Vinicius Monego 2021-04-25 18:59 ` bug#47976: " Leo Famulari
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/guix.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).