]> git.lyx.org Git - features.git/commitdiff
Cmake export tests: Omit next group of possible conflicts while runnig test in parallel
authorKornel Benko <kornel@lyx.org>
Wed, 19 Aug 2020 20:28:50 +0000 (22:28 +0200)
committerKornel Benko <kornel@lyx.org>
Wed, 19 Aug 2020 20:28:50 +0000 (22:28 +0200)
Disable conversion cache because all lyx instances use the same cache without
any locking between read and write to the cache.

Thanks to Scott catching this case.

lib/scripts/prefTest.pl.in
lib/scripts/prefTest.pm

index 4e0aab739f05fecd4cc5a7c3da6057676c91731c..d999b6a10bb01e5c9e42005c10c1a5137e707fe9 100755 (executable)
@@ -30,6 +30,8 @@ my %allowedKeys = (
   "use_converter_needauth_forbidden" => ["true", "false"],
   "use_converter_needauth" => ["true", "false"],
   "allow_geometry_session" => ["false"],
+  "use_converter_cache" => ["true", "false"],
+  "converter_cache_maxage" => "integer",
     );
 
 my %Converter = ();
@@ -53,14 +55,20 @@ if ($handle_argv eq "test") {
   @ctestpars = &getSubstitutes(\%allowedKeys, \%Subst,
                               "allow_geometry_session=false",
                               "use_converter_needauth_forbidden=false",
-                              "use_converter_needauth=false", @ARGV);
+                              "use_converter_needauth=false",
+                              "use_converter_cache=false",
+                              "converter_cache_maxage=" . 180*24*60*60,
+                              @ARGV);
 }
 elsif ($handle_argv eq "default") {
   $shell_escapes = 0;
   @ctestpars = &getSubstitutes(\%allowedKeys, \%Subst,
                               "allow_geometry_session=false",
                               "use_converter_needauth_forbidden=true",
-                              "use_converter_needauth=true", @ARGV);
+                              "use_converter_needauth=true",
+                              "use_converter_cache=true",
+                              "converter_cache_maxage=" . 61*24*60*60,
+                              @ARGV);
 }
 else {
   @ctestpars = &getSubstitutes(\%allowedKeys, \%Subst,
index 814304fa506444bfb9604d6585019192f4053179..8f8876913443dc5e111a0d73486dfda0a8b57bfa 100644 (file)
@@ -31,12 +31,22 @@ sub getSubstitutes($$@)
        my $value = $2;
        my $valid = 0;
        if (defined($rAllowedKeys->{$key})) {
-         for my $val (@{$rAllowedKeys->{$key}}) {
-           if ($val eq $value) {
+         if (ref($rAllowedKeys->{$key}) eq "ARRAY") {
+           for my $val (@{$rAllowedKeys->{$key}}) {
+             if ($val eq $value) {
+               $valid = 1;
+               last;
+             }
+           }
+         }
+         elsif ($rAllowedKeys->{$key} eq "integer") {
+           if ($value =~ /^\d+$/) {
              $valid = 1;
-             last;
            }
          }
+         elsif ($rAllowedKeys->{$key} eq "string") {
+           $valid = 1;
+         }
        }
        if ($valid) {
          $rSubst->{$key} = [$value, 0];
@@ -82,15 +92,15 @@ sub getConverter($$)
   return undef if ($to !~ /^((dvi3?|pdf[23456]?)(log)?)$/);
   ($l, $cmd) = getNext($l);
   if ($add) {
-    if ($cmd !~ /\-shell-escape/) {
+    if ($cmd !~ /\-shell-(escape|restricted)/) {
       if ($cmd =~ /^(\S+)\s*(.*)$/) {
-       $cmd = "$1 -shell-escape $2";
+       $cmd = "$1 -shell-restricted $2";
        $cmd =~ s/\s+$//;
       }
     }
   }
   else {
-    $cmd =~ s/\s+\-shell\-escape//;
+    $cmd =~ s/\s+\-shell\-(escape|restricted)//;
   }
   ($l, $par) = getNext($l);
   return undef if ($par !~ /^latex/);