From 4acef69146d41714e9912fb1576f6f64b267eaa2 Mon Sep 17 00:00:00 2001
* gnu/packages/python-xyz.scm (python-cymem): New variable.
gnu/packages/python-xyz.scm | 44 +++++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)
Toggle diff (61 lines)
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index fdfdd3fef3..421a298ccd 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
;;; Copyright © 2022 Peter Polidoro <peter@polidoro.io>
;;; Copyright © 2022 Wamm K. D. <jaft.r@outlook.com>
;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com>
+;;; Copyright © 2022 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; This file is part of GNU Guix.
@@ -31150,3 +31151,46 @@ object, which can be useful if you want to force your objects into a table.")
"The @code{deep-merge} Python library provides a toolset to deeply merge
nested data structures in Python like lists and dictionaries.")
(license license:expat)))
+(define-public python-cymem
+ (uri (pypi-uri "cymem" version))
+ "0pkyy60zk9654sj991w111p1l0m8wvz36nslw96x6nb9h6sjb5qn"))))
+ (build-system python-build-system)
+ #:modules '((ice-9 ftw)
+ (guix build python-build-system))
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'set-source-file-times-to-1980
+ ;; XXX One of the tests uses a ZIP library to pack up some of the
+ ;; source tree, and fails with "ZIP does not support timestamps
+ ;; before 1980". Work around this by setting the file times in the
+ ;; source tree to sometime in early 1980.
+ (let ((circa-1980 (* 10 366 24 60 60)))
+ (ftw "." (lambda (file stat flag)
+ (utime file circa-1980 circa-1980)
+ (home-page "https://github.com/explosion/cymem")
+ (synopsis "Cython memory pool for RAII-style memory management")
+ "Cymem provides two small memory-management helpers for Cython. They make it
+easy to tie memory to a Python object's life-cycle, so that the memory is freed
+when the object is garbage collected.")
+ (license license:expat)))