2026-02-11T13:58:39,577 Created temporary directory: /tmp/pip-ephem-wheel-cache-9_uzcrwr 2026-02-11T13:58:39,579 Created temporary directory: /tmp/pip-build-tracker-jo4sgnat 2026-02-11T13:58:39,579 Initialized build tracking at /tmp/pip-build-tracker-jo4sgnat 2026-02-11T13:58:39,580 Created build tracker: /tmp/pip-build-tracker-jo4sgnat 2026-02-11T13:58:39,580 Entered build tracker: /tmp/pip-build-tracker-jo4sgnat 2026-02-11T13:58:39,581 Created temporary directory: /tmp/pip-wheel-u4pvp_29 2026-02-11T13:58:39,584 DEPRECATION: --no-binary currently disables reading from the cache of locally built wheels. In the future --no-binary will not influence the wheel cache. pip 23.1 will enforce this behaviour change. A possible replacement is to use the --no-cache-dir option. You can use the flag --use-feature=no-binary-enable-wheel-cache to test the upcoming behaviour. Discussion can be found at https://github.com/pypa/pip/issues/11453 2026-02-11T13:58:39,586 Created temporary directory: /tmp/pip-ephem-wheel-cache-cfkqomsq 2026-02-11T13:58:39,608 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2026-02-11T13:58:39,611 2 location(s) to search for versions of kontra: 2026-02-11T13:58:39,611 * https://pypi.org/simple/kontra/ 2026-02-11T13:58:39,611 * https://www.piwheels.org/simple/kontra/ 2026-02-11T13:58:39,612 Fetching project page and analyzing links: https://pypi.org/simple/kontra/ 2026-02-11T13:58:39,613 Getting page https://pypi.org/simple/kontra/ 2026-02-11T13:58:39,614 Found index url https://pypi.org/simple 2026-02-11T13:58:39,830 Fetched page https://pypi.org/simple/kontra/ as application/vnd.pypi.simple.v1+json 2026-02-11T13:58:39,835 Skipping link: No binaries permitted for kontra: https://files.pythonhosted.org/packages/0a/07/c8518e168cfba25cb77227929ac1937ec07347b2c886237a5d3c6e6a81b2/kontra-0.0.0-py2.py3-none-any.whl (from https://pypi.org/simple/kontra/) 2026-02-11T13:58:39,836 Found link https://files.pythonhosted.org/packages/9f/98/f7e5fdb8e4d4f60400a937f987c2767e8d6158ae51a44af8df72403ce4e6/kontra-0.0.0.tar.gz (from https://pypi.org/simple/kontra/), version: 0.0.0 2026-02-11T13:58:39,837 Skipping link: No binaries permitted for kontra: https://files.pythonhosted.org/packages/f4/97/a6b39f1beae8011b50dc92ceeb27a7a3ac5e8d36ebbdf9fb7f0767e39f74/kontra-0.5.0-py3-none-any.whl (from https://pypi.org/simple/kontra/) (requires-python:>=3.10) 2026-02-11T13:58:39,838 Found link https://files.pythonhosted.org/packages/bc/e1/a397c38ccac95532804a8804ce069796e04d28f8492998b9d641ec69c9c3/kontra-0.5.0.tar.gz (from https://pypi.org/simple/kontra/) (requires-python:>=3.10), version: 0.5.0 2026-02-11T13:58:39,838 Skipping link: No binaries permitted for kontra: https://files.pythonhosted.org/packages/9c/3f/471896ee5058f91c3299c1699152b6b50ed4cd21fb3090d0294e9e1e46e1/kontra-0.5.1-py3-none-any.whl (from https://pypi.org/simple/kontra/) (requires-python:>=3.10) 2026-02-11T13:58:39,839 Found link https://files.pythonhosted.org/packages/21/59/a06ad9ddc8852579c8bcf86ca17e1c981d6ab91efc26a2ba8e99ab135f3a/kontra-0.5.1.tar.gz (from https://pypi.org/simple/kontra/) (requires-python:>=3.10), version: 0.5.1 2026-02-11T13:58:39,840 Skipping link: No binaries permitted for kontra: https://files.pythonhosted.org/packages/06/09/ae443e085a9d064c8af8fff7961552eef10180e6fda73fb222bddd154829/kontra-0.5.2-py3-none-any.whl (from https://pypi.org/simple/kontra/) (requires-python:>=3.10) 2026-02-11T13:58:39,841 Found link https://files.pythonhosted.org/packages/3f/c0/53ba905d657dcf478ff95a61eab5939cd796819067a8a567c37479acef20/kontra-0.5.2.tar.gz (from https://pypi.org/simple/kontra/) (requires-python:>=3.10), version: 0.5.2 2026-02-11T13:58:39,841 Skipping link: No binaries permitted for kontra: https://files.pythonhosted.org/packages/cf/d5/7fb1ff6d06338d55f99d41dc3e39c1f6752f5dfe61c01ed151773ad564aa/kontra-0.5.3-py3-none-any.whl (from https://pypi.org/simple/kontra/) (requires-python:>=3.10) 2026-02-11T13:58:39,842 Found link https://files.pythonhosted.org/packages/00/4e/3f05ce884f941011b3791e8fd988d031f9d80fbe3cad6d7151bae7b0fc75/kontra-0.5.3.tar.gz (from https://pypi.org/simple/kontra/) (requires-python:>=3.10), version: 0.5.3 2026-02-11T13:58:39,843 Skipping link: No binaries permitted for kontra: https://files.pythonhosted.org/packages/11/29/8118c0e1f5eeffbd561f7b2f6181108f1f2cec0928704f821afeef011064/kontra-0.5.4-py3-none-any.whl (from https://pypi.org/simple/kontra/) (requires-python:>=3.10) 2026-02-11T13:58:39,844 Found link https://files.pythonhosted.org/packages/69/12/03431ed689e71926d1250a8fbda43b99c861e43db472182dfc8b029b0a1d/kontra-0.5.4.tar.gz (from https://pypi.org/simple/kontra/) (requires-python:>=3.10), version: 0.5.4 2026-02-11T13:58:39,845 Skipping link: No binaries permitted for kontra: https://files.pythonhosted.org/packages/0e/27/b0f4951a8e045852f30e70cf386fcb34d26bcdd8a054b409c8542450cc64/kontra-0.6.0-py3-none-any.whl (from https://pypi.org/simple/kontra/) (requires-python:>=3.10) 2026-02-11T13:58:39,846 Found link https://files.pythonhosted.org/packages/f1/ca/d9b1aefc3e817ef55a0d4827adcacc3472f909defb7ea3b3ebceb97952de/kontra-0.6.0.tar.gz (from https://pypi.org/simple/kontra/) (requires-python:>=3.10), version: 0.6.0 2026-02-11T13:58:39,846 Skipping link: No binaries permitted for kontra: https://files.pythonhosted.org/packages/8e/8c/0d51d0b667b61294e343ae37fa0d9e35f4e1242dab5199428c7348f32e88/kontra-0.6.1-py3-none-any.whl (from https://pypi.org/simple/kontra/) (requires-python:>=3.10) 2026-02-11T13:58:39,847 Found link https://files.pythonhosted.org/packages/ff/08/3d83a7271f52e8ef25125502bebebae5939a95789a00b05fe45250c13866/kontra-0.6.1.tar.gz (from https://pypi.org/simple/kontra/) (requires-python:>=3.10), version: 0.6.1 2026-02-11T13:58:39,848 Skipping link: No binaries permitted for kontra: https://files.pythonhosted.org/packages/8f/06/43e7a461597eb31e7d4c1871982d73d5c41c37870135ada96bff429ec46c/kontra-0.6.2-py3-none-any.whl (from https://pypi.org/simple/kontra/) (requires-python:>=3.10) 2026-02-11T13:58:39,849 Found link https://files.pythonhosted.org/packages/c6/09/550250bcf89df425f648005f2a374f49f50359a30f21015e788c58073774/kontra-0.6.2.tar.gz (from https://pypi.org/simple/kontra/) (requires-python:>=3.10), version: 0.6.2 2026-02-11T13:58:39,849 Skipping link: No binaries permitted for kontra: https://files.pythonhosted.org/packages/71/23/55b6fb7ad31c87fdec7cbe6bdc3ad1c77c395d9c78501d6980cfc7370a98/kontra-0.6.3-py3-none-any.whl (from https://pypi.org/simple/kontra/) (requires-python:>=3.10) 2026-02-11T13:58:39,850 Found link https://files.pythonhosted.org/packages/2d/23/676bfc9952b36404e97982740bdf7a23c22b66a9b57c3efb6f850bf1fb3f/kontra-0.6.3.tar.gz (from https://pypi.org/simple/kontra/) (requires-python:>=3.10), version: 0.6.3 2026-02-11T13:58:39,851 Fetching project page and analyzing links: https://www.piwheels.org/simple/kontra/ 2026-02-11T13:58:39,852 Getting page https://www.piwheels.org/simple/kontra/ 2026-02-11T13:58:39,854 Found index url https://www.piwheels.org/simple 2026-02-11T13:58:40,009 Fetched page https://www.piwheels.org/simple/kontra/ as text/html 2026-02-11T13:58:40,013 Skipping link: No binaries permitted for kontra: https://www.piwheels.org/simple/kontra/kontra-0.6.2-py3-none-any.whl#sha256=40f116d11b7760818d9d5f573084863583d3af1fe37faeceee74607312279069 (from https://www.piwheels.org/simple/kontra/) (requires-python:>=3.10) 2026-02-11T13:58:40,014 Skipping link: No binaries permitted for kontra: https://www.piwheels.org/simple/kontra/kontra-0.6.1-py3-none-any.whl#sha256=c8cf8c5371e154760be0bc01ce18ffcde559db9fbf37c335f56db104fa16aa66 (from https://www.piwheels.org/simple/kontra/) (requires-python:>=3.10) 2026-02-11T13:58:40,014 Skipping link: No binaries permitted for kontra: https://www.piwheels.org/simple/kontra/kontra-0.6.0-py3-none-any.whl#sha256=dcd44750235c546f75e7420aa2736d60c14340bd67af8c89fc7593d512cad42b (from https://www.piwheels.org/simple/kontra/) (requires-python:>=3.10) 2026-02-11T13:58:40,015 Skipping link: No binaries permitted for kontra: https://www.piwheels.org/simple/kontra/kontra-0.5.4-py3-none-any.whl#sha256=82be0fc8ce85a8a5a09bbb2efef33b45121612287e81fbda1a2ac3ab3bb8cace (from https://www.piwheels.org/simple/kontra/) (requires-python:>=3.10) 2026-02-11T13:58:40,016 Skipping link: No binaries permitted for kontra: https://www.piwheels.org/simple/kontra/kontra-0.5.3-py3-none-any.whl#sha256=3ef2f236a108202d8b8370f7e2a2d498aa9f71cfd06bc85bed546e30dcfab1ea (from https://www.piwheels.org/simple/kontra/) (requires-python:>=3.10) 2026-02-11T13:58:40,017 Skipping link: No binaries permitted for kontra: https://www.piwheels.org/simple/kontra/kontra-0.5.2-py3-none-any.whl#sha256=022194aa46e346efdd0d1425a26ca01bb674fcd8f8e60c2522a6fef9bd0981e5 (from https://www.piwheels.org/simple/kontra/) (requires-python:>=3.10) 2026-02-11T13:58:40,017 Skipping link: No binaries permitted for kontra: https://www.piwheels.org/simple/kontra/kontra-0.5.1-py3-none-any.whl#sha256=6b47019a1fccf8a03aaf5d61d983ea150a3a4c81365f7439bcc8f06a8722ffb2 (from https://www.piwheels.org/simple/kontra/) (requires-python:>=3.10) 2026-02-11T13:58:40,017 Skipping link: No binaries permitted for kontra: https://www.piwheels.org/simple/kontra/kontra-0.5.0-py3-none-any.whl#sha256=f10d2677ec7ddb384cf4b635f5e33d540bb5dcd5ae1ebbf108c0c3224ee3b3df (from https://www.piwheels.org/simple/kontra/) (requires-python:>=3.10) 2026-02-11T13:58:40,018 Skipping link: No binaries permitted for kontra: https://archive1.piwheels.org/simple/kontra/kontra-0.0.0-py2.py3-none-any.whl#sha256=e20805ed205f1e629843ad58d8b0fce87be678f08b49d47c00a759e33419256a (from https://www.piwheels.org/simple/kontra/) 2026-02-11T13:58:40,018 Skipping link: not a file: https://www.piwheels.org/simple/kontra/ 2026-02-11T13:58:40,019 Skipping link: not a file: https://pypi.org/simple/kontra/ 2026-02-11T13:58:40,038 Given no hashes to check 1 links for project 'kontra': discarding no candidates 2026-02-11T13:58:40,056 Collecting kontra==0.6.3 2026-02-11T13:58:40,059 Created temporary directory: /tmp/pip-unpack-te4txys_ 2026-02-11T13:58:40,275 Downloading kontra-0.6.3.tar.gz (364 kB) 2026-02-11T13:58:40,756 Added kontra==0.6.3 from https://files.pythonhosted.org/packages/2d/23/676bfc9952b36404e97982740bdf7a23c22b66a9b57c3efb6f850bf1fb3f/kontra-0.6.3.tar.gz to build tracker '/tmp/pip-build-tracker-jo4sgnat' 2026-02-11T13:58:40,762 Created temporary directory: /tmp/pip-build-env-5ra464js 2026-02-11T13:58:40,766 Installing build dependencies: started 2026-02-11T13:58:40,768 Running command pip subprocess to install build dependencies 2026-02-11T13:58:41,909 Using pip 23.0.1 from /usr/lib/python3/dist-packages/pip (python 3.11) 2026-02-11T13:58:42,475 DEPRECATION: --no-binary currently disables reading from the cache of locally built wheels. In the future --no-binary will not influence the wheel cache. pip 23.1 will enforce this behaviour change. A possible replacement is to use the --no-cache-dir option. You can use the flag --use-feature=no-binary-enable-wheel-cache to test the upcoming behaviour. Discussion can be found at https://github.com/pypa/pip/issues/11453 2026-02-11T13:58:42,498 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2026-02-11T13:58:44,192 Collecting setuptools>=69 2026-02-11T13:58:44,212 Using cached setuptools-82.0.0-py3-none-any.whl (1.0 MB) 2026-02-11T13:58:44,484 Collecting wheel 2026-02-11T13:58:44,501 Using cached https://www.piwheels.org/simple/wheel/wheel-0.46.3-py3-none-any.whl (30 kB) 2026-02-11T13:58:44,683 Collecting packaging>=24.0 2026-02-11T13:58:44,700 Using cached https://www.piwheels.org/simple/packaging/packaging-26.0-py3-none-any.whl (74 kB) 2026-02-11T13:58:48,125 Installing collected packages: setuptools, packaging, wheel 2026-02-11T13:58:51,636 Creating /tmp/pip-build-env-5ra464js/overlay/local/bin 2026-02-11T13:58:51,638 changing mode of /tmp/pip-build-env-5ra464js/overlay/local/bin/wheel to 755 2026-02-11T13:58:51,660 Successfully installed packaging-26.0 setuptools-82.0.0 wheel-0.46.3 2026-02-11T13:58:51,935 Installing build dependencies: finished with status 'done' 2026-02-11T13:58:51,941 Getting requirements to build wheel: started 2026-02-11T13:58:51,942 Running command Getting requirements to build wheel 2026-02-11T13:58:53,413 /tmp/pip-build-env-5ra464js/overlay/local/lib/python3.11/dist-packages/setuptools/config/_apply_pyprojecttoml.py:82: SetuptoolsDeprecationWarning: `project.license` as a TOML table is deprecated 2026-02-11T13:58:53,413 !! 2026-02-11T13:58:53,416 ******************************************************************************** 2026-02-11T13:58:53,417 Please use a simple string containing a SPDX expression for `project.license`. You can also use `project.license-files`. (Both options available on setuptools>=77.0.0). 2026-02-11T13:58:53,420 By 2027-Feb-18, you need to update your project and remove deprecated calls 2026-02-11T13:58:53,422 or your builds will no longer be supported. 2026-02-11T13:58:53,426 See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. 2026-02-11T13:58:53,428 ******************************************************************************** 2026-02-11T13:58:53,433 !! 2026-02-11T13:58:53,435 corresp(dist, value, root_dir) 2026-02-11T13:58:53,642 /tmp/pip-build-env-5ra464js/overlay/local/lib/python3.11/dist-packages/setuptools/config/_apply_pyprojecttoml.py:61: SetuptoolsDeprecationWarning: License classifiers are deprecated. 2026-02-11T13:58:53,642 !! 2026-02-11T13:58:53,643 ******************************************************************************** 2026-02-11T13:58:53,644 Please consider removing the following classifiers in favor of a SPDX license expression: 2026-02-11T13:58:53,645 License :: OSI Approved :: Apache Software License 2026-02-11T13:58:53,646 See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. 2026-02-11T13:58:53,646 ******************************************************************************** 2026-02-11T13:58:53,647 !! 2026-02-11T13:58:53,648 dist._finalize_license_expression() 2026-02-11T13:58:53,648 /tmp/pip-build-env-5ra464js/overlay/local/lib/python3.11/dist-packages/setuptools/dist.py:765: SetuptoolsDeprecationWarning: License classifiers are deprecated. 2026-02-11T13:58:53,649 !! 2026-02-11T13:58:53,650 ******************************************************************************** 2026-02-11T13:58:53,651 Please consider removing the following classifiers in favor of a SPDX license expression: 2026-02-11T13:58:53,652 License :: OSI Approved :: Apache Software License 2026-02-11T13:58:53,653 See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. 2026-02-11T13:58:53,654 ******************************************************************************** 2026-02-11T13:58:53,655 !! 2026-02-11T13:58:53,655 self._finalize_license_expression() 2026-02-11T13:58:53,658 running egg_info 2026-02-11T13:58:53,665 writing src/kontra.egg-info/PKG-INFO 2026-02-11T13:58:53,673 writing dependency_links to src/kontra.egg-info/dependency_links.txt 2026-02-11T13:58:53,676 writing entry points to src/kontra.egg-info/entry_points.txt 2026-02-11T13:58:53,681 writing requirements to src/kontra.egg-info/requires.txt 2026-02-11T13:58:53,683 writing top-level names to src/kontra.egg-info/top_level.txt 2026-02-11T13:58:54,189 reading manifest file 'src/kontra.egg-info/SOURCES.txt' 2026-02-11T13:58:54,199 adding license file 'LICENSE' 2026-02-11T13:58:54,208 writing manifest file 'src/kontra.egg-info/SOURCES.txt' 2026-02-11T13:58:54,306 Getting requirements to build wheel: finished with status 'done' 2026-02-11T13:58:54,310 Created temporary directory: /tmp/pip-modern-metadata-0iim67b_ 2026-02-11T13:58:54,314 Preparing metadata (pyproject.toml): started 2026-02-11T13:58:54,316 Running command Preparing metadata (pyproject.toml) 2026-02-11T13:58:54,963 /tmp/pip-build-env-5ra464js/overlay/local/lib/python3.11/dist-packages/setuptools/config/_apply_pyprojecttoml.py:82: SetuptoolsDeprecationWarning: `project.license` as a TOML table is deprecated 2026-02-11T13:58:54,963 !! 2026-02-11T13:58:54,965 ******************************************************************************** 2026-02-11T13:58:54,966 Please use a simple string containing a SPDX expression for `project.license`. You can also use `project.license-files`. (Both options available on setuptools>=77.0.0). 2026-02-11T13:58:54,968 By 2027-Feb-18, you need to update your project and remove deprecated calls 2026-02-11T13:58:54,969 or your builds will no longer be supported. 2026-02-11T13:58:54,971 See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. 2026-02-11T13:58:54,971 ******************************************************************************** 2026-02-11T13:58:54,972 !! 2026-02-11T13:58:54,972 corresp(dist, value, root_dir) 2026-02-11T13:58:55,040 /tmp/pip-build-env-5ra464js/overlay/local/lib/python3.11/dist-packages/setuptools/config/_apply_pyprojecttoml.py:61: SetuptoolsDeprecationWarning: License classifiers are deprecated. 2026-02-11T13:58:55,041 !! 2026-02-11T13:58:55,042 ******************************************************************************** 2026-02-11T13:58:55,043 Please consider removing the following classifiers in favor of a SPDX license expression: 2026-02-11T13:58:55,044 License :: OSI Approved :: Apache Software License 2026-02-11T13:58:55,045 See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. 2026-02-11T13:58:55,045 ******************************************************************************** 2026-02-11T13:58:55,046 !! 2026-02-11T13:58:55,047 dist._finalize_license_expression() 2026-02-11T13:58:55,047 /tmp/pip-build-env-5ra464js/overlay/local/lib/python3.11/dist-packages/setuptools/dist.py:765: SetuptoolsDeprecationWarning: License classifiers are deprecated. 2026-02-11T13:58:55,048 !! 2026-02-11T13:58:55,049 ******************************************************************************** 2026-02-11T13:58:55,049 Please consider removing the following classifiers in favor of a SPDX license expression: 2026-02-11T13:58:55,050 License :: OSI Approved :: Apache Software License 2026-02-11T13:58:55,051 See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. 2026-02-11T13:58:55,052 ******************************************************************************** 2026-02-11T13:58:55,053 !! 2026-02-11T13:58:55,054 self._finalize_license_expression() 2026-02-11T13:58:55,054 running dist_info 2026-02-11T13:58:55,062 creating /tmp/pip-modern-metadata-0iim67b_/kontra.egg-info 2026-02-11T13:58:55,063 writing /tmp/pip-modern-metadata-0iim67b_/kontra.egg-info/PKG-INFO 2026-02-11T13:58:55,069 writing dependency_links to /tmp/pip-modern-metadata-0iim67b_/kontra.egg-info/dependency_links.txt 2026-02-11T13:58:55,071 writing entry points to /tmp/pip-modern-metadata-0iim67b_/kontra.egg-info/entry_points.txt 2026-02-11T13:58:55,075 writing requirements to /tmp/pip-modern-metadata-0iim67b_/kontra.egg-info/requires.txt 2026-02-11T13:58:55,076 writing top-level names to /tmp/pip-modern-metadata-0iim67b_/kontra.egg-info/top_level.txt 2026-02-11T13:58:55,077 writing manifest file '/tmp/pip-modern-metadata-0iim67b_/kontra.egg-info/SOURCES.txt' 2026-02-11T13:58:55,115 reading manifest file '/tmp/pip-modern-metadata-0iim67b_/kontra.egg-info/SOURCES.txt' 2026-02-11T13:58:55,117 adding license file 'LICENSE' 2026-02-11T13:58:55,124 writing manifest file '/tmp/pip-modern-metadata-0iim67b_/kontra.egg-info/SOURCES.txt' 2026-02-11T13:58:55,125 creating '/tmp/pip-modern-metadata-0iim67b_/kontra-0.6.3.dist-info' 2026-02-11T13:58:55,254 Preparing metadata (pyproject.toml): finished with status 'done' 2026-02-11T13:58:55,259 Source in /tmp/pip-wheel-u4pvp_29/kontra_5277b532c430470bad968a67b23352c1 has version 0.6.3, which satisfies requirement kontra==0.6.3 from https://files.pythonhosted.org/packages/2d/23/676bfc9952b36404e97982740bdf7a23c22b66a9b57c3efb6f850bf1fb3f/kontra-0.6.3.tar.gz 2026-02-11T13:58:55,260 Removed kontra==0.6.3 from https://files.pythonhosted.org/packages/2d/23/676bfc9952b36404e97982740bdf7a23c22b66a9b57c3efb6f850bf1fb3f/kontra-0.6.3.tar.gz from build tracker '/tmp/pip-build-tracker-jo4sgnat' 2026-02-11T13:58:55,266 Created temporary directory: /tmp/pip-unpack-n8mqe7rr 2026-02-11T13:58:55,267 Building wheels for collected packages: kontra 2026-02-11T13:58:55,271 Created temporary directory: /tmp/pip-wheel-l16jf3xu 2026-02-11T13:58:55,271 Destination directory: /tmp/pip-wheel-l16jf3xu 2026-02-11T13:58:55,273 Building wheel for kontra (pyproject.toml): started 2026-02-11T13:58:55,274 Running command Building wheel for kontra (pyproject.toml) 2026-02-11T13:58:55,851 /tmp/pip-build-env-5ra464js/overlay/local/lib/python3.11/dist-packages/setuptools/config/_apply_pyprojecttoml.py:82: SetuptoolsDeprecationWarning: `project.license` as a TOML table is deprecated 2026-02-11T13:58:55,852 !! 2026-02-11T13:58:55,852 ******************************************************************************** 2026-02-11T13:58:55,853 Please use a simple string containing a SPDX expression for `project.license`. You can also use `project.license-files`. (Both options available on setuptools>=77.0.0). 2026-02-11T13:58:55,854 By 2027-Feb-18, you need to update your project and remove deprecated calls 2026-02-11T13:58:55,854 or your builds will no longer be supported. 2026-02-11T13:58:55,855 See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. 2026-02-11T13:58:55,856 ******************************************************************************** 2026-02-11T13:58:55,857 !! 2026-02-11T13:58:55,857 corresp(dist, value, root_dir) 2026-02-11T13:58:55,922 /tmp/pip-build-env-5ra464js/overlay/local/lib/python3.11/dist-packages/setuptools/config/_apply_pyprojecttoml.py:61: SetuptoolsDeprecationWarning: License classifiers are deprecated. 2026-02-11T13:58:55,923 !! 2026-02-11T13:58:55,924 ******************************************************************************** 2026-02-11T13:58:55,924 Please consider removing the following classifiers in favor of a SPDX license expression: 2026-02-11T13:58:55,925 License :: OSI Approved :: Apache Software License 2026-02-11T13:58:55,927 See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. 2026-02-11T13:58:55,927 ******************************************************************************** 2026-02-11T13:58:55,928 !! 2026-02-11T13:58:55,929 dist._finalize_license_expression() 2026-02-11T13:58:55,929 /tmp/pip-build-env-5ra464js/overlay/local/lib/python3.11/dist-packages/setuptools/dist.py:765: SetuptoolsDeprecationWarning: License classifiers are deprecated. 2026-02-11T13:58:55,930 !! 2026-02-11T13:58:55,931 ******************************************************************************** 2026-02-11T13:58:55,932 Please consider removing the following classifiers in favor of a SPDX license expression: 2026-02-11T13:58:55,933 License :: OSI Approved :: Apache Software License 2026-02-11T13:58:55,934 See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details. 2026-02-11T13:58:55,934 ******************************************************************************** 2026-02-11T13:58:55,935 !! 2026-02-11T13:58:55,936 self._finalize_license_expression() 2026-02-11T13:58:55,936 running bdist_wheel 2026-02-11T13:58:55,948 running build 2026-02-11T13:58:55,949 running build_py 2026-02-11T13:58:55,955 creating build/lib/kontra 2026-02-11T13:58:55,957 copying src/kontra/__init__.py -> build/lib/kontra 2026-02-11T13:58:55,961 copying src/kontra/errors.py -> build/lib/kontra 2026-02-11T13:58:55,964 copying src/kontra/logging.py -> build/lib/kontra 2026-02-11T13:58:55,966 copying src/kontra/version.py -> build/lib/kontra 2026-02-11T13:58:55,968 creating build/lib/kontra/rule_defs 2026-02-11T13:58:55,969 copying src/kontra/rule_defs/predicates.py -> build/lib/kontra/rule_defs 2026-02-11T13:58:55,971 copying src/kontra/rule_defs/factory.py -> build/lib/kontra/rule_defs 2026-02-11T13:58:55,973 copying src/kontra/rule_defs/__init__.py -> build/lib/kontra/rule_defs 2026-02-11T13:58:55,975 copying src/kontra/rule_defs/base.py -> build/lib/kontra/rule_defs 2026-02-11T13:58:55,977 copying src/kontra/rule_defs/execution_plan.py -> build/lib/kontra/rule_defs 2026-02-11T13:58:55,979 copying src/kontra/rule_defs/condition_parser.py -> build/lib/kontra/rule_defs 2026-02-11T13:58:55,982 copying src/kontra/rule_defs/static_predicates.py -> build/lib/kontra/rule_defs 2026-02-11T13:58:55,984 copying src/kontra/rule_defs/registry.py -> build/lib/kontra/rule_defs 2026-02-11T13:58:55,986 creating build/lib/kontra/engine 2026-02-11T13:58:55,987 copying src/kontra/engine/types.py -> build/lib/kontra/engine 2026-02-11T13:58:55,989 copying src/kontra/engine/paths.py -> build/lib/kontra/engine 2026-02-11T13:58:55,991 copying src/kontra/engine/__init__.py -> build/lib/kontra/engine 2026-02-11T13:58:55,993 copying src/kontra/engine/engine.py -> build/lib/kontra/engine 2026-02-11T13:58:55,996 copying src/kontra/engine/sql_utils.py -> build/lib/kontra/engine 2026-02-11T13:58:55,999 copying src/kontra/engine/result.py -> build/lib/kontra/engine 2026-02-11T13:58:56,001 copying src/kontra/engine/sql_validator.py -> build/lib/kontra/engine 2026-02-11T13:58:56,003 copying src/kontra/engine/stats.py -> build/lib/kontra/engine 2026-02-11T13:58:56,006 creating build/lib/kontra/state 2026-02-11T13:58:56,007 copying src/kontra/state/types.py -> build/lib/kontra/state 2026-02-11T13:58:56,010 copying src/kontra/state/__init__.py -> build/lib/kontra/state 2026-02-11T13:58:56,011 copying src/kontra/state/fingerprint.py -> build/lib/kontra/state 2026-02-11T13:58:56,014 creating build/lib/kontra/api 2026-02-11T13:58:56,015 copying src/kontra/api/results.py -> build/lib/kontra/api 2026-02-11T13:58:56,020 copying src/kontra/api/decorators.py -> build/lib/kontra/api 2026-02-11T13:58:56,022 copying src/kontra/api/compare.py -> build/lib/kontra/api 2026-02-11T13:58:56,024 copying src/kontra/api/__init__.py -> build/lib/kontra/api 2026-02-11T13:58:56,026 copying src/kontra/api/rules.py -> build/lib/kontra/api 2026-02-11T13:58:56,030 creating build/lib/kontra/config 2026-02-11T13:58:56,031 copying src/kontra/config/models.py -> build/lib/kontra/config 2026-02-11T13:58:56,033 copying src/kontra/config/__init__.py -> build/lib/kontra/config 2026-02-11T13:58:56,035 copying src/kontra/config/loader.py -> build/lib/kontra/config 2026-02-11T13:58:56,037 copying src/kontra/config/settings.py -> build/lib/kontra/config 2026-02-11T13:58:56,040 creating build/lib/kontra/cli 2026-02-11T13:58:56,041 copying src/kontra/cli/renderers.py -> build/lib/kontra/cli 2026-02-11T13:58:56,043 copying src/kontra/cli/__init__.py -> build/lib/kontra/cli 2026-02-11T13:58:56,045 copying src/kontra/cli/constants.py -> build/lib/kontra/cli 2026-02-11T13:58:56,047 copying src/kontra/cli/main.py -> build/lib/kontra/cli 2026-02-11T13:58:56,048 copying src/kontra/cli/utils.py -> build/lib/kontra/cli 2026-02-11T13:58:56,051 creating build/lib/kontra/probes 2026-02-11T13:58:56,052 copying src/kontra/probes/compare.py -> build/lib/kontra/probes 2026-02-11T13:58:56,054 copying src/kontra/probes/__init__.py -> build/lib/kontra/probes 2026-02-11T13:58:56,056 copying src/kontra/probes/relationship.py -> build/lib/kontra/probes 2026-02-11T13:58:56,058 copying src/kontra/probes/utils.py -> build/lib/kontra/probes 2026-02-11T13:58:56,061 creating build/lib/kontra/reporters 2026-02-11T13:58:56,061 copying src/kontra/reporters/json_reporter.py -> build/lib/kontra/reporters 2026-02-11T13:58:56,064 copying src/kontra/reporters/rich_reporter.py -> build/lib/kontra/reporters 2026-02-11T13:58:56,066 copying src/kontra/reporters/__init__.py -> build/lib/kontra/reporters 2026-02-11T13:58:56,068 creating build/lib/kontra/connectors 2026-02-11T13:58:56,069 copying src/kontra/connectors/handle.py -> build/lib/kontra/connectors 2026-02-11T13:58:56,071 copying src/kontra/connectors/__init__.py -> build/lib/kontra/connectors 2026-02-11T13:58:56,073 copying src/kontra/connectors/detection.py -> build/lib/kontra/connectors 2026-02-11T13:58:56,075 copying src/kontra/connectors/postgres.py -> build/lib/kontra/connectors 2026-02-11T13:58:56,077 copying src/kontra/connectors/sqlserver.py -> build/lib/kontra/connectors 2026-02-11T13:58:56,079 copying src/kontra/connectors/db_utils.py -> build/lib/kontra/connectors 2026-02-11T13:58:56,082 creating build/lib/kontra/preplan 2026-02-11T13:58:56,083 copying src/kontra/preplan/types.py -> build/lib/kontra/preplan 2026-02-11T13:58:56,084 copying src/kontra/preplan/__init__.py -> build/lib/kontra/preplan 2026-02-11T13:58:56,086 copying src/kontra/preplan/planner.py -> build/lib/kontra/preplan 2026-02-11T13:58:56,089 copying src/kontra/preplan/postgres.py -> build/lib/kontra/preplan 2026-02-11T13:58:56,091 copying src/kontra/preplan/sqlserver.py -> build/lib/kontra/preplan 2026-02-11T13:58:56,094 creating build/lib/kontra/scout 2026-02-11T13:58:56,094 copying src/kontra/scout/types.py -> build/lib/kontra/scout 2026-02-11T13:58:56,097 copying src/kontra/scout/suggest.py -> build/lib/kontra/scout 2026-02-11T13:58:56,099 copying src/kontra/scout/store.py -> build/lib/kontra/scout 2026-02-11T13:58:56,101 copying src/kontra/scout/__init__.py -> build/lib/kontra/scout 2026-02-11T13:58:56,103 copying src/kontra/scout/patterns.py -> build/lib/kontra/scout 2026-02-11T13:58:56,105 copying src/kontra/scout/profiler.py -> build/lib/kontra/scout 2026-02-11T13:58:56,108 copying src/kontra/scout/dtype_mapping.py -> build/lib/kontra/scout 2026-02-11T13:58:56,110 creating build/lib/kontra/rule_defs/builtin 2026-02-11T13:58:56,111 copying src/kontra/rule_defs/builtin/unique.py -> build/lib/kontra/rule_defs/builtin 2026-02-11T13:58:56,114 copying src/kontra/rule_defs/builtin/max_rows.py -> build/lib/kontra/rule_defs/builtin 2026-02-11T13:58:56,115 copying src/kontra/rule_defs/builtin/compare.py -> build/lib/kontra/rule_defs/builtin 2026-02-11T13:58:56,118 copying src/kontra/rule_defs/builtin/custom_sql_check.py -> build/lib/kontra/rule_defs/builtin 2026-02-11T13:58:56,120 copying src/kontra/rule_defs/builtin/conditional_range.py -> build/lib/kontra/rule_defs/builtin 2026-02-11T13:58:56,122 copying src/kontra/rule_defs/builtin/allowed_values.py -> build/lib/kontra/rule_defs/builtin 2026-02-11T13:58:56,124 copying src/kontra/rule_defs/builtin/disallowed_values.py -> build/lib/kontra/rule_defs/builtin 2026-02-11T13:58:56,127 copying src/kontra/rule_defs/builtin/conditional_not_null.py -> build/lib/kontra/rule_defs/builtin 2026-02-11T13:58:56,129 copying src/kontra/rule_defs/builtin/__init__.py -> build/lib/kontra/rule_defs/builtin 2026-02-11T13:58:56,131 copying src/kontra/rule_defs/builtin/not_null.py -> build/lib/kontra/rule_defs/builtin 2026-02-11T13:58:56,133 copying src/kontra/rule_defs/builtin/range.py -> build/lib/kontra/rule_defs/builtin 2026-02-11T13:58:56,135 copying src/kontra/rule_defs/builtin/starts_with.py -> build/lib/kontra/rule_defs/builtin 2026-02-11T13:58:56,137 copying src/kontra/rule_defs/builtin/freshness.py -> build/lib/kontra/rule_defs/builtin 2026-02-11T13:58:56,140 copying src/kontra/rule_defs/builtin/ends_with.py -> build/lib/kontra/rule_defs/builtin 2026-02-11T13:58:56,142 copying src/kontra/rule_defs/builtin/min_rows.py -> build/lib/kontra/rule_defs/builtin 2026-02-11T13:58:56,143 copying src/kontra/rule_defs/builtin/dtype.py -> build/lib/kontra/rule_defs/builtin 2026-02-11T13:58:56,146 copying src/kontra/rule_defs/builtin/length.py -> build/lib/kontra/rule_defs/builtin 2026-02-11T13:58:56,148 copying src/kontra/rule_defs/builtin/regex.py -> build/lib/kontra/rule_defs/builtin 2026-02-11T13:58:56,150 copying src/kontra/rule_defs/builtin/contains.py -> build/lib/kontra/rule_defs/builtin 2026-02-11T13:58:56,154 creating build/lib/kontra/engine/materializers 2026-02-11T13:58:56,155 copying src/kontra/engine/materializers/polars_connector.py -> build/lib/kontra/engine/materializers 2026-02-11T13:58:56,157 copying src/kontra/engine/materializers/factory.py -> build/lib/kontra/engine/materializers 2026-02-11T13:58:56,159 copying src/kontra/engine/materializers/__init__.py -> build/lib/kontra/engine/materializers 2026-02-11T13:58:56,161 copying src/kontra/engine/materializers/duckdb.py -> build/lib/kontra/engine/materializers 2026-02-11T13:58:56,163 copying src/kontra/engine/materializers/postgres.py -> build/lib/kontra/engine/materializers 2026-02-11T13:58:56,165 copying src/kontra/engine/materializers/base.py -> build/lib/kontra/engine/materializers 2026-02-11T13:58:56,166 copying src/kontra/engine/materializers/sqlserver.py -> build/lib/kontra/engine/materializers 2026-02-11T13:58:56,169 copying src/kontra/engine/materializers/registry.py -> build/lib/kontra/engine/materializers 2026-02-11T13:58:56,171 creating build/lib/kontra/engine/executors 2026-02-11T13:58:56,172 copying src/kontra/engine/executors/database_base.py -> build/lib/kontra/engine/executors 2026-02-11T13:58:56,175 copying src/kontra/engine/executors/sqlserver_sql.py -> build/lib/kontra/engine/executors 2026-02-11T13:58:56,177 copying src/kontra/engine/executors/__init__.py -> build/lib/kontra/engine/executors 2026-02-11T13:58:56,179 copying src/kontra/engine/executors/postgres_sql.py -> build/lib/kontra/engine/executors 2026-02-11T13:58:56,181 copying src/kontra/engine/executors/base.py -> build/lib/kontra/engine/executors 2026-02-11T13:58:56,183 copying src/kontra/engine/executors/duckdb_sql.py -> build/lib/kontra/engine/executors 2026-02-11T13:58:56,185 copying src/kontra/engine/executors/registry.py -> build/lib/kontra/engine/executors 2026-02-11T13:58:56,188 creating build/lib/kontra/engine/backends 2026-02-11T13:58:56,189 copying src/kontra/engine/backends/polars_backend.py -> build/lib/kontra/engine/backends 2026-02-11T13:58:56,191 copying src/kontra/engine/backends/duckdb_utils.py -> build/lib/kontra/engine/backends 2026-02-11T13:58:56,192 copying src/kontra/engine/backends/duckdb_session.py -> build/lib/kontra/engine/backends 2026-02-11T13:58:56,195 creating build/lib/kontra/state/backends 2026-02-11T13:58:56,196 copying src/kontra/state/backends/__init__.py -> build/lib/kontra/state/backends 2026-02-11T13:58:56,198 copying src/kontra/state/backends/postgres.py -> build/lib/kontra/state/backends 2026-02-11T13:58:56,201 copying src/kontra/state/backends/base.py -> build/lib/kontra/state/backends 2026-02-11T13:58:56,203 copying src/kontra/state/backends/sqlserver.py -> build/lib/kontra/state/backends 2026-02-11T13:58:56,206 copying src/kontra/state/backends/s3.py -> build/lib/kontra/state/backends 2026-02-11T13:58:56,209 copying src/kontra/state/backends/local.py -> build/lib/kontra/state/backends 2026-02-11T13:58:56,212 creating build/lib/kontra/cli/commands 2026-02-11T13:58:56,213 copying src/kontra/cli/commands/__init__.py -> build/lib/kontra/cli/commands 2026-02-11T13:58:56,215 copying src/kontra/cli/commands/validate.py -> build/lib/kontra/cli/commands 2026-02-11T13:58:56,217 copying src/kontra/cli/commands/diff.py -> build/lib/kontra/cli/commands 2026-02-11T13:58:56,220 copying src/kontra/cli/commands/config.py -> build/lib/kontra/cli/commands 2026-02-11T13:58:56,223 copying src/kontra/cli/commands/profile.py -> build/lib/kontra/cli/commands 2026-02-11T13:58:56,225 copying src/kontra/cli/commands/history.py -> build/lib/kontra/cli/commands 2026-02-11T13:58:56,228 creating build/lib/kontra/scout/backends 2026-02-11T13:58:56,230 copying src/kontra/scout/backends/postgres_backend.py -> build/lib/kontra/scout/backends 2026-02-11T13:58:56,233 copying src/kontra/scout/backends/sqlserver_backend.py -> build/lib/kontra/scout/backends 2026-02-11T13:58:56,235 copying src/kontra/scout/backends/__init__.py -> build/lib/kontra/scout/backends 2026-02-11T13:58:56,237 copying src/kontra/scout/backends/duckdb_backend.py -> build/lib/kontra/scout/backends 2026-02-11T13:58:56,240 copying src/kontra/scout/backends/base.py -> build/lib/kontra/scout/backends 2026-02-11T13:58:56,243 creating build/lib/kontra/scout/reporters 2026-02-11T13:58:56,244 copying src/kontra/scout/reporters/json_reporter.py -> build/lib/kontra/scout/reporters 2026-02-11T13:58:56,247 copying src/kontra/scout/reporters/rich_reporter.py -> build/lib/kontra/scout/reporters 2026-02-11T13:58:56,249 copying src/kontra/scout/reporters/markdown_reporter.py -> build/lib/kontra/scout/reporters 2026-02-11T13:58:56,251 copying src/kontra/scout/reporters/__init__.py -> build/lib/kontra/scout/reporters 2026-02-11T13:58:56,253 running egg_info 2026-02-11T13:58:56,263 writing src/kontra.egg-info/PKG-INFO 2026-02-11T13:58:56,269 writing dependency_links to src/kontra.egg-info/dependency_links.txt 2026-02-11T13:58:56,271 writing entry points to src/kontra.egg-info/entry_points.txt 2026-02-11T13:58:56,275 writing requirements to src/kontra.egg-info/requires.txt 2026-02-11T13:58:56,276 writing top-level names to src/kontra.egg-info/top_level.txt 2026-02-11T13:58:56,305 reading manifest file 'src/kontra.egg-info/SOURCES.txt' 2026-02-11T13:58:56,315 adding license file 'LICENSE' 2026-02-11T13:58:56,324 writing manifest file 'src/kontra.egg-info/SOURCES.txt' 2026-02-11T13:58:56,355 installing to build/bdist.linux-armv7l/wheel 2026-02-11T13:58:56,356 running install 2026-02-11T13:58:56,379 running install_lib 2026-02-11T13:58:56,385 creating build/bdist.linux-armv7l/wheel 2026-02-11T13:58:56,387 creating build/bdist.linux-armv7l/wheel/kontra 2026-02-11T13:58:56,390 creating build/bdist.linux-armv7l/wheel/kontra/rule_defs 2026-02-11T13:58:56,391 copying build/lib/kontra/rule_defs/predicates.py -> build/bdist.linux-armv7l/wheel/./kontra/rule_defs 2026-02-11T13:58:56,393 copying build/lib/kontra/rule_defs/factory.py -> build/bdist.linux-armv7l/wheel/./kontra/rule_defs 2026-02-11T13:58:56,396 copying build/lib/kontra/rule_defs/__init__.py -> build/bdist.linux-armv7l/wheel/./kontra/rule_defs 2026-02-11T13:58:56,398 copying build/lib/kontra/rule_defs/base.py -> build/bdist.linux-armv7l/wheel/./kontra/rule_defs 2026-02-11T13:58:56,400 copying build/lib/kontra/rule_defs/execution_plan.py -> build/bdist.linux-armv7l/wheel/./kontra/rule_defs 2026-02-11T13:58:56,403 copying build/lib/kontra/rule_defs/condition_parser.py -> build/bdist.linux-armv7l/wheel/./kontra/rule_defs 2026-02-11T13:58:56,407 creating build/bdist.linux-armv7l/wheel/kontra/rule_defs/builtin 2026-02-11T13:58:56,408 copying build/lib/kontra/rule_defs/builtin/unique.py -> build/bdist.linux-armv7l/wheel/./kontra/rule_defs/builtin 2026-02-11T13:58:56,411 copying build/lib/kontra/rule_defs/builtin/max_rows.py -> build/bdist.linux-armv7l/wheel/./kontra/rule_defs/builtin 2026-02-11T13:58:56,413 copying build/lib/kontra/rule_defs/builtin/compare.py -> build/bdist.linux-armv7l/wheel/./kontra/rule_defs/builtin 2026-02-11T13:58:56,416 copying build/lib/kontra/rule_defs/builtin/custom_sql_check.py -> build/bdist.linux-armv7l/wheel/./kontra/rule_defs/builtin 2026-02-11T13:58:56,418 copying build/lib/kontra/rule_defs/builtin/conditional_range.py -> build/bdist.linux-armv7l/wheel/./kontra/rule_defs/builtin 2026-02-11T13:58:56,421 copying build/lib/kontra/rule_defs/builtin/allowed_values.py -> build/bdist.linux-armv7l/wheel/./kontra/rule_defs/builtin 2026-02-11T13:58:56,423 copying build/lib/kontra/rule_defs/builtin/disallowed_values.py -> build/bdist.linux-armv7l/wheel/./kontra/rule_defs/builtin 2026-02-11T13:58:56,426 copying build/lib/kontra/rule_defs/builtin/conditional_not_null.py -> build/bdist.linux-armv7l/wheel/./kontra/rule_defs/builtin 2026-02-11T13:58:56,429 copying build/lib/kontra/rule_defs/builtin/__init__.py -> build/bdist.linux-armv7l/wheel/./kontra/rule_defs/builtin 2026-02-11T13:58:56,431 copying build/lib/kontra/rule_defs/builtin/not_null.py -> build/bdist.linux-armv7l/wheel/./kontra/rule_defs/builtin 2026-02-11T13:58:56,433 copying build/lib/kontra/rule_defs/builtin/range.py -> build/bdist.linux-armv7l/wheel/./kontra/rule_defs/builtin 2026-02-11T13:58:56,436 copying build/lib/kontra/rule_defs/builtin/starts_with.py -> build/bdist.linux-armv7l/wheel/./kontra/rule_defs/builtin 2026-02-11T13:58:56,438 copying build/lib/kontra/rule_defs/builtin/freshness.py -> build/bdist.linux-armv7l/wheel/./kontra/rule_defs/builtin 2026-02-11T13:58:56,440 copying build/lib/kontra/rule_defs/builtin/ends_with.py -> build/bdist.linux-armv7l/wheel/./kontra/rule_defs/builtin 2026-02-11T13:58:56,442 copying build/lib/kontra/rule_defs/builtin/min_rows.py -> build/bdist.linux-armv7l/wheel/./kontra/rule_defs/builtin 2026-02-11T13:58:56,445 copying build/lib/kontra/rule_defs/builtin/dtype.py -> build/bdist.linux-armv7l/wheel/./kontra/rule_defs/builtin 2026-02-11T13:58:56,447 copying build/lib/kontra/rule_defs/builtin/length.py -> build/bdist.linux-armv7l/wheel/./kontra/rule_defs/builtin 2026-02-11T13:58:56,450 copying build/lib/kontra/rule_defs/builtin/regex.py -> build/bdist.linux-armv7l/wheel/./kontra/rule_defs/builtin 2026-02-11T13:58:56,452 copying build/lib/kontra/rule_defs/builtin/contains.py -> build/bdist.linux-armv7l/wheel/./kontra/rule_defs/builtin 2026-02-11T13:58:56,454 copying build/lib/kontra/rule_defs/static_predicates.py -> build/bdist.linux-armv7l/wheel/./kontra/rule_defs 2026-02-11T13:58:56,457 copying build/lib/kontra/rule_defs/registry.py -> build/bdist.linux-armv7l/wheel/./kontra/rule_defs 2026-02-11T13:58:56,460 creating build/bdist.linux-armv7l/wheel/kontra/engine 2026-02-11T13:58:56,461 copying build/lib/kontra/engine/types.py -> build/bdist.linux-armv7l/wheel/./kontra/engine 2026-02-11T13:58:56,463 copying build/lib/kontra/engine/paths.py -> build/bdist.linux-armv7l/wheel/./kontra/engine 2026-02-11T13:58:56,466 creating build/bdist.linux-armv7l/wheel/kontra/engine/materializers 2026-02-11T13:58:56,467 copying build/lib/kontra/engine/materializers/polars_connector.py -> build/bdist.linux-armv7l/wheel/./kontra/engine/materializers 2026-02-11T13:58:56,470 copying build/lib/kontra/engine/materializers/factory.py -> build/bdist.linux-armv7l/wheel/./kontra/engine/materializers 2026-02-11T13:58:56,472 copying build/lib/kontra/engine/materializers/__init__.py -> build/bdist.linux-armv7l/wheel/./kontra/engine/materializers 2026-02-11T13:58:56,474 copying build/lib/kontra/engine/materializers/duckdb.py -> build/bdist.linux-armv7l/wheel/./kontra/engine/materializers 2026-02-11T13:58:56,476 copying build/lib/kontra/engine/materializers/postgres.py -> build/bdist.linux-armv7l/wheel/./kontra/engine/materializers 2026-02-11T13:58:56,479 copying build/lib/kontra/engine/materializers/base.py -> build/bdist.linux-armv7l/wheel/./kontra/engine/materializers 2026-02-11T13:58:56,481 copying build/lib/kontra/engine/materializers/sqlserver.py -> build/bdist.linux-armv7l/wheel/./kontra/engine/materializers 2026-02-11T13:58:56,483 copying build/lib/kontra/engine/materializers/registry.py -> build/bdist.linux-armv7l/wheel/./kontra/engine/materializers 2026-02-11T13:58:56,486 creating build/bdist.linux-armv7l/wheel/kontra/engine/executors 2026-02-11T13:58:56,488 copying build/lib/kontra/engine/executors/database_base.py -> build/bdist.linux-armv7l/wheel/./kontra/engine/executors 2026-02-11T13:58:56,491 copying build/lib/kontra/engine/executors/sqlserver_sql.py -> build/bdist.linux-armv7l/wheel/./kontra/engine/executors 2026-02-11T13:58:56,493 copying build/lib/kontra/engine/executors/__init__.py -> build/bdist.linux-armv7l/wheel/./kontra/engine/executors 2026-02-11T13:58:56,495 copying build/lib/kontra/engine/executors/postgres_sql.py -> build/bdist.linux-armv7l/wheel/./kontra/engine/executors 2026-02-11T13:58:56,498 copying build/lib/kontra/engine/executors/base.py -> build/bdist.linux-armv7l/wheel/./kontra/engine/executors 2026-02-11T13:58:56,500 copying build/lib/kontra/engine/executors/duckdb_sql.py -> build/bdist.linux-armv7l/wheel/./kontra/engine/executors 2026-02-11T13:58:56,503 copying build/lib/kontra/engine/executors/registry.py -> build/bdist.linux-armv7l/wheel/./kontra/engine/executors 2026-02-11T13:58:56,505 copying build/lib/kontra/engine/__init__.py -> build/bdist.linux-armv7l/wheel/./kontra/engine 2026-02-11T13:58:56,507 copying build/lib/kontra/engine/engine.py -> build/bdist.linux-armv7l/wheel/./kontra/engine 2026-02-11T13:58:56,511 creating build/bdist.linux-armv7l/wheel/kontra/engine/backends 2026-02-11T13:58:56,512 copying build/lib/kontra/engine/backends/polars_backend.py -> build/bdist.linux-armv7l/wheel/./kontra/engine/backends 2026-02-11T13:58:56,514 copying build/lib/kontra/engine/backends/duckdb_utils.py -> build/bdist.linux-armv7l/wheel/./kontra/engine/backends 2026-02-11T13:58:56,516 copying build/lib/kontra/engine/backends/duckdb_session.py -> build/bdist.linux-armv7l/wheel/./kontra/engine/backends 2026-02-11T13:58:56,518 copying build/lib/kontra/engine/sql_utils.py -> build/bdist.linux-armv7l/wheel/./kontra/engine 2026-02-11T13:58:56,521 copying build/lib/kontra/engine/result.py -> build/bdist.linux-armv7l/wheel/./kontra/engine 2026-02-11T13:58:56,523 copying build/lib/kontra/engine/sql_validator.py -> build/bdist.linux-armv7l/wheel/./kontra/engine 2026-02-11T13:58:56,526 copying build/lib/kontra/engine/stats.py -> build/bdist.linux-armv7l/wheel/./kontra/engine 2026-02-11T13:58:56,530 creating build/bdist.linux-armv7l/wheel/kontra/state 2026-02-11T13:58:56,531 copying build/lib/kontra/state/types.py -> build/bdist.linux-armv7l/wheel/./kontra/state 2026-02-11T13:58:56,535 copying build/lib/kontra/state/__init__.py -> build/bdist.linux-armv7l/wheel/./kontra/state 2026-02-11T13:58:56,538 creating build/bdist.linux-armv7l/wheel/kontra/state/backends 2026-02-11T13:58:56,539 copying build/lib/kontra/state/backends/__init__.py -> build/bdist.linux-armv7l/wheel/./kontra/state/backends 2026-02-11T13:58:56,542 copying build/lib/kontra/state/backends/postgres.py -> build/bdist.linux-armv7l/wheel/./kontra/state/backends 2026-02-11T13:58:56,545 copying build/lib/kontra/state/backends/base.py -> build/bdist.linux-armv7l/wheel/./kontra/state/backends 2026-02-11T13:58:56,548 copying build/lib/kontra/state/backends/sqlserver.py -> build/bdist.linux-armv7l/wheel/./kontra/state/backends 2026-02-11T13:58:56,551 copying build/lib/kontra/state/backends/s3.py -> build/bdist.linux-armv7l/wheel/./kontra/state/backends 2026-02-11T13:58:56,554 copying build/lib/kontra/state/backends/local.py -> build/bdist.linux-armv7l/wheel/./kontra/state/backends 2026-02-11T13:58:56,557 copying build/lib/kontra/state/fingerprint.py -> build/bdist.linux-armv7l/wheel/./kontra/state 2026-02-11T13:58:56,561 creating build/bdist.linux-armv7l/wheel/kontra/api 2026-02-11T13:58:56,562 copying build/lib/kontra/api/results.py -> build/bdist.linux-armv7l/wheel/./kontra/api 2026-02-11T13:58:56,567 copying build/lib/kontra/api/decorators.py -> build/bdist.linux-armv7l/wheel/./kontra/api 2026-02-11T13:58:56,570 copying build/lib/kontra/api/compare.py -> build/bdist.linux-armv7l/wheel/./kontra/api 2026-02-11T13:58:56,573 copying build/lib/kontra/api/__init__.py -> build/bdist.linux-armv7l/wheel/./kontra/api 2026-02-11T13:58:56,576 copying build/lib/kontra/api/rules.py -> build/bdist.linux-armv7l/wheel/./kontra/api 2026-02-11T13:58:56,580 creating build/bdist.linux-armv7l/wheel/kontra/config 2026-02-11T13:58:56,582 copying build/lib/kontra/config/models.py -> build/bdist.linux-armv7l/wheel/./kontra/config 2026-02-11T13:58:56,585 copying build/lib/kontra/config/__init__.py -> build/bdist.linux-armv7l/wheel/./kontra/config 2026-02-11T13:58:56,588 copying build/lib/kontra/config/loader.py -> build/bdist.linux-armv7l/wheel/./kontra/config 2026-02-11T13:58:56,591 copying build/lib/kontra/config/settings.py -> build/bdist.linux-armv7l/wheel/./kontra/config 2026-02-11T13:58:56,594 copying build/lib/kontra/__init__.py -> build/bdist.linux-armv7l/wheel/./kontra 2026-02-11T13:58:56,600 creating build/bdist.linux-armv7l/wheel/kontra/cli 2026-02-11T13:58:56,602 copying build/lib/kontra/cli/renderers.py -> build/bdist.linux-armv7l/wheel/./kontra/cli 2026-02-11T13:58:56,606 copying build/lib/kontra/cli/__init__.py -> build/bdist.linux-armv7l/wheel/./kontra/cli 2026-02-11T13:58:56,608 copying build/lib/kontra/cli/constants.py -> build/bdist.linux-armv7l/wheel/./kontra/cli 2026-02-11T13:58:56,610 copying build/lib/kontra/cli/main.py -> build/bdist.linux-armv7l/wheel/./kontra/cli 2026-02-11T13:58:56,613 copying build/lib/kontra/cli/utils.py -> build/bdist.linux-armv7l/wheel/./kontra/cli 2026-02-11T13:58:56,616 creating build/bdist.linux-armv7l/wheel/kontra/cli/commands 2026-02-11T13:58:56,617 copying build/lib/kontra/cli/commands/__init__.py -> build/bdist.linux-armv7l/wheel/./kontra/cli/commands 2026-02-11T13:58:56,620 copying build/lib/kontra/cli/commands/validate.py -> build/bdist.linux-armv7l/wheel/./kontra/cli/commands 2026-02-11T13:58:56,624 copying build/lib/kontra/cli/commands/diff.py -> build/bdist.linux-armv7l/wheel/./kontra/cli/commands 2026-02-11T13:58:56,627 copying build/lib/kontra/cli/commands/config.py -> build/bdist.linux-armv7l/wheel/./kontra/cli/commands 2026-02-11T13:58:56,630 copying build/lib/kontra/cli/commands/profile.py -> build/bdist.linux-armv7l/wheel/./kontra/cli/commands 2026-02-11T13:58:56,632 copying build/lib/kontra/cli/commands/history.py -> build/bdist.linux-armv7l/wheel/./kontra/cli/commands 2026-02-11T13:58:56,635 copying build/lib/kontra/errors.py -> build/bdist.linux-armv7l/wheel/./kontra 2026-02-11T13:58:56,638 copying build/lib/kontra/logging.py -> build/bdist.linux-armv7l/wheel/./kontra 2026-02-11T13:58:56,640 copying build/lib/kontra/version.py -> build/bdist.linux-armv7l/wheel/./kontra 2026-02-11T13:58:56,642 creating build/bdist.linux-armv7l/wheel/kontra/probes 2026-02-11T13:58:56,644 copying build/lib/kontra/probes/compare.py -> build/bdist.linux-armv7l/wheel/./kontra/probes 2026-02-11T13:58:56,646 copying build/lib/kontra/probes/__init__.py -> build/bdist.linux-armv7l/wheel/./kontra/probes 2026-02-11T13:58:56,649 copying build/lib/kontra/probes/relationship.py -> build/bdist.linux-armv7l/wheel/./kontra/probes 2026-02-11T13:58:56,651 copying build/lib/kontra/probes/utils.py -> build/bdist.linux-armv7l/wheel/./kontra/probes 2026-02-11T13:58:56,654 creating build/bdist.linux-armv7l/wheel/kontra/reporters 2026-02-11T13:58:56,655 copying build/lib/kontra/reporters/json_reporter.py -> build/bdist.linux-armv7l/wheel/./kontra/reporters 2026-02-11T13:58:56,658 copying build/lib/kontra/reporters/rich_reporter.py -> build/bdist.linux-armv7l/wheel/./kontra/reporters 2026-02-11T13:58:56,660 copying build/lib/kontra/reporters/__init__.py -> build/bdist.linux-armv7l/wheel/./kontra/reporters 2026-02-11T13:58:56,662 creating build/bdist.linux-armv7l/wheel/kontra/connectors 2026-02-11T13:58:56,663 copying build/lib/kontra/connectors/handle.py -> build/bdist.linux-armv7l/wheel/./kontra/connectors 2026-02-11T13:58:56,666 copying build/lib/kontra/connectors/__init__.py -> build/bdist.linux-armv7l/wheel/./kontra/connectors 2026-02-11T13:58:56,668 copying build/lib/kontra/connectors/detection.py -> build/bdist.linux-armv7l/wheel/./kontra/connectors 2026-02-11T13:58:56,671 copying build/lib/kontra/connectors/postgres.py -> build/bdist.linux-armv7l/wheel/./kontra/connectors 2026-02-11T13:58:56,673 copying build/lib/kontra/connectors/sqlserver.py -> build/bdist.linux-armv7l/wheel/./kontra/connectors 2026-02-11T13:58:56,676 copying build/lib/kontra/connectors/db_utils.py -> build/bdist.linux-armv7l/wheel/./kontra/connectors 2026-02-11T13:58:56,679 creating build/bdist.linux-armv7l/wheel/kontra/preplan 2026-02-11T13:58:56,680 copying build/lib/kontra/preplan/types.py -> build/bdist.linux-armv7l/wheel/./kontra/preplan 2026-02-11T13:58:56,682 copying build/lib/kontra/preplan/__init__.py -> build/bdist.linux-armv7l/wheel/./kontra/preplan 2026-02-11T13:58:56,684 copying build/lib/kontra/preplan/planner.py -> build/bdist.linux-armv7l/wheel/./kontra/preplan 2026-02-11T13:58:56,687 copying build/lib/kontra/preplan/postgres.py -> build/bdist.linux-armv7l/wheel/./kontra/preplan 2026-02-11T13:58:56,690 copying build/lib/kontra/preplan/sqlserver.py -> build/bdist.linux-armv7l/wheel/./kontra/preplan 2026-02-11T13:58:56,695 creating build/bdist.linux-armv7l/wheel/kontra/scout 2026-02-11T13:58:56,696 copying build/lib/kontra/scout/types.py -> build/bdist.linux-armv7l/wheel/./kontra/scout 2026-02-11T13:58:56,700 copying build/lib/kontra/scout/suggest.py -> build/bdist.linux-armv7l/wheel/./kontra/scout 2026-02-11T13:58:56,704 copying build/lib/kontra/scout/store.py -> build/bdist.linux-armv7l/wheel/./kontra/scout 2026-02-11T13:58:56,707 copying build/lib/kontra/scout/__init__.py -> build/bdist.linux-armv7l/wheel/./kontra/scout 2026-02-11T13:58:56,709 copying build/lib/kontra/scout/patterns.py -> build/bdist.linux-armv7l/wheel/./kontra/scout 2026-02-11T13:58:56,711 copying build/lib/kontra/scout/profiler.py -> build/bdist.linux-armv7l/wheel/./kontra/scout 2026-02-11T13:58:56,716 creating build/bdist.linux-armv7l/wheel/kontra/scout/backends 2026-02-11T13:58:56,718 copying build/lib/kontra/scout/backends/postgres_backend.py -> build/bdist.linux-armv7l/wheel/./kontra/scout/backends 2026-02-11T13:58:56,721 copying build/lib/kontra/scout/backends/sqlserver_backend.py -> build/bdist.linux-armv7l/wheel/./kontra/scout/backends 2026-02-11T13:58:56,724 copying build/lib/kontra/scout/backends/__init__.py -> build/bdist.linux-armv7l/wheel/./kontra/scout/backends 2026-02-11T13:58:56,728 copying build/lib/kontra/scout/backends/duckdb_backend.py -> build/bdist.linux-armv7l/wheel/./kontra/scout/backends 2026-02-11T13:58:56,735 copying build/lib/kontra/scout/backends/base.py -> build/bdist.linux-armv7l/wheel/./kontra/scout/backends 2026-02-11T13:58:56,740 copying build/lib/kontra/scout/dtype_mapping.py -> build/bdist.linux-armv7l/wheel/./kontra/scout 2026-02-11T13:58:56,749 creating build/bdist.linux-armv7l/wheel/kontra/scout/reporters 2026-02-11T13:58:56,752 copying build/lib/kontra/scout/reporters/json_reporter.py -> build/bdist.linux-armv7l/wheel/./kontra/scout/reporters 2026-02-11T13:58:56,969 copying build/lib/kontra/scout/reporters/rich_reporter.py -> build/bdist.linux-armv7l/wheel/./kontra/scout/reporters 2026-02-11T13:58:56,972 copying build/lib/kontra/scout/reporters/markdown_reporter.py -> build/bdist.linux-armv7l/wheel/./kontra/scout/reporters 2026-02-11T13:58:56,974 copying build/lib/kontra/scout/reporters/__init__.py -> build/bdist.linux-armv7l/wheel/./kontra/scout/reporters 2026-02-11T13:58:56,976 running install_egg_info 2026-02-11T13:58:56,982 Copying src/kontra.egg-info to build/bdist.linux-armv7l/wheel/./kontra-0.6.3-py3.11.egg-info 2026-02-11T13:58:56,993 running install_scripts 2026-02-11T13:58:57,005 creating build/bdist.linux-armv7l/wheel/kontra-0.6.3.dist-info/WHEEL 2026-02-11T13:58:57,008 creating '/tmp/pip-wheel-l16jf3xu/.tmp-43iaz2be/kontra-0.6.3-py3-none-any.whl' and adding 'build/bdist.linux-armv7l/wheel' to it 2026-02-11T13:58:57,018 adding 'kontra/__init__.py' 2026-02-11T13:58:57,022 adding 'kontra/errors.py' 2026-02-11T13:58:57,023 adding 'kontra/logging.py' 2026-02-11T13:58:57,025 adding 'kontra/version.py' 2026-02-11T13:58:57,027 adding 'kontra/api/__init__.py' 2026-02-11T13:58:57,030 adding 'kontra/api/compare.py' 2026-02-11T13:58:57,032 adding 'kontra/api/decorators.py' 2026-02-11T13:58:57,042 adding 'kontra/api/results.py' 2026-02-11T13:58:57,046 adding 'kontra/api/rules.py' 2026-02-11T13:58:57,048 adding 'kontra/cli/__init__.py' 2026-02-11T13:58:57,050 adding 'kontra/cli/constants.py' 2026-02-11T13:58:57,051 adding 'kontra/cli/main.py' 2026-02-11T13:58:57,054 adding 'kontra/cli/renderers.py' 2026-02-11T13:58:57,055 adding 'kontra/cli/utils.py' 2026-02-11T13:58:57,057 adding 'kontra/cli/commands/__init__.py' 2026-02-11T13:58:57,059 adding 'kontra/cli/commands/config.py' 2026-02-11T13:58:57,062 adding 'kontra/cli/commands/diff.py' 2026-02-11T13:58:57,064 adding 'kontra/cli/commands/history.py' 2026-02-11T13:58:57,066 adding 'kontra/cli/commands/profile.py' 2026-02-11T13:58:57,069 adding 'kontra/cli/commands/validate.py' 2026-02-11T13:58:57,071 adding 'kontra/config/__init__.py' 2026-02-11T13:58:57,073 adding 'kontra/config/loader.py' 2026-02-11T13:58:57,075 adding 'kontra/config/models.py' 2026-02-11T13:58:57,078 adding 'kontra/config/settings.py' 2026-02-11T13:58:57,080 adding 'kontra/connectors/__init__.py' 2026-02-11T13:58:57,082 adding 'kontra/connectors/db_utils.py' 2026-02-11T13:58:57,084 adding 'kontra/connectors/detection.py' 2026-02-11T13:58:57,086 adding 'kontra/connectors/handle.py' 2026-02-11T13:58:57,087 adding 'kontra/connectors/postgres.py' 2026-02-11T13:58:57,089 adding 'kontra/connectors/sqlserver.py' 2026-02-11T13:58:57,091 adding 'kontra/engine/__init__.py' 2026-02-11T13:58:57,098 adding 'kontra/engine/engine.py' 2026-02-11T13:58:57,100 adding 'kontra/engine/paths.py' 2026-02-11T13:58:57,101 adding 'kontra/engine/result.py' 2026-02-11T13:58:57,104 adding 'kontra/engine/sql_utils.py' 2026-02-11T13:58:57,107 adding 'kontra/engine/sql_validator.py' 2026-02-11T13:58:57,109 adding 'kontra/engine/stats.py' 2026-02-11T13:58:57,110 adding 'kontra/engine/types.py' 2026-02-11T13:58:57,112 adding 'kontra/engine/backends/duckdb_session.py' 2026-02-11T13:58:57,113 adding 'kontra/engine/backends/duckdb_utils.py' 2026-02-11T13:58:57,115 adding 'kontra/engine/backends/polars_backend.py' 2026-02-11T13:58:57,116 adding 'kontra/engine/executors/__init__.py' 2026-02-11T13:58:57,118 adding 'kontra/engine/executors/base.py' 2026-02-11T13:58:57,121 adding 'kontra/engine/executors/database_base.py' 2026-02-11T13:58:57,124 adding 'kontra/engine/executors/duckdb_sql.py' 2026-02-11T13:58:57,125 adding 'kontra/engine/executors/postgres_sql.py' 2026-02-11T13:58:57,127 adding 'kontra/engine/executors/registry.py' 2026-02-11T13:58:57,128 adding 'kontra/engine/executors/sqlserver_sql.py' 2026-02-11T13:58:57,130 adding 'kontra/engine/materializers/__init__.py' 2026-02-11T13:58:57,131 adding 'kontra/engine/materializers/base.py' 2026-02-11T13:58:57,133 adding 'kontra/engine/materializers/duckdb.py' 2026-02-11T13:58:57,134 adding 'kontra/engine/materializers/factory.py' 2026-02-11T13:58:57,135 adding 'kontra/engine/materializers/polars_connector.py' 2026-02-11T13:58:57,137 adding 'kontra/engine/materializers/postgres.py' 2026-02-11T13:58:57,139 adding 'kontra/engine/materializers/registry.py' 2026-02-11T13:58:57,140 adding 'kontra/engine/materializers/sqlserver.py' 2026-02-11T13:58:57,142 adding 'kontra/preplan/__init__.py' 2026-02-11T13:58:57,144 adding 'kontra/preplan/planner.py' 2026-02-11T13:58:57,147 adding 'kontra/preplan/postgres.py' 2026-02-11T13:58:57,148 adding 'kontra/preplan/sqlserver.py' 2026-02-11T13:58:57,150 adding 'kontra/preplan/types.py' 2026-02-11T13:58:57,152 adding 'kontra/probes/__init__.py' 2026-02-11T13:58:57,154 adding 'kontra/probes/compare.py' 2026-02-11T13:58:57,155 adding 'kontra/probes/relationship.py' 2026-02-11T13:58:57,157 adding 'kontra/probes/utils.py' 2026-02-11T13:58:57,158 adding 'kontra/reporters/__init__.py' 2026-02-11T13:58:57,160 adding 'kontra/reporters/json_reporter.py' 2026-02-11T13:58:57,162 adding 'kontra/reporters/rich_reporter.py' 2026-02-11T13:58:57,164 adding 'kontra/rule_defs/__init__.py' 2026-02-11T13:58:57,165 adding 'kontra/rule_defs/base.py' 2026-02-11T13:58:57,167 adding 'kontra/rule_defs/condition_parser.py' 2026-02-11T13:58:57,170 adding 'kontra/rule_defs/execution_plan.py' 2026-02-11T13:58:57,172 adding 'kontra/rule_defs/factory.py' 2026-02-11T13:58:57,173 adding 'kontra/rule_defs/predicates.py' 2026-02-11T13:58:57,175 adding 'kontra/rule_defs/registry.py' 2026-02-11T13:58:57,177 adding 'kontra/rule_defs/static_predicates.py' 2026-02-11T13:58:57,179 adding 'kontra/rule_defs/builtin/__init__.py' 2026-02-11T13:58:57,180 adding 'kontra/rule_defs/builtin/allowed_values.py' 2026-02-11T13:58:57,182 adding 'kontra/rule_defs/builtin/compare.py' 2026-02-11T13:58:57,184 adding 'kontra/rule_defs/builtin/conditional_not_null.py' 2026-02-11T13:58:57,186 adding 'kontra/rule_defs/builtin/conditional_range.py' 2026-02-11T13:58:57,187 adding 'kontra/rule_defs/builtin/contains.py' 2026-02-11T13:58:57,189 adding 'kontra/rule_defs/builtin/custom_sql_check.py' 2026-02-11T13:58:57,190 adding 'kontra/rule_defs/builtin/disallowed_values.py' 2026-02-11T13:58:57,192 adding 'kontra/rule_defs/builtin/dtype.py' 2026-02-11T13:58:57,193 adding 'kontra/rule_defs/builtin/ends_with.py' 2026-02-11T13:58:57,195 adding 'kontra/rule_defs/builtin/freshness.py' 2026-02-11T13:58:57,197 adding 'kontra/rule_defs/builtin/length.py' 2026-02-11T13:58:57,198 adding 'kontra/rule_defs/builtin/max_rows.py' 2026-02-11T13:58:57,199 adding 'kontra/rule_defs/builtin/min_rows.py' 2026-02-11T13:58:57,201 adding 'kontra/rule_defs/builtin/not_null.py' 2026-02-11T13:58:57,202 adding 'kontra/rule_defs/builtin/range.py' 2026-02-11T13:58:57,204 adding 'kontra/rule_defs/builtin/regex.py' 2026-02-11T13:58:57,205 adding 'kontra/rule_defs/builtin/starts_with.py' 2026-02-11T13:58:57,207 adding 'kontra/rule_defs/builtin/unique.py' 2026-02-11T13:58:57,208 adding 'kontra/scout/__init__.py' 2026-02-11T13:58:57,210 adding 'kontra/scout/dtype_mapping.py' 2026-02-11T13:58:57,211 adding 'kontra/scout/patterns.py' 2026-02-11T13:58:57,215 adding 'kontra/scout/profiler.py' 2026-02-11T13:58:57,217 adding 'kontra/scout/store.py' 2026-02-11T13:58:57,218 adding 'kontra/scout/suggest.py' 2026-02-11T13:58:57,222 adding 'kontra/scout/types.py' 2026-02-11T13:58:57,223 adding 'kontra/scout/backends/__init__.py' 2026-02-11T13:58:57,225 adding 'kontra/scout/backends/base.py' 2026-02-11T13:58:57,227 adding 'kontra/scout/backends/duckdb_backend.py' 2026-02-11T13:58:57,229 adding 'kontra/scout/backends/postgres_backend.py' 2026-02-11T13:58:57,232 adding 'kontra/scout/backends/sqlserver_backend.py' 2026-02-11T13:58:57,234 adding 'kontra/scout/reporters/__init__.py' 2026-02-11T13:58:57,235 adding 'kontra/scout/reporters/json_reporter.py' 2026-02-11T13:58:57,237 adding 'kontra/scout/reporters/markdown_reporter.py' 2026-02-11T13:58:57,239 adding 'kontra/scout/reporters/rich_reporter.py' 2026-02-11T13:58:57,240 adding 'kontra/state/__init__.py' 2026-02-11T13:58:57,242 adding 'kontra/state/fingerprint.py' 2026-02-11T13:58:57,246 adding 'kontra/state/types.py' 2026-02-11T13:58:57,248 adding 'kontra/state/backends/__init__.py' 2026-02-11T13:58:57,250 adding 'kontra/state/backends/base.py' 2026-02-11T13:58:57,252 adding 'kontra/state/backends/local.py' 2026-02-11T13:58:57,256 adding 'kontra/state/backends/postgres.py' 2026-02-11T13:58:57,259 adding 'kontra/state/backends/s3.py' 2026-02-11T13:58:57,262 adding 'kontra/state/backends/sqlserver.py' 2026-02-11T13:58:57,265 adding 'kontra-0.6.3.dist-info/licenses/LICENSE' 2026-02-11T13:58:57,267 adding 'kontra-0.6.3.dist-info/METADATA' 2026-02-11T13:58:57,268 adding 'kontra-0.6.3.dist-info/WHEEL' 2026-02-11T13:58:57,269 adding 'kontra-0.6.3.dist-info/entry_points.txt' 2026-02-11T13:58:57,270 adding 'kontra-0.6.3.dist-info/top_level.txt' 2026-02-11T13:58:57,272 adding 'kontra-0.6.3.dist-info/RECORD' 2026-02-11T13:58:57,279 removing build/bdist.linux-armv7l/wheel 2026-02-11T13:58:57,435 Building wheel for kontra (pyproject.toml): finished with status 'done' 2026-02-11T13:58:57,447 Created wheel for kontra: filename=kontra-0.6.3-py3-none-any.whl size=326883 sha256=8963b5cd180edd7c6ba6ef779b4ad780ca8809132574bd05028ae459c5062f95 2026-02-11T13:58:57,448 Stored in directory: /tmp/pip-ephem-wheel-cache-cfkqomsq/wheels/7c/16/92/3a91f8b3dfe57f8b6d5deb18cad9acfff415f296bcca774b7a 2026-02-11T13:58:57,464 Successfully built kontra 2026-02-11T13:58:57,475 Removed build tracker: '/tmp/pip-build-tracker-jo4sgnat'