unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#59792] [PATCH] gnu: Add python-pynetdicom.
@ 2022-12-03  5:03 Antero Mejr via Guix-patches via
  2022-12-03  5:08 ` [bug#59792] [PATCH] gnu: Add python-pydicom Antero Mejr via Guix-patches via
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Antero Mejr via Guix-patches via @ 2022-12-03  5:03 UTC (permalink / raw)
  To: 59792; +Cc: Antero Mejr, lars

* gnu/packages/python-science.scm (python-pynetdicom): New variable.
---
 gnu/packages/python-science.scm | 41 +++++++++++++++++++++++++++++++++
 1 file changed, 41 insertions(+)

diff --git a/gnu/packages/python-science.scm b/gnu/packages/python-science.scm
index 00bba25a4a..d45bcd9bca 100644
--- a/gnu/packages/python-science.scm
+++ b/gnu/packages/python-science.scm
@@ -1702,6 +1702,47 @@ (define-public python-pydicom
 in a pythonic way.")
     (license license:expat)))
 
+(define-public python-pynetdicom
+  (package
+    (name "python-pynetdicom")
+    (version "2.0.2")
+    (source (origin
+              (method url-fetch)
+              (uri (pypi-uri "pynetdicom" version))
+              (sha256
+               (base32
+                "0farmgviaarb3f4xn751card3v0lza57vwgl5azxxq65p7li44i3"))))
+    (build-system python-build-system)
+    (arguments
+     (list  #:phases #~(modify-phases %standard-phases
+                         (replace 'check
+                           (lambda* (#:key tests? #:allow-other-keys)
+                             (when tests?
+                               (invoke "pytest" "-vv" "-k"
+                                       ;; network tests, 2977/3283 pass
+                                       (string-append
+                                        " not TestFindSCP"
+                                        " and not TestQRGetServiceClass"
+                                        " and not TestQRMoveServiceClass"
+                                        " and not TestStoreSCP"
+                                        " and not test_ae.py"
+                                        " and not test_echoscp.py"
+                                        " and not test_qrscp_echo.py"
+                                        " and not test_storescp.py"
+                                        " and not test_pr_level_patient"
+                                        " and not test_pr_level_series"
+                                        " and not test_scp_cancelled"))))))))
+    (native-inputs (list python-pyfakefs python-pytest))
+    (propagated-inputs (list python-pydicom python-sqlalchemy))
+    (home-page "https://github.com/pydicom/pynetdicom")
+    (synopsis "Python implementation of the DICOM networking protocol")
+    (description
+     "@code{pynetdicom} is a Python package that implements the DICOM
+networking protocol.  Working with @code{pydicom}, it allows the easy creation
+of DICOM @acronym{SCUs,Service Class Users} and
+@acronym{SCPs,Service Class Providers}.")
+    (license license:expat)))
+
 ;;;
 ;;; Avoid adding new packages to the end of this file. To reduce the chances
 ;;; of a merge conflict, place them above by existing packages with similar
-- 
2.38.1





^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [bug#59792] [PATCH] gnu: Add python-pydicom.
  2022-12-03  5:03 [bug#59792] [PATCH] gnu: Add python-pynetdicom Antero Mejr via Guix-patches via
@ 2022-12-03  5:08 ` Antero Mejr via Guix-patches via
  2023-01-16 14:50   ` [bug#59792] [PATCH] gnu: Add python-pynetdicom Maxim Cournoyer
  2023-01-16 14:53 ` Maxim Cournoyer
  2024-01-24  0:18 ` bug#59792: " Sharlatan Hellseher
  2 siblings, 1 reply; 5+ messages in thread
From: Antero Mejr via Guix-patches via @ 2022-12-03  5:08 UTC (permalink / raw)
  To: 59792; +Cc: Antero Mejr, lars

* gnu/packages/python-science.scm (python-pydicom): New variable.
---
Please apply this patch first.
Supersedes #55989.

 gnu/packages/python-science.scm | 46 +++++++++++++++++++++++++++++++++
 1 file changed, 46 insertions(+)

diff --git a/gnu/packages/python-science.scm b/gnu/packages/python-science.scm
index 52fe1460bb..00bba25a4a 100644
--- a/gnu/packages/python-science.scm
+++ b/gnu/packages/python-science.scm
@@ -1656,6 +1656,52 @@ (define-public python-vaex-core
 tabular datasets.  This package provides the core modules of Vaex.")
     (license license:expat)))
 
+(define-public python-pydicom
+  (package
+    (name "python-pydicom")
+    (version "2.3.1")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/pydicom/pydicom")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "0q209i2jgwv5z1xhi7frydkplby7jaiz624pjq6vi51wvlmimpf6"))))
+    (build-system python-build-system)
+    (arguments
+     (list #:phases #~(modify-phases %standard-phases
+                        (replace 'check
+                          (lambda* (#:key tests? #:allow-other-keys)
+                            (when tests?
+                              ;; skip tests using external data
+                              (invoke "pytest" "-vv" "-k"
+                                      (string-append
+                                       " not TestDataElement"
+                                       " and not TestDatasetOverlayArray"
+                                       " and not TestReader"
+                                       " and not Test_JPEG_LS_Lossless_transfer_syntax"
+                                       " and not test_data_manager.py"
+                                       " and not test_encaps.py"
+                                       " and not test_encoders_pydicom.py"
+                                       " and not test_filewriter.py"
+                                       " and not test_gdcm_pixel_data.py"
+                                       " and not test_handler_util.py"
+                                       " and not test_jpeg_ls_pixel_data.py"
+                                       " and not test_numpy_pixel_data.py"
+                                       " and not test_overlay_np.py"
+                                       " and not test_pillow_pixel_data.py"
+                                       " and not test_rle_pixel_data.py"))))))))
+    (native-inputs (list python-pytest))
+    (propagated-inputs (list python-numpy python-pillow))
+    (home-page "https://github.com/pydicom/pydicom")
+    (synopsis "Python library for reading and writing DICOM data")
+    (description "@code{pydicom} is a Python library for reading and writing
+DICOM medical image files.  It lets developers read, modify and write DICOM data
+in a pythonic way.")
+    (license license:expat)))
+
 ;;;
 ;;; Avoid adding new packages to the end of this file. To reduce the chances
 ;;; of a merge conflict, place them above by existing packages with similar
-- 
2.38.1





^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [bug#59792] [PATCH] gnu: Add python-pynetdicom.
  2022-12-03  5:08 ` [bug#59792] [PATCH] gnu: Add python-pydicom Antero Mejr via Guix-patches via
@ 2023-01-16 14:50   ` Maxim Cournoyer
  0 siblings, 0 replies; 5+ messages in thread
From: Maxim Cournoyer @ 2023-01-16 14:50 UTC (permalink / raw)
  To: Antero Mejr; +Cc: lars, 59792

Hello Antero!

Antero Mejr <antero@mailbox.org> writes:

> * gnu/packages/python-science.scm (python-pydicom): New variable.

Thanks for this contribution.

> Please apply this patch first.
> Supersedes #55989.
>
>  gnu/packages/python-science.scm | 46 +++++++++++++++++++++++++++++++++
>  1 file changed, 46 insertions(+)
>
> diff --git a/gnu/packages/python-science.scm b/gnu/packages/python-science.scm
> index 52fe1460bb..00bba25a4a 100644
> --- a/gnu/packages/python-science.scm
> +++ b/gnu/packages/python-science.scm
> @@ -1656,6 +1656,52 @@ (define-public python-vaex-core
>  tabular datasets.  This package provides the core modules of Vaex.")
>      (license license:expat)))
>  
> +(define-public python-pydicom
> +  (package
> +    (name "python-pydicom")
> +    (version "2.3.1")
> +    (source (origin
> +              (method git-fetch)
> +              (uri (git-reference
> +                    (url "https://github.com/pydicom/pydicom")
> +                    (commit (string-append "v" version))))
> +              (file-name (git-file-name name version))
> +              (sha256
> +               (base32
> +                "0q209i2jgwv5z1xhi7frydkplby7jaiz624pjq6vi51wvlmimpf6"))))
> +    (build-system python-build-system)
> +    (arguments
> +     (list #:phases #~(modify-phases %standard-phases
> +                        (replace 'check
> +                          (lambda* (#:key tests? #:allow-other-keys)
> +                            (when tests?
> +                              ;; skip tests using external data

Well done!  Please use a complete sentence for stand-alone comments,
e.g. ";; Skip tests that require networking."

> +                              (invoke "pytest" "-vv" "-k"
> +                                      (string-append
> +                                       " not TestDataElement"
> +                                       " and not TestDatasetOverlayArray"
> +                                       " and not TestReader"
> +                                       " and not Test_JPEG_LS_Lossless_transfer_syntax"
> +                                       " and not test_data_manager.py"
> +                                       " and not test_encaps.py"
> +                                       " and not test_encoders_pydicom.py"
> +                                       " and not test_filewriter.py"
> +                                       " and not test_gdcm_pixel_data.py"
> +                                       " and not test_handler_util.py"
> +                                       " and not test_jpeg_ls_pixel_data.py"
> +                                       " and not test_numpy_pixel_data.py"
> +                                       " and not test_overlay_np.py"
> +                                       " and not test_pillow_pixel_data.py"
> +                                       " and not test_rle_pixel_data.py"))))))))

Suggestion: If you use pyproject-build-system, you can avoid overriding
the test phase, instead making use of the new #:test-flags argument, to
provide just the "-k" and patterns.

> +    (native-inputs (list python-pytest))
> +    (propagated-inputs (list python-numpy python-pillow))
> +    (home-page "https://github.com/pydicom/pydicom")
> +    (synopsis "Python library for reading and writing DICOM data")
> +    (description "@code{pydicom} is a Python library for reading and writing
> +DICOM medical image files.  It lets developers read, modify and write DICOM data
> +in a pythonic way.")

I'd avoid "developers", and plainly state: "It can read, modify [...]",
and drop "in a pythonic way" since that's more subjective than facts.

-- 
Thanks,
Maxim




^ permalink raw reply	[flat|nested] 5+ messages in thread

* [bug#59792] [PATCH] gnu: Add python-pynetdicom.
  2022-12-03  5:03 [bug#59792] [PATCH] gnu: Add python-pynetdicom Antero Mejr via Guix-patches via
  2022-12-03  5:08 ` [bug#59792] [PATCH] gnu: Add python-pydicom Antero Mejr via Guix-patches via
@ 2023-01-16 14:53 ` Maxim Cournoyer
  2024-01-24  0:18 ` bug#59792: " Sharlatan Hellseher
  2 siblings, 0 replies; 5+ messages in thread
From: Maxim Cournoyer @ 2023-01-16 14:53 UTC (permalink / raw)
  To: Antero Mejr; +Cc: lars, 59792

Hi again,

Antero Mejr <antero@mailbox.org> writes:

> * gnu/packages/python-science.scm (python-pynetdicom): New variable.
> ---
>  gnu/packages/python-science.scm | 41 +++++++++++++++++++++++++++++++++
>  1 file changed, 41 insertions(+)
>
> diff --git a/gnu/packages/python-science.scm b/gnu/packages/python-science.scm
> index 00bba25a4a..d45bcd9bca 100644
> --- a/gnu/packages/python-science.scm
> +++ b/gnu/packages/python-science.scm
> @@ -1702,6 +1702,47 @@ (define-public python-pydicom
>  in a pythonic way.")
>      (license license:expat)))
>  
> +(define-public python-pynetdicom
> +  (package
> +    (name "python-pynetdicom")
> +    (version "2.0.2")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (pypi-uri "pynetdicom" version))
> +              (sha256
> +               (base32
> +                "0farmgviaarb3f4xn751card3v0lza57vwgl5azxxq65p7li44i3"))))
> +    (build-system python-build-system)
> +    (arguments
> +     (list  #:phases #~(modify-phases %standard-phases
> +                         (replace 'check
> +                           (lambda* (#:key tests? #:allow-other-keys)
> +                             (when tests?
> +                               (invoke "pytest" "-vv" "-k"
> +                                       ;; network tests, 2977/3283 pass
> +                                       (string-append
> +                                        " not TestFindSCP"
> +                                        " and not TestQRGetServiceClass"
> +                                        " and not TestQRMoveServiceClass"
> +                                        " and not TestStoreSCP"
> +                                        " and not test_ae.py"
> +                                        " and not test_echoscp.py"
> +                                        " and not test_qrscp_echo.py"
> +                                        " and not test_storescp.py"
> +                                        " and not test_pr_level_patient"
> +                                        " and not test_pr_level_series"
> +                                        " and not test_scp_cancelled"))))))))

