From unknown Mon Jun 16 23:44:35 2025 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.509 (Entity 5.509) Content-Type: text/plain; charset=utf-8 From: bug#20422 <20422@debbugs.gnu.org> To: bug#20422 <20422@debbugs.gnu.org> Subject: Status: 24.3; sql-connect uses local rather than remote client Reply-To: bug#20422 <20422@debbugs.gnu.org> Date: Tue, 17 Jun 2025 06:44:35 +0000 retitle 20422 24.3; sql-connect uses local rather than remote client reassign 20422 emacs submitter 20422 Matthew Krauss severity 20422 normal thanks From debbugs-submit-bounces@debbugs.gnu.org Fri Apr 24 20:23:36 2015 Received: (at submit) by debbugs.gnu.org; 25 Apr 2015 00:23:36 +0000 Received: from localhost ([127.0.0.1]:39076 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1Ylnsb-0005bd-EK for submit@debbugs.gnu.org; Fri, 24 Apr 2015 20:23:35 -0400 Received: from eggs.gnu.org ([208.118.235.92]:60913) by debbugs.gnu.org with esmtp (Exim 4.80) (envelope-from ) id 1YlnI1-0004g4-GF for submit@debbugs.gnu.org; Fri, 24 Apr 2015 19:45:48 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YlnHr-0005Yz-N2 for submit@debbugs.gnu.org; Fri, 24 Apr 2015 19:45:40 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,FREEMAIL_FROM, URI_TRY_3LD autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:58617) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YlnHr-0005Yv-JR for submit@debbugs.gnu.org; Fri, 24 Apr 2015 19:45:35 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:46175) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YlnHo-00064x-93 for bug-gnu-emacs@gnu.org; Fri, 24 Apr 2015 19:45:35 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YlnHh-0005Vg-PH for bug-gnu-emacs@gnu.org; Fri, 24 Apr 2015 19:45:29 -0400 Received: from nabmail01.northamericanbancard.com ([66.103.255.162]:62835) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YlnHh-0005VU-Iw for bug-gnu-emacs@gnu.org; Fri, 24 Apr 2015 19:45:25 -0400 Received: from mkrauss-NAB-ThinkPad-W530 (unknown [172.22.200.89]) (using TLSv1.2 with cipher DHE-RSA-AES128-SHA (128/128 bits)) (No client certificate requested) by nabmail01.northamericanbancard.com (Postfix) with ESMTPS id 78B5517FB for ; Fri, 24 Apr 2015 19:45:24 -0400 (EDT) From: Matthew Krauss To: bug-gnu-emacs@gnu.org Subject: 24.3; sql-connect uses local rather than remote client Date: Fri, 24 Apr 2015 19:44:21 -0400 Message-ID: <87pp6tm6qy.fsf@mkrauss-NAB-ThinkPad-W530.i-did-not-set--mail-host-address--so-tickle-me> MIME-Version: 1.0 Content-Type: text/plain X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-detected-operating-system: by eggs.gnu.org: Error: Malformed IPv6 address (bad octet value). X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -4.0 (----) X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Fri, 24 Apr 2015 20:23:31 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -4.0 (----) Hi! So I have encountered a minor problem. Not sure if this is a bug or a feature request... When using: M-x sql-connect to connect to a SQL server (in my case PostgreSQL but I doubt that is relevant) Emacs does not seem to have a way to use the correct backend client (e.g. psql) to match the server version. So suppose the following configuration: (setq sql-connection-alist '(("my-older-postgres-server" (sql-product 'postgres) (sql-user "myusername") (sql-password "mypassword") (sql-server "myserver.example.com") (sql-database "mydatabase")))) My local machine has, let's say, psql 9.3.6. The server has Postgres 8.4.14. Because these are different versions, some things will not work correctly. I may be able to install an older psql, but that may not work if I also am connecting to a different server running 9.3.6, or, say, 9.4.1. The obvious solution is to use the psql client on the server, which should match the server version. This is really easy to do, with Emacs and Tramp. For instance, I can open an eshell and enter: cd /myserver.example.com: Now from this buffer I can invoke sql-connect and it will run the psql client from the remote machine. However, this is kind of a pain to do every time, and embarrassing when I am trying to show off in front of my non-emacs-using co-workers and fail to remember this step, only to have weird errors showing up. Now if I could use this configuration instead: (setq sql-connection-alist '(("my-older-postgres-server" (sql-product 'postgres) (sql-user "myusername") (sql-password "mypassword") (sql-server "myserver.example.com") (sql-database "mydatabase") (default-directory "/myserver.example.com:")))) and have that change the working directory before connecting, that would be really great! Not only does it allow invoking a remote psql process, but it also allows changing the working directory for any other purpose you might want. In fact, I have patched my sql.el to allow exactly this. At the bottom of the defun SQL-CONNECT I have changed the bit that invokes SQL-PRODUCT-INTERACTIVE to set the default directory as so: (eval `(let ((,param-var ',rem-params) (default-directory ,(or (cadr (assoc 'default-directory (cdr connect-set))) default-directory))) (sql-product-interactive sql-product new-name))) This is probably not the best, second best, or even third best way to do this. It might be the very worst. However, it does work for me. If someone wants to put this in Emacs, it might be ideal to allow overriding any variable for the call. In GNU Emacs 24.3.1 (x86_64-pc-linux-gnu, GTK+ Version 3.10.7) of 2014-03-07 on lamiak, modified by Debian Windowing system distributor `The X.Org Foundation', version 11.0.11501000 System Description: Ubuntu 14.04.2 LTS Configured using: `configure '--build' 'x86_64-linux-gnu' '--build' 'x86_64-linux-gnu' '--prefix=/usr' '--sharedstatedir=/var/lib' '--libexecdir=/usr/lib' '--localstatedir=/var/lib' '--infodir=/usr/share/info' '--mandir=/usr/share/man' '--with-pop=yes' '--enable-locallisppath=/etc/emacs24:/etc/emacs:/usr/local/share/emacs/24.3/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/24.3/site-lisp:/usr/share/emacs/site-lisp' '--with-crt-dir=/usr/lib/x86_64-linux-gnu' '--with-x=yes' '--with-x-toolkit=gtk3' '--with-toolkit-scroll-bars' 'build_alias=x86_64-linux-gnu' 'CFLAGS=-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall' 'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro' 'CPPFLAGS=-D_FORTIFY_SOURCE=2'' Important settings: value of $LANG: en_CA.UTF-8 value of $XMODIFIERS: @im=ibus locale-coding-system: utf-8-unix default enable-multibyte-characters: t Major mode: Lisp Interaction Minor modes in effect: rngalt-minimal-validation-header: t rngalt-display-validation-header: t magit-auto-revert-mode: t diff-auto-refine-mode: t global-auto-revert-mode: t winner-mode: t ido-vertical-mode: t desktop-save-mode: t nxhtml-tag-do-also: t popcmp-group-alternatives: t popcmp-short-help-beside-alts: t shell-dirtrack-mode: t yas-global-mode: t yas-minor-mode: t nxhtml-menu-mode: t tooltip-mode: t mouse-wheel-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t line-number-mode: t transient-mark-mode: t Recent input: C-x b C-x k y e s C-x b s q l C-s C-r C-s M-< M-> C-x k C-x b y e s C-x b s q l C-s M-< M-> C-x k y e s C-y M-y M-y M-y M-y C-/ C-p C-p C-p C-a M-> \ x SPC o n M-p M-p \ s x x SPC a u t o M-p M-p C-x o M-x r e p o r t - e m C-g C-x b s c M-x M-p Recent messages: Mark set [2 times] Process SQL<1> exited abnormally with code 129 Mark set Undo! Mark set History item: 1 History item: 2 History item: 1 History item: 2 Quit Load-path shadows: /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-loaddefs hides /home/mkrauss/.emacs.d/el-get/org-mode/contrib/lisp/org-loaddefs /home/mkrauss/.emacs.d/el-get/js2-mode/.dir-locals hides /home/mkrauss/.emacs.d/el-get/org-mode/.dir-locals /home/mkrauss/.emacs.d/el-get/org-mode/contrib/lisp/htmlize hides /home/mkrauss/.emacs.d/el-get/htmlize/htmlize /home/mkrauss/.emacs.d/el-get/org-mode/contrib/lisp/org-panel hides /home/mkrauss/.emacs.d/el-get/nxhtml/util/org-panel /home/mkrauss/.emacs.d/el-get/php-mode/php-mode hides /home/mkrauss/.emacs.d/el-get/nxhtml/related/php-mode /home/mkrauss/.emacs.d/el-get/js2-mode/.dir-locals hides /home/mkrauss/.emacs.d/el-get/el-get/.dir-locals /home/mkrauss/.emacs.d/el-get/org-mode/contrib/lisp/htmlize hides /usr/share/emacs24/site-lisp/emacs-goodies-el/htmlize /usr/share/emacs/24.3/site-lisp/debian-startup hides /usr/share/emacs/site-lisp/debian-startup /home/mkrauss/.emacs.d/el-get/prolog-el/prolog hides /usr/share/emacs/24.3/lisp/progmodes/prolog /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-mhe hides /usr/share/emacs/24.3/lisp/org/org-mhe /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-eshell hides /usr/share/emacs/24.3/lisp/org/org-eshell /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-entities hides /usr/share/emacs/24.3/lisp/org/org-entities /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-octave hides /usr/share/emacs/24.3/lisp/org/ob-octave /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-rmail hides /usr/share/emacs/24.3/lisp/org/org-rmail /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-keys hides /usr/share/emacs/24.3/lisp/org/ob-keys /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-shen hides /usr/share/emacs/24.3/lisp/org/ob-shen /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-css hides /usr/share/emacs/24.3/lisp/org/ob-css /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-docview hides /usr/share/emacs/24.3/lisp/org/org-docview /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-compat hides /usr/share/emacs/24.3/lisp/org/org-compat /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-gnuplot hides /usr/share/emacs/24.3/lisp/org/ob-gnuplot /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-ocaml hides /usr/share/emacs/24.3/lisp/org/ob-ocaml /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-java hides /usr/share/emacs/24.3/lisp/org/ob-java /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-timer hides /usr/share/emacs/24.3/lisp/org/org-timer /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-ledger hides /usr/share/emacs/24.3/lisp/org/ob-ledger /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-inlinetask hides /usr/share/emacs/24.3/lisp/org/org-inlinetask /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-footnote hides /usr/share/emacs/24.3/lisp/org/org-footnote /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-python hides /usr/share/emacs/24.3/lisp/org/ob-python /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org hides /usr/share/emacs/24.3/lisp/org/org /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-R hides /usr/share/emacs/24.3/lisp/org/ob-R /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-plot hides /usr/share/emacs/24.3/lisp/org/org-plot /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-calc hides /usr/share/emacs/24.3/lisp/org/ob-calc /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-ref hides /usr/share/emacs/24.3/lisp/org/ob-ref /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-picolisp hides /usr/share/emacs/24.3/lisp/org/ob-picolisp /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-lob hides /usr/share/emacs/24.3/lisp/org/ob-lob /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-table hides /usr/share/emacs/24.3/lisp/org/org-table /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-bibtex hides /usr/share/emacs/24.3/lisp/org/org-bibtex /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-io hides /usr/share/emacs/24.3/lisp/org/ob-io /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-clock hides /usr/share/emacs/24.3/lisp/org/org-clock /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-gnus hides /usr/share/emacs/24.3/lisp/org/org-gnus /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-js hides /usr/share/emacs/24.3/lisp/org/ob-js /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-agenda hides /usr/share/emacs/24.3/lisp/org/org-agenda /home/mkrauss/.emacs.d/el-get/nxhtml/util/org-odt hides /usr/share/emacs/24.3/lisp/org/org-odt /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-sass hides /usr/share/emacs/24.3/lisp/org/ob-sass /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-scheme hides /usr/share/emacs/24.3/lisp/org/ob-scheme /home/mkrauss/.emacs.d/el-get/org-mode/contrib/lisp/org-mew hides /usr/share/emacs/24.3/lisp/org/org-mew /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-C hides /usr/share/emacs/24.3/lisp/org/ob-C /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-haskell hides /usr/share/emacs/24.3/lisp/org/ob-haskell /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-habit hides /usr/share/emacs/24.3/lisp/org/org-habit /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-src hides /usr/share/emacs/24.3/lisp/org/org-src /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-faces hides /usr/share/emacs/24.3/lisp/org/org-faces /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-perl hides /usr/share/emacs/24.3/lisp/org/ob-perl /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-feed hides /usr/share/emacs/24.3/lisp/org/org-feed /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob hides /usr/share/emacs/24.3/lisp/org/ob /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-lisp hides /usr/share/emacs/24.3/lisp/org/ob-lisp /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-indent hides /usr/share/emacs/24.3/lisp/org/org-indent /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-latex hides /usr/share/emacs/24.3/lisp/org/ob-latex /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-colview hides /usr/share/emacs/24.3/lisp/org/org-colview /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-list hides /usr/share/emacs/24.3/lisp/org/org-list /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-archive hides /usr/share/emacs/24.3/lisp/org/org-archive /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-attach hides /usr/share/emacs/24.3/lisp/org/org-attach /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-exp hides /usr/share/emacs/24.3/lisp/org/ob-exp /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-macs hides /usr/share/emacs/24.3/lisp/org/org-macs /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-lilypond hides /usr/share/emacs/24.3/lisp/org/ob-lilypond /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-scala hides /usr/share/emacs/24.3/lisp/org/ob-scala /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-w3m hides /usr/share/emacs/24.3/lisp/org/org-w3m /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-sqlite hides /usr/share/emacs/24.3/lisp/org/ob-sqlite /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-fortran hides /usr/share/emacs/24.3/lisp/org/ob-fortran /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-maxima hides /usr/share/emacs/24.3/lisp/org/ob-maxima /home/mkrauss/.emacs.d/el-get/org-mode/contrib/lisp/org-vm hides /usr/share/emacs/24.3/lisp/org/org-vm /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-eval hides /usr/share/emacs/24.3/lisp/org/ob-eval /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-capture hides /usr/share/emacs/24.3/lisp/org/org-capture /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-irc hides /usr/share/emacs/24.3/lisp/org/org-irc /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-dot hides /usr/share/emacs/24.3/lisp/org/ob-dot /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-crypt hides /usr/share/emacs/24.3/lisp/org/org-crypt /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-table hides /usr/share/emacs/24.3/lisp/org/ob-table /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-asymptote hides /usr/share/emacs/24.3/lisp/org/ob-asymptote /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-screen hides /usr/share/emacs/24.3/lisp/org/ob-screen /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-bbdb hides /usr/share/emacs/24.3/lisp/org/org-bbdb /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-info hides /usr/share/emacs/24.3/lisp/org/org-info /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-plantuml hides /usr/share/emacs/24.3/lisp/org/ob-plantuml /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-loaddefs hides /usr/share/emacs/24.3/lisp/org/org-loaddefs /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-pcomplete hides /usr/share/emacs/24.3/lisp/org/org-pcomplete /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-ctags hides /usr/share/emacs/24.3/lisp/org/org-ctags /home/mkrauss/.emacs.d/el-get/org-mode/contrib/lisp/org-wl hides /usr/share/emacs/24.3/lisp/org/org-wl /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-comint hides /usr/share/emacs/24.3/lisp/org/ob-comint /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-element hides /usr/share/emacs/24.3/lisp/org/org-element /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-sql hides /usr/share/emacs/24.3/lisp/org/ob-sql /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-install hides /usr/share/emacs/24.3/lisp/org/org-install /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-id hides /usr/share/emacs/24.3/lisp/org/org-id /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-mobile hides /usr/share/emacs/24.3/lisp/org/org-mobile /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-awk hides /usr/share/emacs/24.3/lisp/org/ob-awk /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-clojure hides /usr/share/emacs/24.3/lisp/org/ob-clojure /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-ruby hides /usr/share/emacs/24.3/lisp/org/ob-ruby /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-protocol hides /usr/share/emacs/24.3/lisp/org/org-protocol /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-org hides /usr/share/emacs/24.3/lisp/org/ob-org /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-ditaa hides /usr/share/emacs/24.3/lisp/org/ob-ditaa /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-matlab hides /usr/share/emacs/24.3/lisp/org/ob-matlab /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-mouse hides /usr/share/emacs/24.3/lisp/org/org-mouse /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-datetree hides /usr/share/emacs/24.3/lisp/org/org-datetree /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-tangle hides /usr/share/emacs/24.3/lisp/org/ob-tangle /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-emacs-lisp hides /usr/share/emacs/24.3/lisp/org/ob-emacs-lisp /home/mkrauss/.emacs.d/el-get/org-mode/lisp/ob-mscgen hides /usr/share/emacs/24.3/lisp/org/ob-mscgen /home/mkrauss/.emacs.d/el-get/org-mode/lisp/org-version hides /usr/share/emacs/24.3/lisp/org/org-version /home/mkrauss/.emacs.d/el-get/js2-mode/.dir-locals hides /usr/share/emacs/24.3/lisp/gnus/.dir-locals Features: (shadow mail-extr emacsbug message rfc822 mml mml-sec mm-decode mm-bodies mm-encode mailabbrev gmm-utils mailheader sendmail iso-transl sort org-attach org-id web-mode ps-mode php-mode flymake-for-el log-view vc-cvs vc-rcs vc-dir ewoc tabify man magit-blame vc ediff-vers org-clock vc-dispatcher vc-svn wdired whitespace gitignore-mode conf-mode linum mail-utils network-stream starttls url-http tls mail-parse rfc2231 rfc2047 rfc2045 ietf-drums url-gw url-cache url-auth restclient json-reformat url url-proxy url-privacy url-history url-cookie url-domsuf mailcap epa-file css-mode markdown-mode foldit nxml-uchnm rng-xsd xsd-regexp rng-cmpct sgml-mode rngalt nxhtml-mumamo mumamo-fun mumamo mumamo-chunks reposition mule-util cal-move parse-time dired-aux find-dired js json moz imenu magit-key-mode magit view grep epa epg epg-config diff-mode git-rebase-mode git-commit-mode log-edit pcvs-util tramp-cmds misearch multi-isearch sh-script smie executable dabbrev pcmpl-unix tramp-cache tramp-sh em-unix em-script em-prompt em-ls em-hist em-pred em-glob em-dirs em-cmpl em-basic em-banner em-alias cc-langs org-eldoc flyspell ispell org-rmail org-mhe org-irc org-info org-gnus org-docview doc-view jka-compr image-mode org-bibtex bibtex org-bbdb org-w3m org-element avl-tree org-mobile org-agenda org-capture org org-macro org-footnote org-pcomplete org-list org-faces org-entities org-version ob-emacs-lisp ob ob-tangle ob-ref ob-lob ob-table ob-exp org-src ob-keys ob-comint ob-core ob-eval org-compat org-macs find-func cal-menu calendar cal-loaddefs ediff-merg ediff-diff ediff-wind ediff-help ediff-util ediff-mult ediff-init ediff em-term term disp-table ehelp electric em-smart esh-var esh-io esh-cmd esh-opt esh-ext esh-proc esh-arg eldoc esh-groups eshell esh-module esh-mode esh-util autorevert winner lambda-mode ido-vertical-mode ido desktop uniquify bar-cursor info color-theme wid-edit server nxhtml-mode popcmp url-expand url-util url-methods url-parse url-vars loadhist rng-nxml rng-valid rng-loc rng-uri rng-parse nxml-parse rng-match rng-dt rng-util rng-pttrn nxml-ns nxml-mode nxml-outln nxml-rap nxml-util nxml-glyph nxml-enc xmltok sql help-at-pt speedbar sb-image ezimage dframe flymake add-log cc-mode cc-fonts cc-guess cc-menus cc-cmds tramp tramp-compat auth-source eieio gnus-util mm-util mail-prsvr password-cache tramp-loaddefs shell pcomplete format-spec ropemacs pymacs warnings cc-styles cc-align cc-engine cc-vars cc-defs iedit rect org-loaddefs magit-autoloads slime gud apropos etags arc-mode archive-mode noutline outline hyperspec thingatpt browse-url slime-autoloads yasnippet derived edmacro kmacro whattf-dt html5-langs flymake-files advice advice-preload flymakemsg nxhtml-autostart nxhtml-autoload majmodpri vc-git nxhtml-menu web-autoload nxhtml-base el-get el-get-autoloading el-get-list-packages el-get-dependencies el-get-build el-get-status el-get-methods el-get-fossil el-get-svn el-get-pacman el-get-github-zip el-get-github-tar el-get-http-zip el-get-http-tar el-get-hg el-get-go el-get-git-svn el-get-fink el-get-emacswiki el-get-http el-get-notify el-get-emacsmirror el-get-github el-get-git el-get-elpa el-get-darcs el-get-cvs el-get-bzr el-get-brew el-get-builtin el-get-apt-get el-get-recipes el-get-byte-compile el-get-custom el-get-core .loaddefs byte-opt compile comint ansi-color ring pp help-mode easymenu package autoload help-fns bytecomp byte-compile cconv dired cl-macs gv cl cl-lib emacs-goodies-el emacs-goodies-custom emacs-goodies-loaddefs easy-mmode time-date tooltip ediff-hook vc-hooks lisp-float-type mwheel x-win x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment lisp-mode register page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer loaddefs button faces cus-face macroexp files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote make-network-process dbusbind dynamic-setting system-font-setting font-render-setting move-toolbar gtk x-toolkit x multi-tty emacs) From debbugs-submit-bounces@debbugs.gnu.org Mon Sep 19 04:11:59 2016 Received: (at 20422) by debbugs.gnu.org; 19 Sep 2016 08:11:59 +0000 Received: from localhost ([127.0.0.1]:34774 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bltgF-000139-5G for submit@debbugs.gnu.org; Mon, 19 Sep 2016 04:11:59 -0400 Received: from mout.gmx.net ([212.227.17.22]:61102) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bltgC-00012u-Sm for 20422@debbugs.gnu.org; Mon, 19 Sep 2016 04:11:57 -0400 Received: from detlef.gmx.de ([87.146.38.125]) by mail.gmx.com (mrgmx101) with ESMTPSA (Nemesis) id 0MIzGn-1bjPdk3gxl-002Zgh; Mon, 19 Sep 2016 10:11:50 +0200 From: Michael Albinus To: Matthew Krauss Subject: Re: bug#20422: 24.3; sql-connect uses local rather than remote client References: <87pp6tm6qy.fsf@mkrauss-NAB-ThinkPad-W530.i-did-not-set--mail-host-address--so-tickle-me> Date: Mon, 19 Sep 2016 10:11:48 +0200 In-Reply-To: <87pp6tm6qy.fsf@mkrauss-NAB-ThinkPad-W530.i-did-not-set--mail-host-address--so-tickle-me> (Matthew Krauss's message of "Fri, 24 Apr 2015 19:44:21 -0400") Message-ID: <8760pscnqz.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Provags-ID: V03:K0:1u0Xqr/fduiq9I5lTYMQXNUYjNanwrmMqMNWK4/g94B6lTdIIkM TP2v03UIOWKnhKUh/xFcWjSHaDi8dax7nxi5AXC5Id0lUpKGXnU3paeh/YxPXJ2ao0uHsYc xW4P9BIscYOHMO4GN9EcvJ2QqoVZcRJt2E5VFw6D+rrvV/SU43m7+qYypQfLZ973phHCdIQ J9WSOpH05SCWAZjK7URWQ== X-UI-Out-Filterresults: notjunk:1;V01:K0:GVKShtkrDBE=:qX4tw9WupkVgPLf9HLRQKk N9ELBJQs2H2CAHqpw9XwoplMAJeV4ygqcSGX+3szYLg92fZ3KPBw02HxHWpvVbnnbS2F1bCU3 AyKe2vszLMyVbRgDaqaZFzNybKZCuoWARrNDszgeMfgQK0q/lmfOoZ5DePULv9MspyY/SicJM 6XVKeSfSWNsyxIPD9omtyMQY6ck3q3p6di9z06uhKfkGc5Vr6xZgQntjp7U92Do5RHC1VfMDl +IxBTpqFQqOhItOfbioVwpVprvBq0dYw83IN2tYEIJa4WeSX+AUXPjTSFhTLbPfTW8WFdtSqC YtXdaqBOv0TQJEI5XIbkTSIMhaxUPnXWnNQZC95CIjgQB0W41ZREgLc2ML38c5VNlvMq5VGrM KIueyqAtjjDXyUzQjTx2JMNeul4BXodMx+NXoldLsNb0N70S6H/+6tavMGCA4aI10aV2uPtdr 0iVb2UINM9DVOO0E0s/379jjpV93vzwqEkloQXtC6/P8DSB9wTV3aWBv2RTObPVuIbxBTCSyb WucjB0//On7OoIGYNgAPZ2NQ6kKsHcY/PCkeeCic4zRBVDppIn1qsjDP52LN0TA8bd9VdGwdR RIF7Sxg0AaOUMyPWNQ8wQx35U5cztIvDbX0fdhFNjQhPofNooqDvM9Qzq4zEWyAfZHqXkqayW PW9WORmJWcRXgcYBoBwpzqWBh2GPifq82UOJs48kqwft2lE/AHsskRm7woCW76VoWVb7EN6Qd JRkd7hLCok2fUBbiGwZk6zBU1xsX0f8KlX5oDlN4KK2Vh9/u3fwAyFc5t8JcOzoT7EMGVbHy6 NItHgz5 X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 20422 Cc: 20422@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) Matthew Krauss writes: > Hi! Hi Matthew, > So I have encountered a minor problem. Not sure if this is a bug or a > feature request... > > When using: > > M-x sql-connect > > to connect to a SQL server (in my case PostgreSQL but I doubt that is > relevant) Emacs does not seem to have a way to use the correct backend > client (e.g. psql) to match the server version. > > So suppose the following configuration: > > (setq sql-connection-alist > '(("my-older-postgres-server" > (sql-product 'postgres) > (sql-user "myusername") > (sql-password "mypassword") > (sql-server "myserver.example.com") > (sql-database "mydatabase")))) > > My local machine has, let's say, psql 9.3.6. The server has Postgres > 8.4.14. Because these are different versions, some things will not work > correctly. I may be able to install an older psql, but that may not work > if I also am connecting to a different server running 9.3.6, or, say, > 9.4.1. > > The obvious solution is to use the psql client on the server, which > should match the server version. This is really easy to do, with Emacs > and Tramp. For instance, I can open an eshell and enter: > > cd /myserver.example.com: > > Now from this buffer I can invoke sql-connect and it will run the psql > client from the remote machine. However, this is kind of a pain to do > every time, and embarrassing when I am trying to show off in front of my > non-emacs-using co-workers and fail to remember this step, only to have > weird errors showing up. > > Now if I could use this configuration instead: > > (setq sql-connection-alist > '(("my-older-postgres-server" > (sql-product 'postgres) > (sql-user "myusername") > (sql-password "mypassword") > (sql-server "myserver.example.com") > (sql-database "mydatabase") > (default-directory "/myserver.example.com:")))) > > and have that change the working directory before connecting, that would > be really great! Not only does it allow invoking a remote psql process, > but it also allows changing the working directory for any other purpose > you might want. Well, personally I don't use sql.el, so I cannot say too much about. However, the just released Emacs 25.1 says in etc/NEWS: --8<---------------cut here---------------start------------->8--- ** SQL mode *** New user variable 'sql-default-directory' enables remote connections using Tramp. --8<---------------cut here---------------end--------------->8--- Sounds like this is exactly what you have asked for. Could you, please, check? Best regards, Michael. From debbugs-submit-bounces@debbugs.gnu.org Tue Sep 27 06:53:19 2016 Received: (at 20422-done) by debbugs.gnu.org; 27 Sep 2016 10:53:19 +0000 Received: from localhost ([127.0.0.1]:36986 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1boq0k-0005tM-TJ for submit@debbugs.gnu.org; Tue, 27 Sep 2016 06:53:19 -0400 Received: from mout.gmx.net ([212.227.15.19]:58688) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1boq0i-0005t6-Ba for 20422-done@debbugs.gnu.org; Tue, 27 Sep 2016 06:53:16 -0400 Received: from detlef.gmx.de ([87.146.38.81]) by mail.gmx.com (mrgmx002) with ESMTPSA (Nemesis) id 0M92lh-1bfEZU0Ff3-00CQsf; Tue, 27 Sep 2016 12:53:09 +0200 From: Michael Albinus To: Matthew Krauss Subject: Re: bug#20422: 24.3; sql-connect uses local rather than remote client References: <87pp6tm6qy.fsf@mkrauss-NAB-ThinkPad-W530.i-did-not-set--mail-host-address--so-tickle-me> <8760pscnqz.fsf@gmx.de> Date: Tue, 27 Sep 2016 12:53:08 +0200 In-Reply-To: <8760pscnqz.fsf@gmx.de> (Michael Albinus's message of "Mon, 19 Sep 2016 10:11:48 +0200") Message-ID: <87a8etpqaz.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.2.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Provags-ID: V03:K0:puyUsVfsb2Qnt2a/Y6y270zvGwMXyBYthCbU5FOkSc1070Uqztf ngEh5aeQbIeZTB4VfU8U1C69nb1B8KGmpoCRxKuC/MFX3M8eieuO+0IPHTg5R1Cyz5f4SJe wRlFGx2xLG0z0lnGkVgPgGsUZi4mOaOh/Re35Jy0iD73cjkDLeQiDZNE9ABLe60yYyjQivq EqJ/wqrts5VYxWdMVUruw== X-UI-Out-Filterresults: notjunk:1;V01:K0:oOCrLX6k6h4=:QUFJwwHhRWWtAXIQGRwqmc i0e+O1D97buVzuvu7DVbDZEUSad9oMgdfdQdyHOMsWMmXKKpW1I+sls/2YgPwMwC9WNroIxS3 1Qog45QT8CQfTi7LZWRutAx9IL42sfgm4GAEcSpyuDfSPtiGczaZPg3wW8jiXWExrq2De/8on RxjQPfmFGDRdPdzAzhU5fzn4nmSGVzDSMEUqdbxWbvzPPlkQePT1K/S6lSsGsa0txqAY8AFoQ R05P3d+G8iJ0w+Mgud2DQpWCBjrT1noVAq0SfMLhJs7yLG3who40+Kds3dw0QDLxupsPlI4e3 jeJbpelWyDm3yRwU0nVZ5LMPKJX1EIMSKCrKfQIgkLW7M+vzzWRTNTDyFvWISBEw/ic6u97Mz RNDUlj0kEe8G3lIlZ9J98nZNov9VKbyEmxQRzoX2+XHjOTodN5OUP8Ev1/qir8PYrkzzDEQ06 9wtFWucmDHjGGpR0l6CX333yKGbu8+xC7vAtY8a0mkumuBhkiB6hcFzsCT6ByW+HktcqPqqAR CBZcnoIjzs13x+/Q48eP+yQDVnAi5WIPxO68+n+mk35cQviJcrmCrW0eOZzX+BqXl2SC41AQJ laEwprWtVIs0ANn5M17w1B1WLPLly+Xbj/pwQ5fQ95rxX/dWDwNWHsqEgs85kMFwr5RmhXN14 hcUTzMcTV1s4/LFsHiyRec/TSDzqvdcSJ4p9JESN+76gkizDE/Avh8XxppuREbkB9Y7ymwkzs fog9IHD9o50xTX6BLOJJoukVyT4odmvzsmr7XntOREDk8rjKN+OjYXRADDBwmMCx5WOuTJiVy 3H511Ke X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 20422-done Cc: 20422-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) Version: 25.1 Hi Matthew, > Well, personally I don't use sql.el, so I cannot say too much > about. However, the just released Emacs 25.1 says in etc/NEWS: > > ** SQL mode > > *** New user variable 'sql-default-directory' enables remote > connections using Tramp. > > Sounds like this is exactly what you have asked for. Could you, please, check? I'm closing the bug. Feel free to reopen if it doesn't work for you. Best regards, Michael. From unknown Mon Jun 16 23:44:35 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Tue, 25 Oct 2016 11:24:03 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator