<pre style='margin:0'>
Marius Schamschula (Schamschula) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/f32ad481447e1ca1edd323afb6a07fb2c967ec93">https://github.com/macports/macports-ports/commit/f32ad481447e1ca1edd323afb6a07fb2c967ec93</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new f32ad481447 py-imagecodecs: update to 2023.7.4
</span>f32ad481447 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit f32ad481447e1ca1edd323afb6a07fb2c967ec93
</span>Author: Marius Schamschula <mschamschula@gmail.com>
AuthorDate: Tue Jul 4 19:42:08 2023 -0500

<span style='display:block; white-space:pre;color:#404040;'>    py-imagecodecs: update to 2023.7.4
</span>---
 python/py-imagecodecs/Portfile                     |  16 +--
 .../files/patch-imagecodecs-_jpeg8.pyx.diff        | 156 ---------------------
 2 files changed, 5 insertions(+), 167 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-imagecodecs/Portfile b/python/py-imagecodecs/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 82cbd5a3835..550a04126f7 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/python/py-imagecodecs/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py-imagecodecs/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -4,9 +4,9 @@ PortSystem          1.0
</span> PortGroup           python 1.0
 
 name                py-imagecodecs
<span style='display:block; white-space:pre;background:#ffe0e0;'>-version             2023.3.16
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-revision            3
</span> epoch               1
<span style='display:block; white-space:pre;background:#e0ffe0;'>+version             2023.7.4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            0
</span> 
 categories-append   graphics
 license             BSD
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -17,9 +17,9 @@ long_description    {*}${description}
</span> 
 homepage            https://www.lfd.uci.edu/~gohlke/
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums           rmd160  d6aa717b57501152a1d196429cea922da753ac43 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  e39c2a63f7f5b9bee0ba4961db8c1e7f2518ce07d2fd10a56624d17f1407efc1 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    size    22452941
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           rmd160  019b98344a1b04940d22e70aa7149f7e93679f1b \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  8c45a63d2dea712b5bc3c763771540510303018168531c01e0d89573b6d1043a \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    9418218
</span> 
 python.versions     37 38 39 310 311
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -50,12 +50,6 @@ if {${name} ne ${subport}} {
</span>                     port:zopfli \
                     port:zstd
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    # disable 12-bit, 16-bit, and lossless code paths ( only)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    # remove when libjpeg-turbo 3 is out of beta
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    # see: https://github.com/conda-forge/imagecodecs-feedstock/pull/79#issuecomment-1492667986
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    # see: https://github.com/macports/macports-ports/commit/d3ad9afba4a88e09ed128dc87ccb401e64bc665b
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    patchfiles      patch-imagecodecs-_jpeg8.pyx.diff
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span>     post-patch {
         reinplace "s|%PREFIX%|${prefix}|g" \
             ${worksrcpath}/setup.py
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-imagecodecs/files/patch-imagecodecs-_jpeg8.pyx.diff b/python/py-imagecodecs/files/patch-imagecodecs-_jpeg8.pyx.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 3852cddbfd3..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/python/py-imagecodecs/files/patch-imagecodecs-_jpeg8.pyx.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,156 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- imagecodecs/_jpeg8.pyx.orig    2023-03-16 19:37:17.000000000 -0500
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ imagecodecs/_jpeg8.pyx 2023-04-29 16:11:14.000000000 -0500
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -124,8 +124,6 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         my_error_mgr err
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         jpeg_compress_struct cinfo
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         JSAMPROW rowpointer8
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        J12SAMPROW rowpointer12
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        J16SAMPROW rowpointer16
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         J_COLOR_SPACE in_color_space = JCS_UNKNOWN
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         J_COLOR_SPACE jpeg_color_space = JCS_UNKNOWN
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         unsigned long outsize = 0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -139,7 +137,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         int predictor_selection_value = 0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     if not (
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        (src.dtype == numpy.uint8 or src.dtype == numpy.uint16)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        src.dtype == numpy.uint8
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         and src.ndim in (2, 3)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         # src.nbytes < 2 ** 31 and  # limit to 2 GB
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         and samples in (1, 3, 4)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -148,21 +146,6 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     ):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         raise ValueError('invalid data shape, strides, or dtype')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    if lossless:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        predictor_selection_value = 1 if predictor is None else predictor
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    if bitspersample is not None:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        if (
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--            bitspersample not in (8, 12, 16)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--            or src.itemsize == 1 and bitspersample > 8
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        ):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--            raise ValueError(f'invalid bitspersample {bitspersample}')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        data_precision = bitspersample
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    # if validate and bitspersample == 12 and not _check_range(src):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    #     # values larger than 12-bit cause segfault
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    #     raise ValueError('all data values must be < 4096')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     if colorspace is not None:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         in_color_space = _jcs_colorspace(colorspace)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         if samples not in _jcs_colorspace_samples(in_color_space):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -235,7 +218,6 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         cinfo.image_height = <JDIMENSION> src.shape[0]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         cinfo.image_width = <JDIMENSION> src.shape[1]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         cinfo.input_components = samples
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        cinfo.data_precision = data_precision
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         if in_color_space != JCS_UNKNOWN:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             cinfo.in_color_space = in_color_space
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -246,43 +228,27 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         jpeg_mem_dest(&cinfo, &outbuffer, &outsize)  # must call after defaults
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         jpeg_set_quality(&cinfo, quality, 1)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        if predictor_selection_value > 0:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--            jpeg_enable_lossless(&cinfo, predictor_selection_value, 0)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        else:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--            if smoothing_factor >= 0:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                cinfo.smoothing_factor = smoothing_factor
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--            if optimize_coding >= 0:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                cinfo.optimize_coding = <boolean> optimize_coding
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--            if h_samp_factor != 0:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                cinfo.comp_info[0].h_samp_factor = h_samp_factor
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                cinfo.comp_info[0].v_samp_factor = v_samp_factor
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                cinfo.comp_info[1].h_samp_factor = 1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                cinfo.comp_info[1].v_samp_factor = 1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                cinfo.comp_info[2].h_samp_factor = 1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                cinfo.comp_info[2].v_samp_factor = 1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        if smoothing_factor >= 0:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            cinfo.smoothing_factor = smoothing_factor
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        if optimize_coding >= 0:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            cinfo.optimize_coding = <boolean> optimize_coding
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        if h_samp_factor != 0:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            cinfo.comp_info[0].h_samp_factor = h_samp_factor
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            cinfo.comp_info[0].v_samp_factor = v_samp_factor
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            cinfo.comp_info[1].h_samp_factor = 1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            cinfo.comp_info[1].v_samp_factor = 1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            cinfo.comp_info[2].h_samp_factor = 1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            cinfo.comp_info[2].v_samp_factor = 1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         # TODO: add option to use or return JPEG tables
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         jpeg_start_compress(&cinfo, 1)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        if cinfo.data_precision == 8:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--            while cinfo.next_scanline < cinfo.image_height:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                rowpointer8 = <JSAMPROW> (
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                    <char*> src.data + cinfo.next_scanline * rowstride
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                )
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                jpeg_write_scanlines(&cinfo, &rowpointer8, 1)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        elif cinfo.data_precision == 12:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--            while cinfo.next_scanline < cinfo.image_height:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                rowpointer12 = <J12SAMPROW> (
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                    <char*> src.data + cinfo.next_scanline * rowstride
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                )
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                jpeg12_write_scanlines(&cinfo, &rowpointer12, 1)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        elif cinfo.data_precision == 16:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--            while cinfo.next_scanline < cinfo.image_height:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                rowpointer16 = <J16SAMPROW> (
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                    <char*> src.data + cinfo.next_scanline * rowstride
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                )
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                jpeg16_write_scanlines(&cinfo, &rowpointer16, 1)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        while cinfo.next_scanline < cinfo.image_height:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            rowpointer8 = <JSAMPROW> (
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+                <char*> src.data + cinfo.next_scanline * rowstride
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            )
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            jpeg_write_scanlines(&cinfo, &rowpointer8, 1)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         jpeg_finish_compress(&cinfo)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         jpeg_destroy_compress(&cinfo)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -320,8 +286,6 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         my_error_mgr err
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         jpeg_decompress_struct cinfo
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         JSAMPROW rowpointer8
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        J12SAMPROW rowpointer12
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        J16SAMPROW rowpointer16
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         J_COLOR_SPACE jpeg_color_space
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         J_COLOR_SPACE out_color_space
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         JDIMENSION width = 0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -398,31 +362,16 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             # TODO: allow strides
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--            if cinfo.data_precision <= 8:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                out = _create_array(out, shape, numpy.uint8)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--            else:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                out = _create_array(out, shape, numpy.uint16)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            out = _create_array(out, shape, numpy.uint8)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             dst = out
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             dstsize = dst.nbytes
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             rowstride = dst.strides[0] // dst.itemsize
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         memset(<void*> dst.data, 0, dstsize)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        if cinfo.data_precision <= 8:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--            rowpointer8 = <JSAMPROW> dst.data
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--            while cinfo.output_scanline < cinfo.output_height:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                jpeg_read_scanlines(&cinfo, &rowpointer8, 1)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                rowpointer8 += rowstride
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        elif cinfo.data_precision == 12:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--            rowpointer12 = <J12SAMPROW> dst.data
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--            while cinfo.output_scanline < cinfo.output_height:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                jpeg12_read_scanlines(&cinfo, &rowpointer12, 1)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                rowpointer12 += rowstride
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        else:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--            # elif cinfo.data_precision == 16:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--            rowpointer16 = <J16SAMPROW> dst.data
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--            while cinfo.output_scanline < cinfo.output_height:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                jpeg16_read_scanlines(&cinfo, &rowpointer16, 1)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                rowpointer16 += rowstride
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        rowpointer8 = <JSAMPROW> dst.data
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        while cinfo.output_scanline < cinfo.output_height:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            jpeg_read_scanlines(&cinfo, &rowpointer8, 1)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            rowpointer8 += rowstride
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         jpeg_finish_decompress(&cinfo)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         jpeg_destroy_decompress(&cinfo)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span></pre><pre style='margin:0'>

</pre>