Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package tcsh for openSUSE:Factory checked in 
at 2024-04-05 20:25:48
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/tcsh (Old)
 and      /work/SRC/openSUSE:Factory/.tcsh.new.1905 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "tcsh"

Fri Apr  5 20:25:48 2024 rev:99 rq:1165473 version:6.24.12

Changes:
--------
--- /work/SRC/openSUSE:Factory/tcsh/tcsh.changes        2024-03-15 
20:27:30.899758532 +0100
+++ /work/SRC/openSUSE:Factory/.tcsh.new.1905/tcsh.changes      2024-04-05 
20:25:51.422237219 +0200
@@ -1,0 +2,8 @@
+Fri Apr  5 09:08:30 UTC 2024 - Dr. Werner Fink <[email protected]>
+
+- Update to tcsh 6.24.12 - 2024-04-05
+  * Fix history merge and add a test for it (Werner Fink, Kimmo Suominen)
+- Remove patch tcsh-6.24.10-history-merge.dif now solved upstream
+- Port patch tcsh-6.22.02-local-dotlock.dif (corrected offsets)
+
+-------------------------------------------------------------------

Old:
----
  tcsh-6.24.10-history-merge.dif
  tcsh-6.24.11.tar.gz
  tcsh-6.24.11.tar.gz.asc

New:
----
  tcsh-6.24.12.tar.gz
  tcsh-6.24.12.tar.gz.asc

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

Other differences:
------------------
++++++ tcsh.spec ++++++
--- /var/tmp/diff_new_pack.UapTgV/_old  2024-04-05 20:25:52.230266935 +0200
+++ /var/tmp/diff_new_pack.UapTgV/_new  2024-04-05 20:25:52.234267083 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           tcsh
-Version:        6.24.11
+Version:        6.24.12
 Release:        0
 Summary:        The C SHell
 License:        BSD-3-Clause
@@ -31,7 +31,6 @@
 Patch0:         tcsh-6.21.00.dif
 Patch1:         tcsh-6.15.00-pipe.dif
 Patch2:         tcsh-6.16.00-norm-cmd.dif
-Patch3:         tcsh-6.24.10-history-merge.dif
 Patch4:         tcsh-6.18.03-colorls.dif
 Patch5:         tcsh-6.17.06-dspmbyte.dif
 Patch6:         tcsh-6.18.03-catalogs.dif
@@ -59,7 +58,6 @@
 %setup -q
 %patch -P1      -b .pipe
 %patch -P2      -b .normcmd
-%patch -P3      -b .merge
 %patch -P4      -b .colorls
 %patch -P5      -b .dspmbyte
 %patch -P6      -b .catalogs

++++++ tcsh-6.22.02-local-dotlock.dif ++++++
--- /var/tmp/diff_new_pack.UapTgV/_old  2024-04-05 20:25:52.290269142 +0200
+++ /var/tmp/diff_new_pack.UapTgV/_new  2024-04-05 20:25:52.298269437 +0200
@@ -172,7 +172,7 @@
  #endif /* #ifndef _DOTLOCK_H_ */
 --- sh.hist.c
 +++ sh.hist.c  2020-02-19 09:48:57.640589111 +0000
-@@ -1243,9 +1243,11 @@ fmthist(int fmt, ptr_t ptr)
+@@ -1230,9 +1230,11 @@ fmthist(int fmt, ptr_t ptr)
  }
  
  static void
@@ -186,7 +186,7 @@
  }
  
  /* Save history before exiting the shell. */
