On Tue, Jan 6, 2026 at 7:16 PM Japin Li <[email protected]> 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
The patch looks good to me.

Regards,

-- 
Fujii Masao


Reply via email to