Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package tcl for openSUSE:Factory checked in 
at 2022-11-30 14:58:51
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/tcl (Old)
 and      /work/SRC/openSUSE:Factory/.tcl.new.1597 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "tcl"

Wed Nov 30 14:58:51 2022 rev:65 rq:1038691 version:8.6.13

Changes:
--------
--- /work/SRC/openSUSE:Factory/tcl/tcl.changes  2022-09-28 17:51:13.483168493 
+0200
+++ /work/SRC/openSUSE:Factory/.tcl.new.1597/tcl.changes        2022-11-30 
14:58:53.309020584 +0100
@@ -1,0 +2,20 @@
+Wed Nov 23 16:05:02 UTC 2022 - Reinhard Max <m...@suse.com>
+
+- New version 8.6.13:
+  * (bug)[26f132] Crash when sizeof(int) < sizeof(void *)
+  * (TIP 623)[e9a271] Tcl_GetRange index args < 0
+  * (bug)[e5ed1b] numeric IPv6 in URLs
+  * (bug)[8eb64b] http package tolerant again invalid reply header
+  * (bug)[6898f9] http package failed detection of shiftjis charset
+  * (bug)[55bf73] Avoid connection reuse after response code 101.
+  * (bug)[713653] FP rounding exposed by x86 musl
+  * (bug)[b3977d] Process CR-LF split across packets
+  * (bug)[4eb3a1] crash due to undetected bytecode invalidity
+  * (bug)[55a02f] Fallback init env(HOME) from USERPROFILE
+  * (bug)[1073da] crash writing invalid utf-8
+  * (new) Update to Unicode-15
+  * Many code fixes to avoid overflow or undefined behavior.
+- Add tcl-refchan-mode-needed.patch to allow refchans to be opened
+  for neither reading nor writing, but still handle events.
+
+-------------------------------------------------------------------

Old:
----
  tcl8.6.12-src.tar.gz

New:
----
  tcl-refchan-mode-needed.patch
  tcl8.6.13-src.tar.gz

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

Other differences:
------------------
++++++ tcl.spec ++++++
--- /var/tmp/diff_new_pack.G7e2Qi/_old  2022-11-30 14:58:54.209025537 +0100
+++ /var/tmp/diff_new_pack.G7e2Qi/_new  2022-11-30 14:58:54.213025558 +0100
@@ -22,11 +22,11 @@
 
 Name:           tcl
 URL:            http://www.tcl.tk
-Version:        8.6.12
+Version:        8.6.13
 Release:        0
 %define         rrc %{nil}
 %define TCL_MINOR %(echo %version | cut -c1-3)
-%define itclver 4.2.2
+%define itclver 4.2.3
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 Summary:        The Tcl Programming Language
 License:        TCL
@@ -48,6 +48,7 @@
 Source1:        tcl-rpmlintrc
 Source2:        baselibs.conf
 Source3:        macros.tcl
+Patch0:         tcl-refchan-mode-needed.patch
 BuildRequires:  autoconf
 BuildRequires:  pkg-config
 BuildRequires:  zlib-devel
@@ -91,6 +92,7 @@
    : Version mismatch in itcl, please chek the %%itclver macro!
    exit 1
 fi
+%patch0
 
 # The SQLite extension is provided by the sqlite3 package,
 # so don't build it here.

++++++ tcl-refchan-mode-needed.patch ++++++
--- doc/refchan.n.orig
+++ doc/refchan.n
@@ -53,8 +53,8 @@ here, then the \fBfinalize\fR subcommand
 .PP
 The \fImode\fR argument tells the handler whether the channel was
 opened for reading, writing, or both. It is a list containing any of
-the strings \fBread\fR or \fBwrite\fR. The list will always
-contain at least one element.
+the strings \fBread\fR or \fBwrite\fR. The list may be empty, but
+will usually contain at least one element. 
 .PP
 The subcommand must throw an error if the chosen mode is not
 supported by the \fIcmdPrefix\fR.