-@@ -1325,11 +1327,12 @@ rechist(Char *fname, int ref)
+@@ -1311,11 +1313,12 @@ rechist(Char *fname, int ref)
            jmp_buf_t osetexit;
            if (lock) {
  #ifndef WINNT_NATIVE

++++++ tcsh-6.24.11.tar.gz -> tcsh-6.24.12.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tcsh-6.24.11/Fixes new/tcsh-6.24.12/Fixes
--- old/tcsh-6.24.11/Fixes      2024-03-14 00:04:04.000000000 +0100
+++ new/tcsh-6.24.12/Fixes      2024-04-05 08:39:59.000000000 +0200
@@ -1,3 +1,5 @@
+ 33. V6.24.12 - 2024-04-05
+ 32. Fix history merge and add a test for it (Werner Fink, Kimmo Suominen)
  31. V6.24.11 - 2024-03-14
  30. Make nice priority incremental even with setpriority(2) to match
      how it worked with nice(3) (Kimmo Suominen)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tcsh-6.24.11/configure new/tcsh-6.24.12/configure
--- old/tcsh-6.24.11/configure  2024-03-14 00:04:04.000000000 +0100
+++ new/tcsh-6.24.12/configure  2024-04-05 08:39:59.000000000 +0200
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.72 for Tcsh 6.24.11.
+# Generated by GNU Autoconf 2.72 for Tcsh 6.24.12.
 #
 # Report bugs to <https://bugs.astron.com/>.
 #
@@ -604,8 +604,8 @@
 # Identity of this package.
 PACKAGE_NAME='Tcsh'
 PACKAGE_TARNAME='tcsh'
-PACKAGE_VERSION='6.24.11'
-PACKAGE_STRING='Tcsh 6.24.11'
+PACKAGE_VERSION='6.24.12'
+PACKAGE_STRING='Tcsh 6.24.12'
 PACKAGE_BUGREPORT='https://bugs.astron.com/'
 PACKAGE_URL='https://www.tcsh.org/'
 
@@ -1286,7 +1286,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-'configure' configures Tcsh 6.24.11 to adapt to many kinds of systems.
+'configure' configures Tcsh 6.24.12 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1352,7 +1352,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of Tcsh 6.24.11:";;
+     short | recursive ) echo "Configuration of Tcsh 6.24.12:";;
    esac
   cat <<\_ACEOF
 
@@ -1450,7 +1450,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-Tcsh configure 6.24.11
+Tcsh configure 6.24.12
 generated by GNU Autoconf 2.72
 
 Copyright (C) 2023 Free Software Foundation, Inc.
@@ -2187,7 +2187,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by Tcsh $as_me 6.24.11, which was
+It was created by Tcsh $as_me 6.24.12, which was
 generated by GNU Autoconf 2.72.  Invocation command line was
 
   $ $0$ac_configure_args_raw
@@ -2961,7 +2961,7 @@
 
 
 
-PACKAGE_DATE=2024-03-14
+PACKAGE_DATE=2024-04-05
 
 PACKAGE_ORIGIN=Astron
 
@@ -9516,7 +9516,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by Tcsh $as_me 6.24.11, which was
+This file was extended by Tcsh $as_me 6.24.12, which was
 generated by GNU Autoconf 2.72.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -9585,7 +9585,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config='$ac_cs_config_escaped'
 ac_cs_version="\\
-Tcsh config.status 6.24.11
+Tcsh config.status 6.24.12
 configured by $0, generated by GNU Autoconf 2.72,
   with options \\"\$ac_cs_config\\"
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tcsh-6.24.11/configure.ac 
new/tcsh-6.24.12/configure.ac
--- old/tcsh-6.24.11/configure.ac       2024-03-14 00:04:04.000000000 +0100
+++ new/tcsh-6.24.12/configure.ac       2024-04-05 08:39:59.000000000 +0200
@@ -10,8 +10,8 @@
 dnl
 dnl UPDATE THIS SECTION FOR RELEASE
 dnl
-AC_DEFUN([TCSH_VERSION], [6.24.11])
-AC_DEFUN([TCSH_DATE],    [2024-03-14])
+AC_DEFUN([TCSH_VERSION], [6.24.12])
+AC_DEFUN([TCSH_DATE],    [2024-04-05])
 
 AC_PREREQ([2.69])dnl Minimum Autoconf version required.
 
AC_INIT([Tcsh],TCSH_VERSION,[https://bugs.astron.com/],,[https://www.tcsh.org/])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tcsh-6.24.11/debian/changelog 
new/tcsh-6.24.12/debian/changelog
--- old/tcsh-6.24.11/debian/changelog   2024-03-14 00:04:04.000000000 +0100
+++ new/tcsh-6.24.12/debian/changelog   2024-04-05 08:39:59.000000000 +0200
@@ -1,6 +1,6 @@
-tcsh (6.24.11) unstable; urgency=medium
+tcsh (6.24.12) unstable; urgency=medium
 
-  * Release 6.24.11
+  * Release 6.24.12
   * Please look in the Fixes file for an actual changelog
   * In packaging tcsh:
     - Avoid non-default settings in system-wide init files.
@@ -8,4 +8,4 @@
       to maintain compatibility with older versions packaged by
       Debian.
 
- -- The Tcsh Team <[email protected]>  Thu, 14 Mar 2024 00:00:00 +0000
+ -- The Tcsh Team <[email protected]>  Fri, 05 Apr 2024 00:00:00 +0000
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tcsh-6.24.11/sh.hist.c new/tcsh-6.24.12/sh.hist.c
--- old/tcsh-6.24.11/sh.hist.c  2024-03-14 00:04:04.000000000 +0100
+++ new/tcsh-6.24.12/sh.hist.c  2024-04-05 08:39:59.000000000 +0200
@@ -64,7 +64,6 @@
 
 /* #define DEBUG_HIST 1 */
 
-static const int fastMergeErase = 1;
 static unsigned histCount = 0;         /* number elements on history list */
 static int histlen = 0;
 static struct Hist *histTail = NULL;     /* last element on history list */
@@ -626,15 +625,6 @@
     }
 }
 
