Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package perl-Curses for openSUSE:Factory 
checked in at 2024-05-16 17:16:51
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/perl-Curses (Old)
 and      /work/SRC/openSUSE:Factory/.perl-Curses.new.1880 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "perl-Curses"

Thu May 16 17:16:51 2024 rev:35 rq:1174461 version:1.450.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/perl-Curses/perl-Curses.changes  2023-03-10 
22:09:13.833638010 +0100
+++ /work/SRC/openSUSE:Factory/.perl-Curses.new.1880/perl-Curses.changes        
2024-05-16 17:19:18.952926398 +0200
@@ -1,0 +2,10 @@
+Sun Apr 28 03:09:21 UTC 2024 - Tina Müller <[email protected]>
+
+- updated to 1.45
+   see /usr/share/doc/packages/perl-Curses/ChangeLog
+
+  New in 1.45 (Released April 27, 2023)
+
+    Correct wide character data types to fix compile failure.
+
+-------------------------------------------------------------------

Old:
----
  Curses-1.44.tar.gz

New:
----
  Curses-1.45.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ perl-Curses.spec ++++++
--- /var/tmp/diff_new_pack.hZrjwL/_old  2024-05-16 17:19:19.828958149 +0200
+++ /var/tmp/diff_new_pack.hZrjwL/_new  2024-05-16 17:19:19.828958149 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package perl-Curses
 #
-# Copyright (c) 2023 SUSE LLC
+# Copyright (c) 2024 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -18,15 +18,26 @@
 
 %define cpan_name Curses
 Name:           perl-Curses
-Version:        1.44
+Version:        1.450.0
 Release:        0
+# 1.45 -> normalize -> 1.450.0
+%define cpan_version 1.45
 License:        Artistic-1.0 OR GPL-1.0-or-later
 Summary:        Terminal screen handling and optimization
 URL:            https://metacpan.org/release/%{cpan_name}
-Source0:        
https://cpan.metacpan.org/authors/id/G/GI/GIRAFFED/%{cpan_name}-%{version}.tar.gz
+Source0:        
https://cpan.metacpan.org/authors/id/G/GI/GIRAFFED/%{cpan_name}-%{cpan_version}.tar.gz
 Source1:        cpanspec.yml
 BuildRequires:  perl
 BuildRequires:  perl-macros
+Provides:       perl(Curses) = %{version}
+Provides:       perl(Curses::Field)
+Provides:       perl(Curses::Form)
+Provides:       perl(Curses::Item)
+Provides:       perl(Curses::Menu)
+Provides:       perl(Curses::Panel)
+Provides:       perl(Curses::Screen)
+Provides:       perl(Curses::Window)
+%undefine       __perllib_provides
 %{perl_requires}
 # MANUAL BEGIN
 BuildRequires:  ncurses5-devel
@@ -41,9 +52,9 @@
 how your system's curses(3) library works.
 
 %prep
-%autosetup  -n %{cpan_name}-%{version}
+%autosetup  -n %{cpan_name}-%{cpan_version}
 
-find . -type f ! -path "*/t/*" ! -name "*.pl" ! -path "*/bin/*" ! -path 
"*/script/*" ! -name "configure" -print0 | xargs -0 chmod 644
+find . -type f ! -path "*/t/*" ! -name "*.pl" ! -path "*/bin/*" ! -path 
"*/script/*" ! -path "*/scripts/*" ! -name "configure" -print0 | xargs -0 chmod 
644
 # MANUAL BEGIN
 sed -i '1s| /usr//bin/perl|%{__perl}|' demo.form
 sed -i '1s| /usr/bin/perl|%{__perl}|' demo* gdc testsyms

++++++ Curses-1.44.tar.gz -> Curses-1.45.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Curses-1.44/ChangeLog new/Curses-1.45/ChangeLog
--- old/Curses-1.44/ChangeLog   2023-03-07 19:39:06.000000000 +0100
+++ new/Curses-1.45/ChangeLog   2024-04-28 01:16:25.000000000 +0200
@@ -4,6 +4,10 @@
 Note that the filename "ChangeLog" is recognized by the CPAN machinery as the
 name of a change log.
 
