Mock Version: 2.0 Mock Version: 2.0 Mock Version: 2.0 ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -bs --target x86_64 --nodeps /builddir/build/SPECS/pyparsing.spec'], chrootPath='/var/lib/mock/1284547-epel-8-x86_64-1583354840.204476/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': 'en_US.UTF-8'}shell=Falselogger=timeout=0uid=1001gid=135user='mockbuild'nspawn_args=['--capability=cap_ipc_lock', '--rlimit=RLIMIT_NOFILE=10240', '--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.ei4ohzho:/etc/resolv.conf', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11']unshare_net=TrueprintOutput=True) ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -bs --target x86_64 --nodeps /builddir/build/SPECS/pyparsing.spec'], chrootPath='/var/lib/mock/1284547-epel-8-x86_64-1583354840.204476/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': 'en_US.UTF-8'}shell=Falselogger=timeout=0uid=1001gid=135user='mockbuild'nspawn_args=['--capability=cap_ipc_lock', '--rlimit=RLIMIT_NOFILE=10240', '--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.ei4ohzho:/etc/resolv.conf', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11']unshare_net=TrueprintOutput=True) Using nspawn with args ['--capability=cap_ipc_lock', '--rlimit=RLIMIT_NOFILE=10240', '--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.ei4ohzho:/etc/resolv.conf', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11'] Using nspawn with args ['--capability=cap_ipc_lock', '--rlimit=RLIMIT_NOFILE=10240', '--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.ei4ohzho:/etc/resolv.conf', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11'] Executing command: ['/usr/bin/systemd-nspawn', '-q', '-M', '81cc1ad77b654ea9ab2ddd0d7a77a0e2', '-D', '/var/lib/mock/1284547-epel-8-x86_64-1583354840.204476/root', '-a', '--capability=cap_ipc_lock', '--rlimit=RLIMIT_NOFILE=10240', '--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.ei4ohzho:/etc/resolv.conf', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11', '--console=pipe', '--setenv=TERM=vt100', '--setenv=SHELL=/bin/bash', '--setenv=HOME=/builddir', '--setenv=HOSTNAME=mock', '--setenv=PATH=/usr/bin:/bin:/usr/sbin:/sbin', '--setenv=PROMPT_COMMAND=printf "\\033]0;\\007"', '--setenv=PS1= \\s-\\v\\$ ', '--setenv=LANG=en_US.UTF-8', '-u', 'mockbuild', 'bash', '--login', '-c', '/usr/bin/rpmbuild -bs --target x86_64 --nodeps /builddir/build/SPECS/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': 'en_US.UTF-8'} and shell False Executing command: ['/usr/bin/systemd-nspawn', '-q', '-M', '81cc1ad77b654ea9ab2ddd0d7a77a0e2', '-D', '/var/lib/mock/1284547-epel-8-x86_64-1583354840.204476/root', '-a', '--capability=cap_ipc_lock', '--rlimit=RLIMIT_NOFILE=10240', '--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.ei4ohzho:/etc/resolv.conf', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11', '--console=pipe', '--setenv=TERM=vt100', '--setenv=SHELL=/bin/bash', '--setenv=HOME=/builddir', '--setenv=HOSTNAME=mock', '--setenv=PATH=/usr/bin:/bin:/usr/sbin:/sbin', '--setenv=PROMPT_COMMAND=printf "\\033]0;\\007"', '--setenv=PS1= \\s-\\v\\$ ', '--setenv=LANG=en_US.UTF-8', '-u', 'mockbuild', 'bash', '--login', '-c', '/usr/bin/rpmbuild -bs --target x86_64 --nodeps /builddir/build/SPECS/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': 'en_US.UTF-8'} and shell False Building target platforms: x86_64 Building target platforms: x86_64 Building for target x86_64 Building for target x86_64 Wrote: /builddir/build/SRPMS/pyparsing-2.4.0-2.el8.src.rpm Wrote: /builddir/build/SRPMS/pyparsing-2.4.0-2.el8.src.rpm Child return code was: 0 Child return code was: 0 ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -bb --target x86_64 --nodeps /builddir/build/SPECS/pyparsing.spec'], chrootPath='/var/lib/mock/1284547-epel-8-x86_64-1583354840.204476/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': 'en_US.UTF-8'}shell=Falselogger=timeout=0uid=1001gid=135user='mockbuild'nspawn_args=['--capability=cap_ipc_lock', '--rlimit=RLIMIT_NOFILE=10240', '--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.ei4ohzho:/etc/resolv.conf', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11']unshare_net=TrueprintOutput=True) ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -bb --target x86_64 --nodeps /builddir/build/SPECS/pyparsing.spec'], chrootPath='/var/lib/mock/1284547-epel-8-x86_64-1583354840.204476/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': 'en_US.UTF-8'}shell=Falselogger=timeout=0uid=1001gid=135user='mockbuild'nspawn_args=['--capability=cap_ipc_lock', '--rlimit=RLIMIT_NOFILE=10240', '--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.ei4ohzho:/etc/resolv.conf', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11']unshare_net=TrueprintOutput=True) Using nspawn with args ['--capability=cap_ipc_lock', '--rlimit=RLIMIT_NOFILE=10240', '--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.ei4ohzho:/etc/resolv.conf', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11'] Using nspawn with args ['--capability=cap_ipc_lock', '--rlimit=RLIMIT_NOFILE=10240', '--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.ei4ohzho:/etc/resolv.conf', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11'] Executing command: ['/usr/bin/systemd-nspawn', '-q', '-M', 'ce9d3ceae18c4f289bc0d1d650489e16', '-D', '/var/lib/mock/1284547-epel-8-x86_64-1583354840.204476/root', '-a', '--capability=cap_ipc_lock', '--rlimit=RLIMIT_NOFILE=10240', '--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.ei4ohzho:/etc/resolv.conf', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11', '--console=pipe', '--setenv=TERM=vt100', '--setenv=SHELL=/bin/bash', '--setenv=HOME=/builddir', '--setenv=HOSTNAME=mock', '--setenv=PATH=/usr/bin:/bin:/usr/sbin:/sbin', '--setenv=PROMPT_COMMAND=printf "\\033]0;\\007"', '--setenv=PS1= \\s-\\v\\$ ', '--setenv=LANG=en_US.UTF-8', '-u', 'mockbuild', 'bash', '--login', '-c', '/usr/bin/rpmbuild -bb --target x86_64 --nodeps /builddir/build/SPECS/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': 'en_US.UTF-8'} and shell False Executing command: ['/usr/bin/systemd-nspawn', '-q', '-M', 'ce9d3ceae18c4f289bc0d1d650489e16', '-D', '/var/lib/mock/1284547-epel-8-x86_64-1583354840.204476/root', '-a', '--capability=cap_ipc_lock', '--rlimit=RLIMIT_NOFILE=10240', '--capability=cap_ipc_lock', '--bind=/tmp/mock-resolv.ei4ohzho:/etc/resolv.conf', '--bind=/dev/loop-control', '--bind=/dev/loop0', '--bind=/dev/loop1', '--bind=/dev/loop2', '--bind=/dev/loop3', '--bind=/dev/loop4', '--bind=/dev/loop5', '--bind=/dev/loop6', '--bind=/dev/loop7', '--bind=/dev/loop8', '--bind=/dev/loop9', '--bind=/dev/loop10', '--bind=/dev/loop11', '--console=pipe', '--setenv=TERM=vt100', '--setenv=SHELL=/bin/bash', '--setenv=HOME=/builddir', '--setenv=HOSTNAME=mock', '--setenv=PATH=/usr/bin:/bin:/usr/sbin:/sbin', '--setenv=PROMPT_COMMAND=printf "\\033]0;\\007"', '--setenv=PS1= \\s-\\v\\$ ', '--setenv=LANG=en_US.UTF-8', '-u', 'mockbuild', 'bash', '--login', '-c', '/usr/bin/rpmbuild -bb --target x86_64 --nodeps /builddir/build/SPECS/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': 'en_US.UTF-8'} and shell False Building target platforms: x86_64 Building target platforms: x86_64 Building for target x86_64 Building for target x86_64 Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.Z2bZfN Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.Z2bZfN + umask 022 + umask 022 + cd /builddir/build/BUILD + cd /builddir/build/BUILD + cd /builddir/build/BUILD + cd /builddir/build/BUILD + rm -rf pyparsing-pyparsing_2.4.0 + rm -rf pyparsing-pyparsing_2.4.0 + /usr/bin/gzip -dc /builddir/build/SOURCES/pyparsing-2.4.0.tar.gz + /usr/bin/gzip -dc /builddir/build/SOURCES/pyparsing-2.4.0.tar.gz + /usr/bin/tar -xof - + /usr/bin/tar -xof - + STATUS=0 + STATUS=0 + '[' 0 -ne 0 ']' + '[' 0 -ne 0 ']' + cd pyparsing-pyparsing_2.4.0 + cd pyparsing-pyparsing_2.4.0 + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . + dos2unix -k CHANGES LICENSE + dos2unix -k CHANGES LICENSE dos2unix: converting file CHANGES to Unix format... dos2unix: converting file CHANGES to Unix format... dos2unix: converting file LICENSE to Unix format... dos2unix: converting file LICENSE to Unix format... + exit 0 + exit 0 Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.Zdd1eZ Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.Zdd1eZ + umask 022 + umask 022 + cd /builddir/build/BUILD + cd /builddir/build/BUILD + cd pyparsing-pyparsing_2.4.0 + cd pyparsing-pyparsing_2.4.0 + 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' + 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' + LDFLAGS='-Wl,-z,relro -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld' + /usr/bin/python2 setup.py bdist_wheel + /usr/bin/python2 setup.py bdist_wheel running bdist_wheel running bdist_wheel running build running build running build_py running build_py creating build creating build creating build/lib creating build/lib copying pyparsing.py -> build/lib copying pyparsing.py -> build/lib installing to build/bdist.linux-x86_64/wheel installing to build/bdist.linux-x86_64/wheel running install running install running install_lib running install_lib creating build/bdist.linux-x86_64 creating build/bdist.linux-x86_64 creating build/bdist.linux-x86_64/wheel creating build/bdist.linux-x86_64/wheel copying build/lib/pyparsing.py -> build/bdist.linux-x86_64/wheel copying build/lib/pyparsing.py -> build/bdist.linux-x86_64/wheel running install_egg_info running install_egg_info running egg_info running egg_info creating pyparsing.egg-info creating pyparsing.egg-info writing pyparsing.egg-info/PKG-INFO writing pyparsing.egg-info/PKG-INFO writing top-level names to pyparsing.egg-info/top_level.txt writing top-level names to pyparsing.egg-info/top_level.txt writing dependency_links to pyparsing.egg-info/dependency_links.txt writing dependency_links to pyparsing.egg-info/dependency_links.txt writing manifest file 'pyparsing.egg-info/SOURCES.txt' writing manifest file 'pyparsing.egg-info/SOURCES.txt' reading manifest file 'pyparsing.egg-info/SOURCES.txt' reading manifest file 'pyparsing.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' reading manifest template 'MANIFEST.in' warning: no files found matching 'HowToUsePyparsing.html' warning: no files found matching 'HowToUsePyparsing.html' warning: no files found matching 'pyparsingClassDiagram.*' warning: no files found matching 'pyparsingClassDiagram.*' warning: no files found matching 'README.md' warning: no files found matching 'README.md' warning: no files found matching 'CODE_OF_CONDUCT.md' warning: no files found matching 'CODE_OF_CONDUCT.md' no previously-included directories found matching 'docs/_build/*' no previously-included directories found matching 'docs/_build/*' writing manifest file 'pyparsing.egg-info/SOURCES.txt' writing manifest file 'pyparsing.egg-info/SOURCES.txt' Copying pyparsing.egg-info to build/bdist.linux-x86_64/wheel/pyparsing-2.4.0-py2.7.egg-info Copying pyparsing.egg-info to build/bdist.linux-x86_64/wheel/pyparsing-2.4.0-py2.7.egg-info running install_scripts running install_scripts creating build/bdist.linux-x86_64/wheel/pyparsing-2.4.0.dist-info/WHEEL creating build/bdist.linux-x86_64/wheel/pyparsing-2.4.0.dist-info/WHEEL creating '/builddir/build/BUILD/pyparsing-pyparsing_2.4.0/dist/pyparsing-2.4.0-py2.py3-none-any.whl' and adding '.' to it creating '/builddir/build/BUILD/pyparsing-pyparsing_2.4.0/dist/pyparsing-2.4.0-py2.py3-none-any.whl' and adding '.' to it adding 'pyparsing.py' adding 'pyparsing.py' adding 'pyparsing-2.4.0.dist-info/LICENSE.txt' adding 'pyparsing-2.4.0.dist-info/LICENSE.txt' adding 'pyparsing-2.4.0.dist-info/top_level.txt' adding 'pyparsing-2.4.0.dist-info/top_level.txt' adding 'pyparsing-2.4.0.dist-info/WHEEL' adding 'pyparsing-2.4.0.dist-info/WHEEL' adding 'pyparsing-2.4.0.dist-info/METADATA' adding 'pyparsing-2.4.0.dist-info/METADATA' adding 'pyparsing-2.4.0.dist-info/RECORD' adding 'pyparsing-2.4.0.dist-info/RECORD' removing build/bdist.linux-x86_64/wheel removing build/bdist.linux-x86_64/wheel + sleep 1 + sleep 1 + 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' + 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' + LDFLAGS='-Wl,-z,relro -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld' + /usr/bin/python3.6 setup.py bdist_wheel + /usr/bin/python3.6 setup.py bdist_wheel running bdist_wheel running bdist_wheel running build running build running build_py running build_py installing to build/bdist.linux-x86_64/wheel installing to build/bdist.linux-x86_64/wheel running install running install running install_lib running install_lib creating build/bdist.linux-x86_64/wheel creating build/bdist.linux-x86_64/wheel copying build/lib/pyparsing.py -> build/bdist.linux-x86_64/wheel copying build/lib/pyparsing.py -> build/bdist.linux-x86_64/wheel running install_egg_info running install_egg_info running egg_info running egg_info writing pyparsing.egg-info/PKG-INFO writing pyparsing.egg-info/PKG-INFO writing dependency_links to pyparsing.egg-info/dependency_links.txt writing dependency_links to pyparsing.egg-info/dependency_links.txt writing top-level names to pyparsing.egg-info/top_level.txt writing top-level names to pyparsing.egg-info/top_level.txt reading manifest file 'pyparsing.egg-info/SOURCES.txt' reading manifest file 'pyparsing.egg-info/SOURCES.txt' reading manifest template 'MANIFEST.in' reading manifest template 'MANIFEST.in' warning: no files found matching 'HowToUsePyparsing.html' warning: no files found matching 'HowToUsePyparsing.html' warning: no files found matching 'pyparsingClassDiagram.*' warning: no files found matching 'pyparsingClassDiagram.*' warning: no files found matching 'README.md' warning: no files found matching 'README.md' warning: no files found matching 'CODE_OF_CONDUCT.md' warning: no files found matching 'CODE_OF_CONDUCT.md' no previously-included directories found matching 'docs/_build/*' no previously-included directories found matching 'docs/_build/*' writing manifest file 'pyparsing.egg-info/SOURCES.txt' writing manifest file 'pyparsing.egg-info/SOURCES.txt' Copying pyparsing.egg-info to build/bdist.linux-x86_64/wheel/pyparsing-2.4.0-py3.6.egg-info Copying pyparsing.egg-info to build/bdist.linux-x86_64/wheel/pyparsing-2.4.0-py3.6.egg-info running install_scripts running install_scripts creating build/bdist.linux-x86_64/wheel/pyparsing-2.4.0.dist-info/WHEEL creating build/bdist.linux-x86_64/wheel/pyparsing-2.4.0.dist-info/WHEEL creating '/builddir/build/BUILD/pyparsing-pyparsing_2.4.0/dist/pyparsing-2.4.0-py2.py3-none-any.whl' and adding '.' to it creating '/builddir/build/BUILD/pyparsing-pyparsing_2.4.0/dist/pyparsing-2.4.0-py2.py3-none-any.whl' and adding '.' to it adding 'pyparsing.py' adding 'pyparsing.py' adding 'pyparsing-2.4.0.dist-info/LICENSE.txt' adding 'pyparsing-2.4.0.dist-info/LICENSE.txt' adding 'pyparsing-2.4.0.dist-info/top_level.txt' adding 'pyparsing-2.4.0.dist-info/top_level.txt' adding 'pyparsing-2.4.0.dist-info/WHEEL' adding 'pyparsing-2.4.0.dist-info/WHEEL' adding 'pyparsing-2.4.0.dist-info/METADATA' adding 'pyparsing-2.4.0.dist-info/METADATA' adding 'pyparsing-2.4.0.dist-info/RECORD' adding 'pyparsing-2.4.0.dist-info/RECORD' removing build/bdist.linux-x86_64/wheel removing build/bdist.linux-x86_64/wheel + sleep 1 + sleep 1 + pushd docs + pushd docs ~/build/BUILD/pyparsing-pyparsing_2.4.0/docs ~/build/BUILD/pyparsing-pyparsing_2.4.0 ~/build/BUILD/pyparsing-pyparsing_2.4.0/docs ~/build/BUILD/pyparsing-pyparsing_2.4.0 + sed -i /alabaster/d conf.py + sed -i /alabaster/d conf.py + sphinx-build -b html . html + sphinx-build -b html . html Running Sphinx v1.7.6 Running Sphinx v1.7.6 making output directory... making output directory... loading pickled environment... not yet created loading pickled environment... not yet created building [mo]: targets for 0 po files that are out of date building [mo]: targets for 0 po files that are out of date building [html]: targets for 5 source files that are out of date building [html]: targets for 5 source files that are out of date updating environment: 5 added, 0 changed, 0 removed updating environment: 5 added, 0 changed, 0 removed reading sources... [ 20%] CODE_OF_CONDUCT reading sources... [ 20%] CODE_OF_CONDUCT reading sources... [ 40%] HowToUsePyparsing reading sources... [ 40%] HowToUsePyparsing reading sources... [ 60%] index reading sources... [ 60%] index reading sources... [ 80%] modules reading sources... [ 80%] modules reading sources... [100%] pyparsing reading sources... [100%] pyparsing looking for now-outdated files... WARNING: invalid signature for autoclass ('pyparsing::pyparsing_unicode.עִברִית') looking for now-outdated files... WARNING: invalid signature for autoclass ('pyparsing::pyparsing_unicode.עִברִית') WARNING: don't know which module to import for autodocumenting 'pyparsing::pyparsing_unicode.עִברִית' (try placing a "module" or "currentmodule" directive in the document, or giving an explicit module name) WARNING: don't know which module to import for autodocumenting 'pyparsing::pyparsing_unicode.עִברִית' (try placing a "module" or "currentmodule" directive in the document, or giving an explicit module name) WARNING: invalid signature for autoclass ('pyparsing::pyparsing_unicode.देवनागरी') WARNING: invalid signature for autoclass ('pyparsing::pyparsing_unicode.देवनागरी') WARNING: don't know which module to import for autodocumenting 'pyparsing::pyparsing_unicode.देवनागरी' (try placing a "module" or "currentmodule" directive in the document, or giving an explicit module name) WARNING: don't know which module to import for autodocumenting 'pyparsing::pyparsing_unicode.देवनागरी' (try placing a "module" or "currentmodule" directive in the document, or giving an explicit module name) none found none found pickling environment... done pickling environment... done checking consistency... done checking consistency... done preparing documents... done preparing documents... done writing output... [ 20%] CODE_OF_CONDUCT writing output... [ 20%] CODE_OF_CONDUCT writing output... [ 40%] HowToUsePyparsing writing output... [ 40%] HowToUsePyparsing writing output... [ 60%] index writing output... [ 60%] index writing output... [ 80%] modules writing output... [ 80%] modules writing output... [100%] pyparsing writing output... [100%] pyparsing generating indices... genindex py-modindex generating indices... genindex py-modindex writing additional pages... search writing additional pages... search copying static files... done copying static files... done copying extra files... done copying extra files... done dumping search index in English (code: en) ... done dumping search index in English (code: en) ... done dumping object inventory... done dumping object inventory... done build succeeded, 4 warnings. build succeeded, 4 warnings. The HTML pages are in html. The HTML pages are in html. + popd + popd ~/build/BUILD/pyparsing-pyparsing_2.4.0 ~/build/BUILD/pyparsing-pyparsing_2.4.0 + exit 0 + exit 0 Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.KklRcu Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.KklRcu + umask 022 + umask 022 + cd /builddir/build/BUILD + cd /builddir/build/BUILD + '[' /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64 '!=' / ']' + '[' /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64 '!=' / ']' + rm -rf /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64 + rm -rf /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64 ++ dirname /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64 ++ dirname /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64 + mkdir -p /builddir/build/BUILDROOT + mkdir -p /builddir/build/BUILDROOT + mkdir /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64 + mkdir /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64 + cd pyparsing-pyparsing_2.4.0 + cd pyparsing-pyparsing_2.4.0 + pip2.7 install -I dist/pyparsing-2.4.0-py2.py3-none-any.whl --root /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64 --strip-file-prefix /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64 --no-deps + pip2.7 install -I dist/pyparsing-2.4.0-py2.py3-none-any.whl --root /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64 --strip-file-prefix /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64 --no-deps Processing ./dist/pyparsing-2.4.0-py2.py3-none-any.whl Processing ./dist/pyparsing-2.4.0-py2.py3-none-any.whl Installing collected packages: pyparsing Installing collected packages: pyparsing Successfully installed pyparsing-2.4.0 Successfully installed pyparsing-2.4.0 + 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' + 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' + /usr/bin/python3.6 -m pip install -I dist/pyparsing-2.4.0-py2.py3-none-any.whl --root /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64 --strip-file-prefix /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64 --no-deps + /usr/bin/python3.6 -m pip install -I dist/pyparsing-2.4.0-py2.py3-none-any.whl --root /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64 --strip-file-prefix /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64 --no-deps Processing ./dist/pyparsing-2.4.0-py2.py3-none-any.whl Processing ./dist/pyparsing-2.4.0-py2.py3-none-any.whl Installing collected packages: pyparsing Installing collected packages: pyparsing Successfully installed pyparsing-2.4.0 Successfully installed pyparsing-2.4.0 + /usr/lib/rpm/find-debuginfo.sh -j2 --strict-build-id -m -i --build-id-seed 2.4.0-2.el8 --unique-debug-suffix -2.4.0-2.el8.x86_64 --unique-debug-src-base pyparsing-2.4.0-2.el8.x86_64 --run-dwz --dwz-low-mem-die-limit 10000000 --dwz-max-die-limit 110000000 -S debugsourcefiles.list /builddir/build/BUILD/pyparsing-pyparsing_2.4.0 + /usr/lib/rpm/find-debuginfo.sh -j2 --strict-build-id -m -i --build-id-seed 2.4.0-2.el8 --unique-debug-suffix -2.4.0-2.el8.x86_64 --unique-debug-src-base pyparsing-2.4.0-2.el8.x86_64 --run-dwz --dwz-low-mem-die-limit 10000000 --dwz-max-die-limit 110000000 -S debugsourcefiles.list /builddir/build/BUILD/pyparsing-pyparsing_2.4.0 find: 'debug': No such file or directory find: 'debug': No such file or directory + /usr/lib/rpm/check-buildroot + /usr/lib/rpm/check-buildroot + /usr/lib/rpm/redhat/brp-ldconfig + /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 /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-compress + /usr/lib/rpm/brp-strip-static-archive /usr/bin/strip + /usr/lib/rpm/brp-strip-static-archive /usr/bin/strip + /usr/lib/rpm/brp-python-bytecompile 1 + /usr/lib/rpm/brp-python-bytecompile 1 Bytecompiling .py files below /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/lib/python3.6 using /usr/libexec/platform-python Bytecompiling .py files below /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/lib/python3.6 using /usr/libexec/platform-python Bytecompiling .py files below /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/lib/python2.7 using /usr/bin/python2.7 Bytecompiling .py files below /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/lib/python2.7 using /usr/bin/python2.7 + /usr/lib/rpm/brp-python-hardlink + /usr/lib/rpm/brp-python-hardlink + PYTHON3=/usr/bin/python3.6 + PYTHON3=/usr/bin/python3.6 + /usr/lib/rpm/redhat/brp-mangle-shebangs + /usr/lib/rpm/redhat/brp-mangle-shebangs Executing(%check): /bin/sh -e /var/tmp/rpm-tmp.JNDIn2 Executing(%check): /bin/sh -e /var/tmp/rpm-tmp.JNDIn2 + umask 022 + umask 022 + cd /builddir/build/BUILD + cd /builddir/build/BUILD + cd pyparsing-pyparsing_2.4.0 + cd pyparsing-pyparsing_2.4.0 + /usr/bin/python2 unitTests.py + /usr/bin/python2 unitTests.py ..................................................................................................................................................................................................... ..................................................................................................................................................................................................... ---------------------------------------------------------------------- ---------------------------------------------------------------------- Ran 197 tests in 4.181s Ran 197 tests in 4.181s OKBeginning test of pyparsing, version 2.4.0 OKBeginning test of pyparsing, version 2.4.0 Python version 2.7.16 (default, Nov 17 2019, 00:07:27) Python version 2.7.16 (default, Nov 17 2019, 00:07:27) [GCC 8.3.1 20190507 (Red Hat 8.3.1-4)] [GCC 8.3.1 20190507 (Red Hat 8.3.1-4)] + /usr/bin/python3.6 unitTests.py + /usr/bin/python3.6 unitTests.py .....................................................................................................................................................................................................Beginning test of pyparsing, version 2.4.0 .....................................................................................................................................................................................................Beginning test of pyparsing, version 2.4.0 Python version 3.6.8 (default, Nov 21 2019, 19:31:34) Python version 3.6.8 (default, Nov 21 2019, 19:31:34) [GCC 8.3.1 20190507 (Red Hat 8.3.1-4)] [GCC 8.3.1 20190507 (Red Hat 8.3.1-4)] ---------------------------------------------------------------------- ---------------------------------------------------------------------- Ran 197 tests in 3.316s Ran 197 tests in 3.316s OK OK + /usr/bin/python3.6 simple_unit_tests.py + /usr/bin/python3.6 simple_unit_tests.py ............. ............. ---------------------------------------------------------------------- ---------------------------------------------------------------------- Ran 13 tests in 0.020s Ran 13 tests in 0.020s OK OK Simple match - Literal("xyz") Simple match - Literal("xyz") ['xyz'] ['xyz'] Simple match after skipping whitespace - Literal("xyz") Simple match after skipping whitespace - Literal("xyz") ['xyz'] ['xyz'] Simple fail - parse an empty string - Literal("xyz") Simple fail - parse an empty string - Literal("xyz") ^ ^ ParseException: Expected "xyz" (at char 0), (line:1, col:1) ParseException: Expected "xyz" (at char 0), (line:1, col:1) __main__.TestLiteral __main__.TestLiteral pyparsing.Literal - "xyz" pyparsing.Literal - "xyz" Simple fail - parse a mismatching string - Literal("xyz") Simple fail - parse a mismatching string - Literal("xyz") xyu xyu ^ ^ ParseException: Expected "xyz" (at char 0), (line:1, col:1) ParseException: Expected "xyz" (at char 0), (line:1, col:1) __main__.TestLiteral __main__.TestLiteral pyparsing.Literal - "xyz" pyparsing.Literal - "xyz" Simple fail - parse a partially matching string - Literal("xyz") Simple fail - parse a partially matching string - Literal("xyz") xy xy ^ ^ ParseException: Expected "xyz" (at char 0), (line:1, col:1) ParseException: Expected "xyz" (at char 0), (line:1, col:1) __main__.TestLiteral __main__.TestLiteral pyparsing.Literal - "xyz" pyparsing.Literal - "xyz" Fail - parse a partially matching string by matching individual letters - And({"x" "y" "z"}) Fail - parse a partially matching string by matching individual letters - And({"x" "y" "z"}) xy xy ^ ^ ParseException: Expected "z" (at char 2), (line:1, col:3) ParseException: Expected "z" (at char 2), (line:1, col:3) __main__.TestLiteral __main__.TestLiteral pyparsing.And - {"x" "y" "z"} pyparsing.And - {"x" "y" "z"} pyparsing.Literal - "z" pyparsing.Literal - "z" Match colors, converting to consistent case - OneOrMore({{'RED' | 'GREEN' | 'BLUE'}}...) Match colors, converting to consistent case - OneOrMore({{'RED' | 'GREEN' | 'BLUE'}}...) ['RED', 'GREEN', 'BLUE', 'BLUE', 'GREEN', 'GREEN', 'RED'] ['RED', 'GREEN', 'BLUE', 'BLUE', 'GREEN', 'GREEN', 'RED'] Simple Word match - Word(W:(xy)) Simple Word match - Word(W:(xy)) ['xxyxxyy'] ['xxyxxyy'] Simple Word match of two separate Words - And({W:(x) W:(y)}) Simple Word match of two separate Words - And({W:(x) W:(y)}) ['xxxxx', 'yy'] ['xxxxx', 'yy'] Simple Word match of two separate Words - implicitly skips whitespace - And({W:(x) W:(y)}) Simple Word match of two separate Words - implicitly skips whitespace - And({W:(x) W:(y)}) ['xxxxx', 'yy'] ['xxxxx', 'yy'] Parsing real numbers - fail, parsed numbers are in pieces - OneOrMore({{W:(0123...) "." W:(0123...)}}...) Parsing real numbers - fail, parsed numbers are in pieces - OneOrMore({{W:(0123...) "." W:(0123...)}}...) ['1', '.', '2', '2', '.', '3', '3', '.', '1416', '98', '.', '6'] ['1', '.', '2', '2', '.', '3', '3', '.', '1416', '98', '.', '6'] Parsing real numbers - better, use Combine to combine multiple tokens into one - OneOrMore({Combine:({W:(0123...) "." W:(0123...)})}...) Parsing real numbers - better, use Combine to combine multiple tokens into one - OneOrMore({Combine:({W:(0123...) "." W:(0123...)})}...) ['1.2', '2.3', '3.1416', '98.6'] ['1.2', '2.3', '3.1416', '98.6'] Match several words - OneOrMore({{W:(x) | W:(y)}}...) Match several words - OneOrMore({{W:(x) | W:(y)}}...) ['xx', 'y', 'xx', 'yy', 'xx', 'y', 'x', 'y', 'xxx', 'y'] ['xx', 'y', 'xx', 'yy', 'xx', 'y', 'x', 'y', 'xxx', 'y'] Match several words, skipping whitespace - OneOrMore({{W:(x) | W:(y)}}...) Match several words, skipping whitespace - OneOrMore({{W:(x) | W:(y)}}...) ['x', 'x', 'y', 'xx', 'y', 'y', 'xx', 'y', 'x', 'y', 'x', 'xx', '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 - OneOrMore({{W:(ABCD...) | integer}}...) Match words and numbers - show use of results names to collect types of tokens - OneOrMore({{W:(ABCD...) | integer}}...) ['sdlfj', 23084, 'ksdfs', 8234, 'kjsdlfkjd', 934] ['sdlfj', 23084, 'ksdfs', 8234, 'kjsdlfkjd', 934] - alpha: ['sdlfj', 'ksdfs', 'kjsdlfkjd'] - alpha: ['sdlfj', 'ksdfs', 'kjsdlfkjd'] - int: [23084, 8234, 934] - int: [23084, 8234, 934] Using delimitedList (comma is the default delimiter) - And(W:(ABCD...) [, W:(ABCD...)]...) Using delimitedList (comma is the default delimiter) - And(W:(ABCD...) [, W:(ABCD...)]...) ['xxyx', 'xy', 'y', 'xxyx', 'yxx', 'xy'] ['xxyx', 'xy', 'y', 'xxyx', 'yxx', 'xy'] Using delimitedList, with ':' delimiter - Combine(W:(0123...) [: W:(0123...)]...) Using delimitedList, with ':' delimiter - Combine(W:(0123...) [: W:(0123...)]...) ['0A:4B:73:21:FE:76'] ['0A:4B:73:21:FE:76'] Match with results name - Literal("xyz") Match with results name - Literal("xyz") ['xyz'] ['xyz'] - value: 'xyz' - value: 'xyz' Match with results name - using naming short-cut - Literal("xyz") Match with results name - using naming short-cut - Literal("xyz") ['xyz'] ['xyz'] - value: 'xyz' - value: 'xyz' Define multiple results names - And({W:(ABCD...,ABCD...) "=" integer}) Define multiple results names - And({W:(ABCD...,ABCD...) "=" integer}) ['range', '=', 5280] ['range', '=', 5280] - key: 'range' - key: 'range' - value: 5280 - value: 5280 Define multiple results names in groups - OneOrMore({Group:({W:(ABCD...) Suppress:("=") {real number with scientific notation | real number | signed integer}})}...) Define multiple results names in groups - OneOrMore({Group:({W:(ABCD...) Suppress:("=") {real number with scientific notation | real number | signed integer}})}...) [['range', 5280], ['long', -138.52], ['lat', 46.91]] [['range', 5280], ['long', -138.52], ['lat', 46.91]] [0]: [0]: ['range', 5280] ['range', 5280] - key: 'range' - key: 'range' - value: 5280 - value: 5280 [1]: [1]: ['long', -138.52] ['long', -138.52] - key: 'long' - key: 'long' - value: -138.52 - value: -138.52 [2]: [2]: ['lat', 46.91] ['lat', 46.91] - key: 'lat' - key: 'lat' - value: 46.91 - 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}})}...)) 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]] [['range', 5280], ['long', -138.52], ['lat', 46.91]] - lat: 46.91 - lat: 46.91 - long: -138.52 - long: -138.52 - range: 5280 - 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 '}})}...)) 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']] [['long', -122.47], ['lat', 37.82], ['public', 'True'], ['name', 'Golden Gate Bridge']] - lat: 37.82 - lat: 37.82 - long: -122.47 - long: -122.47 - name: 'Golden Gate Bridge' - name: 'Golden Gate Bridge' - public: 'True' - public: 'True' Parsing real numbers - use parse action to convert to float at parse time - OneOrMore({Combine:({W:(0123...) "." W:(0123...)})}...) Parsing real numbers - use parse action to convert to float at parse time - OneOrMore({Combine:({W:(0123...) "." W:(0123...)})}...) [1.2, 2.3, 3.1416, 98.6] [1.2, 2.3, 3.1416, 98.6] Match with numeric string converted to int - Word(W:(0123...)) Match with numeric string converted to int - Word(W:(0123...)) [12345] [12345] Use two parse actions to convert numeric string, then convert to datetime - Word(W:(0123...)) Use two parse actions to convert numeric string, then convert to datetime - Word(W:(0123...)) [datetime.datetime(2018, 9, 20, 3, 53, 48)] [datetime.datetime(2018, 9, 20, 3, 53, 48)] Use tokenMap for parse actions that operate on a single-length token - Word(W:(0123...)) Use tokenMap for parse actions that operate on a single-length token - Word(W:(0123...)) [datetime.datetime(2018, 9, 20, 3, 53, 48)] [datetime.datetime(2018, 9, 20, 3, 53, 48)] Using a built-in function that takes a sequence of strs as a parse action - OneOrMore({W:(0123...)}...) Using a built-in function that takes a sequence of strs as a parse action - OneOrMore({W:(0123...)}...) ['0A:4B:73:21:FE:76'] ['0A:4B:73:21:FE:76'] Using a built-in function that takes a sequence of strs as a parse action - OneOrMore({W:(0123...)}...) Using a built-in function that takes a sequence of strs as a parse action - OneOrMore({W:(0123...)}...) ['0A', '21', '4B', '73', '76', 'FE'] ['0A', '21', '4B', '73', '76', 'FE'] A parse action that adds new key-values - OneOrMore({integer}...) A parse action that adds new key-values - OneOrMore({integer}...) [27, 1, 14, 22, 89] [27, 1, 14, 22, 89] - ave: 30.6 - ave: 30.6 - max: 89 - max: 89 - min: 1 - min: 1 - sum: 153 - sum: 153 Parsing real numbers - using Regex instead of Combine - OneOrMore({Re:('\\d+\\.\\d+')}...) Parsing real numbers - using Regex instead of Combine - OneOrMore({Re:('\\d+\\.\\d+')}...) [1.2, 2.3, 3.1416, 98.6] [1.2, 2.3, 3.1416, 98.6] Define a condition to only match numeric values that are multiples of 7 - OneOrMore({W:(0123...)}...) Define a condition to only match numeric values that are multiples of 7 - OneOrMore({W:(0123...)}...) ['14', '35', '77'] ['14', '35', '77'] Separate conversion to int and condition into separate parse action/conditions - OneOrMore({W:(0123...)}...) Separate conversion to int and condition into separate parse action/conditions - OneOrMore({W:(0123...)}...) [14, 35, 77] [14, 35, 77] Use transformString to convert simple markup to HTML - And({* | _ | / "(" !W:()) ")"}) Use transformString to convert simple markup to HTML - And({* | _ | / "(" !W:()) ")"}) Show in bold, underscore, or italic type Show in bold, underscore, or italic type A comma-delimited list of words - And(W:(ABCD...) [, W:(ABCD...)]...) A comma-delimited list of words - And(W:(ABCD...) [, W:(ABCD...)]...) ['this', 'that', 'blah', 'foo', 'bar'] ['this', 'that', 'blah', 'foo', 'bar'] A counted array of words - OneOrMore({(len) W:(ab)...}...) A counted array of words - OneOrMore({(len) W:(ab)...}...) [['aaa', 'bbb'], [], ['abab', 'bbaa', 'abbab']] [['aaa', 'bbb'], [], ['abab', 'bbaa', 'abbab']] [0]: [0]: ['aaa', 'bbb'] ['aaa', 'bbb'] [1]: [1]: [] [] [2]: [2]: ['abab', 'bbaa', 'abbab'] ['abab', 'bbaa', 'abbab'] skipping comments with ignore - And({identifier "=" fnumber}) skipping comments with ignore - And({identifier "=" fnumber}) ['abc_100', '=', 3.1416] ['abc_100', '=', 3.1416] - lhs: 'abc_100' - lhs: 'abc_100' - rhs: 3.1416 - 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}) 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'] [1001, 'www.google.com', '192.168.10.199'] - id_num: 1001 - id_num: 1001 - ip_address: '192.168.10.199' - ip_address: '192.168.10.199' - name: 'www.google.com' - name: 'www.google.com' using oneOf (shortcut for Literal('a') | Literal('b') | Literal('c')) - OneOrMore({a | b | c}...) using oneOf (shortcut for Literal('a') | Literal('b') | Literal('c')) - OneOrMore({a | b | c}...) ['a', 'b', 'a', 'b', 'b', 'a', 'c', 'c', 'a', 'b', 'b'] ['a', 'b', 'a', 'b', 'b', 'a', 'c', 'c', 'a', 'b', 'b'] parsing nested parentheses - Forward(nested () expression) parsing nested parentheses - Forward(nested () expression) [['a', 'b', ['c'], 'd', ['e', 'f', 'g', []]]] [['a', 'b', ['c'], 'd', ['e', 'f', 'g', []]]] [0]: [0]: ['a', 'b', ['c'], 'd', ['e', 'f', 'g', []]] ['a', 'b', ['c'], 'd', ['e', 'f', 'g', []]] [0]: [0]: a a [1]: [1]: b b [2]: [2]: ['c'] ['c'] [3]: [3]: d d [4]: [4]: ['e', 'f', 'g', []] ['e', 'f', 'g', []] [0]: [0]: e e [1]: [1]: f f [2]: [2]: g g [3]: [3]: [] [] parsing nested braces - And({"if" nested () expression nested {} expression}) parsing nested braces - And({"if" nested () expression nested {} expression}) ['if', [['x', '==', 'y'], '||', '!z'], ['printf(', '"{}"', ');']] ['if', [['x', '==', 'y'], '||', '!z'], ['printf(', '"{}"', ');']] - body: [['printf(', '"{}"', ');']] - body: [['printf(', '"{}"', ');']] [0]: [0]: ['printf(', '"{}"', ');'] ['printf(', '"{}"', ');'] - condition: [[['x', '==', 'y'], '||', '!z']] - condition: [[['x', '==', 'y'], '||', '!z']] [0]: [0]: [['x', '==', 'y'], '||', '!z'] [['x', '==', 'y'], '||', '!z'] [0]: [0]: ['x', '==', 'y'] ['x', '==', 'y'] [1]: [1]: || || [2]: [2]: !z !z Processing files: pyparsing-doc-2.4.0-2.el8.noarch Processing files: pyparsing-doc-2.4.0-2.el8.noarch Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.DQOrFV Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.DQOrFV + exit 0 + exit 0 + umask 022 + umask 022 + cd /builddir/build/BUILD + cd /builddir/build/BUILD + cd pyparsing-pyparsing_2.4.0 + cd pyparsing-pyparsing_2.4.0 + DOCDIR=/builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/pyparsing-doc + DOCDIR=/builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/pyparsing-doc + export LC_ALL=C + export LC_ALL=C + LC_ALL=C + LC_ALL=C + export DOCDIR + export DOCDIR + /usr/bin/mkdir -p /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/pyparsing-doc + /usr/bin/mkdir -p /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/pyparsing-doc + cp -pr CHANGES /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/pyparsing-doc + cp -pr CHANGES /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/pyparsing-doc + cp -pr README.rst /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/pyparsing-doc + cp -pr README.rst /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/pyparsing-doc + cp -pr docs/html /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/pyparsing-doc + cp -pr docs/html /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/pyparsing-doc + cp -pr examples /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/pyparsing-doc + cp -pr examples /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/pyparsing-doc + exit 0 + exit 0 Executing(%license): /bin/sh -e /var/tmp/rpm-tmp.RJPo1O Executing(%license): /bin/sh -e /var/tmp/rpm-tmp.RJPo1O + umask 022 + umask 022 + cd /builddir/build/BUILD + cd /builddir/build/BUILD + cd pyparsing-pyparsing_2.4.0 + cd pyparsing-pyparsing_2.4.0 + LICENSEDIR=/builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/licenses/pyparsing-doc + LICENSEDIR=/builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/licenses/pyparsing-doc + export LC_ALL=C + export LC_ALL=C + LC_ALL=C + LC_ALL=C + export LICENSEDIR + export LICENSEDIR + /usr/bin/mkdir -p /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/licenses/pyparsing-doc + /usr/bin/mkdir -p /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/licenses/pyparsing-doc + cp -pr LICENSE /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/licenses/pyparsing-doc + cp -pr LICENSE /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/licenses/pyparsing-doc + exit 0 + exit 0 Provides: pyparsing-doc = 2.4.0-2.el8 Provides: pyparsing-doc = 2.4.0-2.el8 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Processing files: python2-pyparsing-2.4.0-2.el8.noarch Processing files: python2-pyparsing-2.4.0-2.el8.noarch Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.QTh5kJ Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.QTh5kJ + umask 022 + umask 022 + cd /builddir/build/BUILD + cd /builddir/build/BUILD + cd pyparsing-pyparsing_2.4.0 + cd pyparsing-pyparsing_2.4.0 + DOCDIR=/builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/python2-pyparsing + DOCDIR=/builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/python2-pyparsing + export LC_ALL=C + export LC_ALL=C + LC_ALL=C + LC_ALL=C + export DOCDIR + export DOCDIR + /usr/bin/mkdir -p /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/python2-pyparsing + /usr/bin/mkdir -p /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/python2-pyparsing + cp -pr CHANGES /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/python2-pyparsing + cp -pr CHANGES /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/python2-pyparsing + cp -pr README.rst /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/python2-pyparsing + cp -pr README.rst /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/python2-pyparsing + exit 0 + exit 0 Executing(%license): /bin/sh -e /var/tmp/rpm-tmp.uZTXFD Executing(%license): /bin/sh -e /var/tmp/rpm-tmp.uZTXFD + umask 022 + umask 022 + cd /builddir/build/BUILD + cd /builddir/build/BUILD + cd pyparsing-pyparsing_2.4.0 + cd pyparsing-pyparsing_2.4.0 + LICENSEDIR=/builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/licenses/python2-pyparsing + LICENSEDIR=/builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/licenses/python2-pyparsing + export LC_ALL=C + export LC_ALL=C + LC_ALL=C + LC_ALL=C + export LICENSEDIR + export LICENSEDIR + /usr/bin/mkdir -p /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/licenses/python2-pyparsing + /usr/bin/mkdir -p /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/licenses/python2-pyparsing + cp -pr LICENSE /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/licenses/python2-pyparsing + cp -pr LICENSE /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/licenses/python2-pyparsing + exit 0 + exit 0 Provides: pyparsing = 2.4.0-2.el8 python2-pyparsing = 2.4.0-2.el8 python2.7dist(pyparsing) = 2.4.0 python2dist(pyparsing) = 2.4.0 Provides: pyparsing = 2.4.0-2.el8 python2-pyparsing = 2.4.0-2.el8 python2.7dist(pyparsing) = 2.4.0 python2dist(pyparsing) = 2.4.0 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(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) = 2.7 Requires: python(abi) = 2.7 Obsoletes: pyparsing < 2.1.10-5 Obsoletes: pyparsing < 2.1.10-5 Processing files: python3-pyparsing-2.4.0-2.el8.noarch Processing files: python3-pyparsing-2.4.0-2.el8.noarch Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.IPhcoC Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.IPhcoC + umask 022 + umask 022 + cd /builddir/build/BUILD + cd /builddir/build/BUILD + cd pyparsing-pyparsing_2.4.0 + cd pyparsing-pyparsing_2.4.0 + DOCDIR=/builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/python3-pyparsing + DOCDIR=/builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/python3-pyparsing + export LC_ALL=C + export LC_ALL=C + LC_ALL=C + LC_ALL=C + export DOCDIR + export DOCDIR + /usr/bin/mkdir -p /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/python3-pyparsing + /usr/bin/mkdir -p /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/python3-pyparsing + cp -pr CHANGES /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/python3-pyparsing + cp -pr CHANGES /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/python3-pyparsing + cp -pr README.rst /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/python3-pyparsing + cp -pr README.rst /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/doc/python3-pyparsing + exit 0 + exit 0 Executing(%license): /bin/sh -e /var/tmp/rpm-tmp.U7DK7A Executing(%license): /bin/sh -e /var/tmp/rpm-tmp.U7DK7A + umask 022 + umask 022 + cd /builddir/build/BUILD + cd /builddir/build/BUILD + cd pyparsing-pyparsing_2.4.0 + cd pyparsing-pyparsing_2.4.0 + LICENSEDIR=/builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/licenses/python3-pyparsing + LICENSEDIR=/builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/licenses/python3-pyparsing + export LC_ALL=C + export LC_ALL=C + LC_ALL=C + LC_ALL=C + export LICENSEDIR + export LICENSEDIR + /usr/bin/mkdir -p /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/licenses/python3-pyparsing + /usr/bin/mkdir -p /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/licenses/python3-pyparsing + cp -pr LICENSE /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/licenses/python3-pyparsing + cp -pr LICENSE /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64/usr/share/licenses/python3-pyparsing + exit 0 + exit 0 Provides: python3-pyparsing = 2.4.0-2.el8 python3.6dist(pyparsing) = 2.4.0 python3dist(pyparsing) = 2.4.0 Provides: python3-pyparsing = 2.4.0-2.el8 python3.6dist(pyparsing) = 2.4.0 python3dist(pyparsing) = 2.4.0 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(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.6 Requires: python(abi) = 3.6 Checking for unpackaged file(s): /usr/lib/rpm/check-files /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64 Checking for unpackaged file(s): /usr/lib/rpm/check-files /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64 Wrote: /builddir/build/RPMS/pyparsing-doc-2.4.0-2.el8.noarch.rpm Wrote: /builddir/build/RPMS/pyparsing-doc-2.4.0-2.el8.noarch.rpm Wrote: /builddir/build/RPMS/python2-pyparsing-2.4.0-2.el8.noarch.rpm Wrote: /builddir/build/RPMS/python2-pyparsing-2.4.0-2.el8.noarch.rpm Wrote: /builddir/build/RPMS/python3-pyparsing-2.4.0-2.el8.noarch.rpm Wrote: /builddir/build/RPMS/python3-pyparsing-2.4.0-2.el8.noarch.rpm Executing(%clean): /bin/sh -e /var/tmp/rpm-tmp.KU7ToF Executing(%clean): /bin/sh -e /var/tmp/rpm-tmp.KU7ToF + umask 022 + umask 022 + cd /builddir/build/BUILD + cd /builddir/build/BUILD + cd pyparsing-pyparsing_2.4.0 + cd pyparsing-pyparsing_2.4.0 + /usr/bin/rm -rf /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64 + /usr/bin/rm -rf /builddir/build/BUILDROOT/pyparsing-2.4.0-2.el8.x86_64 + exit 0 + exit 0 Child return code was: 0 Child return code was: 0