* PATCH: add dbport to ob-sql for postgres
@ 2016-09-14 22:18 Justin Kirby
2016-09-15 1:26 ` Nick Dokos
0 siblings, 1 reply; 3+ messages in thread
From: Justin Kirby @ 2016-09-14 22:18 UTC (permalink / raw)
To: emacs-orgmode
[-- Attachment #1: Type: text/plain, Size: 164 bytes --]
In ob-sql postgres would ignore dbport header argument. Attached is a
patch that corrects this.
Let me know if there are any modifications needed.
thnx,
Justin
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: pg-port.patch --]
[-- Type: text/x-diff, Size: 2899 bytes --]
diff --git a/etc/ORG-NEWS b/etc/ORG-NEWS
index 6e003d2..f6a83e8 100644
--- a/etc/ORG-NEWS
+++ b/etc/ORG-NEWS
@@ -519,6 +519,8 @@ to force opening it in either Emacs or with system application.
Allows J source blocks be indicated by letter j. Previously the
indication letter was solely J.
+*** Add port argument to ~org-babel-sql-dbstring-postgresql~
+ Can now use dbport argument in #+header for postgresql engine in org-ob-sql
* Version 8.3
** Incompatible changes
diff --git a/lisp/ob-sql.el b/lisp/ob-sql.el
index 7801c5f..f8824c8 100644
--- a/lisp/ob-sql.el
+++ b/lisp/ob-sql.el
@@ -90,12 +90,13 @@
(when password (concat "-p" password))
(when database (concat "-D" database))))))
-(defun org-babel-sql-dbstring-postgresql (host user database)
+(defun org-babel-sql-dbstring-postgresql (host port user database)
"Make PostgreSQL command line args for database connection.
Pass nil to omit that arg."
(combine-and-quote-strings
(delq nil
(list (when host (concat "-h" host))
+ (when port (format "-p%d" port))
(when user (concat "-U" user))
(when database (concat "-d" database))))))
@@ -171,7 +172,7 @@ This function is called by `org-babel-execute-src-block'."
footer=off -F \"\t\" %s -f %s -o %s %s"
(if colnames-p "" "-t")
(org-babel-sql-dbstring-postgresql
- dbhost dbuser database)
+ dbhost dbport dbuser database)
(org-babel-process-file-name in-file)
(org-babel-process-file-name out-file)
(or cmdline "")))
diff --git a/testing/lisp/test-ob-sql.el b/testing/lisp/test-ob-sql.el
new file mode 100644
index 0000000..0a7fe7e
--- /dev/null
+++ b/testing/lisp/test-ob-sql.el
@@ -0,0 +1,26 @@
+;;; test-ob-sql.el --- tests for ob-sql.el
+
+;; This file is not part of GNU Emacs.
+
+;; This program is free software; you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+;;; Code:
+(unless (featurep 'ob-sql)
+ (signal 'missing-test-dependency "Support for SQL code blocks"))
+
+(ert-deftest test-ob-sql/postgresql-dbstring-with-port ()
+ (should (string-match "-hlocalhost -p4242 -Uorg -dbabel"
+ (org-babel-sql-dbstring-postgresql "localhost" 4242 "org" "babel")))
+ (should (string-match "-hlocalhost -Uorg -dbabel"
+ (org-babel-sql-dbstring-postgresql "localhost" nil "org" "babel"))))
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: PATCH: add dbport to ob-sql for postgres
2016-09-14 22:18 PATCH: add dbport to ob-sql for postgres Justin Kirby
@ 2016-09-15 1:26 ` Nick Dokos
2016-09-15 13:30 ` Nicolas Goaziou
0 siblings, 1 reply; 3+ messages in thread
From: Nick Dokos @ 2016-09-15 1:26 UTC (permalink / raw)
To: emacs-orgmode
Justin Kirby <justinkirby@gmail.com> writes:
> In ob-sql postgres would ignore dbport header argument. Attached is a
> patch that corrects this.
>
> Let me know if there are any modifications needed.
>
Three things:
o This probably qualifies as a TINYCHANGE and can be merged, but if
you want to contribute in the future, you will probably have to sign
the FSF copyright assignment (unless you have done so
already). Details can be found at
http://orgmode.org/worg/org-contribute.html#orgheadline1
o The best way to submit patches is by using ``git format-patch''.
There are also conventions that you need to follow - details can be
found at
http://orgmode.org/worg/org-contribute.html#patches
Since org-mode is a part of emacs, you will need to add a commit
message that is formatted as an Emacs ChangeLog entry. The URL above
has all the details.
o On the positive side, the news entry and the test(s) you provided are
very much appreciated.
Nicolas Goaziou (or another maintainer) may want to add to this, but I
think it covers the basics.
Thanks!
--
Nick
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: PATCH: add dbport to ob-sql for postgres
2016-09-15 1:26 ` Nick Dokos
@ 2016-09-15 13:30 ` Nicolas Goaziou
0 siblings, 0 replies; 3+ messages in thread
From: Nicolas Goaziou @ 2016-09-15 13:30 UTC (permalink / raw)
To: Nick Dokos; +Cc: emacs-orgmode
Hello,
Nick Dokos <ndokos@gmail.com> writes:
> Three things:
>
> o This probably qualifies as a TINYCHANGE and can be merged, but if
> you want to contribute in the future, you will probably have to sign
> the FSF copyright assignment (unless you have done so
> already). Details can be found at
>
> http://orgmode.org/worg/org-contribute.html#orgheadline1
>
> o The best way to submit patches is by using ``git format-patch''.
> There are also conventions that you need to follow - details can be
> found at
>
> http://orgmode.org/worg/org-contribute.html#patches
>
> Since org-mode is a part of emacs, you will need to add a commit
> message that is formatted as an Emacs ChangeLog entry. The URL above
> has all the details.
>
> o On the positive side, the news entry and the test(s) you provided are
> very much appreciated.
>
> Nicolas Goaziou (or another maintainer) may want to add to this, but I
> think it covers the basics.
I couldn't be more accurate :) Thank you.
Regards,
--
Nicolas Goaziou
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2016-09-15 13:30 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-09-14 22:18 PATCH: add dbport to ob-sql for postgres Justin Kirby
2016-09-15 1:26 ` Nick Dokos
2016-09-15 13:30 ` Nicolas Goaziou
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).