Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package ed for openSUSE:Factory checked in 
at 2025-12-03 14:11:38
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ed (Old)
 and      /work/SRC/openSUSE:Factory/.ed.new.14147 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "ed"

Wed Dec  3 14:11:38 2025 rev:42 rq:1320793 version:1.22.3

Changes:
--------
--- /work/SRC/openSUSE:Factory/ed/ed.changes    2025-08-25 20:36:03.494963564 
+0200
+++ /work/SRC/openSUSE:Factory/.ed.new.14147/ed.changes 2025-12-03 
14:11:40.752417372 +0100
@@ -1,0 +2,13 @@
+Mon Dec  1 19:45:50 UTC 2025 - Andreas Stieger <[email protected]>
+
+- GNU ed 1.22.3:
+  * The change to print the file name escaped when replaced into a
+    shell command has been reverted
+  * When '--unsafe-names' is not specified, only the control
+    characters \a, \b, \t, \v, \f, \n, \r, \033, and \177 are now
+    rejected in file names
+  * 'make check' now checks file names with non-ASCII characters
+    coded either in ISO-8859-1 or in UTF-8.
+  * 'EXIT STATUS' now has its own section in the man page
+
+-------------------------------------------------------------------

Old:
----
  ed-1.22.2.tar.xz

New:
----
  ed-1.22.3.tar.xz

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

Other differences:
------------------
++++++ ed.spec ++++++
--- /var/tmp/diff_new_pack.VhXl6a/_old  2025-12-03 14:11:41.520449788 +0100
+++ /var/tmp/diff_new_pack.VhXl6a/_new  2025-12-03 14:11:41.524449957 +0100
@@ -18,7 +18,7 @@
 
 
 Name:           ed
-Version:        1.22.2
+Version:        1.22.3
 Release:        0
 Summary:        A line-oriented text editor
 License:        GPL-3.0-or-later AND LGPL-2.1-or-later

++++++ ed-1.22.2.tar.xz -> ed-1.22.3.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ed-1.22.2/ChangeLog new/ed-1.22.3/ChangeLog
--- old/ed-1.22.2/ChangeLog     2025-08-18 18:31:54.000000000 +0200
+++ new/ed-1.22.3/ChangeLog     2025-11-27 15:58:03.000000000 +0100
@@ -1,3 +1,12 @@
+2025-11-27  Antonio Diaz Diaz  <[email protected]>
+
+       * Version 1.22.3 released.
+       * main.c: (show_help): Print "*Exit status*" for section in man page.
+         (may_access_filename): Reject only control chars 7-13, 27, 127.
+       * main_loop.c (get_shell_command): Revert to using 'printf'.
+         (Reported by S�ren Tempel).
+       * check.sh: Check non-ASCII file names coded in ISO-8859-1 and UTF-8.
+
 2025-08-18  Antonio Diaz Diaz  <[email protected]>
 
        * Version 1.22.2 released.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ed-1.22.2/NEWS new/ed-1.22.3/NEWS
--- old/ed-1.22.2/NEWS  2025-08-18 17:55:59.000000000 +0200
+++ new/ed-1.22.3/NEWS  2025-11-27 22:01:18.000000000 +0100
@@ -1,3 +1,15 @@
+Changes in version 1.22.3:
+The change to print the file name escaped when replaced into a shell command
+has been reverted. (Reported by S�ren Tempel).
+
+When '--unsafe-names' is not specified, only the control characters \a, \b,
+\t, \v, \f, \n, \r, \033, and \177 are now rejected in file names.
+
+'make check' now checks file names with non-ASCII characters coded either in
+ISO-8859-1 or in UTF-8.
+
+'EXIT STATUS' now has its own section in the man page.
+
 Changes in version 1.22.2:
 Newline characters are no longer allowed in file names even if
 '--unsafe-names' is specified.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ed-1.22.2/carg_parser.h new/ed-1.22.3/carg_parser.h