--- generic/tclIORChan.c.orig
+++ generic/tclIORChan.c
@@ -425,7 +425,7 @@ static void         UnmarshallErrorResult(Tcl_I
  */
 
 static int             EncodeEventMask(Tcl_Interp *interp,
-                           const char *objName, Tcl_Obj *obj, int *mask);
+                           const char *objName, Tcl_Obj *obj, int *mask, int 
needed);
 static Tcl_Obj *       DecodeEventMask(int mask);
 static ReflectedChannel * NewReflectedChannel(Tcl_Interp *interp,
                            Tcl_Obj *cmdpfxObj, int mode, Tcl_Obj *handleObj);
@@ -532,11 +532,11 @@ TclChanCreateObjCmd(
 
     /*
      * First argument is a list of modes. Allowed entries are "read", "write".
-     * Expect at least one list element. Abbreviations are ok.
+     * Empty list is uncommon, but allowed. Abbreviations are ok.
      */
 
     modeObj = objv[MODE];
-    if (EncodeEventMask(interp, "mode", objv[MODE], &mode) != TCL_OK) {
+    if (EncodeEventMask(interp, "mode", objv[MODE], &mode, 0) != TCL_OK) {
        return TCL_ERROR;
     }
 
@@ -902,7 +902,7 @@ TclChanPostEventObjCmd(
      * "write". Expect at least one list element. Abbreviations are ok.
      */
 
-    if (EncodeEventMask(interp, "event", objv[EVENT], &events) != TCL_OK) {
+    if (EncodeEventMask(interp, "event", objv[EVENT], &events, 1) != TCL_OK) {
        return TCL_ERROR;
     }
 
@@ -2007,8 +2007,9 @@ ReflectGetOption(
  * EncodeEventMask --
  *
  *     This function takes a list of event items and constructs the
- *     equivalent internal bitmask. The list must contain at least one
- *     element. Elements are "read", "write", or any unique abbreviation of
+ *     equivalent internal bitmask. The list may be empty if the last
+ *     argument is 0, otherwise it must contain at least one element.
+ *     Elements are "read", "write", or any unique abbreviation of
  *     them. Note that the bitmask is not changed if problems are
  *     encountered.
  *
@@ -2028,7 +2029,8 @@ EncodeEventMask(
     Tcl_Interp *interp,
     const char *objName,
     Tcl_Obj *obj,
-    int *mask)
+    int *mask,
+    int needed)
 {
     int events;                        /* Mask of events to post */
     int listc;                 /* #elements in eventspec list */
@@ -2040,7 +2042,7 @@ EncodeEventMask(
        return TCL_ERROR;
     }
 
-    if (listc < 1) {
+    if (needed && listc < 1) {
        Tcl_SetObjResult(interp, Tcl_ObjPrintf(
                 "bad %s list: is empty", objName));
        return TCL_ERROR;
--- tests/ioCmd.test.orig
+++ tests/ioCmd.test
@@ -670,12 +670,12 @@ test iocmd-21.1 {chan create, wrong#args
     catch {chan create a b c} msg
     set msg
 } {wrong # args: should be "chan create mode cmdprefix"}
-test iocmd-21.2 {chan create, invalid r/w mode, empty} {
-    proc foo {} {}
-    catch {chan create {} foo} msg
+test iocmd-21.2 {chan create, r/w mode empty} {
+    proc foo {cmd args} { return "initialize finalize watch" }
+    set chan [chan create {} foo]
+    close $chan
     rename foo {}
-    set msg
-} {bad mode list: is empty}
+} {}
 test iocmd-21.3 {chan create, invalid r/w mode, bad string} {
     proc foo {} {}
     catch {chan create {c} foo} msg

++++++ tcl8.6.12-src.tar.gz -> tcl8.6.13-src.tar.gz ++++++
/work/SRC/openSUSE:Factory/tcl/tcl8.6.12-src.tar.gz 
/work/SRC/openSUSE:Factory/.tcl.new.1597/tcl8.6.13-src.tar.gz differ: char 5, 
line 1

Reply via email to