]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
In releasetest.tcl:
authordrh <drh@noemail.net>
Fri, 9 Sep 2016 12:29:57 +0000 (12:29 +0000)
committerdrh <drh@noemail.net>
Fri, 9 Sep 2016 12:29:57 +0000 (12:29 +0000)
Improved testing for uncommitted changes.  If uncommitted changes are seen,
exit immediately unless the --force option is used.

FossilOrigin-Name: 9a14e6c46cdda9f10151ee96a0540798573edcf2

manifest
manifest.uuid
test/releasetest.tcl

index f17e658096de633ec32d030731dfe403252c1d95..9cf1c97fce8a813f4826545eaa5d463acadbd386 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Issue\sa\swarning\sand\sprompt\sthe\suser\sto\scontinue\sif\sthe\sreleasetest.tcl\sscript\nis\srun\sin\sa\scheckout\swith\suncommitted\schanges.
-D 2016-09-08T23:12:08.268
+C In\sreleasetest.tcl:\nImproved\stesting\sfor\suncommitted\schanges.\s\sIf\suncommitted\schanges\sare\sseen,\nexit\simmediately\sunless\sthe\s--force\soption\sis\sused.
+D 2016-09-09T12:29:57.587
 F Makefile.in cfd8fb987cd7a6af046daa87daa146d5aad0e088
 F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434
 F Makefile.msc 5017381e4853b1472e01d5bb926be1268eba429c
@@ -1013,7 +1013,7 @@ F test/rdonly.test 64e2696c322e3538df0b1ed624e21f9a23ed9ff8
 F test/regexp1.test 497ea812f264d12b6198d6e50a76be4a1973a9d8
 F test/regexp2.test aa7ffcc21350007a78361b82bcf3b74d12227144
 F test/reindex.test 44edd3966b474468b823d481eafef0c305022254
-F test/releasetest.tcl 43a4a0c4607d43f4c6d8acf75a1ff39454785c94
+F test/releasetest.tcl 96c3c995276502ed161fba048db11bf609d06401
 F test/resolver01.test f4022acafda7f4d40eca94dbf16bc5fc4ac30ceb
 F test/rollback.test 458fe73eb3ffdfdf9f6ba3e9b7350a6220414dea
 F test/rollback2.test 8435d6ff0f13f51d2a4181c232e706005fa90fc5
@@ -1523,7 +1523,7 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
 F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
 F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
-P ddb5f0558c44569913d22781ab78f3e9b58d7aea
-R 3e19300302271db9c0a9ac444e4e7cc4
+P 30e917fff05b02ce2cb1f1c871d638200fbe5716
+R 45edd926e90edddd4f4fdfd05cd3a2d6
 U drh
-Z 9a4b9802acab37aa737bc2f82c43cc8f
+Z 4b0b0b85746acf466aacffff9e5b1376
index 3011d0abfb3b58b23575e9d7d20e7bbd2004fac4..a00fc4e9a046195af1c5fc11924f1d8b5ca0b758 100644 (file)
@@ -1 +1 @@
-30e917fff05b02ce2cb1f1c871d638200fbe5716
\ No newline at end of file
+9a14e6c46cdda9f10151ee96a0540798573edcf2
\ No newline at end of file
index d40ec3a6ab9ed7670892febd58f9dbed5b129b1f..5beecd1cfa0352deb26da460c2b87744392621ae 100644 (file)
@@ -9,18 +9,19 @@ This Tcl script is used to test the various configurations required
 before releasing a new version. Supported command line options (all
 optional) are:
 
-    --srcdir   TOP-OF-SQLITE-TREE      (see below)
-    --platform PLATFORM                (see below)
-    --config   CONFIGNAME              (Run only CONFIGNAME)
-    --quick                            (Run "veryquick.test" only)
-    --veryquick                        (Run "make smoketest" only)
-    --msvc                             (Use MSVC as the compiler)
     --buildonly                        (Just build testfixture - do not run)
+    --config   CONFIGNAME              (Run only CONFIGNAME)
     --dryrun                           (Print what would have happened)
+    -f|--force                         (Run even if uncommitted changes)
     --info                             (Show diagnostic info)
-    --with-tcl=DIR                     (Use TCL build at DIR)
     --jobs     N                       (Use N processes - default 1)
+    --msvc                             (Use MSVC as the compiler)
+    --platform PLATFORM                (see below)
     --progress                         (Show progress messages)
+    --quick                            (Run "veryquick.test" only)
+    --srcdir   TOP-OF-SQLITE-TREE      (see below)
+    --veryquick                        (Run "make smoketest" only)
+    --with-tcl=DIR                     (Use TCL build at DIR)
 
 The default value for --srcdir is the parent of the directory holding
 this script.
@@ -778,6 +779,7 @@ proc process_options {argv} {
   set ::JOBS           1
   set ::PROGRESS_MSGS  0
   set ::WITHTCL        {}
+  set ::FORCE          0
   set config {}
   set platform $::tcl_platform(os)-$::tcl_platform(machine)
 
@@ -833,6 +835,11 @@ proc process_options {argv} {
         set ::DRYRUN 1
       }
 
+      -force -
+      -f {
+        set ::FORCE 1
+      }
+
       -trace {
         set ::TRACE 1
       }
@@ -930,14 +937,16 @@ proc process_options {argv} {
 # prompt the user to see if he wants to continue.
 #
 proc check_uncommitted {} {
+  if {$::FORCE} return
+  set pwd [pwd]
+  cd $::SRCDIR
   if {[catch {exec fossil changes} res]==0 && [string trim $res]!=""} {
-    puts "The check-out contains uncommitted changes:"
+    puts "ERROR: The check-out contains uncommitted changes:"
     puts $res
-    puts -nonewline "Run test anyhow (y/N)? "
-    flush stdout
-    set in [gets stdin]
-    if {$in!="y"} exit
+    puts "Use the -f or --force options to override"
+    exit 1
   }
+  cd $pwd
 }