Mock Version: 3.5 Mock Version: 3.5 Mock Version: 3.5 ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -bs --noclean --target noarch --nodeps /builddir/build/SPECS/python3x-pyparsing.spec'], chrootPath='/var/lib/mock/module-python38-3.8-8080020230605165815-0d9ba776-build-100586-51320/root'env={'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'}shell=Falselogger=timeout=86400uid=992gid=135user='mockbuild'nspawn_args=[]unshare_net=TrueprintOutput=False) Executing command: ['bash', '--login', '-c', '/usr/bin/rpmbuild -bs --noclean --target noarch --nodeps /builddir/build/SPECS/python3x-pyparsing.spec'] with env {'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'} and shell False Building target platforms: noarch Building for target noarch Wrote: /builddir/build/SRPMS/python3x-pyparsing-2.4.5-3.module+el8.8.0+679+96222339.src.rpm Child return code was: 0 ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -bb --noclean --target noarch --nodeps /builddir/build/SPECS/python3x-pyparsing.spec'], chrootPath='/var/lib/mock/module-python38-3.8-8080020230605165815-0d9ba776-build-100586-51320/root'env={'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'}shell=Falselogger=timeout=86400uid=992gid=135user='mockbuild'nspawn_args=[]unshare_net=TrueprintOutput=False) Executing command: ['bash', '--login', '-c', '/usr/bin/rpmbuild -bb --noclean --target noarch --nodeps /builddir/build/SPECS/python3x-pyparsing.spec'] with env {'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'C.UTF-8'} and shell False Building target platforms: noarch Building for target noarch Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.KudUtq + umask 022 + cd /builddir/build/BUILD + cd /builddir/build/BUILD + rm -rf pyparsing-pyparsing_2.4.5 + /usr/bin/gzip -dc /builddir/build/SOURCES/pyparsing-2.4.5.tar.gz + /usr/bin/tar -xof - + STATUS=0 + '[' 0 -ne 0 ']' + cd pyparsing-pyparsing_2.4.5 + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . + dos2unix -k CHANGES LICENSE dos2unix: converting file CHANGES to Unix format... dos2unix: converting file LICENSE to Unix format... + exit 0 Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.xVLZJu + umask 022 + cd /builddir/build/BUILD + cd pyparsing-pyparsing_2.4.5 + CFLAGS='-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' + LDFLAGS='-Wl,-z,relro -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld' + /usr/bin/python3.8 setup.py build '--executable=/usr/bin/python3.8 -s' running build running build_py creating build creating build/lib copying pyparsing.py -> build/lib + sleep 1 + exit 0 Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.Lndk7N + umask 022 + cd /builddir/build/BUILD + '[' /builddir/build/BUILDROOT/python3x-pyparsing-2.4.5-3.module+el8.8.0+679+96222339.noarch '!=' / ']' + rm -rf /builddir/build/BUILDROOT/python3x-pyparsing-2.4.5-3.module+el8.8.0+679+96222339.noarch ++ dirname /builddir/build/BUILDROOT/python3x-pyparsing-2.4.5-3.module+el8.8.0+679+96222339.noarch + mkdir -p /builddir/build/BUILDROOT + mkdir /builddir/build/BUILDROOT/python3x-pyparsing-2.4.5-3.module+el8.8.0+679+96222339.noarch + cd pyparsing-pyparsing_2.4.5 + CFLAGS='-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' + LDFLAGS='-Wl,-z,relro -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld' + /usr/bin/python3.8 setup.py install -O1 --skip-build --root /builddir/build/BUILDROOT/python3x-pyparsing-2.4.5-3.module+el8.8.0+679+96222339.noarch running install running install_lib creating /builddir/build/BUILDROOT/python3x-pyparsing-2.4.5-3.module+el8.8.0+679+96222339.noarch/usr creating /builddir/build/BUILDROOT/python3x-pyparsing-2.4.5-3.module+el8.8.0+679+96222339.noarch/usr/lib creating /builddir/build/BUILDROOT/python3x-pyparsing-2.4.5-3.module+el8.8.0+679+96222339.noarch/usr/lib/python3.8 creating /builddir/build/BUILDROOT/python3x-pyparsing-2.4.5-3.module+el8.8.0+679+96222339.noarch/usr/lib/python3.8/site-packages copying build/lib/pyparsing.py -> /builddir/build/BUILDROOT/python3x-pyparsing-2.4.5-3.module+el8.8.0+679+96222339.noarch/usr/lib/python3.8/site-packages byte-compiling /builddir/build/BUILDROOT/python3x-pyparsing-2.4.5-3.module+el8.8.0+679+96222339.noarch/usr/lib/python3.8/site-packages/pyparsing.py to pyparsing.cpython-38.pyc writing byte-compilation script '/tmp/tmp4uygitpl.py' /usr/bin/python3.8 /tmp/tmp4uygitpl.py removing /tmp/tmp4uygitpl.py running install_egg_info running egg_info creating pyparsing.egg-info writing pyparsing.egg-info/PKG-INFO writing dependency_links to pyparsing.egg-info/dependency_links.txt writing top-level names to pyparsing.egg-info/top_level.txt writing manifest file 'pyparsing.egg-info/SOURCES.txt' reading manifest file 'pyparsing.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' warning: no files found matching 'HowToUsePyparsing.rst' warning: no files found matching 'pyparsingClassDiagram.*' warning: no files found matching 'README.md' warning: no files found matching 'modules.rst' no previously-included directories found matching 'docs/_build/*' writing manifest file 'pyparsing.egg-info/SOURCES.txt' Copying pyparsing.egg-info to /builddir/build/BUILDROOT/python3x-pyparsing-2.4.5-3.module+el8.8.0+679+96222339.noarch/usr/lib/python3.8/site-packages/pyparsing-2.4.5-py3.8.egg-info running install_scripts + /usr/lib/rpm/find-debuginfo.sh -j8 --strict-build-id -m -i --build-id-seed 2.4.5-3.module+el8.8.0+679+96222339 --unique-debug-suffix -2.4.5-3.module+el8.8.0+679+96222339.noarch --unique-debug-src-base python3x-pyparsing-2.4.5-3.module+el8.8.0+679+96222339.noarch --run-dwz --dwz-low-mem-die-limit 10000000 --dwz-max-die-limit 50000000 -S debugsourcefiles.list /builddir/build/BUILD/pyparsing-pyparsing_2.4.5 find: 'debug': No such file or directory + /usr/lib/rpm/check-buildroot + /usr/lib/rpm/redhat/brp-ldconfig /sbin/ldconfig: Warning: ignoring configuration file that cannot be opened: /etc/ld.so.conf: No such file or directory + /usr/lib/rpm/brp-compress + /usr/lib/rpm/brp-strip-static-archive /usr/bin/strip + /usr/lib/rpm/brp-python-bytecompile '' 1 Bytecompiling .py files below /builddir/build/BUILDROOT/python3x-pyparsing-2.4.5-3.module+el8.8.0+679+96222339.noarch/usr/lib/python3.8 using /usr/bin/python3.8 + /usr/lib/rpm/brp-python-hardlink + PYTHON3=/usr/bin/python3.8 + /usr/lib/rpm/redhat/brp-mangle-shebangs Executing(%check): /bin/sh -e /var/tmp/rpm-tmp.0FwGjR + umask 022 + cd /builddir/build/BUILD + cd pyparsing-pyparsing_2.4.5 + /usr/bin/python3.8 unitTests.py .........................................................................................................................................................................................................................Beginning test of pyparsing, version 2.4.5 09 Nov 2019 23:03 UTC Python version 3.8.12 (default, May 18 2022, 19:57:51) [GCC 8.5.0 20210514 (Red Hat 8.5.0-10)] ---------------------------------------------------------------------- Ran 217 tests in 3.351s OK + /usr/bin/python3.8 simple_unit_tests.py ............. ---------------------------------------------------------------------- Ran 13 tests in 0.013s OK Simple match - Literal("xyz") ['xyz'] Simple match after skipping whitespace - Literal("xyz") ['xyz'] Simple fail - parse an empty string - Literal("xyz") ^ ParseException: Expected "xyz" (at char 0), (line:1, col:1) __main__.TestLiteral pyparsing.Literal - "xyz" Simple fail - parse a mismatching string - Literal("xyz") xyu ^ ParseException: Expected "xyz", found 'x' (at char 0), (line:1, col:1) __main__.TestLiteral pyparsing.Literal - "xyz" Simple fail - parse a partially matching string - Literal("xyz") xy ^ ParseException: Expected "xyz", found 'x' (at char 0), (line:1, col:1) __main__.TestLiteral pyparsing.Literal - "xyz" Fail - parse a partially matching string by matching individual letters - And({"x" "y" "z"}) xy ^ ParseException: Expected "z", found end of text (at char 2), (line:1, col:3) __main__.TestLiteral pyparsing.And - {"x" "y" "z"} pyparsing._SingleCharLiteral - "z" Match colors, converting to consistent case - ZeroOrMore([{'RED' | 'GREEN' | 'BLUE'}]...) ['RED', 'GREEN', 'BLUE', 'BLUE', 'GREEN', 'GREEN', 'RED'] Simple Word match - _WordRegex(W:(xy)) ['xxyxxyy'] Simple Word match of two separate Words - And({W:(x) W:(y)}) ['xxxxx', 'yy'] Simple Word match of two separate Words - implicitly skips whitespace - And({W:(x) W:(y)}) ['xxxxx', 'yy'] Parsing real numbers - fail, parsed numbers are in pieces - ZeroOrMore([{W:(0123...) "." W:(0123...)}]...) ['1', '.', '2', '2', '.', '3', '3', '.', '1416', '98', '.', '6'] Parsing real numbers - better, use Combine to combine multiple tokens into one - ZeroOrMore([Combine:({W:(0123...) "." W:(0123...)})]...) ['1.2', '2.3', '3.1416', '98.6'] Match several words - ZeroOrMore([{W:(x) | W:(y)}]...) ['xx', 'y', 'xx', 'yy', 'xx', 'y', 'x', 'y', 'xxx', 'y'] Match several words, skipping whitespace - ZeroOrMore([{W:(x) | W:(y)}]...) ['x', 'x', 'y', 'xx', 'y', 'y', 'xx', 'y', 'x', 'y', 'x', 'xx', 'y'] Match several words, skipping whitespace (old style) - OneOrMore({{W:(x) | W:(y)}}...) ['x', 'x', 'y', 'xx', 'y', 'y', 'xx', 'y', 'x', 'y', 'x', 'xx', 'y'] Match words and numbers - show use of results names to collect types of tokens - ZeroOrMore([{W:(ABCD...) | integer}]...) ['sdlfj', 23084, 'ksdfs', 8234, 'kjsdlfkjd', 934] - alpha: ['sdlfj', 'ksdfs', 'kjsdlfkjd'] - int: [23084, 8234, 934] Using delimitedList (comma is the default delimiter) - And(W:(ABCD...) [, W:(ABCD...)]...) ['xxyx', 'xy', 'y', 'xxyx', 'yxx', 'xy'] Using delimitedList, with ':' delimiter - Combine(W:(0123...) [: W:(0123...)]...) ['0A:4B:73:21:FE:76'] Match with results name - Literal("xyz") ['xyz'] - value: 'xyz' Match with results name - using naming short-cut - Literal("xyz") ['xyz'] - value: 'xyz' Define multiple results names - And({W:(ABCD..., ABCD...) "=" integer}) ['range', '=', 5280] - key: 'range' - value: 5280 Define multiple results names in groups - ZeroOrMore([Group:({W:(ABCD...) Suppress:("=") {real number with scientific notation | real number | signed integer}})]...) [['range', 5280], ['long', -138.52], ['lat', 46.91]] [0]: ['range', 5280] - key: 'range' - value: 5280 [1]: ['long', -138.52] - key: 'long' - value: -138.52 [2]: ['lat', 46.91] - key: 'lat' - value: 46.91 Define multiple results names in groups - use Dict to define results names using parsed keys - Dict(Dict:([Group:({W:(ABCD...) Suppress:("=") {real number with scientific notation | real number | signed integer}})]...)) [['range', 5280], ['long', -138.52], ['lat', 46.91]] - lat: 46.91 - long: -138.52 - range: 5280 Define multiple value types - Dict(Dict:([Group:({W:(ABCD...) Suppress:("=") {real number with scientific notation | real number | signed integer | True | False | quoted string, starting with ' ending with '}})]...)) [['long', -122.47], ['lat', 37.82], ['public', 'True'], ['name', 'Golden Gate Bridge']] - lat: 37.82 - long: -122.47 - name: 'Golden Gate Bridge' - public: 'True' Parsing real numbers - use parse action to convert to float at parse time - ZeroOrMore([Combine:({W:(0123...) "." W:(0123...)})]...) [1.2, 2.3, 3.1416, 98.6] Match with numeric string converted to int - _WordRegex(W:(0123...)) [12345] Use two parse actions to convert numeric string, then convert to datetime - _WordRegex(W:(0123...)) [datetime.datetime(2018, 9, 20, 3, 53, 48)] Use tokenMap for parse actions that operate on a single-length token - _WordRegex(W:(0123...)) [datetime.datetime(2018, 9, 20, 3, 53, 48)] Using a built-in function that takes a sequence of strs as a parse action - ZeroOrMore([W:(0123...)]...) ['0A:4B:73:21:FE:76'] Using a built-in function that takes a sequence of strs as a parse action - ZeroOrMore([W:(0123...)]...) ['0A', '21', '4B', '73', '76', 'FE'] A parse action that adds new key-values - ZeroOrMore([integer]...) [27, 1, 14, 22, 89] - ave: 30.6 - max: 89 - min: 1 - sum: 153 Parsing real numbers - using Regex instead of Combine - ZeroOrMore([Re:('\\d+\\.\\d+')]...) [1.2, 2.3, 3.1416, 98.6] Define a condition to only match numeric values that are multiples of 7 - ZeroOrMore([W:(0123...)]...) ['14', '35', '77'] Separate conversion to int and condition into separate parse action/conditions - ZeroOrMore([W:(0123...)]...) [14, 35, 77] Use transformString to convert simple markup to HTML - And({* | _ | / "(" !W:()) ")"}) Show in bold, underscore, or italic type A comma-delimited list of words - And(W:(ABCD...) [, W:(ABCD...)]...) ['this', 'that', 'blah', 'foo', 'bar'] A counted array of words - ZeroOrMore([(len) W:(ab)...]...) [['aaa', 'bbb'], [], ['abab', 'bbaa', 'abbab']] [0]: ['aaa', 'bbb'] [1]: [] [2]: ['abab', 'bbaa', 'abbab'] skipping comments with ignore - And({identifier "=" fnumber}) ['abc_100', '=', 3.1416] - lhs: 'abc_100' - rhs: 3.1416 some pre-defined expressions in pyparsing_common, and building a dotted identifier with delimted_list - And({{real number with scientific notation | real number | signed integer} identifier [. identifier]... IPv4 address}) [1001, 'www.google.com', '192.168.10.199'] - id_num: 1001 - ip_address: '192.168.10.199' - name: 'www.google.com' using oneOf (shortcut for Literal('a') | Literal('b') | Literal('c')) - ZeroOrMore([a | b | c]...) ['a', 'b', 'a', 'b', 'b', 'a', 'c', 'c', 'a', 'b', 'b'] parsing nested parentheses - Forward(nested () expression) [['a', 'b', ['c'], 'd', ['e', 'f', 'g', []]]] [0]: ['a', 'b', ['c'], 'd', ['e', 'f', 'g', []]] [0]: a [1]: b [2]: ['c'] [3]: d [4]: ['e', 'f', 'g', []] [0]: e [1]: f [2]: g [3]: [] parsing nested braces - And({"if" nested () expression nested {} expression}) ['if', [['x', '==', 'y'], '||', '!z'], ['printf(', '"{}"', ');']] - body: [['printf(', '"{}"', ');']] [0]: ['printf(', '"{}"', ');'] - condition: [[['x', '==', 'y'], '||', '!z']] [0]: [['x', '==', 'y'], '||', '!z'] [0]: ['x', '==', 'y'] [1]: || [2]: !z + exit 0 Processing files: python38-pyparsing-2.4.5-3.module+el8.8.0+679+96222339.noarch Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.l6TlZ8 + umask 022 + cd /builddir/build/BUILD + cd pyparsing-pyparsing_2.4.5 + DOCDIR=/builddir/build/BUILDROOT/python3x-pyparsing-2.4.5-3.module+el8.8.0+679+96222339.noarch/usr/share/doc/python38-pyparsing + export LC_ALL=C + LC_ALL=C + export DOCDIR + /usr/bin/mkdir -p /builddir/build/BUILDROOT/python3x-pyparsing-2.4.5-3.module+el8.8.0+679+96222339.noarch/usr/share/doc/python38-pyparsing + cp -pr CHANGES /builddir/build/BUILDROOT/python3x-pyparsing-2.4.5-3.module+el8.8.0+679+96222339.noarch/usr/share/doc/python38-pyparsing + cp -pr README.rst /builddir/build/BUILDROOT/python3x-pyparsing-2.4.5-3.module+el8.8.0+679+96222339.noarch/usr/share/doc/python38-pyparsing + exit 0 Executing(%license): /bin/sh -e /var/tmp/rpm-tmp.pH7Weh + umask 022 + cd /builddir/build/BUILD + cd pyparsing-pyparsing_2.4.5 + LICENSEDIR=/builddir/build/BUILDROOT/python3x-pyparsing-2.4.5-3.module+el8.8.0+679+96222339.noarch/usr/share/licenses/python38-pyparsing + export LC_ALL=C + LC_ALL=C + export LICENSEDIR + /usr/bin/mkdir -p /builddir/build/BUILDROOT/python3x-pyparsing-2.4.5-3.module+el8.8.0+679+96222339.noarch/usr/share/licenses/python38-pyparsing + cp -pr LICENSE /builddir/build/BUILDROOT/python3x-pyparsing-2.4.5-3.module+el8.8.0+679+96222339.noarch/usr/share/licenses/python38-pyparsing + exit 0 Provides: python3.8dist(pyparsing) = 2.4.5 python38-pyparsing = 2.4.5-3.module+el8.8.0+679+96222339 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PartialHardlinkSets) <= 4.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Requires: python(abi) = 3.8 Checking for unpackaged file(s): /usr/lib/rpm/check-files /builddir/build/BUILDROOT/python3x-pyparsing-2.4.5-3.module+el8.8.0+679+96222339.noarch Wrote: /builddir/build/RPMS/python38-pyparsing-2.4.5-3.module+el8.8.0+679+96222339.noarch.rpm Child return code was: 0