Date: Wednesday, December 14, 2022 @ 12:15:50
  Author: eworm
Revision: 464289

upgpkg: zsh 5.9-2: rebuild, fix check after egrep deprecation

Added:
  zsh/trunk/0001-50629-do-not-use-egrep-in-tests.patch
Modified:
  zsh/trunk/PKGBUILD

--------------------------------------------+
 0001-50629-do-not-use-egrep-in-tests.patch |  164 +++++++++++++++++++++++++++
 PKGBUILD                                   |    7 -
 2 files changed, 170 insertions(+), 1 deletion(-)

Added: 0001-50629-do-not-use-egrep-in-tests.patch
===================================================================
--- 0001-50629-do-not-use-egrep-in-tests.patch                          (rev 0)
+++ 0001-50629-do-not-use-egrep-in-tests.patch  2022-12-14 12:15:50 UTC (rev 
464289)
@@ -0,0 +1,164 @@
+commit 4fc5dc0292acd77f17281f451774ba2ca4203026
+Author: Jun-ichi Takimoto <[email protected]>
+Date:   Thu Sep 15 18:56:20 2022 +0900
+
+    50629: do not use egrep in tests
+
+diff --git a/Test/D07multibyte.ztst b/Test/D07multibyte.ztst
+index e2e9a25ef..6909346cb 100644
+--- a/Test/D07multibyte.ztst
++++ b/Test/D07multibyte.ztst
+@@ -1,19 +1,7 @@
+ %prep
+ 
+-# Find a UTF-8 locale.
+-  setopt multibyte
+-# Don't let LC_* override our choice of locale.
+-  unset -m LC_\*
+-  mb_ok=
+-  langs=(en_{US,GB}.{UTF-,utf}8 en.UTF-8
+-       $(locale -a 2>/dev/null | egrep 'utf8|UTF-8'))
+-  for LANG in $langs; do
+-    if [[ é = ? ]]; then
+-      mb_ok=1
+-      break;
+-    fi
+-  done
+-  if [[ -z $mb_ok ]]; then
++  LANG=$(ZTST_find_UTF8)
++  if [[ -z $LANG ]]; then
+     ZTST_unimplemented="no UTF-8 locale or multibyte mode is not implemented"
+   else
+     print -u $ZTST_fd Testing multibyte with locale $LANG
+diff --git a/Test/E01options.ztst b/Test/E01options.ztst
+index 2acbfd357..d38fbed74 100644
+--- a/Test/E01options.ztst
++++ b/Test/E01options.ztst
+@@ -651,7 +651,7 @@
+ >noktarg1
+ >0 1
+ 
+-  showopt() { setopt | egrep 'localoptions|ksharrays'; }
++  showopt() { echo ${(FM)${(@f)"$(setopt)"}:#(localoptions|ksharrays)*} }
+   f1() { setopt localoptions ksharrays; showopt }
+   f2() { setopt ksharrays; showopt }
+   setopt kshoptionprint
+diff --git a/Test/V07pcre.ztst b/Test/V07pcre.ztst
+index c9c844d2a..ca13419e5 100644
+--- a/Test/V07pcre.ztst
++++ b/Test/V07pcre.ztst
+@@ -6,20 +6,8 @@
+     return 0
+   fi
+   setopt rematch_pcre
+-# Find a UTF-8 locale.
+-  setopt multibyte
+-# Don't let LC_* override our choice of locale.
+-  unset -m LC_\*
+-  mb_ok=
+-  langs=(en_{US,GB}.{UTF-,utf}8 en.UTF-8
+-       $(locale -a 2>/dev/null | egrep 'utf8|UTF-8'))
+-  for LANG in $langs; do
+-    if [[ é = ? ]]; then
+-      mb_ok=1
+-      break;
+-    fi
+-  done
+-  if [[ -z $mb_ok ]]; then
++  LANG=$(ZTST_find_UTF8)
++  if [[ -z $LANG ]]; then
+     ZTST_unimplemented="no UTF-8 locale or multibyte mode is not implemented"
+   else
+     print -u $ZTST_fd Testing PCRE multibyte with locale $LANG
+diff --git a/Test/X02zlevi.ztst b/Test/X02zlevi.ztst
+index 8146d6752..203c13c32 100644
+--- a/Test/X02zlevi.ztst
++++ b/Test/X02zlevi.ztst
+@@ -1,16 +1,7 @@
+ # Tests of the vi mode of ZLE
+ 
+ %prep
+-  unset -m LC_\*
+-  ZSH_TEST_LANG=
+-  langs=(en_{US,GB}.{UTF-,utf}8 en.UTF-8
+-       $(locale -a 2>/dev/null | egrep 'utf8|UTF-8'))
+-  for LANG in $langs; do
+-    if [[ é = ? ]]; then
+-      ZSH_TEST_LANG=$LANG 
+-      break;
+-    fi
+-  done
++  ZSH_TEST_LANG=$(ZTST_find_UTF8)
+   if ( zmodload zsh/zpty 2>/dev/null ); then
+     . $ZTST_srcdir/comptest
+     comptestinit -v -z $ZTST_testdir/../Src/zsh
+diff --git a/Test/X03zlebindkey.ztst b/Test/X03zlebindkey.ztst
+index 43692a85b..5277332a7 100644
+--- a/Test/X03zlebindkey.ztst
++++ b/Test/X03zlebindkey.ztst
+@@ -3,16 +3,7 @@
+ # into bindings.  The latter is particularly tricky with multibyte sequences.
+ 
+ %prep
+-  unset -m LC_\*
+-  ZSH_TEST_LANG=
+-  langs=(en_{US,GB}.{UTF-,utf}8 en.UTF-8
+-       $(locale -a 2>/dev/null | egrep 'utf8|UTF-8'))
+-  for LANG in $langs; do
+-    if [[ é = ? ]]; then
+-      ZSH_TEST_LANG=$LANG
+-      break;
+-    fi
+-  done
++  ZSH_TEST_LANG=$(ZTST_find_UTF8)
+   if ( zmodload zsh/zpty 2>/dev/null ); then
+     . $ZTST_srcdir/comptest
+     comptestinit -z $ZTST_testdir/../Src/zsh
+diff --git a/Test/Y01completion.ztst b/Test/Y01completion.ztst
+index 6af0efc6d..f976f9f91 100644
+--- a/Test/Y01completion.ztst
++++ b/Test/Y01completion.ztst
+@@ -1,16 +1,7 @@
+ # Tests for completion system.
+ 
+ %prep
+-  unset -m LC_\*
+-  ZSH_TEST_LANG=
+-  langs=(en_{US,GB}.{UTF-,utf}8 en.UTF-8
+-         $(locale -a 2>/dev/null | egrep 'utf8|UTF-8'))
+-  for LANG in $langs; do
+-    if [[ é = ? ]]; then
+-      ZSH_TEST_LANG=$LANG
+-      break;
+-    fi
+-  done
++  ZSH_TEST_LANG=$(ZTST_find_UTF8)
+   if ( zmodload zsh/zpty 2>/dev/null ); then
+     . $ZTST_srcdir/comptest
+     mkdir comp.tmp
+diff --git a/Test/ztst.zsh b/Test/ztst.zsh
+index aca275c1c..d95b726e7 100755
+--- a/Test/ztst.zsh
++++ b/Test/ztst.zsh
+@@ -37,6 +37,21 @@ emulate -R zsh
+ # LANG must be passed to child zsh.
+ export LANG
+ 
++# find UTF-8 locale
++ZTST_find_UTF8 () {
++  setopt multibyte
++  # Don't let LC_* override our choice of locale.
++  unset -m LC_\*
++  local langs=(en_{US,GB}.{UTF-,utf}8 en.UTF-8
++               ${(M)$(locale -a 2>/dev/null):#*.(utf8|UTF-8)})
++  for LANG in $langs; do
++    if [[ é = ? ]]; then
++      echo $LANG
++      return
++    fi
++  done
++}
++
+ # Don't propagate variables that are set by default in the shell.
+ typeset +x WORDCHARS
+ 

Modified: PKGBUILD
===================================================================
--- PKGBUILD    2022-12-14 11:45:46 UTC (rev 464288)
+++ PKGBUILD    2022-12-14 12:15:50 UTC (rev 464289)
@@ -3,17 +3,19 @@
 pkgbase=zsh
 pkgname=('zsh' 'zsh-doc')
 pkgver=5.9
-pkgrel=1
+pkgrel=2
 arch=('x86_64')
 url='https://www.zsh.org/'
 license=('custom')
 makedepends=('pcre' 'libcap' 'gdbm' 'yodl')
 source=("https://www.zsh.org/pub/zsh-${pkgver}"{,-doc}".tar.xz"{,.asc}
+        '0001-50629-do-not-use-egrep-in-tests.patch'
         'zprofile')
 
sha512sums=('d9138b7f379ad942a5f46819d2dd52d31f3a1129f2a0d1b53d4c5cd43c318b60396da6d37c57c477b8e958fb750209aca0ae93f8c9dd42ac958de006a0ff067e'
             'SKIP'
             
'5cc6abcdcfb4f5ad7bc4a31364ca49dfd87ae03e0082d89cc2ba1f00570f6757266ee60894ad31b562408de91494c22f177b414b03cb78c31d92328686be9860'
             'SKIP'
+            
'af6a905e83807efb614a585ac1876e0a9cc8b745911b43915b06aab46757a6df6dfc64a7a60b53cc7e62e528c04aa7460e660a1de6720476030dd746af76c6e3'
             
'b287e00d8de4dc4cfb1c52bb2aef1d4b191de3512baad4c91dc81e78ddc3e5bb07297f43924b022ac44ff401a348d8a9fa366e19ddc8ea1ea72df311f5ed0034')
 validpgpkeys=('F7B2754C7DE2830914661F0EA71D9A9D4BDB27B3'
               'E96646BE08C0AF0AA0F90788A5FEEE3AC7937444'
@@ -22,6 +24,9 @@
 prepare() {
        cd "${srcdir}/${pkgbase}-${pkgver}"
 
+       # 50629: do not use egrep in tests
+       patch -Np1 < ../0001-50629-do-not-use-egrep-in-tests.patch
+
        # Set correct keymap path
        sed -i 's#/usr/share/keymaps#/usr/share/kbd/keymaps#g' 
Completion/Unix/Command/_loadkeys
 

Reply via email to