[bug#62801,2/4] gnu: Add python-memory-profiler.
Commit Message
* gnu/packages/python-check.scm (python-memory-profiler): New variable.
---
gnu/packages/python-check.scm | 49 +++++++++++++++++++++++++++++++++++
1 file changed, 49 insertions(+)
Comments
Hello,
Sharlatan Hellseher <sharlatanus@gmail.com> writes:
> * gnu/packages/python-check.scm (python-memory-profiler): New variable.
> ---
> gnu/packages/python-check.scm | 49 +++++++++++++++++++++++++++++++++++
> 1 file changed, 49 insertions(+)
>
> diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm
> index 41a6997190..0affd2896b 100644
> --- a/gnu/packages/python-check.scm
> +++ b/gnu/packages/python-check.scm
> @@ -1771,6 +1771,55 @@ (define-public python-atpublic
> (license (list license:asl2.0
> license:lgpl3)))) ; only for setup_helpers.py
>
> +(define-public python-memory-profiler
> + (package
> + (name "python-memory-profiler")
> + (version "0.61")
> + (source
> + (origin
> + ;; PyPi tarball lacks tests.
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://github.com/pythonprofilers/memory_profiler")
> + (commit (string-append "v" version))))
> + (file-name (git-file-name name version))
> + (sha256
> + (base32 "0n6g47qqmnn7abh3v25535hd8bmfvhf9bnp72m7bkd89f715m7xh"))))
> + (build-system pyproject-build-system)
> + (arguments
> + (list
> + #:phases
> + #~(modify-phases %standard-phases
> + ;; XXX: @profile is not loaded in some test files and there are 3 tests
> + ;; which were failed, disable them for now.
^fail
> + (add-after 'unpack 'disable-fialing-tests
^failing
> + (lambda _
> + (with-directory-excursion "test"
> + (for-each delete-file
> + '("test_as.py"
> + "test_func.py"
> + "test_gen.py"
> + "test_loop.py"
> + "test_loop_decorated.py"
> + "test_mprofile.py"
> + "test_nested.py"
> + "test_precision_command_line.py"
> + "test_unicode.py")))
> + (substitute* "test/test_attributes.py"
> + (("def test_with_profile") "def __off_test_with_profile"))
> + (substitute* "test/test_stream_unicode.py"
> + (("def test_unicode") "def __off_test_unicode"))
> + (substitute* "test/test_tracemalloc.py"
> + (("def test_memory_profiler") "def __off_test_memory_profiler")))))))
> + (native-inputs (list python-pytest-7.1 python-pytest-fixture-config python-safety))
Please wrap lines to 80 characters.
@@ -1771,6 +1771,55 @@ (define-public python-atpublic
(license (list license:asl2.0
license:lgpl3)))) ; only for setup_helpers.py
+(define-public python-memory-profiler
+ (package
+ (name "python-memory-profiler")
+ (version "0.61")
+ (source
+ (origin
+ ;; PyPi tarball lacks tests.
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/pythonprofilers/memory_profiler")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0n6g47qqmnn7abh3v25535hd8bmfvhf9bnp72m7bkd89f715m7xh"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ ;; XXX: @profile is not loaded in some test files and there are 3 tests
+ ;; which were failed, disable them for now.
+ (add-after 'unpack 'disable-fialing-tests
+ (lambda _
+ (with-directory-excursion "test"
+ (for-each delete-file
+ '("test_as.py"
+ "test_func.py"
+ "test_gen.py"
+ "test_loop.py"
+ "test_loop_decorated.py"
+ "test_mprofile.py"
+ "test_nested.py"
+ "test_precision_command_line.py"
+ "test_unicode.py")))
+ (substitute* "test/test_attributes.py"
+ (("def test_with_profile") "def __off_test_with_profile"))
+ (substitute* "test/test_stream_unicode.py"
+ (("def test_unicode") "def __off_test_unicode"))
+ (substitute* "test/test_tracemalloc.py"
+ (("def test_memory_profiler") "def __off_test_memory_profiler")))))))
+ (native-inputs (list python-pytest-7.1 python-pytest-fixture-config python-safety))
+ (propagated-inputs (list python-psutil))
+ (home-page "https://github.com/pythonprofilers/memory_profiler")
+ (synopsis "Monitor Memory usage of Python code")
+ (description
+ "This package provides a module for monitoring memory usage of a python
+program.")
+ (license license:bsd-3)))
+
(define-public python-mockito
(package
(name "python-mockito")