-/* Renumber entries following p, which we will be deleting. */
-PG_STATIC void
-renumberHist(struct Hist *p)
-{
-    int n = p->Href;
-    while ((p = p->Hnext))
-        p->Href = n--;
-}
-
 /* The hash table is implemented as an array of pointers to Hist entries.  Each
  * entry is located in the table using hash2tableIndex() and checking the
  * following entries in case of a collision (linear rehash).  Free entries in
@@ -964,8 +954,6 @@
                  * to insert the new entry, then remember the place. */
                 if (mflg && Htime != 0 && p->Hprev->Htime >= Htime)
                     pTime = p->Hprev;
-               if (!fastMergeErase)
-                   renumberHist(p);    /* Reset Href of subsequent entries */
                 hremove(p);
                hfree(p);
                 p = NULL;               /* so new entry is allocated below */
@@ -1031,11 +1019,10 @@
               }
           }
         /* pp is now the last entry with time >= to np. */
-       if (!fastMergeErase) {          /* renumber at end of loadhist */
-           /* Before inserting np after pp, bubble its Hnum & Href values down
-            * through the earlier part of list. */
-           bubbleHnumHrefDown(np, pp);
-       }
+       /* renumber at end of loadhist */
+       /* Before inserting np after pp, bubble its Hnum & Href values down
+        * through the earlier part of list. */
+       bubbleHnumHrefDown(np, pp);
     }
     else
         pp = &Histlist;                 /* insert at beginning of history */
@@ -1389,16 +1376,6 @@
        loadhist_cmd[2] = STRtildothist;
 
     dosource(loadhist_cmd, NULL);
-
-    /* During history merging (enthist sees mflg set), we disable management of
-     * Hnum and Href (because fastMergeErase is true).  So now reset all the
-     * values based on the final ordering of the history list. */
-    if (mflg) {
-       int n = eventno;
-        struct Hist *hp = &Histlist;
-        while ((hp = hp->Hnext))
-           hp->Hnum = hp->Href = n--;
-    }
 }
 
 void
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/tcsh-6.24.11/tests/history.at 
new/tcsh-6.24.12/tests/history.at
--- old/tcsh-6.24.11/tests/history.at   2024-03-14 00:04:04.000000000 +0100
+++ new/tcsh-6.24.12/tests/history.at   2024-04-05 08:39:59.000000000 +0200
@@ -218,6 +218,52 @@
 
 AT_CLEANUP()
 
+AT_SETUP([History merge])
+dnl Check if history merge really works out
+
+AT_DATA([hist-merge.csh],
+[[set histfile=test.history histdup=prev history=(6 "%h TIME %R\n")
+set savehist=(6 merge)
+printf "'%s' %s\n" "$histdup" "$history"
+history -c
+: 1
+: 2
+: 3
+: 4
+: 5
+history -S
+: a
+: b
+: c
+: d
+: e
+history -S
+history -L
+history 6
+]])
+
+AT_CHECK([tcsh -f -q -i < hist-merge.csh], ,
+[> 'prev' 6 %h TIME %R\n
+    24 TIME : b
+    25 TIME : c
+    26 TIME : d
+    27 TIME : e
+    28 TIME history -S
+    29 TIME history 6
+> exit
+],)
+
+dnl In broken case we see the former history instead
+dnl > 'prev' 6 %h TIME %R\n
+dnl    24 TIME : 4
+dnl    25 TIME : 3
+dnl    26 TIME : 2
+dnl    27 TIME : 1
+dnl    28 TIME history -S
+dnl    29 TIME history 6
+dnl > exit
+
+AT_CLEANUP()
 
 dnl
 dnl    History faults

Reply via email to