--- old/ed-1.22.2/carg_parser.h 2025-07-15 09:33:26.000000000 +0200
+++ new/ed-1.22.3/carg_parser.h 2025-08-20 12:40:14.000000000 +0200
@@ -20,19 +20,18 @@
 /* Arg_parser reads the arguments in 'argv' and creates a number of
    option codes, option arguments, and non-option arguments.
 
-   In case of error, 'ap_error' returns a non-null pointer to an error
-   message.
+   In case of error, 'ap_error' returns a pointer to an error message.
 
    'options' is an array of 'struct ap_Option' terminated by an element
    containing a code which is zero. A null long_name means a short-only
    option. A code value outside the unsigned char range means a long-only
    option.
 
-   Arg_parser normally makes it appear as if all the option arguments
-   were specified before all the non-option arguments for the purposes
-   of parsing, even if the user of your program intermixed option and
-   non-option arguments. If you want the arguments in the exact order
-   the user typed them, call 'ap_init' with 'in_order' = true.
+   Arg_parser normally makes it appear as if all the options were specified
+   before all the non-option arguments for the purposes of parsing, even if
+   the user of your program intermixed options and non-option arguments. If
+   you want the arguments in the exact order the user typed them, call
+   'ap_init' with 'in_order' = true.
 
    The argument '--' terminates all options; any following arguments are
    treated as non-option arguments, even if they begin with a hyphen.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ed-1.22.2/configure new/ed-1.22.3/configure
--- old/ed-1.22.2/configure     2025-08-07 12:25:39.000000000 +0200
+++ new/ed-1.22.3/configure     2025-11-16 11:04:14.000000000 +0100
@@ -6,7 +6,7 @@
 # to copy, distribute, and modify it.
 
 pkgname=ed
-pkgversion=1.22.2
+pkgversion=1.22.3
 progname=ed
 srctrigger=doc/${pkgname}.texi
 
@@ -104,11 +104,9 @@
        LDFLAGS=*)    LDFLAGS=${optarg} ;;
        MAKEINFO=*)  MAKEINFO=${optarg} ;;
 
-       --*)
-               echo "configure: WARNING: unrecognized option: '${option}'" 
1>&2 ;;
+       --*) echo "configure: WARNING: unrecognized option: '${option}'" 1>&2 ;;
        *=* | *-*-*) ;;
-       *)
-               echo "configure: unrecognized option: '${option}'" 1>&2
+       *)      echo "configure: unrecognized option: '${option}'" 1>&2
                echo "Try 'configure --help' for more information." 1>&2
                exit 1 ;;
        esac
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ed-1.22.2/doc/ed.1 new/ed-1.22.3/doc/ed.1
--- old/ed-1.22.2/doc/ed.1      2025-08-18 18:32:16.000000000 +0200
+++ new/ed-1.22.3/doc/ed.1      2025-11-27 22:02:50.000000000 +0100
@@ -1,5 +1,5 @@
 .\" DO NOT MODIFY THIS FILE!  It was generated by help2man 1.49.2.
-.TH ED "1" "August 2025" "GNU ed 1.22.2" "User Commands"
+.TH ED "1" "November 2025" "GNU ed 1.22.3" "User Commands"
 .SH NAME
 ed \- line-oriented text editor
 .SH SYNOPSIS
@@ -18,6 +18,9 @@
 current line to the line number specified or to the first or last line
 matching the regular expression 'RE'.
 .PP
+Start edit by reading in 'file' if given.
+If 'file' begins with a '!', read output of shell command.
+.PP
 The environment variable LINES can be used to set the initial window size.
 .SH OPTIONS
 .TP
@@ -56,15 +59,11 @@
 .TP
 \fB\-\-unsafe\-names\fR
 allow control characters in file names
-.PP
-Start edit by reading in 'file' if given.
-If 'file' begins with a '!', read output of shell command.
-.PP
-Exit status: 0 for a normal exit, 1 for environmental problems
-(invalid command\-line options, memory exhausted, command failed, etc),
-2 for problems with the input file (file not found, buffer modified,
-I/O errors), 3 for an internal consistency error (e.g., bug) which caused
-ed to panic.
+.SH "EXIT STATUS"
+0 for a normal exit, 1 for environmental problems (invalid command\-line
+options, memory exhausted, command failed, etc), 2 for problems with the
+input file (file not found, buffer modified, I/O errors), 3 for an internal
+consistency error (e.g., bug) which caused ed to panic.
 .SH "REPORTING BUGS"
 Report bugs to bug\[email protected]
 .br
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ed-1.22.2/doc/ed.info new/ed-1.22.3/doc/ed.info
--- old/ed-1.22.2/doc/ed.info   2025-08-18 18:18:00.000000000 +0200
+++ new/ed-1.22.3/doc/ed.info   2025-11-27 14:08:29.000000000 +0100
@@ -18,7 +18,7 @@
 The GNU ed line editor
 **********************
 
-This manual is for GNU ed (version 1.22.2, 18 August 2025).
+This manual is for GNU ed (version 1.22.3, 27 November 2025).
 
 * Menu:
 
@@ -398,9 +398,10 @@
      restored when saving the buffer to a file.
 
 '--unsafe-names'
-     'ed' rejects file names containing control characters unless they are
-     allowed with this option. Newline characters in file names are rejected
-     even if this option is specified.
+     'ed' rejects file names containing the control characters '\a', '\b',
+     '\t', '\v', '\f', '\r', '\033', and '\177' unless they are allowed
+     with this option. Newline characters in file names are rejected even
+     if this option is specified.
 
 
 Exit status: 0 for a normal exit, 1 for environmental problems (invalid
@@ -1604,20 +1605,20 @@
 
 Tag Table:
 Node: Top529
-Node: Overview1899
-Node: Introduction to line editing4747
-Node: Invoking ed11960
-Node: Argument syntax15952
-Node: Line addressing17714
-Node: Regular expressions21730
-Node: Commands27900
-Ref: print suffixes28235
-Ref: shell escape command40748
-Node: The 's' Command42326
-Node: Limitations45220
-Node: Diagnostics46237
-Node: Problems47066
-Node: GNU Free Documentation License47598
+Node: Overview1901
+Node: Introduction to line editing4749
+Node: Invoking ed11962
+Node: Argument syntax16018
+Node: Line addressing17780
+Node: Regular expressions21796
+Node: Commands27966
+Ref: print suffixes28301
+Ref: shell escape command40814
+Node: The 's' Command42392
+Node: Limitations45286
+Node: Diagnostics46303
+Node: Problems47132
+Node: GNU Free Documentation License47664
 
 End Tag Table
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ed-1.22.2/doc/ed.texi new/ed-1.22.3/doc/ed.texi
--- old/ed-1.22.2/doc/ed.texi   2025-08-18 18:17:57.000000000 +0200
+++ new/ed-1.22.3/doc/ed.texi   2025-11-27 14:08:11.000000000 +0100
@@ -6,8 +6,8 @@
 @finalout
 @c %**end of header
 
-@set UPDATED 18 August 2025
-@set VERSION 1.22.2
+@set UPDATED 27 November 2025
+@set VERSION 1.22.3
 
 @dircategory Basics
 @direntry
@@ -455,9 +455,10 @@
 buffer to a file.
 
 @item --unsafe-names
-@command{ed} rejects file names containing control characters unless they
-are allowed with this option. Newline characters in file names are rejected
-even if this option is specified.
+@command{ed} rejects file names containing the control characters @samp{\a},
+@samp{\b}, @samp{\t}, @samp{\v}, @samp{\f}, @samp{\r}, @samp{\033}, and
+@samp{\177} unless they are allowed with this option. Newline characters in
+file names are rejected even if this option is specified.
 
 @end table
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ed-1.22.2/ed.h new/ed-1.22.3/ed.h
--- old/ed-1.22.2/ed.h  2025-08-18 17:33:07.000000000 +0200
+++ new/ed-1.22.3/ed.h  2025-10-10 13:47:21.000000000 +0200
@@ -102,7 +102,7 @@
 bool get_extended_line( const char ** const ibufpp, int * const lenp,
                         const bool strip_escaped_newlines );
 const char * get_stdin_line( int * const sizep );
-int linenum( void );
+unsigned linenum( void );
 bool print_lines( int from, const int to, const int pflags );
 int read_file( const char * const filename, const int addr,
                bool * const read_onlyp );
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ed-1.22.2/io.c new/ed-1.22.3/io.c
--- old/ed-1.22.2/io.c  2025-08-18 17:07:56.000000000 +0200
+++ new/ed-1.22.3/io.c  2025-10-10 13:47:21.000000000 +0200
@@ -25,9 +25,9 @@
 
 
 static const line_node * unterminated_line = 0;        /* last line has no 
'\n' */
-static int linenum_ = 0;                       /* script line number */
+static unsigned linenum_ = 0;                  /* script line number */
 
