changeset 32712:302582e0da3b v9.0.1680

patch 9.0.1680: sodium test fails in Github CI Commit: https://github.com/vim/vim/commit/335c58494089ff4ef698f059ded6215f69c02bcf Author: Christian Brabandt <cb@256bit.org> Date: Wed Aug 9 16:32:28 2023 +0200 patch 9.0.1680: sodium test fails in Github CI Problem: sodium test fails in Github CI Solution: Catch sodium_mlock() errors and do not error out sodium_mlock() seems to fail consistently on the Github CI. Perhaps [sodium_mlock()](https://libsodium.gitbook.io/doc/memory_management#text-locking-memory) is called too often or with too much memory by the runners so that this starts failing. Let's just try to catch this and skip the test, when this starts happening. closes: #12751
author Christian Brabandt <cb@256bit.org>
date Wed, 09 Aug 2023 18:30:04 +0200
parents f970e6f29e7d
children 12bcdf09f817
files src/testdir/test_crypt.vim src/version.c
diffstat 2 files changed, 19 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/src/testdir/test_crypt.vim
+++ b/src/testdir/test_crypt.vim
@@ -189,7 +189,11 @@ func Test_uncrypt_xchacha20v2_custom()
   00000060: a4cf 33d2 7507 ec38 ba62 a327 9068 d8ad  ..3.u..8.b.'.h..
   00000070: 2607 3fa6 f95d 7ea8 9799 f997 4820 0c    &.?..]~.....H .
   END
-  call Uncrypt_stable_xxd('xchacha20v2', hex, "foobar", ["", "foo", "bar", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10"], 1)
+  try
+    call Uncrypt_stable_xxd('xchacha20v2', hex, "foobar", ["", "foo", "bar", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10"], 1)
+  catch /^Vim\%((\a\+)\)\=:E1230:/ " sodium_mlock() not possible, may happen at Github CI
+    throw 'Skipped: sodium_mlock() not possible'
+  endtry
   call assert_match('xchacha20v2: using custom \w\+ "\d\+" for Key derivation.', execute(':messages'))
 endfunc
 
@@ -209,7 +213,11 @@ func Test_uncrypt_xchacha20v2()
   00000090: 2416 205a 8c4c 5fde 4dac 2611 8a48 24f0  $. Z.L_.M.&..H$.
   000000a0: ba00 92c1 60                             ....`
   END
-  call Uncrypt_stable_xxd('xchacha20v2', hex, "foo1234", ["abcdefghijklmnopqrstuvwxyzäöü", 'ZZZ_äüöÄÜÖ_!@#$%^&*()_+=-`~"'], 0)
+  try
+    call Uncrypt_stable_xxd('xchacha20v2', hex, "foo1234", ["abcdefghijklmnopqrstuvwxyzäöü", 'ZZZ_äüöÄÜÖ_!@#$%^&*()_+=-`~"'], 0)
+  catch /^Vim\%((\a\+)\)\=:E1230:/ " sodium_mlock() not possible, may happen at Github CI
+    throw 'Skipped: sodium_mlock() not possible'
+  endtry
 endfunc
 
 func Test_uncrypt_xchacha20_invalid()
@@ -220,6 +228,8 @@ func Test_uncrypt_xchacha20_invalid()
   try
     call feedkeys(":split samples/crypt_sodium_invalid.txt\<CR>sodium\<CR>", 'xt')
     call assert_false(1, 'should not happen')
+  catch /^Vim\%((\a\+)\)\=:E1230:/ " sodium_mlock() not possible, may happen at Github CI
+    throw 'Skipped: sodium_mlock() not possible'
   catch
     call assert_exception('pre-mature')
   endtry
@@ -272,7 +282,11 @@ func Test_uncrypt_xchacha20v2_2()
   " swapfile disabled
   call assert_equal(0, &swapfile)
   call assert_match("Note: Encryption of swapfile not supported, disabling swap file", execute(':messages'))
-  w!
+  try
+    w!
+  catch /^Vim\%((\a\+)\)\=:E1230:/ " sodium_mlock() not possible, may happen at Github CI
+    throw 'Skipped: sodium_mlock() not possible'
+  endtry
   " encrypted using xchacha20
   call assert_match("\[xchachav2\]", execute(':messages'))
   bw!
--- a/src/version.c
+++ b/src/version.c
@@ -696,6 +696,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1680,
+/**/
     1679,
 /**/
     1678,