BUG #15705: psql autocompletion is not always correct with latest libedit
The following bug has been logged on the website:
Bug reference: 15705
Logged by: Alexander Pyhalov
Email address: apyhalov@gmail.com
PostgreSQL version: 11.2
Operating system: OpenIndiana
Description:
After updating libedit from 20170329-3.1 to 20181209-3.1 we see the
following issue in psql:
while typing "create user test encr<TAB>" I see:
create user test encrypted\ password
(note \ before space)
The issue seems to be in
https://github.com/NetBSD/src/commit/47081400d868e1d6dd5629bea97c599c48404839
- now libedit treats input as file names and escapes it accordingly.
PG Bug reporting form <noreply@postgresql.org> writes:
After updating libedit from 20170329-3.1 to 20181209-3.1 we see the
following issue in psql:
while typing "create user test encr<TAB>" I see:create user test encrypted\ password
(note \ before space)
The issue seems to be in
https://github.com/NetBSD/src/commit/47081400d868e1d6dd5629bea97c599c48404839
- now libedit treats input as file names and escapes it accordingly.
I think you need to complain to the libedit authors, not us.
While I can't find any API spec anywhere for libedit's completion
functionality, it seems to be meant to match GNU readline,
and the GNU docs are pretty clear that the results of
rl_attempted_completion_function should be taken literally.
I think they injected the extra quoting at the wrong level ...
regards, tom lane