Re: [PATCH] Tab complete EXECUTE FUNCTION for CREATE (EVENT) TRIGGER
Dagfinn Ilmari Mannsåker <ilmari@ilmari.org>
From: ilmari@ilmari.org (Dagfinn Ilmari Mannsåker )
To: David Fetter <david@fetter.org>
Cc: Michael Paquier <michael@paquier.xyz>, pgsql-hackers@postgresql.org
Date: 2018-10-24T09:36:41Z
Lists: pgsql-hackers
Attachments
David Fetter <david@fetter.org> writes:
> On Wed, Oct 24, 2018 at 08:43:05AM +0900, Michael Paquier wrote:
>> On Tue, Oct 23, 2018 at 12:26:35PM +0100, Dagfinn Ilmari Mannsåker wrote:
>> > The last-minute change for CREATE (EVENT) TRIGGER to accept EXECUTE
>> > FUNCTION as well as EXECUTE PROCEDURE did not update the tab completion
>> > in psql to match. Please find attached two patches that do this for
>> > CREATE TRIGGER and CREATE EVENT TRIGGER, respectively.
>>
>> Yes, it would be nice to fix that.
>>
>> > To keep the duplication minimal, I've changed it from completing EXECUTE
>> > PROCEDURE as a single thing to just EXECUTE, and then completing
>> > FUNCTION or FUNCTION and PROCEDURE after that depending on the server
>> > version.
>>
>> + else if (HeadMatches("CREATE", "EVENT", "TRIGGER") && TailMatches("EXECUTE"))
>> + if (pset.sversion >= 110000)
>> + COMPLETE_WITH("FUNCTION", "PROCEDURE");
>> + else
>> + COMPLETE_WITH("PROCEDURE");
>>
>> PROCEDURE is documented as deprecated as of v11 for CREATE TRIGGER
>> and CREATE EVENT TRIGGER. Wouldn't it be better to just complete
>> with FUNCTION for a v11 or newer server? I think that we want to
>> encourage users to use EXECUTE FUNCTION if possible.
>
> +1 for not completing with syntax we've just deprecated.
Fair point. I was unsure about whether to complete every supported
variant or just the new one. Updated patches attached.
- ilmari
--
"I use RMS as a guide in the same way that a boat captain would use
a lighthouse. It's good to know where it is, but you generally
don't want to find yourself in the same spot." - Tollef Fog Heen
Commits
-
Add tab completion of EXECUTE FUNCTION for CREATE TRIGGER in psql
- fdf5eade9626 11.1 landed
- 292ef6e2778a 12.0 landed
-
Improve tab completion of CREATE EVENT TRIGGER in psql
- 5953c9969762 12.0 landed
-
Improve tab completion for ANALYZE, EXPLAIN, and VACUUM.
- 121213d9d852 12.0 cited