+New in 1.45 (Released April 27, 2023)
+
+  Correct wide character data types to fix compile failure.
+
 New in 1.44 (Released March 07, 2023)
 
   Implement A_ITALIC
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Curses-1.44/Curses.pm new/Curses-1.45/Curses.pm
--- old/Curses-1.44/Curses.pm   2023-03-07 18:19:47.000000000 +0100
+++ new/Curses-1.45/Curses.pm   2024-04-28 01:16:51.000000000 +0200
@@ -51,7 +51,7 @@
 
 package Curses;
 
-$VERSION = '1.44'; # Makefile.PL picks this up
+$VERSION = '1.45'; # Makefile.PL picks this up
 
 use Carp;
 require Exporter;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Curses-1.44/CursesFunWide.c 
new/Curses-1.45/CursesFunWide.c
--- old/Curses-1.44/CursesFunWide.c     2014-04-26 18:02:50.000000000 +0200
+++ new/Curses-1.45/CursesFunWide.c     2024-04-27 05:27:42.000000000 +0200
@@ -49,10 +49,12 @@
 }
 
 XS(XS_CURSES_ungetchar) {
+    bool succeeded;
+    wchar_t wc;
     dXSARGS;
     c_exactargs("ungetchar", items, 1);
-    wint_t wc = c_sv2wchar(ST(0));
-    if (wc == WEOF)
+    c_sv2GetWchar(ST(0), &wc, &succeeded);
+    if (!succeeded)
         XSRETURN_NO;
 #ifdef C_UNGET_WCH
     int ret;
@@ -111,7 +113,7 @@
 #ifdef C_ADDNWSTR
     int ret;
     size_t len;
-    wint_t *wstr = c_sv2wstr(ST(c_arg), &len);
+    wchar_t *wstr = c_sv2wstr(ST(c_arg), &len);
     if (wstr == NULL)
         XSRETURN_NO;
     ret = waddnwstr(win, wstr, len);
@@ -147,7 +149,7 @@
 #ifdef C_INS_NWSTR
     int ret;
     size_t len;
-    wint_t *wstr = c_sv2wstr(ST(c_arg), &len);
+    wchar_t *wstr = c_sv2wstr(ST(c_arg), &len);
     if (wstr == NULL)
         XSRETURN_NO;
     ret = wins_nwstr(win, wstr, len);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Curses-1.44/CursesWide.c new/Curses-1.45/CursesWide.c
--- old/Curses-1.44/CursesWide.c        2014-04-19 04:19:16.000000000 +0200
+++ new/Curses-1.45/CursesWide.c        2024-04-27 05:22:43.000000000 +0200
@@ -4,7 +4,7 @@
 /* Combined Normal/Wide-Character helper functions */
 
 /* April 2014, Edgar Fuß, Mathematisches Institut der Universität Bonn,
-  <[email protected]> 
+  <[email protected]>
 */
 
 #include <wchar.h>
@@ -35,7 +35,7 @@
            there is no utf8_to_uvchr_buf, etc.
 #endif
 }
-    
+
 
 
 static void
@@ -71,70 +71,97 @@
     SvUTF8_off(sv);
 }
 
