emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[nongnu] elpa/geiser-gauche dfc3090 106/119: Correctly detect version wi


From: Philip Kaludercic
Subject: [nongnu] elpa/geiser-gauche dfc3090 106/119: Correctly detect version with Gauche 0.9.6
Date: Sun, 1 Aug 2021 18:28:06 -0400 (EDT)

branch: elpa/geiser-gauche
commit dfc309010ac840577acb279dd27ac42105323bcf
Author: András Simonyi <andras.simonyi@gmail.com>
Commit: András Simonyi <andras.simonyi@gmail.com>

    Correctly detect version with Gauche 0.9.6
---
 geiser-gauche.el | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/geiser-gauche.el b/geiser-gauche.el
index 75fcdb4..2cdd718 100644
--- a/geiser-gauche.el
+++ b/geiser-gauche.el
@@ -170,7 +170,7 @@
 
 (defconst geiser-gauche--prompt-regexp "gosh\\(\\[[^(]+\\]\\)?> ")
 
-(defconst geiser-gauche--minimum-version "0.9.9")
+(defconst geiser-gauche--minimum-version "0.9.6")
 
 (defconst geiser-gauche--exit-command
   "(exit)")
@@ -189,7 +189,14 @@
 
 (defun geiser-gauche--version (binary)
   "Return the version of a Gauche BINARY."
-  (cadr (read (cadr (process-lines binary "-V")))))
+  (let ((v (process-lines binary "-V")))
+    (if (< 1 (length v))
+       ;; Multiline version info is (hopefully) a sexp.
+       (cadr (read (cadr v)))
+      ;; One line is a free-text version description string.
+      (let* ((s (car v))
+            (start (string-match "version" (car v))))
+       (substring s (+ start 8) (+ start 13))))))
 
 (defun geiser-gauche--startup (_remote)
   "Initialize a Gauche REPL."



reply via email to

[Prev in Thread] Current Thread [Next in Thread]