-int linenum( void ) { return linenum_; }
+unsigned linenum( void ) { return linenum_; }
 
 void reset_unterminated_line( void ) { unterminated_line = 0; }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ed-1.22.2/main.c new/ed-1.22.3/main.c
--- old/ed-1.22.2/main.c        2025-08-18 17:33:07.000000000 +0200
+++ new/ed-1.22.3/main.c        2025-11-27 12:43:40.000000000 +0100
@@ -79,6 +79,8 @@
   printf( "\nThe file name may be preceded by '+line', '+/RE', or '+?RE' to 
set the\n"
           "current line to the line number specified or to the first or last 
line\n"
           "matching the regular expression 'RE'.\n"
+          "\nStart edit by reading in 'file' if given.\n"
+          "If 'file' begins with a '!', read output of shell command.\n"
           "\nThe environment variable LINES can be used to set the initial 
window size.\n"
           "\nOptions:\n"
           "  -h, --help                 display this help and exit\n"
@@ -93,13 +95,11 @@
           "  -v, --verbose              be verbose; equivalent to the 'H' 
command\n"
           "      --strip-trailing-cr    strip carriage returns at end of text 
lines\n"
           "      --unsafe-names         allow control characters in file 
names\n"
-          "\nStart edit by reading in 'file' if given.\n"
-          "If 'file' begins with a '!', read output of shell command.\n"
-          "\nExit status: 0 for a normal exit, 1 for environmental problems\n"
-          "(invalid command-line options, memory exhausted, command failed, 
etc),\n"
-          "2 for problems with the input file (file not found, buffer 
modified,\n"
-          "I/O errors), 3 for an internal consistency error (e.g., bug) which 
caused\n"
-          "ed to panic.\n"
+          "\n*Exit status*\n"
+          "0 for a normal exit, 1 for environmental problems (invalid 
command-line\n"
+          "options, memory exhausted, command failed, etc), 2 for problems 
with the\n"
+          "input file (file not found, buffer modified, I/O errors), 3 for an 
internal\n"
+          "consistency error (e.g., bug) which caused ed to panic.\n"
           "\nReport bugs to [email protected]\n"
           "Ed home page: http://www.gnu.org/software/ed/ed.html\n";
           "General help using GNU software: http://www.gnu.org/gethelp\n"; );
