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 MEAPR01MB30316011F7E46FEAB98013C7B684A@MEAPR01MB3031.ausprd01.prod.outlook.com
обсуждение исходный текст
Ответ на Remove deprecated role membership options from psql help for CREATE USER/GROUP  (Japin Li <japinli@hotmail.com>)
Ответы Re: Remove deprecated role membership options from psql help for CREATE USER/GROUP
Re: Remove deprecated role membership options from psql help for CREATE USER/GROUP
Список pgsql-hackers
On Wed, 07 Jan 2026 at 18:52, Japin Li <japinli@hotmail.com> wrote:
> 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.
Doesthe patch 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.
>

Sorry, I made a typo, the script is src/bin/psql/create_help.pl.

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



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