The same tip as offered earlier should work here too (using
pyproject-build-system and its #:test-flags argument).

> +    (native-inputs (list python-pyfakefs python-pytest))
> +    (propagated-inputs (list python-pydicom python-sqlalchemy))
> +    (home-page "https://github.com/pydicom/pynetdicom")
> +    (synopsis "Python implementation of the DICOM networking protocol")
> +    (description
> +     "@code{pynetdicom} is a Python package that implements the DICOM
> +networking protocol.  Working with @code{pydicom}, it allows the easy creation
> +of DICOM @acronym{SCUs,Service Class Users} and
> +@acronym{SCPs,Service Class Providers}.")
> +    (license license:expat)))

I'd drop the "Working with @code{pydicom}, " and start the sentence
directly from "It allows the creation of [...]".

-- 
Thanks,
Maxim




^ permalink raw reply	[flat|nested] 5+ messages in thread

* bug#59792: [PATCH] gnu: Add python-pynetdicom.
  2022-12-03  5:03 [bug#59792] [PATCH] gnu: Add python-pynetdicom Antero Mejr via Guix-patches via
  2022-12-03  5:08 ` [bug#59792] [PATCH] gnu: Add python-pydicom Antero Mejr via Guix-patches via
  2023-01-16 14:53 ` Maxim Cournoyer
@ 2024-01-24  0:18 ` Sharlatan Hellseher
  2 siblings, 0 replies; 5+ messages in thread
From: Sharlatan Hellseher @ 2024-01-24  0:18 UTC (permalink / raw)
  To: 59792-done

[-- Attachment #1: Type: text/plain, Size: 398 bytes --]


Hi,

I've fixed merge conflicts and sort package approximately alphabetically
apply python-pynetdicom and Maxim's suggestions in separate commits.

- python-pydicom was added already
  - issue :: https://issues.guix.gnu.org/55989
  - commit :: e24b9b42bc9a78bc63e6824e74fc6850e8a90490

The patch adding python-pynetdicom pushed as
e71abbc6438f2b25f0d41221fadf695dfe094689 to master.

Thanks,
Oleg

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 832 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2024-01-24  0:20 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-12-03  5:03 [bug#59792] [PATCH] gnu: Add python-pynetdicom Antero Mejr via Guix-patches via
2022-12-03  5:08 ` [bug#59792] [PATCH] gnu: Add python-pydicom Antero Mejr via Guix-patches via
2023-01-16 14:50   ` [bug#59792] [PATCH] gnu: Add python-pynetdicom Maxim Cournoyer
2023-01-16 14:53 ` Maxim Cournoyer
2024-01-24  0:18 ` bug#59792: " Sharlatan Hellseher

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).