Re: Remove deprecated role membership options from psql help for CREATE USER/GROUP

Поиск
Список
Период
Сортировка
От Japin Li
Тема Re: Remove deprecated role membership options from psql help for CREATE USER/GROUP
Дата
Msg-id MEAPR01MB303180DF7D064EC4050537ABB684A@MEAPR01MB3031.ausprd01.prod.outlook.com
обсуждение исходный текст
Ответ на Re: Remove deprecated role membership options from psql help for CREATE USER/GROUP  (Chao Li <li.evan.chao@gmail.com>)
Список pgsql-hackers
On Wed, 07 Jan 2026 at 17:30, Chao Li <li.evan.chao@gmail.com> wrote:
>> On Jan 6, 2026, at 18:16, Japin Li <japinli@hotmail.com> wrote:
>> 
>> 
>> Hi,
>> 
>> When I review [1], I found commit 8e78f0a1 deprecated the IN GROUP and USER
>> clauses in CREATE ROLE, and also removed IN GROUP and USER from the psql \h
>> CREATE ROLE help output.
>> 
>> However, the psql help for the legacy synonyms CREATE USER and CREATE GROUP
>> still lists the deprecated options:
>> 
>> - IN GROUP role_name [, ...]
>> - USER role_name [, ...]
>> 
>> postgres=# \h create role
>> Command:     CREATE ROLE
>> Description: define a new database role
>> Syntax:
>> CREATE ROLE name [ [ WITH ] option [ ... ] ]
>> 
>> where option can be:
>> 
>>      SUPERUSER | NOSUPERUSER
>>    | CREATEDB | NOCREATEDB
>>    | CREATEROLE | NOCREATEROLE
>>    | INHERIT | NOINHERIT
>>    | LOGIN | NOLOGIN
>>    | REPLICATION | NOREPLICATION
>>    | BYPASSRLS | NOBYPASSRLS
>>    | CONNECTION LIMIT connlimit
>>    | [ ENCRYPTED ] PASSWORD 'password' | PASSWORD NULL
>>    | VALID UNTIL 'timestamp'
>>    | IN ROLE role_name [, ...]
>>    | ROLE role_name [, ...]
>>    | ADMIN role_name [, ...]
>>    | SYSID uid
>> 
>> URL: https://www.postgresql.org/docs/devel/sql-createrole.html
>> 
>> postgres=# \h create user
>> Command:     CREATE USER
>> Description: define a new database role
>> Syntax:
>> CREATE USER name [ [ WITH ] option [ ... ] ]
>> 
>> where option can be:
>> 
>>      SUPERUSER | NOSUPERUSER
>>    | CREATEDB | NOCREATEDB
>>    | CREATEROLE | NOCREATEROLE
>>    | INHERIT | NOINHERIT
>>    | LOGIN | NOLOGIN
>>    | REPLICATION | NOREPLICATION
>>    | BYPASSRLS | NOBYPASSRLS
>>    | CONNECTION LIMIT connlimit
>>    | [ ENCRYPTED ] PASSWORD 'password' | PASSWORD NULL
>>    | VALID UNTIL 'timestamp'
>>    | IN ROLE role_name [, ...]
>>    | IN GROUP role_name [, ...]
>>    | ROLE role_name [, ...]
>>    | ADMIN role_name [, ...]
>>    | USER role_name [, ...]
>>    | SYSID uid
>> 
>> URL: https://www.postgresql.org/docs/devel/sql-createuser.html
>> 
>> postgres=# \h create group
>> Command:     CREATE GROUP
>> Description: define a new database role
>> Syntax:
>> CREATE GROUP name [ [ WITH ] option [ ... ] ]
>> 
>> where option can be:
>> 
>>      SUPERUSER | NOSUPERUSER
>>    | CREATEDB | NOCREATEDB
>>    | CREATEROLE | NOCREATEROLE
>>    | INHERIT | NOINHERIT
>>    | LOGIN | NOLOGIN
>>    | REPLICATION | NOREPLICATION
>>    | BYPASSRLS | NOBYPASSRLS
>>    | CONNECTION LIMIT connlimit
>>    | [ ENCRYPTED ] PASSWORD 'password' | PASSWORD NULL
>>    | VALID UNTIL 'timestamp'
>>    | IN ROLE role_name [, ...]
>>    | IN GROUP role_name [, ...]
>>    | ROLE role_name [, ...]
>>    | ADMIN role_name [, ...]
>>    | USER role_name [, ...]
>>    | SYSID uid
>> 
>> URL: https://www.postgresql.org/docs/devel/sql-creategroup.html
>> 
>> Since CREATE USER is documented as equivalent to CREATE ROLE WITH LOGIN, and
>> CREATE GROUP is equivalent to CREATE ROLE, their help syntax should remain
>> consistent with CREATE ROLE.
>> 
>> I propose removing the deprecated IN GROUP and USER lines from the help text
>> of both CREATE USER and CREATE GROUP. This would be a simple documentation
>> cleanup that aligns the psql help with current reality and avoids confusing
>> users with obsolete syntax.
>> 
>> [1] https://www.postgresql.org/message-id/4c5f895e-3281-48f8-b943-9228b7da6471%40gmail.com
>> 
>> -- 
>> Regards,
>> Japin Li
>> ChengDu WenWu Information Technology Co., Ltd.
>> 
>> <v1-0001-Remove-deprecated-role-options-for-CREATE-USER-GR.patch>
>
>
> ```
> This commit removes the deprecated IN GROUP and USER lines from the psql
> help output for CREATE USER and CREATE GROUP.
> ```
>
> The commit message claims to remove things from psql help output, but the change actually updated the SGML docs. Does
thepatch miss the change on psql?
 

Hmm, psql's SQL help (\h) output is generated from SGML. See the generator
scripts: src/bin/psql/create_*_help.pl.

-- 
Regards,
Japin Li
ChengDu WenWu Information Technology Co., Ltd.



В списке pgsql-hackers по дате отправления: