From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id Qe8zBiTogV9gOwAA0tVLHw (envelope-from ) for ; Sat, 10 Oct 2020 16:58:12 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id wOB2ASTogV9hWgAAbx9fmQ (envelope-from ) for ; Sat, 10 Oct 2020 16:58:12 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 9352694071A for ; Sat, 10 Oct 2020 16:58:10 +0000 (UTC) Received: from localhost ([::1]:52036 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kRIC9-0004ej-IB for larch@yhetil.org; Sat, 10 Oct 2020 12:58:09 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:50876) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kRIC2-0004dC-O3 for guix-patches@gnu.org; Sat, 10 Oct 2020 12:58:02 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:55113) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kRIC2-0000vq-Ev for guix-patches@gnu.org; Sat, 10 Oct 2020 12:58:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kRIC2-00038S-Em for guix-patches@gnu.org; Sat, 10 Oct 2020 12:58:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#43912] [PATCH] gnu: Add python-grandalf. Resent-From: Joseph LaFreniere Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 10 Oct 2020 16:58:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 43912 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 43912@debbugs.gnu.org X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.160234905612012 (code B ref -1); Sat, 10 Oct 2020 16:58:02 +0000 Received: (at submit) by debbugs.gnu.org; 10 Oct 2020 16:57:36 +0000 Received: from localhost ([127.0.0.1]:38426 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kRIBb-00037f-OE for submit@debbugs.gnu.org; Sat, 10 Oct 2020 12:57:36 -0400 Received: from lists.gnu.org ([209.51.188.17]:40798) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kRIBZ-00037X-G8 for submit@debbugs.gnu.org; Sat, 10 Oct 2020 12:57:34 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:50826) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kRIBZ-0004cY-6S for guix-patches@gnu.org; Sat, 10 Oct 2020 12:57:33 -0400 Received: from mx.kolabnow.com ([95.128.36.40]:17238) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kRIBW-0000ur-UH for guix-patches@gnu.org; Sat, 10 Oct 2020 12:57:32 -0400 Received: from localhost (unknown [127.0.0.1]) by ext-mx-out003.mykolab.com (Postfix) with ESMTP id E3EF0403FA for ; Sat, 10 Oct 2020 18:57:26 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kolabnow.com; h= content-type:content-type:mime-version:message-id:date:date :subject:subject:from:from:received:received:received; s= dkim20160331; t=1602349046; x=1604163447; bh=bfEHzKTvwT6lug53WJR x50JcqN9g8l8jJOsJNjqI/RA=; b=mtCePqq6++L37CpxY8XLiyfv1lTOyGzimzC TGubxHqcIaCsNMIKR2OzMfXE6nQb8N91FzyjQP2aPHSW5xdb9DaB0ki/aog8lTPm UZX/1AdKg8ZeBVPyd4cLSxYN3oaqOFfIKWDMjpNq/CtioaIKWPcndkPTIOdMV5r7 PJXENrR5nftDlqENwRDitS6ltgfpz5dzekF+iM+sbIYnkcjz0tykJzHa/0MW9hyh lKzbyufBis9pxZ03w9UwyZADT75O080nN2VnDa144L00BHWFmCaoLOL2Efr5n4MA QylE/1lDDQ3lHh1D0HFECJOwpdYYRmux4v19btXv+IW5fFYjgM9SkCodfluYuCpi YbLj3zf2shGl/ofNk3EPhRTJFB5MnwroV6XTFoxeRrO8ZrVtmF7uIGDW0VTUXE/r 5t+xsFHUWEFd1nmlBJ+ZyKX2ICZJglEfRUKnGt6O0cDgmJ+62LMDqjYcuSLY7UxX XMLEiKEA3ZQCQOCY8YVKI2Itgc0eo66ljUPh33FvjxJuz/REbUV+3DCxwRq/vgfW I0lHkJugzuXvhZDTT4Y9p17jQjHL/HD+1wjBnOJcw29GhTIrF0S/slv65qJLH0PP 3oSga4U+bkPjLIFZNwUDNqSK5Fvvbw1Mj1kFguiyKtTsiJN6kWdtL2E51o4mpq+O sCYHz1Ms= X-Virus-Scanned: amavisd-new at mykolab.com X-Spam-Score: -1.9 Received: from mx.kolabnow.com ([127.0.0.1]) by localhost (ext-mx-out003.mykolab.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id g99lXyGqKYNz for ; Sat, 10 Oct 2020 18:57:26 +0200 (CEST) Received: from int-mx001.mykolab.com (unknown [10.9.13.1]) by ext-mx-out003.mykolab.com (Postfix) with ESMTPS id F3F9B40195 for ; Sat, 10 Oct 2020 18:57:25 +0200 (CEST) Received: from ext-subm002.mykolab.com (unknown [10.9.6.2]) by int-mx001.mykolab.com (Postfix) with ESMTPS id B0B2D666 for ; Sat, 10 Oct 2020 18:57:25 +0200 (CEST) From: Joseph LaFreniere Date: Sat, 10 Oct 2020 11:57:21 -0500 Message-ID: <87362mt3wu.fsf@odyssey.lafreniere.xyz> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Received-SPF: pass client-ip=95.128.36.40; envelope-from=joseph@lafreniere.xyz; helo=mx.kolabnow.com X-detected-operating-system: by eggs.gnu.org: First seen = 2020/10/10 12:57:28 X-ACL-Warn: Detected OS = Linux 3.11 and newer [fuzzy] X-Spam_score_int: -13 X-Spam_score: -1.4 X-Spam_bar: - X-Spam_report: (-1.4 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, FROM_SUSPICIOUS_NTLD=0.499, FROM_SUSPICIOUS_NTLD_FP=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=no autolearn_force=no X-Spam_action: no action X-Spam-Score: 1.1 (+) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-Spam-Score: 0.1 (/) X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Scanner: scn0 Authentication-Results: aspmx1.migadu.com; dkim=fail (rsa verify failed) header.d=kolabnow.com header.s=dkim20160331 header.b=mtCePqq6; dmarc=none; spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Spam-Score: 1.49 X-TUID: W3Q33VlGT31c --=-=-= Content-Type: text/plain; format=flowed Patch file is attached. -- Joseph LaFreniere --=-=-= Content-Type: text/x-patch; charset=utf-8 Content-Disposition: attachment; filename=0001-gnu-Add-python-grandalf.patch Content-Transfer-Encoding: quoted-printable >From 4275d4429b84f7b338dfef6299cf0e5a2072fe40 Mon Sep 17 00:00:00 2001 From: Joseph LaFreniere Date: Sat, 10 Oct 2020 11:56:02 -0500 Subject: [PATCH] gnu: Add python-grandalf. * gnu/packages/python-xyz.scm (python-grandalf): New variable. --- gnu/packages/python-xyz.scm | 54 +++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 0670eb7e08..08ecaa791f 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -6036,6 +6036,60 @@ memoizing PEG/Packrat parser in Python.") (define-public python2-grako (package-with-python2 python-grako)) =20 +(define-public python-grandalf + (package + (name "python-grandalf") + (version "0.7") + (source + (origin + ;; There's no source tarball on PyPI. + (method git-fetch) + (uri (git-reference + (url "https://github.com/bdcht/grandalf") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "03p8w8ljpb87qbyldm3s6b7qi30hfcn43h33iwlgqcf31fjsyr4g")))) + (build-system python-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda _ + (invoke "python" "setup.py" "pytest")))))) + (native-inputs + `(("python-pytest" ,python-pytest) + ("python-pytest-runner" ,python-pytest-runner))) + (propagated-inputs + `(("python-numpy" ,python-numpy) + ("python-ply" ,python-ply))) + (home-page "https://github.com/bdcht/grandalf") + (synopsis "Graph and drawing algorithms framework") + (description + "Grandalf is a Python package made for experimentations with graphs +drawing algorithms. It is written in pure Python, and currently implements +two layouts: the Sugiyama hierarchical layout and the force-driven or ener= gy +minimization approach. While not as fast or featured as graphviz or other +libraries like OGDF (C++), it provides a way to walk and draw graphs no la= rger +than thousands of nodes, while keeping the source code simple enough to tw= eak +and hack any part of it for experimental purpose. With a total of about 1= 500 +lines of Python, the code involved in drawing the Sugiyama (dot) layout fi= ts +in less than 600 lines. The energy minimization approach is comprised of = only +250 lines! + +Grandalf does only 2 not-so-simple things: +@itemize +@item computing the nodes (x,y) coordinates (based on provided nodes +dimensions, and a chosen layout) +@item routing the edges with lines or nurbs +@end itemize + +It doesn=E2=80=99t depend on any GTK/Qt/whatever graphics toolkit. This m= eans that it +will help you find where to draw things like nodes and edges, but it=E2=80= =99s up to +you to actually draw things with your favorite toolkit.") + (license (list license:gpl2 license:epl1.0)))) + (define-public python-gridmap (package (name "python-gridmap") --=20 2.28.0 --=-=-=--