changeset 1718:434be2f0509e output-type-uri

Update vext
author Chris Cannam
date Mon, 26 Jun 2017 11:54:23 +0100
parents 1db385567add
children 1f4fb4a0f62a
files vext vext.sml
diffstat 2 files changed, 14 insertions(+), 15 deletions(-) [+]
line wrap: on
line diff
--- a/vext	Tue Jun 20 11:46:04 2017 +0100
+++ b/vext	Mon Jun 26 11:54:23 2017 +0100
@@ -16,13 +16,13 @@
 # preference is based on startup speed.
 
 if [ -z "$sml" ]; then
+    if sml -h 2>&1 | grep -q 'Standard ML of New Jersey'; then
+	sml="smlnj"
     # I think there may be a race condition in the poly interpreter's
     # tests for open or closed I/O streams - without the "echo" here,
     # or with stderr redirection, this pipeline will sometimes hang
-    if echo | poly -v 2>/dev/null | grep -q 'Poly/ML'; then
+    elif echo | poly -v 2>/dev/null | grep -q 'Poly/ML'; then
 	sml="poly"
-    elif sml -h 2>&1 | grep -q 'Standard ML of New Jersey'; then
-	sml="smlnj"
     elif mlton 2>&1 | grep -q 'MLton'; then
 	sml="mlton"
     else cat 1>&2 <<EOF
@@ -35,17 +35,16 @@
   compiler or interpreter to run.
 
   Please ensure you have one of the following SML implementations
-  installed and present in your PATH, and try again. These are listed
-  approximately in order of preference for this task.
+  installed and present in your PATH, and try again.
 
-    1. Poly/ML
+    1. Standard ML of New Jersey
+       - often found in a distribution package called: smlnj
+       - executable name: sml
+
+    2. Poly/ML
        - often found in a distribution package called: polyml
        - executable name: poly
 
-    2. Standard ML of New Jersey
-       - often found in a distribution package called: smlnj
-       - executable name: sml
-
     3. MLton
        - often found in a distribution package called: mlton
        - executable name: mlton
--- a/vext.sml	Tue Jun 20 11:46:04 2017 +0100
+++ b/vext.sml	Mon Jun 26 11:54:23 2017 +0100
@@ -33,7 +33,7 @@
     Software without prior written authorization.
 *)
 
-val vext_version = "0.9.0"
+val vext_version = "0.9.1"
 
 
 datatype vcs =
@@ -1271,10 +1271,10 @@
             else 
                 case git_command_output context libname
                                         ["rev-list", "-1", id_or_tag] of
-                    ERROR e => ERROR e
-                  | OK tid =>
-                    OK (tid = id andalso
-                        tid <> id_or_tag) (* else id_or_tag was id not tag *)
+                    ERROR e => OK false (* id_or_tag is not an id or tag, but
+                                           that could just mean it hasn't been
+                                           fetched *)
+                  | OK tid => OK (tid = id)
 
     fun branch_tip context (libname, branch) =
         git_command_output context libname