* [bug#74581] [PATCH] gnu: Add pyre.
@ 2024-11-28 7:55 Maxim Cournoyer
0 siblings, 0 replies; only message in thread
From: Maxim Cournoyer @ 2024-11-28 7:55 UTC (permalink / raw)
To: 74581
Cc: Maxim Cournoyer, Lars-Dominik Braun, Marius Bakke,
Munyoki Kilyungi, Sharlatan Hellseher, Tanguy Le Carrour, jgart
* gnu/packages/python-science.scm (pyre): New variable.
Change-Id: I4a26d7a83f24210104cb0ab50b5392ab97d9bfc4
---
gnu/packages/python-science.scm | 82 +++++++++++++++++++++++++++++++++
1 file changed, 82 insertions(+)
diff --git a/gnu/packages/python-science.scm b/gnu/packages/python-science.scm
index ef6d529ffd..30d149dfb6 100644
--- a/gnu/packages/python-science.scm
+++ b/gnu/packages/python-science.scm
@@ -53,6 +53,7 @@ (define-module (gnu packages python-science)
#:use-module (gnu packages check)
#:use-module (gnu packages chemistry)
#:use-module (gnu packages cmake)
+ #:use-module (gnu packages compression)
#:use-module (gnu packages cpp)
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crypto)
@@ -78,6 +79,7 @@ (define-module (gnu packages python-science)
#:use-module (gnu packages rust-apps)
#:use-module (gnu packages simulation)
#:use-module (gnu packages sphinx)
+ #:use-module (gnu packages ssh)
#:use-module (gnu packages statistics)
#:use-module (gnu packages time)
#:use-module (gnu packages xdisorg)
@@ -89,9 +91,89 @@ (define-module (gnu packages python-science)
#:use-module (guix git-download)
#:use-module (guix utils)
#:use-module (guix build-system cargo)
+ #:use-module (guix build-system cmake)
#:use-module (guix build-system python)
#:use-module (guix build-system pyproject))
+(define-public pyre
+ (package
+ (name "pyre")
+ (version "1.12.5")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/pyre/pyre")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0crmssga481q2ggwcmj40nj5n9975wri14p609jdr9hwg4vdyvj2"))))
+ (build-system cmake-build-system)
+ (arguments
+ (list
+ #:imported-modules (append %cmake-build-system-modules
+ %python-build-system-modules)
+ #:modules '((guix build cmake-build-system)
+ ((guix build python-build-system) #:prefix python:)
+ (guix build utils))
+ #:configure-flags
+ #~(list (string-append "-DPYRE_VERSION=" #$version)
+ (string-append "-DPYRE_DEST_PACKAGES="
+ (python:site-packages %build-inputs %outputs)))
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'enable-bytecode-determinism
+ (assoc-ref python:%standard-phases 'enable-bytecode-determinism))
+ ;; Move the check phase after the Python 'pyre' module
+ ;; is installed and made available.
+ (delete 'check)
+ (add-after 'install 'add-to-pythonpath
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (python:add-installed-pythonpath inputs outputs)))
+ (add-after 'add-to-pythonpath 'wrap
+ (assoc-ref python:%standard-phases 'wrap))
+ (add-after 'add-to-pythonpath 'check
+ (lambda* (#:key tests? parallel-tests? #:allow-other-keys)
+ (when tests?
+ (setenv "CTEST_OUTPUT_ON_FAILURE" "1")
+ (let ((ignored-tests
+ (list
+ ;; The MPI tests are failing for unknown reasons (see:
+ ;; https://github.com/pyre/pyre/issues/126).
+ "tests.mpi"
+ ;; These tests have a cleanup phase that fails
+ ;; non-deterministically (see:
+ ;; https://github.com/pyre/pyre/issues/125).
+ "tests.pyre.lib.viz.flow"
+ ;; This test expects a TCP port 22 to be listening.
+ "tests.pyre.pkg.ipc.tcp.py"
+ ;; These postgres tests require a running postgresql
+ ;; daemon; they are also skipped in upstream CI.
+ "tests.postgres.ext"
+ ;; This test fails due to pre-1980 timestamps, not
+ ;; supported by ZIP.
+ "tests.pyre.pkg.filesystem.zip_open.py"
+ ;; This one trips on the patched python3 shebang.
+ "tests.pyre.pkg.filesystem.local_open.py")))
+ (invoke "ctest"
+ "-j" (if parallel-tests?
+ (number->string (parallel-job-count))
+ "1")
+ "-E" (string-join ignored-tests "|")))))))))
+ (native-inputs (list openssh-sans-x python python-numpy pybind11 zip))
+ (inputs (list gsl hdf5 openmpi postgresql))
+ (propagated-inputs (list python-pyyaml)) ;for the Python bindings
+ (home-page "http://pyre.orthologue.com/")
+ (synopsis "Framework for building Scientific applications")
+ (description
+ "This package provides a framework for building scientific applications.
+It aims to bring state of the art software design practices to scientific
+computing, with the goal of providing a strong skeleton on which to build
+scientific codes by steering the implementation towards usability and
+maintainability.")
+ (license license:bsd-3)))
+
(define-public python-cvxpy
(package
(name "python-cvxpy")
base-commit: 5ff9e51e2c4dae0dc74f5c85ec553e89fe1824fd
--
2.46.0
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2024-11-28 7:57 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-11-28 7:55 [bug#74581] [PATCH] gnu: Add pyre Maxim Cournoyer
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).