@@ -208,9 +208,10 @@
       { set_error_msg( "Newline character not allowed in file names" );
         return false; }
   if( safe_names )
-    for( p = name; *p; ++p ) if( ( *p <= 31 && *p >= 1 ) || *p == 127 )
-      { set_error_msg( "Control characters not allowed in file names" );
-        return false; }
+    for( p = name; *p; ++p )
+      if( ( *p <= 13 && *p >= 7 ) || *p == 27 || *p == 127 )
+        { set_error_msg( "Control characters not allowed in file names" );
+          return false; }
   return true;
   }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ed-1.22.2/main_loop.c new/ed-1.22.3/main_loop.c
--- old/ed-1.22.2/main_loop.c   2025-08-18 17:47:04.000000000 +0200
+++ new/ed-1.22.3/main_loop.c   2025-11-12 18:33:12.000000000 +0100
@@ -161,8 +161,7 @@
   if( !resize_buffer( &shcmd, &shcmdsz, i + 1 ) ) return 0;
   memcpy( shcmd, buf, i );
   shcmd[i] = 0; shcmdlen = i;
-  if( replacement )
-    { print_escaped( shcmd + 1, true ); putchar('\n'); fflush( stdout ); }
+  if( replacement ) { printf( "%s\n", shcmd + 1 ); fflush( stdout ); }
   return shcmd;
   }
 
@@ -844,7 +843,7 @@
     set_warned( status == EMOD );              /* errors reset warned */
     if( warned() ) set_error_msg( "Warning: buffer modified" );
     if( !interactive() )
-      { if( verbose ) printf( "script, line %d: %s\n", linenum(), errmsg );
+      { if( verbose ) printf( "script, line %u: %s\n", linenum(), errmsg );
         return ( status == FATAL ) ? 1 : err_status; }
     if( status == FATAL )
       { if( verbose ) { printf( "%s\n", errmsg ); } return 1; }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/ed-1.22.2/testsuite/check.sh 
new/ed-1.22.3/testsuite/check.sh
--- old/ed-1.22.2/testsuite/check.sh    2025-01-05 22:05:29.000000000 +0100
+++ new/ed-1.22.3/testsuite/check.sh    2025-10-15 00:52:27.000000000 +0200
@@ -29,7 +29,7 @@
 
 printf "testing ed-%s...\n" "$2"
 
-"${ED}" -q nx_file < empty
+"${ED}" -q nx_file < empty                             # no such file
 [ $? = 2 ] || test_failed $LINENO
 "${ED}" -q +0 test.txt < empty                         # invalid line number
 [ $? = 1 ] || test_failed $LINENO
@@ -52,6 +52,10 @@
 printf "a\nHello world!\n.\ne test.txt\nf 
foo.txt\nf\nh\nH\nH\nkx\nl\nn\np\nP\nP\ny\n.z\n# comment\n=\n!:\n.\ne 
test.txt\n8p\n" | "${ED}" -s | grep -q 'agrarian' || test_failed $LINENO
 echo "q" | "${ED}" -q 'name_with_bell.txt' && test_failed $LINENO
 echo "q" | "${ED}" -q --unsafe-names 'name_with_bell.txt' || test_failed 
$LINENO
+printf 'w caf�_iso.txt\nq\n' | "${ED}" -s test.txt || test_failed $LINENO
+printf 'w café_utf.txt\nq\n' | "${ED}" -s test.txt || test_failed $LINENO
+cmp 'caf�_iso.txt' 'café_utf.txt' || test_failed $LINENO
+rm -f 'caf�_iso.txt' 'café_utf.txt'
 
 if [ ${fail} != 0 ] ; then echo ; fi
 

Reply via email to