+
+
 static void
 c_wstr2sv(SV *      const sv,
           wchar_t * const ws) {
 /*----------------------------------------------------------------------------
   Set SV to a Perl string holding a given wide string
 -----------------------------------------------------------------------------*/
-    wint_t *ws_p;
-    int need_utf8 = 0;
-    size_t ws_len = wcslen(ws);
-    
-    for (ws_p = ws; *ws_p; ws_p++) {
-        if (*ws_p > 0xff) {
-            need_utf8 = 1;
-            break;
-        }
+    size_t const wsLen = wcslen(ws);
+
+    bool needUtf8;
+    unsigned int i;
+
+    for (i = 0, needUtf8 = false; ws[i]; ++i) {
+        if (ws[i] > 0xff)
+            needUtf8 = true;
     }
+
     SvPOK_on(sv);
-    if (need_utf8) {
-        U8 *u8, *u8_p;
-        u8 = (U8 *)sv_grow(sv, (ws_len + 1) * UTF8_MAXBYTES);
-        for (ws_p = ws, u8_p = u8; *ws_p; ws_p++)
-            u8_p = UVCHR_TO_UTF8(u8_p, *ws_p);
-        *u8_p = 0;
-        SvCUR_set(sv, u8_p - u8);
+
+    if (needUtf8) {
+        U8 * u8;
+        U8 * u8Cursor;
+        unsigned int i;
+
+        u8 = (U8 *)sv_grow(sv, (wsLen + 1) * UTF8_MAXBYTES);
+        for (i = 0, u8Cursor = &u8[0]; ws[i]; ++i)
+            u8Cursor = UVCHR_TO_UTF8(u8Cursor, ws[i]);
+        *u8Cursor = 0;
+        SvCUR_set(sv, u8Cursor - &u8[0]);
         SvUTF8_on(sv);
     } else {
-        U8 *u8, *u8_p;
-        u8 = (U8 *)sv_grow(sv, ws_len + 1);
-        for (ws_p = ws, u8_p = u8; *ws_p; ws_p++, u8_p++)
-            *u8_p = *ws_p;
-        *u8_p = 0;
-        SvCUR_set(sv, ws_len);
+        U8 * u8;
+        unsigned int i;
+
+        u8 = (U8 *)sv_grow(sv, wsLen + 1);
+        for (i = 0; ws[i]; ++i)
+            u8[i] = ws[i];
+        u8[i] = 0;
+        SvCUR_set(sv, wsLen);
         SvUTF8_off(sv);
     }
 }
 
-static wint_t
-c_sv2wchar(SV * const sv) {
+static void
+c_sv2GetWchar(SV *      const sv,
+              wchar_t * const wcP,
+              bool *    const succeededP) {
 /*----------------------------------------------------------------------------
    Extract a wide character from a SV holding a one-character Perl string
 
-   Fails (returning WEOF) if SV doesn't hold a string or the string is not one
-   character long.
+   Fails (returning *succeededP false) iff SV doesn't hold a string or the
+   string is not one character long.
 -----------------------------------------------------------------------------*/
-    U8 *s;
-    STRLEN s_len;
     if (!SvPOK(sv))
-        return WEOF;
-    s = (U8 *)SvPV(sv, s_len);
-    if (s_len == 0)
-        return WEOF;
-    if (SvUTF8(sv)) {
-        STRLEN len;
-        UV uv = utf8_to_uvchr_buf_x(s, s + s_len, &len);
-        if (len != s_len)
-            return WEOF;
-        return (wint_t) uv;
-    } else {
-        if (s_len != 1)
-            return WEOF;
-        return *s;
+        *succeededP = false;
+    else {
+        U8 * s;
+        STRLEN sLen;
+
+        s = (U8 *)SvPV(sv, sLen);
+
+        if (sLen == 0)
+            *succeededP = false;
+        else {
+            if (SvUTF8(sv)) {
+                STRLEN len;
+                UV uv;
+
+                uv = utf8_to_uvchr_buf_x(s, s + sLen, &len);
+
+                if (len != sLen)
+                    *succeededP = false;
+                else {
+                    *succeededP = true;
+                    *wcP = (wchar_t)uv;
+                }
+            } else {
+                if (sLen != 1)
+                    *succeededP = false;
+                else {
+                    *succeededP = true;
+                    *wcP = s[0];
+                }
+            }
+        }
     }
 }
 
+
+
 static unsigned char *
 c_sv2bstr(SV *     const sv,
           size_t * const b_len,
@@ -197,54 +224,69 @@
 
 }
 
-static wint_t *
+static wchar_t *
 c_sv2wstr(SV *     const sv,
-          size_t * const w_len) {
+          size_t * const wLenP) {
 /*----------------------------------------------------------------------------
    Extract a wide char string from a SV holding a Perl string.
 
    Fails (returning NULL) if SV doesn't hold a string or doesn't UTF-8
    decode.
 
-   set w_len s to length of result.
+   set *wLenP to length of result.
 
-   Caller must free() result
+   Caller must free result
 -----------------------------------------------------------------------------*/
-    U8 *s, *s_p, *s_end;
-    STRLEN s_len;
-    wint_t *ws, *ws_p;
+    wchar_t * ws;
 
-    if (!SvPOK(sv)) return NULL;
-    s = (U8 *)SvPV(sv, s_len);
-    s_p = s;
-    s_end = s + s_len;
-    ws = malloc((s_len + 1) * sizeof(*ws));
+    if (!SvPOK(sv))
+        ws = NULL;
+    else {
+        STRLEN sLen;
+        U8 * s;
+
+        s = (U8 *)SvPV(sv, sLen);
+        ws = malloc((sLen + 1) * sizeof(ws[0]));
         /* number of bytes is an upper bound on the number of characters */
-    if (ws == NULL) croak("c_sv2wstr: malloc");
-    ws_p = ws;
-    if (SvUTF8(sv)) {
-        while (s_p < s_end) {
-            if (UTF8_IS_INVARIANT(*s_p)) {
-                *ws_p++ = *s_p++;
+        if (!ws)
+            croak("c_sv2wstr: malloc");
+        if (SvUTF8(sv)) {
+            U8 * sP;
+            U8 * sEnd;
+            unsigned int i;
+
+            sP = &s[0];
+            sEnd = &s[sLen];
+            i = 0;
+
+            while (sP < sEnd) {
+                if (UTF8_IS_INVARIANT(*sP)) {
+                    ws[i++] = *sP++;
+                } else {
+                    STRLEN len;
+                    ws[i++] = utf8_to_uvchr_buf_x(sP, sEnd, &len);
+                    sP += len;
+                }
+            }
+            if (sP != sEnd) {
+                free(ws);
+                *wLenP = 0;
+                ws = NULL;
             } else {
-                STRLEN len;
-                *ws_p++ = utf8_to_uvchr_buf_x(s_p, s_end, &len);
-                s_p += len;
+                ws[i] = 0;
+                *wLenP = sLen;
             }
-        }
-        if (s_p != s_end) {
-            free(ws);
-            *w_len = 0;
-            return NULL;
-        }
-    } else {
-        s_p = s;
-        while (s_p < s_end) {
-            *ws_p++ = *s_p++;
+        } else {
+            unsigned int i;
+
+            for (i = 0; i < sLen; ++i)
+                ws[i] = s[i];
+
+            ws[i] = 0;
+            *wLenP = sLen;
         }
     }
-    *ws_p = 0;
-    *w_len = s_len;
     return ws;
 }
 
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Curses-1.44/META.json new/Curses-1.45/META.json
--- old/Curses-1.44/META.json   2023-03-07 19:39:37.000000000 +0100
+++ new/Curses-1.45/META.json   2024-04-28 01:21:11.000000000 +0200
@@ -32,6 +32,6 @@
       }
    },
    "release_status" : "stable",
-   "version" : "1.44",
+   "version" : "1.45",
    "x_serialization_backend" : "JSON::PP version 4.04"
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/Curses-1.44/META.yml new/Curses-1.45/META.yml
--- old/Curses-1.44/META.yml    2023-03-07 19:39:37.000000000 +0100
+++ new/Curses-1.45/META.yml    2024-04-28 01:21:11.000000000 +0200
@@ -17,5 +17,5 @@
   directory:
     - t
     - inc
-version: '1.44'
+version: '1.45'
 x_serialization_backend: 'CPAN::Meta::YAML version 0.018'

Reply via email to