GNU bug report logs -
#76025
[PATCH 1/1] * lisp/progmodes/sql.el: login without prompting
Previous Next
Full log
View this message in rfc822 format
On Saturday, February 15th, 2025 at 4:25 PM, Ihor Radchenko <yantar92 <at> posteo.net> wrote:
> Ihor Radchenko yantar92 <at> posteo.net writes:
>
> > May you please post the patch on Emacs bug tracker? (M-x
> > submit-emacs-patch) and X-Debbugs-CC me?
> > That way, we get the Emacs maintainers involved into the discussion.
>
>
> The patch is in https://debbugs.gnu.org/cgi/bugreport.cgi?bug=76025
>
> There are no major objections to the patch other than the maintainer
> being interested to coordinate ob-sql improvements and sql.el
> changes.
>
> I am CCing the feature request thread so that we can discuss everything
> together.
>
> May you please update your latest patch for ob-sql.el, converting it
> into (1) patch to sql.el; (2) patch for ob-sql.el that assumes changes
> to sql.el?
>
> --
> Ihor Radchenko // yantar92,
I'm sorry to be late to this party, but this is the first real description of what features were needed from sql.el.
Based on what I'm seeing, I think the feature you want is already present (but can be made simpler for you to use). And the support for the empty name sqlite database is similar to in-memory databases that I have in a local development branch that hasn't been merged/pushed.
The `sql-connect' machinery suppresses prompts for parameters in the connection alist already. There are two ways to take advantage of that: install connection parameters in `sql-connection-alist' with an ob-sql specific connection name and then `sql-connect' to it, or allow `sql-connect' to be called with a complete connection alist entry in place of the connection name. I think the latter option is a better choice, and easy to incorporate into the code; the former option would be a total ob-sql solution. Id be cautious modifying `sql-product-interactive' directly since so much passes thru there and `sql-connect' already implements the logic you want around it.
For sqlite, I've added support for an in-memory database using the name ":memory:" in my local repo. Obviously an empty name indicates a temporary database which may be in-memory, or if larger, in temporary disk space. I'll take a look at adding support for temporary databases but I'm not a huge fan of an empty database name option. Maybe support ":tempdb:" (or similar)?
I am looking to cleanup sql.el (some of it's code is 20+ years old) and has some very broken pieces in it. Changing it to simplify support from treesit and eglot exposes rough edges that will break things for existing users. `sql-connect' is the intended interface for programmatic invocation of SQL-interactive processes.
--
MICHAEL <at> MAUGER.COM // FSF and SFConservancy // GNU Emacs sql.el maintainer
This bug report was last modified today.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.