Add psql \drg command to display role grants.
commit0a1d2a7df852f16c452eef8a83003943125162c7
authorTom Lane <tgl@sss.pgh.pa.us>
Wed, 19 Jul 2023 16:46:30 +0000 (19 12:46 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Wed, 19 Jul 2023 16:46:30 +0000 (19 12:46 -0400)
treeb4db3fc144d20d6de6313cfbbc02aeb4da8c765b
parent245d0e6d0d1cc563c986fa34736b111bdf260af0
Add psql \drg command to display role grants.

With the addition of INHERIT and SET options for role grants,
the historical display of role memberships in \du/\dg is woefully
inadequate.  Besides those options, there are pre-existing
shortcomings that you can't see the ADMIN option nor the grantor.

To fix this, remove the "Member of" column from \du/\dg altogether
(making that output usefully narrower), and invent a new meta-command
"\drg" that is specifically for displaying role memberships.  It
shows one row for each role granted to the selected role(s), with
the grant options and grantor.

We would not normally back-patch such a feature addition post
feature freeze, but in this case the change is mainly driven by
v16 changes in the server, so it seems appropriate to include it
in v16.

Pavel Luzanov, with bikeshedding and review from a lot of people,
but particularly David Johnston

Discussion: https://postgr.es/m/b9be2d0e-a9bc-0a30-492f-a4f68e4f7740@postgrespro.ru
doc/src/sgml/ref/psql-ref.sgml
src/bin/psql/command.c
src/bin/psql/describe.c
src/bin/psql/describe.h
src/bin/psql/help.c
src/bin/psql/tab-complete.c
src/test/regress/expected/psql.out
src/test/regress/sql/psql.sql