From 6ecdc437e2c5c1e597ba86e4a4a2812e62fb84ab Mon Sep 17 00:00:00 2001 From: Sharlatan Hellseher Date: Fri, 14 Jun 2024 07:56:41 +0100 Subject: gnu: Add python-schwimmbad. * gnu/packages/parallel.scm (python-schwimmbad): New variable. Change-Id: Ica4bc3989222e3d70e7cfc170bcca953353f8259 --- gnu/packages/parallel.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm index fc21bab7d4..7bd2834e13 100644 --- a/gnu/packages/parallel.scm +++ b/gnu/packages/parallel.scm @@ -36,6 +36,7 @@ #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) #:use-module (guix build-system python) + #:use-module (guix build-system pyproject) #:use-module ((guix licenses) #:prefix license:) #:use-module ((guix utils) #:select (target-64bit?)) #:use-module (guix packages) @@ -56,6 +57,7 @@ #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) + #:use-module (gnu packages python-build) #:use-module (gnu packages python-science) #:use-module (gnu packages python-xyz) #:use-module (gnu packages readline) @@ -410,6 +412,33 @@ can use the same high-level API to link their software with different cluster/resource management systems.") (license license:gpl3+))) +(define-public python-schwimmbad + (package + (name "python-schwimmbad") + (version "0.4.2") + (source + (origin + (method url-fetch) + (uri (pypi-uri "schwimmbad" version)) + (sha256 + (base32 "1aac1rswb0r0vzbxvjj2jyx5j0vqyjj7mygc71n9zbkpmr8m1rpg")))) + (build-system pyproject-build-system) + (propagated-inputs + (list python-dill + python-joblib + python-mpi4py + python-multiprocess)) + (native-inputs + (list python-hatch-vcs python-hatchling python-pytest)) + (home-page "https://github.com/adrn/schwimmbad") + (synopsis "Common interface for parallel processing pools") + (description + "@code{schwimmbad} provides a uniform interface to parallel processing +pools and enables switching easily between local development (e.g., serial +processing or with @code{multiprocessing}) and deployment on a cluster or +supercomputer (via, e.g., MPI or JobLib).") + (license license:expat))) + (define-public python-slurm-magic (let ((commit "73dd1a2b85799f7dae4b3f1cd9027536eff0c4d7") (revision "0")) -- cgit v1.2.3 ='left'>Commit message (Expand)Author 2020-05-16etc: Add a systemd unit to bind-mount @storedir@ read-only....* etc/gnu-store.mount.in: New file. * nix/local.mk (nodist_systemdservice_DATA): Add it. (etc/%.mount): New rule for it. * etc/guix-install.sh (sys_enable_guix_daemon): Install it. * doc/guix.texi (Binary Installation): Document it. * .gitignore: Ignore changes to it. Tobias Geerinckx-Rice 2-secret-key-file): Renamed from %ed25519bis-secret-key-file. * tests/keys/ed25519-3.key: New file. * tests/keys/ed25519-3.sec: New file. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org> Attila Lendvai 2020-09-15authenticate: Encode strings as ISO-8859-1....Fixes <https://bugs.gnu.org/43421>. * guix/scripts/authenticate.scm (read-command): Decode strings as ISO-8859-1, not UTF-8. (guix-authenticate)[send-reply]: Encode strings as ISO-8859-1, not UTF-8. * tests/guix-authenticate.sh: Add test. Ludovic Courtès 2020-09-14daemon: Spawn 'guix authenticate' once for all....Previously, we'd spawn 'guix authenticate' once for each item that has to be signed (when exporting) or authenticated (when importing). Now, we spawn it once for all and then follow a request/reply protocol. This reduces the wall-clock time of: guix archive --export -r $(guix build coreutils -d) from 30s to 2s. * guix/scripts/authenticate.scm (sign-with-key): Return the signature instead of displaying it. Raise a &formatted-message instead of calling 'leave'. (validate-signature): Likewise. (read-command): New procedure. (define-enumerate-type, reply-code): New macros. (guix-authenticate)[send-reply]: New procedure. Change to read commands from current-input-port. * nix/libstore/local-store.cc (runAuthenticationProgram): Remove. (authenticationAgent, readInteger, readAuthenticateReply): New functions. (signHash, verifySignature): Rewrite in terms of the agent. * tests/store.scm ("import not signed"): Remove 'pk' call. ("import signed by unauthorized key"): Check the error message of C. * tests/guix-authenticate.sh: Rewrite using the new protocol. fixlet Ludovic Courtès 2020-09-11daemon: Simplify interface with 'guix authenticate'....There's no reason at this point to mimic the calling convention of the 'openssl' command. * nix/libstore/local-store.cc (LocalStore::exportPath): Add only "sign" and HASH to ARGS. Remove 'tmpDir' and 'hashFile'. (LocalStore::importPath): Add only "verify" and SIGNATURE to * guix/scripts/authenticate.scm (guix-authenticate): Adjust accordingly; remove the OpenSSL-style clauses. (read-hash-data): Remove. (sign-with-key): Replace 'port' with 'sha256' and adjust accordingly. (validate-signature): Export SIGNATURE to be a canonical sexp. * tests/guix-authenticate.sh: Adjust tests accordingly. Ludovic Courtès