Remove test-case workarounds for ancient libedit versions.
authorTom Lane <[email protected]>
Wed, 4 Sep 2024 20:25:28 +0000 (16:25 -0400)
committerTom Lane <[email protected]>
Wed, 4 Sep 2024 20:25:28 +0000 (16:25 -0400)
This reverts some hacks added in d33a81203 and cd69ec66c.
At the time the concern was the already-ancient version of
libedit shipped in Debian 10 (Buster).  That platform is
now two years past EOL, so desupporting it for PG 18 seems
fine.  (Also, if anyone is really hot to keep testing it,
they can use SKIP_READLINE_TESTS to skip this test.)

We might have to reconsider if any animals still in the
buildfarm don't like this, but the best way to find out
is to try it.

Anton Melnikov

Discussion: https://postgr.es/m/CAGRrpzZU48F2oV3d8eDLr=4TU9xFH5Jt9ED+qU1+X91gMH68Sw@mail.gmail.com

src/bin/psql/t/010_tab_completion.pl

index b45c39f0f5249249b4dfbdf6d513eda8f8dd7156..fd645896c97939d511a5a13a067c03f23eb0dad3 100644 (file)
@@ -167,26 +167,18 @@ check_completion(
        qr/"mytab123" +"mytab246"/,
        "offer multiple quoted table choices");
 
-# note: broken versions of libedit want to backslash the closing quote;
-# not much we can do about that
-check_completion("2\t", qr/246\\?" /,
+check_completion("2\t", qr/246" /,
        "finish completion of one of multiple quoted table choices");
 
-# note: broken versions of libedit may leave us in a state where psql
-# thinks there's an unclosed double quote, so that we have to use
-# clear_line not clear_query here
-clear_line();
+clear_query();
 
 # check handling of mixed-case names
-# note: broken versions of libedit want to backslash the closing quote;
-# not much we can do about that
 check_completion(
        "select * from \"mi\t",
-       qr/"mixedName\\?" /,
+       qr/"mixedName" /,
        "complete a mixed-case name");
 
-# as above, must use clear_line not clear_query here
-clear_line();
+clear_query();
 
 # check case folding
 check_completion("select * from TAB\t", qr/tab1 /, "automatically fold case");
@@ -198,8 +190,7 @@ clear_query();
 # differently, so just check that the replacement comes out correctly
 check_completion("\\DRD\t", qr/drds /, "complete \\DRD<tab> to \\drds");
 
-# broken versions of libedit require clear_line not clear_query here
-clear_line();
+clear_query();
 
 # check completion of a schema-qualified name
 check_completion("select * from pub\t",
@@ -261,18 +252,16 @@ check_completion(
        qr|tab_comp_dir/af\a?ile|,
        "filename completion with multiple possibilities");
 
-# broken versions of libedit require clear_line not clear_query here
+# here we are inside a string literal 'afile*', so must use clear_line().
 clear_line();
 
 # COPY requires quoting
-# note: broken versions of libedit want to backslash the closing quote;
-# not much we can do about that
 check_completion(
        "COPY foo FROM tab_comp_dir/some\t",
-       qr|'tab_comp_dir/somefile\\?' |,
+       qr|'tab_comp_dir/somefile' |,
        "quoted filename completion with one possibility");
 
-clear_line();
+clear_query();
 
 check_completion(
        "COPY foo FROM tab_comp_dir/af\t",