<86>Aug 1 09:09:20 userdel[262147]: delete user 'rooter' <86>Aug 1 09:09:20 userdel[262147]: removed group 'rooter' owned by 'rooter' <86>Aug 1 09:09:20 userdel[262147]: removed shadow group 'rooter' owned by 'rooter' <86>Aug 1 09:09:20 groupadd[262181]: group added to /etc/group: name=rooter, GID=2780 <86>Aug 1 09:09:20 groupadd[262181]: group added to /etc/gshadow: name=rooter <86>Aug 1 09:09:20 groupadd[262181]: new group: name=rooter, GID=2780 <86>Aug 1 09:09:20 useradd[262216]: new user: name=rooter, UID=2780, GID=2780, home=/root, shell=/bin/bash, from=none <86>Aug 1 09:09:20 userdel[262268]: delete user 'builder' <86>Aug 1 09:09:20 userdel[262268]: removed group 'builder' owned by 'builder' <86>Aug 1 09:09:20 userdel[262268]: removed shadow group 'builder' owned by 'builder' <86>Aug 1 09:09:20 groupadd[262372]: group added to /etc/group: name=builder, GID=2781 <86>Aug 1 09:09:20 groupadd[262372]: group added to /etc/gshadow: name=builder <86>Aug 1 09:09:20 groupadd[262372]: new group: name=builder, GID=2781 <86>Aug 1 09:09:20 useradd[262393]: new user: name=builder, UID=2781, GID=2781, home=/usr/src, shell=/bin/bash, from=none <13>Aug 1 09:09:24 rpmi: libgdbm6-1.26-alt1 sisyphus+418729.200.2.1 1779276077 installed <13>Aug 1 09:09:24 rpmi: libgdbm_compat4-1.26-alt1 sisyphus+418729.200.2.1 1779276077 installed <13>Aug 1 09:09:24 rpmi: libsqlite3-3.50.4-alt1 sisyphus+391668.100.1.1 1754321138 installed <13>Aug 1 09:09:24 rpmi: libmpdec3-2.5.1-alt3 sisyphus+314490.500.5.1 1675432033 installed <13>Aug 1 09:09:24 rpmi: libexpat-2.7.4-alt1 sisyphus+407132.100.1.1 1770196717 installed <13>Aug 1 09:09:24 rpmi: openssl-config-3.5.0-alt1 sisyphus+399237.100.1.1 1762346864 installed <13>Aug 1 09:09:24 rpmi: libp11-kit-1:0.26.2-alt3.g0eedd4d sisyphus+424637.100.1.1 1783530782 installed <13>Aug 1 09:09:24 rpmi: libtasn1-4.21.0-alt2 sisyphus+420751.100.1.1 1781163748 installed <13>Aug 1 09:09:24 rpmi: rpm-macros-alternatives-0.5.3-alt1 sisyphus+371878.100.1.1 1737988822 installed <13>Aug 1 09:09:24 rpmi: alternatives-0.5.3-alt1 sisyphus+371878.100.1.1 1737988822 installed <13>Aug 1 09:09:24 rpmi: ca-certificates-2026.04.22-alt1 sisyphus+415942.100.6.1 1777316293 installed <13>Aug 1 09:09:24 rpmi: ca-trust-0.2.0-alt1 sisyphus+344843.100.1.1 1712743326 installed <13>Aug 1 09:09:24 rpmi: p11-kit-trust-1:0.26.2-alt3.g0eedd4d sisyphus+424637.100.1.1 1783530782 installed <13>Aug 1 09:09:24 rpmi: libcrypto3-3.5.7-alt1 sisyphus+425332.100.3.1 1784733668 installed <13>Aug 1 09:09:24 rpmi: libssl3-3.5.7-alt1 sisyphus+425332.100.3.1 1784733668 installed <13>Aug 1 09:09:24 rpmi: python3-modules-sqlite3-3.14.6-alt1 sisyphus+423624.100.33.1 1784227742 installed <13>Aug 1 09:09:24 rpmi: python3-3.14.6-alt1 sisyphus+423624.100.33.1 1784227742 installed <13>Aug 1 09:09:24 rpmi: python3-base-3.14.6-alt1 sisyphus+423624.100.33.1 1784227742 installed <13>Aug 1 09:09:24 rpmi: python3-module-py3dephell-0.3.1-alt1 sisyphus+365261.200.1.1 1734463433 installed <13>Aug 1 09:09:24 rpmi: tests-for-installed-python3-pkgs-0.1.29-alt1 sisyphus+398029.2500.12.1 1762716341 installed <13>Aug 1 09:09:24 rpmi: rpm-build-python3-0.1.29-alt1 sisyphus+398029.2500.12.1 1762716341 installed <13>Aug 1 09:09:27 rpmi: python3-module-packaging-26.2-alt1 sisyphus+416502.100.2.1 1777385153 installed <13>Aug 1 09:09:27 rpmi: python3-module-docutils-0.22.4-alt1.1 sisyphus+413479.400.1.1 1774818008 installed <13>Aug 1 09:09:27 rpmi: libjpeg-2:3.2.0-alt1 sisyphus+424348.100.1.1 1783329291 installed <13>Aug 1 09:09:27 rpmi: libnettle8-3.10.1-alt1 sisyphus+372008.100.1.1 1738078268 installed <13>Aug 1 09:09:27 rpmi: liblz4-1:1.9.4-alt1 sisyphus+309416.100.1.1 1667413000 installed <13>Aug 1 09:09:27 rpmi: python3-module-urllib3-2:2.7.0-alt2 sisyphus+423624.121100.34.1 1784353520 installed <13>Aug 1 09:09:27 rpmi: python3-module-markupsafe-1:3.0.3-alt1 sisyphus+423624.700.33.1 1784228296 installed <13>Aug 1 09:09:27 rpmi: python3-module-jinja2-3.1.6-alt2 sisyphus+413629.100.1.1 1774945546 installed <13>Aug 1 09:09:27 rpmi: python3-module-pluggy-1.6.0-alt1.1 sisyphus+413474.300.2.1 1774829688 installed <13>Aug 1 09:09:27 rpmi: python3-module-six-1.17.0-alt1.1 sisyphus+373470.100.1.1 1738920023 installed <13>Aug 1 09:09:27 rpmi: python3-module-dateutil-2.9.0.post0-alt1 sisyphus+378451.100.1.1 1742313746 installed <13>Aug 1 09:09:27 rpmi: python3-module-cloudpickle-3.1.2-alt1 sisyphus+402518.100.1.1 1765462987 installed <13>Aug 1 09:09:27 rpmi: python3-module-typing_extensions-4.16.0-alt1 sisyphus+426470.2600.5.1 1785153849 installed <13>Aug 1 09:09:27 rpmi: python3-module-beautifulsoup4-4.15.0-alt1 sisyphus+420441.100.1.1 1780911483 installed <13>Aug 1 09:09:27 rpmi: python3-module-soupsieve-2.8.4-alt1 sisyphus+425655.100.2.1 1784755000 installed <13>Aug 1 09:09:27 rpmi: python3-module-Pygments-2.20.0-alt1 sisyphus+413985.100.1.1 1775208360 installed <13>Aug 1 09:09:27 rpmi: libwebp7-1.6.0-alt1.2 sisyphus+418497.100.1.1 1779098958 installed <13>Aug 1 09:09:27 rpmi: libpng16-1.6.56-alt2 sisyphus+412745.100.1.1 1774613969 installed <13>Aug 1 09:09:27 rpmi: libunistring2-0.9.10-alt2 sisyphus+421685.300.1.1 1781712773 installed <13>Aug 1 09:09:27 rpmi: libidn2-2.3.8-alt1 sisyphus+393466.100.1.1 1756397195 installed <13>Aug 1 09:09:27 rpmi: python3-module-sqlalchemy-2.0.51-alt1 sisyphus+423624.5100.33.1 1784230597 installed <13>Aug 1 09:09:27 rpmi: python3-module-loky-3.5.6-alt1.1 sisyphus+413477.1100.2.2 1774831937 installed <13>Aug 1 09:09:27 rpmi: libblosc-1.21.6-alt1 sisyphus+356073.100.1.1 1724669238 installed <13>Aug 1 09:09:27 rpmi: libblosc2-2.23.1-alt1 sisyphus+409904.100.1.1 1772568017 installed <13>Aug 1 09:09:27 rpmi: libhogweed6-3.10.1-alt1 sisyphus+372008.100.1.1 1738078268 installed <13>Aug 1 09:09:27 rpmi: libgnutls30-3.8.13-alt1 sisyphus+417120.100.1.1 1777925773 installed <13>Aug 1 09:09:27 rpmi: libngtcp2.16-1.24.0-alt1 sisyphus+423453.200.1.1 1782826325 installed <13>Aug 1 09:09:27 rpmi: libngtcp2_crypto_gnutls8-1.24.0-alt1 sisyphus+423453.200.1.1 1782826325 installed <13>Aug 1 09:09:27 rpmi: libyuv-0.0.1922-alt1 sisyphus+400293.100.1.1 1763332601 installed <13>Aug 1 09:09:27 rpmi: python3-module-snowballstemmer-2.2.0-alt1 sisyphus+319215.100.1.1 1682346633 installed <13>Aug 1 09:09:28 rpmi: ruff-0.15.10-alt1 sisyphus+414787.100.1.2 1775812845 installed <13>Aug 1 09:09:28 rpmi: python3-module-roman_numerals-3.1.0-alt2 sisyphus+401838.100.1.1 1764869457 installed <13>Aug 1 09:09:28 rpmi: python3-module-pymysql-1.1.2-alt1 sisyphus+393919.100.1.1 1756900832 installed <13>Aug 1 09:09:28 rpmi: python3-module-xlwt-1.3.0-alt2 sisyphus+276024.100.1.1 1624812681 installed <13>Aug 1 09:09:28 rpmi: python3-module-xlsxwriter-3.2.9-alt2 sisyphus+398461.260.2.1 1761741024 installed <13>Aug 1 09:09:28 rpmi: python3-module-xlrd-2.0.1-alt2.1 sisyphus+274166.200.2.1 1623321346 installed <13>Aug 1 09:09:28 rpmi: python3-module-mpmath-1.4.1-alt2 sisyphus+427399.100.1.1 1785308912 installed <13>Aug 1 09:09:28 rpmi: python3-module-matplotlib-data-3.10.8-alt1 sisyphus+423624.6400.33.1 1784230478 installed <13>Aug 1 09:09:28 rpmi: python3-module-railroad-diagrams-3.0.1-alt1.1 sisyphus+413485.300.2.2 1774836474 installed <13>Aug 1 09:09:28 rpmi: python3-module-pyparsing-3.3.2-alt1.1 sisyphus+413473.100.3.3 1774839280 installed <13>Aug 1 09:09:28 rpmi: python3-module-kiwisolver-1.5.0-alt1 sisyphus+423624.5500.33.1 1784230915 installed <13>Aug 1 09:09:28 rpmi: python3-module-iniconfig-2.3.0-alt1 sisyphus+397749.100.2.1 1761040670 installed <13>Aug 1 09:09:28 rpmi: python3-module-pytest-9.0.3-alt1 sisyphus+414567.100.1.1 1775647126 installed <13>Aug 1 09:09:28 rpmi: python3-module-imagesize-2.0.0-alt1 sisyphus+412569.100.1.1 1774449715 installed <13>Aug 1 09:09:28 rpmi: python3-module-idna-3.18-alt1 sisyphus+420750.100.1.1 1781166339 installed <13>Aug 1 09:09:28 rpmi: python3-module-sortedcontainers-2.4.0-alt1 sisyphus+272042.100.1.1 1621262424 installed <13>Aug 1 09:09:28 rpmi: python3-module-hypothesis-6.163.1-alt1 sisyphus+427548.100.2.2 1785428231 installed <13>Aug 1 09:09:28 rpmi: python3-module-trove-classifiers-2026.6.1.19-alt1 sisyphus+419831.100.1.1 1780391786 installed <13>Aug 1 09:09:28 rpmi: python3-module-pathspec-1.1.1-alt1 sisyphus+416503.100.2.1 1777393721 installed <13>Aug 1 09:09:28 rpmi: python3-module-et_xmlfile-1.1.0-alt1 sisyphus+300537.100.1.1 1653384154 installed <13>Aug 1 09:09:28 rpmi: python3-module-webencodings-0.5.1-alt3 sisyphus+359244.100.1.1 1728381102 installed <13>Aug 1 09:09:28 rpmi: python3-module-genshi-0.7.10-alt1 sisyphus+423624.1100.33.1 1784228377 installed <13>Aug 1 09:09:28 rpmi: python3-module-cycler-0.12.1-alt1 sisyphus+331222.100.1.1 1696668651 installed <13>Aug 1 09:09:28 rpmi: python3-module-cssselect-1.4.0-alt1.1 sisyphus+413473.200.3.2 1774836663 installed <13>Aug 1 09:09:28 rpmi: python3-module-coverage-7.15.0-alt1 sisyphus+425680.100.2.1 1784755324 installed <13>Aug 1 09:09:28 rpmi: python3-module-charset-normalizer-3.4.9-alt1 sisyphus+424623.100.1.1 1783521675 installed <13>Aug 1 09:09:28 rpmi: python3-module-requests-2.34.2-alt1 sisyphus+418161.200.3.1 1779090568 installed <13>Aug 1 09:09:28 rpmi: python3-module-pycparser-2.23-alt1 sisyphus+410417.100.1.1 1772989663 installed <13>Aug 1 09:09:28 rpmi: python3-module-cffi-2.1.0-alt1 sisyphus+423624.540.33.1 1784228272 installed <13>Aug 1 09:09:28 rpmi: python3-module-cryptography-49.0.0-alt1 sisyphus+423624.1000.33.1 1784228350 installed <13>Aug 1 09:09:29 rpmi: python3-module-babel-1:2.17.0-alt1 sisyphus+383519.100.1.1 1746611672 installed <13>Aug 1 09:09:29 rpmi: python3-module-alabaster-1.0.0-alt1 sisyphus+415179.100.3.1 1781509440 installed <13>Aug 1 09:09:29 rpmi: python3-module-smmap-6.0.0-alt1 sisyphus+378496.100.1.1 1742351363 installed <13>Aug 1 09:09:29 rpmi: python3-module-gitdb-4.0.12-alt1 sisyphus+369382.100.2.1 1736848480 installed <13>Aug 1 09:09:29 rpmi: python-sphinx-objects.inv-1:2.3.15.20251025-alt1 sisyphus+398356.100.1.1 1761384354 installed <13>Aug 1 09:09:29 rpmi: libxml2-1:2.12.10-alt3 sisyphus+403806.1500.13.1 1768461696 installed <13>Aug 1 09:09:29 rpmi: libxslt-1.1.43-alt1 sisyphus+398184.100.1.1 1761304862 installed <13>Aug 1 09:09:29 rpmi: python3-module-html5lib-1:1.1-alt1 sisyphus+278096.120.5.1 1626086978 installed <13>Aug 1 09:09:29 rpmi: python3-module-lxml-6.0.2-alt3 sisyphus+426196.100.7.2 1784742798 installed <13>Aug 1 09:09:29 rpmi: python3-module-defusedxml-0.7.1-alt2 sisyphus+397015.100.1.2 1760452737 installed <13>Aug 1 09:09:29 rpmi: python3-module-sphinxcontrib-applehelp-2.0.0-alt1 sisyphus+353872.100.1.1 1722243556 installed <13>Aug 1 09:09:29 rpmi: python3-module-sphinxcontrib-devhelp-2.0.0-alt1 sisyphus+353872.200.1.1 1722243589 installed <13>Aug 1 09:09:29 rpmi: python3-module-sphinxcontrib-jquery-4.1-alt3 sisyphus+339023.100.1.1 1706234262 installed <13>Aug 1 09:09:29 rpmi: python3-module-sphinxcontrib-jsmath-1.0.1-alt3 sisyphus+386352.100.2.1 1749139465 installed <13>Aug 1 09:09:29 rpmi: python3-module-sphinxcontrib-htmlhelp-2.1.0-alt1.1 sisyphus+413488.600.3.1 1774831636 installed <13>Aug 1 09:09:29 rpmi: python3-module-sphinxcontrib-serializinghtml-2.0.0-alt1 sisyphus+361088.100.1.1 1730215552 installed <13>Aug 1 09:09:29 rpmi: python3-module-sphinxcontrib-qthelp-2.0.0-alt1 sisyphus+353872.300.1.1 1722243619 installed <13>Aug 1 09:09:29 rpmi: python3-module-sphinx-sphinx-build-symlink-1:8.2.3-alt1 sisyphus+407419.100.1.1 1770402836 installed <13>Aug 1 09:09:29 rpmi: python3-module-sphinx-1:8.2.3-alt1 sisyphus+407419.100.1.1 1770402836 installed <13>Aug 1 09:09:29 rpmi: libqhull_r8.0-2020.2-alt4 sisyphus+405432.240.5.1 1768743358 installed <13>Aug 1 09:09:29 rpmi: libopenjpeg2.0-2.5.4-alt1 sisyphus+395514.200.1.1 1758468506 installed <13>Aug 1 09:09:29 rpmi: libopenblas-0.3.34-alt1 sisyphus+425559.100.2.2 1784643580 installed <13>Aug 1 09:09:29 rpmi: liblzo2-2.10-alt2 sisyphus+283836.100.1.1 1629977730 installed <13>Aug 1 09:09:29 rpmi: liblcms2-2.19.1-alt1 sisyphus+417363.100.1.1 1778096710 installed <13>Aug 1 09:09:29 rpmi: libsz2-1:1.1.7-alt1 sisyphus+418778.100.1.1 1779343914 installed <13>Aug 1 09:09:29 rpmi: libhdf5-320-2.1.1-alt1 sisyphus+420793.140.5.3 1781634849 installed <13>Aug 1 09:09:29 rpmi: libgraphite2-1.3.15-alt1 sisyphus+419726.300.2.1 1780311592 installed <13>Aug 1 09:09:29 rpmi: libgomp1-15.2.1-alt2 sisyphus+416693.300.3.1 1777480577 installed <13>Aug 1 09:09:29 rpmi: libimagequant-2.17.0-alt1_1 sisyphus+291138.100.1.1 1638394107 installed <13>Aug 1 09:09:29 rpmi: libdeflate-1.25-alt2 sisyphus+420865.100.1.1 1781291464 installed <13>Aug 1 09:09:29 rpmi: libtiff6-4.7.1-alt1 sisyphus+395333.100.1.1 1758288734 installed <13>Aug 1 09:09:29 rpmi: librav1e-0.8.1-alt1 sisyphus+387368.100.1.1 1750149808 installed <13>Aug 1 09:09:29 rpmi: libdav1d_7-1.5.4-alt1 sisyphus+426026.100.1.2 1784649914 installed <13>Aug 1 09:09:29 rpmi: libavif-1.4.2-alt1 sisyphus+419317.100.1.1 1779874482 installed <13>Aug 1 09:09:29 rpmi: libXdmcp-1.1.5-alt1 sisyphus+343583.700.1.1 1711441073 installed <13>Aug 1 09:09:29 rpmi: libXau-1.0.11-alt1 sisyphus+311428.100.1.1 1670577440 installed <13>Aug 1 09:09:29 rpmi: libxcb-1.17.0-alt1 sisyphus+345308.200.1.1 1713342009 installed <13>Aug 1 09:09:29 rpmi: libssh2-1.11.1-alt3 sisyphus+423435.100.3.1 1783610329 installed <13>Aug 1 09:09:29 rpmi: publicsuffix-list-dafsa-20260624-alt1 sisyphus+422796.100.1.1 1782491537 installed <13>Aug 1 09:09:29 rpmi: libpsl-0.22.0-alt1 sisyphus+422792.100.2.1 1782496716 installed <13>Aug 1 09:09:29 rpmi: libnghttp3.9-1.17.0-alt1 sisyphus+423453.100.1.1 1782826279 installed <13>Aug 1 09:09:29 rpmi: libnghttp2-1.69.0-alt1 sisyphus+415699.100.1.1 1776681037 installed <13>Aug 1 09:09:29 rpmi: openldap-common-2.6.13-alt1 sisyphus+411252.300.5.1 1773745238 installed <13>Aug 1 09:09:29 rpmi: libbrotlicommon-1.2.0-alt1 sisyphus+398493.100.1.1 1761628653 installed <13>Aug 1 09:09:29 rpmi: libbrotlidec-1.2.0-alt1 sisyphus+398493.100.1.1 1761628653 installed <13>Aug 1 09:09:29 rpmi: libharfbuzz-14.2.1-alt1 sisyphus+427160.500.1.2 1785172538 installed <13>Aug 1 09:09:29 rpmi: libfreetype-2.14.3-alt1 sisyphus+412517.100.1.1 1774428696 installed <13>Aug 1 09:09:29 rpmi: python3-module-pillow-12.3.0-alt1 sisyphus+426470.1000.5.1 1785153382 installed <13>Aug 1 09:09:29 rpmi: libxxhash-0.8.3-alt1 sisyphus+384704.100.1.1 1747741286 installed <13>Aug 1 09:09:29 rpmi: rsync-3.2.7-alt6 sisyphus+425473.100.1.2 1784634301 installed <13>Aug 1 09:09:29 rpmi: openssh-common-9.6p1-alt7 sisyphus+423567.100.3.1 1785329711 installed <13>Aug 1 09:09:29 rpmi: libverto-0.3.2-alt1_1 sisyphus+321176.2200.10.2 1684806164 installed <13>Aug 1 09:09:29 rpmi: liblmdb-0.9.35-alt1 sisyphus+408541.100.2.1 1771588201 installed <13>Aug 1 09:09:29 rpmi: libkeyutils-1.6.3-alt1 sisyphus+346336.200.2.2 1716472658 installed <13>Aug 1 09:09:29 rpmi: libcom_err-1.47.4.0.2.a9f48-alt1 sisyphus+416421.100.2.1 1777378671 installed <86>Aug 1 09:09:29 groupadd[330589]: group added to /etc/group: name=_keytab, GID=999 <86>Aug 1 09:09:29 groupadd[330589]: group added to /etc/gshadow: name=_keytab <86>Aug 1 09:09:29 groupadd[330589]: new group: name=_keytab, GID=999 <13>Aug 1 09:09:30 rpmi: libkrb5-1.22.2-alt2 sisyphus+426323.100.1.2 1784761603 installed <86>Aug 1 09:09:30 groupadd[330906]: group added to /etc/group: name=sasl, GID=998 <86>Aug 1 09:09:30 groupadd[330906]: group added to /etc/gshadow: name=sasl <86>Aug 1 09:09:30 groupadd[330906]: new group: name=sasl, GID=998 <13>Aug 1 09:09:30 rpmi: libsasl2-3-2.1.28-alt5 sisyphus+419937.100.1.1 1780468454 installed <13>Aug 1 09:09:30 rpmi: libldap2-2.6.13-alt1 sisyphus+411252.300.5.1 1773745182 installed <13>Aug 1 09:09:30 rpmi: libcurl-8.21.0-alt1 sisyphus+422578.100.1.2 1782295668 installed <13>Aug 1 09:09:30 rpmi: libpq5-18-18.4-alt3 sisyphus+423624.42100.36.1 1784496723 installed <13>Aug 1 09:09:30 rpmi: python3-module-psycopg2-2.9.11-alt1 sisyphus+423624.7100.33.1 1784232155 installed <13>Aug 1 09:09:30 rpmi: libcbor0.14-0.14.0-alt1 sisyphus+414519.100.3.1 1775927176 installed <13>Aug 1 09:09:30 rpmi: libfido2_1-1.17.0-alt1 sisyphus+415374.100.1.1 1776337779 installed <13>Aug 1 09:09:30 rpmi: libedit3-3.1.20250104-alt1 sisyphus+384216.200.2.1 1747315132 installed <86>Aug 1 09:09:30 groupadd[331340]: group added to /etc/group: name=sshagent, GID=997 <86>Aug 1 09:09:30 groupadd[331340]: group added to /etc/gshadow: name=sshagent <86>Aug 1 09:09:30 groupadd[331340]: new group: name=sshagent, GID=997 <13>Aug 1 09:09:30 rpmi: openssh-clients-9.6p1-alt7 sisyphus+423567.100.3.1 1785329711 installed <13>Aug 1 09:09:30 rpmi: less-633-alt1 sisyphus+328181.300.2.1 1693321749 installed <13>Aug 1 09:09:30 rpmi: libquadmath0-15.2.1-alt2 sisyphus+416693.300.3.1 1777480577 installed <13>Aug 1 09:09:30 rpmi: libgfortran5-15.2.1-alt2 sisyphus+416693.300.3.1 1777480577 installed <13>Aug 1 09:09:30 rpmi: libblas-2:3.12.1-alt2 sisyphus+426308.100.1.2 1784758707 installed <13>Aug 1 09:09:30 rpmi: liblapack-2:3.12.1-alt2 sisyphus+426308.100.1.2 1784758707 installed <13>Aug 1 09:09:30 rpmi: python3-module-numpy-1:2.4.2-alt2 sisyphus+423624.2400.33.1 1784229649 installed <13>Aug 1 09:09:30 rpmi: python3-module-numexpr-1:2.14.1-alt1 sisyphus+423624.5000.33.1 1784230493 installed <13>Aug 1 09:09:30 rpmi: python3-module-tables-1:3.11.1-alt1 sisyphus+423624.6600.33.1 1784232028 installed <13>Aug 1 09:09:30 rpmi: python3-module-mpl_toolkits-3.10.8-alt1 sisyphus+423624.6400.33.1 1784231758 installed <13>Aug 1 09:09:30 rpmi: python3-module-matplotlib-3.10.8-alt1 sisyphus+423624.6400.33.1 1784231758 installed <13>Aug 1 09:09:30 rpmi: python3-module-openpyxl-3.1.5-alt1 sisyphus+367462.100.1.1 1735668246 installed <13>Aug 1 09:09:30 rpmi: flexiblas-3.5.0-alt1 sisyphus+401215.100.1.2 1764253870 installed <13>Aug 1 09:09:30 rpmi: libflexiblas.3-3.5.0-alt1 sisyphus+401215.100.1.2 1764253870 installed <13>Aug 1 09:09:31 rpmi: flexiblas-netlib-3.5.0-alt1 sisyphus+401215.100.1.2 1764253870 installed <13>Aug 1 09:09:31 rpmi: python3-module-scipy-1.17.1-alt1 sisyphus+423624.6500.33.1 1784231931 installed <13>Aug 1 09:09:32 rpmi: python3-module-pandas-3.0.5-alt1 sisyphus+426569.100.2.1 1784984465 installed <13>Aug 1 09:09:32 rpmi: diffstat-1.64-alt1 sisyphus+346132.200.3.2 1716466240 installed <13>Aug 1 09:09:32 rpmi: git-core-2.50.1-alt1 sisyphus+379199.100.1.1 1752058634 installed <13>Aug 1 09:09:32 rpmi: python3-module-GitPython-3.1.51-alt1 sisyphus+425270.100.1.1 1783950882 installed <13>Aug 1 09:09:33 rpmi: python3-module-pandas-tests-3.0.5-alt1 sisyphus+426569.100.2.1 1784984465 installed <13>Aug 1 09:09:33 rpmi: python3-module-redis-py-8.0.1-alt1 sisyphus+423518.100.3.1 1785333906 installed <13>Aug 1 09:09:33 rpmi: python3-module-pytest-cov-7.1.0-alt1.1 sisyphus+413393.100.1.1 1774809635 installed <13>Aug 1 09:09:33 rpmi: python3-module-hatchling-1.31.0-alt1 sisyphus+424586.100.1.1 1783505074 installed <13>Aug 1 09:09:33 rpmi: python3-module-pytest-mock-3.15.1-alt1.1 sisyphus+413487.500.2.1 1774831622 installed <13>Aug 1 09:09:33 rpmi: python3-module-ruff-0.15.10-alt1 sisyphus+414787.100.1.2 1775812459 installed <13>Aug 1 09:09:33 rpmi: python3-module-joblib-1.5.3-alt1 sisyphus+403003.100.1.1 1765872840 installed Building target platforms: i586 Building for target i586 Wrote: /usr/src/in/nosrpm/python3-module-git-pandas-2.5.0-alt2.git2789b49d.nosrc.rpm (w1.gzdio) <13>Aug 1 09:09:34 rpmi: python3-module-pyproject-installer-0.6.0-alt1 sisyphus+424779.100.1.1 1783678406 installed Installing python3-module-git-pandas-2.5.0-alt2.git2789b49d.src.rpm Building target platforms: i586 Building for target i586 Executing(%prep): /bin/sh -e /usr/src/tmp/rpmb-tmp.HpTh3b + umask 022 + /bin/mkdir -p /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + rm -rf python3-module-git-pandas-2.5.0 + echo 'Source #0 (python3-module-git-pandas-2.5.0-alt2.git2789b49d.tar):' Source #0 (python3-module-git-pandas-2.5.0-alt2.git2789b49d.tar): + /bin/tar -xf /usr/src/RPM/SOURCES/python3-module-git-pandas-2.5.0-alt2.git2789b49d.tar + cd python3-module-git-pandas-2.5.0 + /bin/chmod -c -Rf u+rwX,go-w . + echo 'Patch #0 (python3-module-git-pandas-2.5.0-alt.patch):' Patch #0 (python3-module-git-pandas-2.5.0-alt.patch): + /usr/bin/patch -p1 patching file .github/workflows/docs.yml patching file .github/workflows/test-docs-build.yml patching file docs/requirements.txt patching file docs/source/_static/custom.css patching file docs/source/conf.py patching file gitpandas/project.py patching file gitpandas/repository.py patching file pyproject.toml patching file tests/conftest.py patching file tests/test_Project/test_edge_cases.py patching file tests/test_Project/test_error_handling.py patching file tests/test_Repository/test_advanced.py patching file tests/test_Repository/test_bus_factor.py patching file tests/test_Repository/test_edge_cases.py patching file tests/test_Repository/test_error_handling.py patching file tests/test_Repository/test_file_detail.py patching file tests/test_Repository/test_file_operations.py patching file tests/test_Repository/test_properties.py patching file tests/test_Repository/test_punchcard.py patching file tests/test_cache_integration.py patching file tests/test_cache_threading.py patching file tests/test_cache_warming.py patching file tests/test_remote_fetch.py patching file tests/test_repository_cache.py + exit 0 Executing(%build): /bin/sh -e /usr/src/tmp/rpmb-tmp.OL4fuH + umask 022 + /bin/mkdir -p /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + cd python3-module-git-pandas-2.5.0 + export 'CFLAGS=-pipe -frecord-gcc-switches -Wall -g -O2 -flto=auto -march=i586 -mtune=generic' + CFLAGS='-pipe -frecord-gcc-switches -Wall -g -O2 -flto=auto -march=i586 -mtune=generic' + export 'CXXFLAGS=-pipe -frecord-gcc-switches -Wall -g -O2 -flto=auto -march=i586 -mtune=generic' + CXXFLAGS='-pipe -frecord-gcc-switches -Wall -g -O2 -flto=auto -march=i586 -mtune=generic' + export 'FFLAGS=-pipe -frecord-gcc-switches -Wall -g -O2 -flto=auto -march=i586 -mtune=generic' + FFLAGS='-pipe -frecord-gcc-switches -Wall -g -O2 -flto=auto -march=i586 -mtune=generic' + /usr/bin/python3 -m pyproject_installer -v build INFO : pyproject_installer.build_cmd._build : Building wheel INFO : pyproject_installer.build_cmd._build : Source tree: /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0 INFO : pyproject_installer.build_cmd._build : Output dir: /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/dist DEBUG : pyproject_installer.lib.build_backend : Validating source path DEBUG : pyproject_installer.lib.build_backend : Checking for PEP517 spec DEBUG : pyproject_installer.lib.build_backend : Parsing configuration file: /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/pyproject.toml INFO : backend_caller.py : Calling hook build_wheel in subprocess INFO : backend_caller.py : Build backend: hatchling.build INFO : backend_caller.py : Hook args: ['/usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/dist'] INFO : backend_caller.py : Hook kwargs: {'config_settings': None} INFO : pyproject_installer.build_cmd._build : Built wheel: git_pandas-2.5.0-py3-none-any.whl + make -C ./docs man make: Entering directory '/usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/docs' sphinx-build -b man -d build/doctrees source build/man Running Sphinx v8.2.3 loading translations [en]... done making output directory... done Converting `source_suffix = '.rst'` to `source_suffix = {'.rst': 'restructuredtext'}`. building [mo]: targets for 0 po files that are out of date writing output... building [man]: all manpages updating environment: [new config] 8 added, 0 changed, 0 removed reading sources... [ 12%] cache reading sources... [ 25%] contributors reading sources... [ 38%] index reading sources... [ 50%] performance reading sources... [ 62%] project reading sources... [ 75%] remote_operations reading sources... [ 88%] repository reading sources... [100%] usecases WARNING: autodoc: failed to import class 'cache.EphemeralCache' from module 'gitpandas'; the following exception was raised: ['Traceback (most recent call last):\n', ' File "/usr/lib/python3.14/importlib/metadata/__init__.py", line 407, in from_name\n return next(iter(cls.discover(name=name)))\n', 'StopIteration\n', '\nDuring handling of the above exception, another exception occurred:\n\n', 'Traceback (most recent call last):\n', ' File "/usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/__init__.py", line 7, in \n __version__ = version("git-pandas")\n', ' File "/usr/lib/python3.14/importlib/metadata/__init__.py", line 987, in version\n return distribution(distribution_name).version\n ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^\n', ' File "/usr/lib/python3.14/importlib/metadata/__init__.py", line 960, in distribution\n return Distribution.from_name(distribution_name)\n ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^\n', ' File "/usr/lib/python3.14/importlib/metadata/__init__.py", line 409, in from_name\n raise PackageNotFoundError(name)\n', 'importlib.metadata.PackageNotFoundError: No package metadata was found for git-pandas\n', '\nDuring handling of the above exception, another exception occurred:\n\n', 'Traceback (most recent call last):\n', ' File "/usr/lib/python3/site-packages/sphinx/ext/autodoc/importer.py", line 269, in import_object\n module = import_module(modname, try_reload=True)\n', ' File "/usr/lib/python3/site-packages/sphinx/ext/autodoc/importer.py", line 175, in import_module\n module = importlib.import_module(modname)\n', ' File "/usr/lib/python3.14/importlib/__init__.py", line 88, in import_module\n return _bootstrap._gcd_import(name[level:], package, level)\n ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n', ' File "", line 1406, in _gcd_import\n', ' File "", line 1371, in _find_and_load\n', ' File "", line 1342, in _find_and_load_unlocked\n', ' File "", line 938, in _load_unlocked\n', ' File "", line 759, in exec_module\n', ' File "", line 491, in _call_with_frames_removed\n', ' File "/usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/__init__.py", line 10, in \n from importlib_metadata import version\n', "ModuleNotFoundError: No module named 'importlib_metadata'\n"] [autodoc.import_object] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/cache.py:docstring of gitpandas.cache.multicache:7: ERROR: Unexpected indentation. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/docs/source/index.rst:83: WARNING: Title underline too short. ProjectDirectory ~~~~~~~~~~~~~~~ [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/docs/source/index.rst:91: WARNING: Title underline too short. Common Parameters ---------------- [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/docs/source/project.rst:70: WARNING: Title underline too short. Available Methods ---------------- [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/docs/source/project.rst:73: WARNING: Title underline too short. Core Analysis ~~~~~~~~~~~~ [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/docs/source/project.rst:112: WARNING: Title underline too short. Common Parameters ---------------- [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/project.py:docstring of gitpandas.project.ProjectDirectory:13: WARNING: Definition list ends without a blank line; unexpected unindent. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/project.py:docstring of gitpandas.project.ProjectDirectory.__init__:8: WARNING: Definition list ends without a blank line; unexpected unindent. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/project.py:docstring of gitpandas.project.ProjectDirectory.hours_estimate:6: ERROR: Unexpected indentation. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/project.py:docstring of gitpandas.project.ProjectDirectory.hours_estimate:7: WARNING: Block quote ends without a blank line; unexpected unindent. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/project.py:docstring of gitpandas.project.ProjectDirectory.blame:13: WARNING: Definition list ends without a blank line; unexpected unindent. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/project.py:docstring of gitpandas.project.ProjectDirectory.file_detail:9: ERROR: Unexpected indentation. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/project.py:docstring of gitpandas.project.ProjectDirectory.file_detail:10: WARNING: Block quote ends without a blank line; unexpected unindent. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/project.py:docstring of gitpandas.project.ProjectDirectory.bus_factor:11: ERROR: Unexpected indentation. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/project.py:docstring of gitpandas.project.ProjectDirectory.bulk_fetch_and_warm:14: WARNING: Definition list ends without a blank line; unexpected unindent. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/project.py:docstring of gitpandas.project.ProjectDirectory.bulk_fetch_and_warm:16: ERROR: Unexpected indentation. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/project.py:docstring of gitpandas.project.ProjectDirectory.bulk_fetch_and_warm:17: WARNING: Block quote ends without a blank line; unexpected unindent. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/project.py:docstring of gitpandas.project.ProjectDirectory.bulk_fetch_and_warm:21: WARNING: Definition list ends without a blank line; unexpected unindent. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/project.py:docstring of gitpandas.project.ProjectDirectory.bulk_fetch_and_warm:21: WARNING: Inline strong start-string without end-string. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/project.py:docstring of gitpandas.project.ProjectDirectory.invalidate_cache:7: ERROR: Unexpected indentation. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/repository.py:docstring of gitpandas.repository.Repository.safe_fetch_remote:9: ERROR: Unexpected indentation. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/repository.py:docstring of gitpandas.repository.Repository.safe_fetch_remote:10: WARNING: Block quote ends without a blank line; unexpected unindent. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/repository.py:docstring of gitpandas.repository.Repository.warm_cache:17: WARNING: Inline strong start-string without end-string. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/project.py:docstring of gitpandas.project.ProjectDirectory.bulk_fetch_and_warm:1: WARNING: duplicate object description of gitpandas.project.ProjectDirectory.bulk_fetch_and_warm, other instance in project, use :no-index: for one of them /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/project.py:docstring of gitpandas.project.ProjectDirectory.bulk_fetch_and_warm:14: WARNING: Definition list ends without a blank line; unexpected unindent. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/project.py:docstring of gitpandas.project.ProjectDirectory.bulk_fetch_and_warm:16: ERROR: Unexpected indentation. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/project.py:docstring of gitpandas.project.ProjectDirectory.bulk_fetch_and_warm:17: WARNING: Block quote ends without a blank line; unexpected unindent. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/project.py:docstring of gitpandas.project.ProjectDirectory.bulk_fetch_and_warm:21: WARNING: Definition list ends without a blank line; unexpected unindent. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/project.py:docstring of gitpandas.project.ProjectDirectory.bulk_fetch_and_warm:21: WARNING: Inline strong start-string without end-string. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/docs/source/remote_operations.rst:233: WARNING: Title underline too short. Repository Management ^^^^^^^^^^^^^^^^^^^^ [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/docs/source/remote_operations.rst:232: ERROR: Inconsistent title style: skip from level 2 to 4. Repository Management ^^^^^^^^^^^^^^^^^^^^ Established title styles: = - ~ ^ [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/docs/source/remote_operations.rst:241: WARNING: Title underline too short. Cache Optimization ^^^^^^^^^^^^^^^^^ [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/docs/source/remote_operations.rst:240: ERROR: Inconsistent title style: skip from level 2 to 4. Cache Optimization ^^^^^^^^^^^^^^^^^ Established title styles: = - ~ ^ [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/docs/source/remote_operations.rst:249: WARNING: Title underline too short. Bulk Operations ^^^^^^^^^^^^^^ [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/docs/source/remote_operations.rst:248: ERROR: Inconsistent title style: skip from level 2 to 4. Bulk Operations ^^^^^^^^^^^^^^ Established title styles: = - ~ ^ [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/docs/source/remote_operations.rst:293: WARNING: Title underline too short. Return Value Reference --------------------- [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/docs/source/remote_operations.rst:296: WARNING: Title underline too short. safe_fetch_remote Return Values ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/docs/source/remote_operations.rst:295: ERROR: Inconsistent title style: skip from level 2 to 4. safe_fetch_remote Return Values ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Established title styles: = - ~ ^ [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/docs/source/remote_operations.rst:307: WARNING: Title underline too short. warm_cache Return Values ^^^^^^^^^^^^^^^^^^^^^^^ [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/docs/source/remote_operations.rst:306: ERROR: Inconsistent title style: skip from level 2 to 4. warm_cache Return Values ^^^^^^^^^^^^^^^^^^^^^^^ Established title styles: = - ~ ^ [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/docs/source/remote_operations.rst:318: ERROR: Inconsistent title style: skip from level 2 to 4. bulk_fetch_and_warm Return Values ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Established title styles: = - ~ ^ [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/docs/source/repository.rst:55: WARNING: Title underline too short. Available Methods ---------------- [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/docs/source/repository.rst:58: WARNING: Title underline too short. Core Analysis ~~~~~~~~~~~~ [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/docs/source/repository.rst:108: WARNING: Title underline too short. Repository Information ~~~~~~~~~~~~~~~~~~~~ [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/docs/source/repository.rst:133: WARNING: Title underline too short. Common Parameters ---------------- [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/repository.py:docstring of gitpandas.repository.Repository:12: WARNING: Definition list ends without a blank line; unexpected unindent. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/repository.py:docstring of gitpandas.repository.Repository:17: ERROR: Unexpected indentation. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/repository.py:docstring of gitpandas.repository.Repository.__init__:8: WARNING: Definition list ends without a blank line; unexpected unindent. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/repository.py:docstring of gitpandas.repository.Repository.__init__:13: ERROR: Unexpected indentation. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/repository.py:docstring of gitpandas.repository.Repository.safe_fetch_remote:1: WARNING: duplicate object description of gitpandas.repository.Repository.safe_fetch_remote, other instance in remote_operations, use :no-index: for one of them /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/repository.py:docstring of gitpandas.repository.Repository.safe_fetch_remote:9: ERROR: Unexpected indentation. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/repository.py:docstring of gitpandas.repository.Repository.safe_fetch_remote:10: WARNING: Block quote ends without a blank line; unexpected unindent. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/repository.py:docstring of gitpandas.repository.Repository.warm_cache:1: WARNING: duplicate object description of gitpandas.repository.Repository.warm_cache, other instance in remote_operations, use :no-index: for one of them /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/repository.py:docstring of gitpandas.repository.Repository.warm_cache:17: WARNING: Inline strong start-string without end-string. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/repository.py:docstring of gitpandas.repository.Repository.safe_fetch_remote:9: ERROR: Unexpected indentation. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/repository.py:docstring of gitpandas.repository.Repository.safe_fetch_remote:10: WARNING: Block quote ends without a blank line; unexpected unindent. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/repository.py:docstring of gitpandas.repository.Repository.warm_cache:17: WARNING: Inline strong start-string without end-string. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/repository.py:docstring of gitpandas.repository.GitFlowRepository.__init__:8: WARNING: Definition list ends without a blank line; unexpected unindent. [docutils] /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/gitpandas/repository.py:docstring of gitpandas.repository.GitFlowRepository.__init__:13: ERROR: Unexpected indentation. [docutils] looking for now-outdated files... none found pickling environment... done checking consistency... done preparing documents... done copying assets... copying assets: done writing... git-pandas.1 { repository project cache remote_operations performance usecases contributors } done build succeeded, 60 warnings. The manual pages are in build/man. Build finished. The manual pages are in build/man. make: Leaving directory '/usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/docs' + exit 0 Executing(%install): /bin/sh -e /usr/src/tmp/rpmb-tmp.9PXZ6F + umask 022 + /bin/mkdir -p /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + /bin/chmod -Rf u+rwX -- /usr/src/tmp/python3-module-git-pandas-buildroot + : + /bin/rm -rf -- /usr/src/tmp/python3-module-git-pandas-buildroot + PATH=/usr/libexec/rpm-build:/usr/src/bin:/usr/bin:/bin:/usr/local/bin:/usr/games + cd python3-module-git-pandas-2.5.0 + /usr/bin/python3 -m pyproject_installer -v install --destdir=/usr/src/tmp/python3-module-git-pandas-buildroot INFO : pyproject_installer.install_cmd._install : Installing wheel INFO : pyproject_installer.install_cmd._install : Wheel directory: /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/dist INFO : pyproject_installer.install_cmd._install : Wheel filename: git_pandas-2.5.0-py3-none-any.whl INFO : pyproject_installer.install_cmd._install : Destination: /usr/src/tmp/python3-module-git-pandas-buildroot DEBUG : pyproject_installer.lib.wheel : Parsing wheel filename DEBUG : pyproject_installer.lib.wheel : Validating wheel file DEBUG : pyproject_installer.lib.wheel : Validating wheel spec version DEBUG : pyproject_installer.lib.wheel : Parsing wheel spec metadata DEBUG : pyproject_installer.lib.wheel : Validating RECORD INFO : pyproject_installer.install_cmd._install : Wheel installation root: /usr/src/tmp/python3-module-git-pandas-buildroot/usr/lib/python3/site-packages DEBUG : pyproject_installer.install_cmd._install : Filtering out not allowed file: git_pandas-2.5.0.dist-info/WHEEL DEBUG : pyproject_installer.install_cmd._install : Filtering out not allowed file: git_pandas-2.5.0.dist-info/licenses/LICENSE.md DEBUG : pyproject_installer.install_cmd._install : Filtering out not allowed file: git_pandas-2.5.0.dist-info/RECORD INFO : pyproject_installer.install_cmd._install : Extracting wheel INFO : pyproject_installer.install_cmd._install : Wheel was installed + install -pDv -m644 docs/build/man/git-pandas.1 /usr/src/tmp/python3-module-git-pandas-buildroot/usr/share/man/man1/git-pandas.1 /usr/bin/install: creating directory '/usr/src/tmp/python3-module-git-pandas-buildroot/usr/share' /usr/bin/install: creating directory '/usr/src/tmp/python3-module-git-pandas-buildroot/usr/share/man' /usr/bin/install: creating directory '/usr/src/tmp/python3-module-git-pandas-buildroot/usr/share/man/man1' 'docs/build/man/git-pandas.1' -> '/usr/src/tmp/python3-module-git-pandas-buildroot/usr/share/man/man1/git-pandas.1' + /usr/lib/rpm/brp-alt Cleaning files in /usr/src/tmp/python3-module-git-pandas-buildroot (auto) Verifying and fixing files in /usr/src/tmp/python3-module-git-pandas-buildroot (binconfig,pkgconfig,libtool,desktop,gnuconfig) Checking contents of files in /usr/src/tmp/python3-module-git-pandas-buildroot/ (default) Compressing files in /usr/src/tmp/python3-module-git-pandas-buildroot (auto) Adjusting library links in /usr/src/tmp/python3-module-git-pandas-buildroot ./usr/lib: (from :0) Verifying ELF objects in /usr/src/tmp/python3-module-git-pandas-buildroot (arch=normal,fhs=normal,lfs=relaxed,lint=relaxed,rpath=normal,stack=normal,textrel=normal,unresolved=normal) Splitting links to aliased files under /{,s}bin in /usr/src/tmp/python3-module-git-pandas-buildroot Bytecompiling python3 modules in /usr/src/tmp/python3-module-git-pandas-buildroot using /usr/bin/python3 compile /usr/src/tmp/python3-module-git-pandas-buildroot/usr/lib/python3/site-packages/gitpandas/utilities/__init__.py compile /usr/src/tmp/python3-module-git-pandas-buildroot/usr/lib/python3/site-packages/gitpandas/utilities/check_api.py compile /usr/src/tmp/python3-module-git-pandas-buildroot/usr/lib/python3/site-packages/gitpandas/utilities/plotting.py compile /usr/src/tmp/python3-module-git-pandas-buildroot/usr/lib/python3/site-packages/gitpandas/__init__.py compile /usr/src/tmp/python3-module-git-pandas-buildroot/usr/lib/python3/site-packages/gitpandas/cache.py compile /usr/src/tmp/python3-module-git-pandas-buildroot/usr/lib/python3/site-packages/gitpandas/logging.py compile /usr/src/tmp/python3-module-git-pandas-buildroot/usr/lib/python3/site-packages/gitpandas/project.py compile /usr/src/tmp/python3-module-git-pandas-buildroot/usr/lib/python3/site-packages/gitpandas/repository.py Bytecompiling python3 modules with optimization in /usr/src/tmp/python3-module-git-pandas-buildroot using /usr/bin/python3 -O compile /usr/src/tmp/python3-module-git-pandas-buildroot/usr/lib/python3/site-packages/gitpandas/utilities/__init__.py compile /usr/src/tmp/python3-module-git-pandas-buildroot/usr/lib/python3/site-packages/gitpandas/utilities/check_api.py compile /usr/src/tmp/python3-module-git-pandas-buildroot/usr/lib/python3/site-packages/gitpandas/utilities/plotting.py compile /usr/src/tmp/python3-module-git-pandas-buildroot/usr/lib/python3/site-packages/gitpandas/__init__.py compile /usr/src/tmp/python3-module-git-pandas-buildroot/usr/lib/python3/site-packages/gitpandas/cache.py compile /usr/src/tmp/python3-module-git-pandas-buildroot/usr/lib/python3/site-packages/gitpandas/logging.py compile /usr/src/tmp/python3-module-git-pandas-buildroot/usr/lib/python3/site-packages/gitpandas/project.py compile /usr/src/tmp/python3-module-git-pandas-buildroot/usr/lib/python3/site-packages/gitpandas/repository.py Bytecompiling python3 modules with optimization-2 in /usr/src/tmp/python3-module-git-pandas-buildroot using /usr/bin/python3 -OO compile /usr/src/tmp/python3-module-git-pandas-buildroot/usr/lib/python3/site-packages/gitpandas/utilities/__init__.py compile /usr/src/tmp/python3-module-git-pandas-buildroot/usr/lib/python3/site-packages/gitpandas/utilities/check_api.py compile /usr/src/tmp/python3-module-git-pandas-buildroot/usr/lib/python3/site-packages/gitpandas/utilities/plotting.py compile /usr/src/tmp/python3-module-git-pandas-buildroot/usr/lib/python3/site-packages/gitpandas/__init__.py compile /usr/src/tmp/python3-module-git-pandas-buildroot/usr/lib/python3/site-packages/gitpandas/cache.py compile /usr/src/tmp/python3-module-git-pandas-buildroot/usr/lib/python3/site-packages/gitpandas/logging.py compile /usr/src/tmp/python3-module-git-pandas-buildroot/usr/lib/python3/site-packages/gitpandas/project.py compile /usr/src/tmp/python3-module-git-pandas-buildroot/usr/lib/python3/site-packages/gitpandas/repository.py Hardlinking identical .pyc and .opt-?.pyc files './usr/lib/python3/site-packages/gitpandas/__pycache__/__init__.cpython-314.opt-1.pyc' => './usr/lib/python3/site-packages/gitpandas/__pycache__/__init__.cpython-314.pyc' './usr/lib/python3/site-packages/gitpandas/__pycache__/__init__.cpython-314.opt-2.pyc' => './usr/lib/python3/site-packages/gitpandas/__pycache__/__init__.cpython-314.opt-1.pyc' './usr/lib/python3/site-packages/gitpandas/__pycache__/cache.cpython-314.opt-1.pyc' => './usr/lib/python3/site-packages/gitpandas/__pycache__/cache.cpython-314.pyc' './usr/lib/python3/site-packages/gitpandas/__pycache__/logging.cpython-314.opt-1.pyc' => './usr/lib/python3/site-packages/gitpandas/__pycache__/logging.cpython-314.pyc' './usr/lib/python3/site-packages/gitpandas/__pycache__/project.cpython-314.opt-1.pyc' => './usr/lib/python3/site-packages/gitpandas/__pycache__/project.cpython-314.pyc' './usr/lib/python3/site-packages/gitpandas/__pycache__/repository.cpython-314.opt-1.pyc' => './usr/lib/python3/site-packages/gitpandas/__pycache__/repository.cpython-314.pyc' './usr/lib/python3/site-packages/gitpandas/utilities/__pycache__/__init__.cpython-314.opt-1.pyc' => './usr/lib/python3/site-packages/gitpandas/utilities/__pycache__/__init__.cpython-314.pyc' './usr/lib/python3/site-packages/gitpandas/utilities/__pycache__/check_api.cpython-314.opt-1.pyc' => './usr/lib/python3/site-packages/gitpandas/utilities/__pycache__/check_api.cpython-314.pyc' './usr/lib/python3/site-packages/gitpandas/utilities/__pycache__/plotting.cpython-314.opt-1.pyc' => './usr/lib/python3/site-packages/gitpandas/utilities/__pycache__/plotting.cpython-314.pyc' Executing(%check): /bin/sh -e /usr/src/tmp/rpmb-tmp.SzHC5w + umask 022 + /bin/mkdir -p /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + cd python3-module-git-pandas-2.5.0 + git init hint: Using 'master' as the name for the initial branch. This default branch name hint: is subject to change. To configure the initial branch name to use in all hint: of your new repositories, which will suppress this warning, call: hint: hint: git config --global init.defaultBranch hint: hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and hint: 'development'. The just-created branch can be renamed via this command: hint: hint: git branch -m hint: hint: Disable this message with "git config set advice.defaultBranchName false" Initialized empty Git repository in /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/.git/ + git config --global user.email you@example.com + git config --global user.name 'Your Name' + export 'CFLAGS=-pipe -frecord-gcc-switches -Wall -g -O2 -flto=auto -march=i586 -mtune=generic' + CFLAGS='-pipe -frecord-gcc-switches -Wall -g -O2 -flto=auto -march=i586 -mtune=generic' + export 'CXXFLAGS=-pipe -frecord-gcc-switches -Wall -g -O2 -flto=auto -march=i586 -mtune=generic' + CXXFLAGS='-pipe -frecord-gcc-switches -Wall -g -O2 -flto=auto -march=i586 -mtune=generic' + export 'FFLAGS=-pipe -frecord-gcc-switches -Wall -g -O2 -flto=auto -march=i586 -mtune=generic' + FFLAGS='-pipe -frecord-gcc-switches -Wall -g -O2 -flto=auto -march=i586 -mtune=generic' + export NO_INTERNET=YES + NO_INTERNET=YES + /usr/bin/python3 -m pyproject_installer run -- python3 -m pytest -m 'not remote' --deselect=tests/test_examples.py::test_example_scripts INFO : Creating venv INFO : Installing console scripts INFO : Installing package: /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/dist/git_pandas-2.5.0-py3-none-any.whl INFO : Running command: ['/usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/.run_venv/bin/python3', '-m', 'pyproject_installer', 'install', '/usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/dist/git_pandas-2.5.0-py3-none-any.whl'] INFO : Running command: ['python3', '-m', 'pytest', '-m', 'not remote', '--deselect=tests/test_examples.py::test_example_scripts'] ============================= test session starts ============================== platform linux -- Python 3.14.6, pytest-9.0.3, pluggy-1.6.0 -- /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/.run_venv/bin/python3 cachedir: .pytest_cache hypothesis profile 'default' rootdir: /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0 configfile: pyproject.toml testpaths: tests plugins: mock-3.15.1, cov-7.1.0, hypothesis-6.163.1 collecting ... collected 328 items / 9 deselected / 319 selected tests/test_Project/test_advanced.py::TestProjectDirectoryConstruction::test_init_with_directory PASSED [ 0%] tests/test_Project/test_advanced.py::TestProjectDirectoryConstruction::test_init_with_explicit_repos PASSED [ 0%] tests/test_Project/test_advanced.py::TestProjectDirectoryConstruction::test_init_with_repository_instances PASSED [ 0%] tests/test_Project/test_advanced.py::TestProjectDirectoryConstruction::test_init_with_ignore_repos PASSED [ 1%] tests/test_Project/test_advanced.py::TestProjectDirectoryAdvanced::test_hours_estimate PASSED [ 1%] tests/test_Project/test_advanced.py::TestProjectDirectoryAdvanced::test_bus_factor PASSED [ 1%] tests/test_Project/test_advanced.py::TestProjectDirectoryAdvanced::test_file_detail PASSED [ 2%] tests/test_Project/test_advanced.py::TestProjectDirectoryParallel::test_revs_parallel PASSED [ 2%] tests/test_Project/test_edge_cases.py::TestProjectEdgeCases::test_empty_project_directory PASSED [ 2%] tests/test_Project/test_edge_cases.py::TestProjectEdgeCases::test_single_repository_project PASSED [ 3%] tests/test_Project/test_edge_cases.py::TestProjectEdgeCases::test_multi_repository_project PASSED [ 3%] tests/test_Project/test_edge_cases.py::TestProjectEdgeCases::test_mixed_content_project PASSED [ 3%] tests/test_Project/test_edge_cases.py::TestProjectEdgeCases::test_project_with_zero_limit PASSED [ 4%] tests/test_Project/test_edge_cases.py::TestProjectEdgeCases::test_project_with_negative_limit PASSED [ 4%] tests/test_Project/test_edge_cases.py::TestProjectEdgeCases::test_project_with_very_large_limit PASSED [ 4%] tests/test_Project/test_edge_cases.py::TestProjectEdgeCases::test_project_with_empty_globs PASSED [ 5%] tests/test_Project/test_edge_cases.py::TestProjectEdgeCases::test_project_with_nonexistent_globs PASSED [ 5%] tests/test_Project/test_edge_cases.py::TestProjectEdgeCases::test_project_boundary_dates PASSED [ 5%] tests/test_Project/test_edge_cases.py::TestProjectEdgeCases::test_project_aggregation_consistency PASSED [ 5%] tests/test_Project/test_edge_cases.py::TestProjectEdgeCases::test_project_with_nested_repositories PASSED [ 6%] tests/test_Project/test_edge_cases.py::TestProjectEdgeCases::test_project_with_symlinks PASSED [ 6%] tests/test_Project/test_edge_cases.py::TestProjectEdgeCases::test_project_with_bare_repositories PASSED [ 6%] tests/test_Project/test_edge_cases.py::TestProjectEdgeCases::test_project_memory_efficiency PASSED [ 7%] tests/test_Project/test_edge_cases.py::TestProjectEdgeCases::test_project_concurrent_repository_access PASSED [ 7%] tests/test_Project/test_edge_cases.py::TestProjectEdgeCases::test_project_data_aggregation_edge_cases PASSED [ 7%] tests/test_Project/test_edge_cases.py::TestProjectDataValidation::test_aggregated_commit_history_data_types PASSED [ 8%] tests/test_Project/test_edge_cases.py::TestProjectDataValidation::test_aggregated_blame_consistency PASSED [ 8%] tests/test_Project/test_edge_cases.py::TestProjectDataValidation::test_aggregated_file_change_rates_bounds PASSED [ 8%] tests/test_Project/test_edge_cases.py::TestProjectDataValidation::test_project_data_consistency_across_methods PASSED [ 9%] tests/test_Project/test_edge_cases.py::TestProjectDataValidation::test_project_empty_repository_handling PASSED [ 9%] tests/test_Project/test_error_handling.py::TestProjectErrorHandling::test_init_invalid_repos PASSED [ 9%] tests/test_Project/test_error_handling.py::TestProjectErrorHandling::test_init_mixed_valid_invalid_repos PASSED [ 10%] tests/test_Project/test_error_handling.py::TestProjectErrorHandling::test_hours_estimate_basic_functionality PASSED [ 10%] tests/test_Project/test_error_handling.py::TestProjectErrorHandling::test_is_bare_basic_functionality PASSED [ 10%] tests/test_Project/test_error_handling.py::TestProjectErrorHandling::test_file_detail_basic_functionality PASSED [ 10%] tests/test_Project/test_error_handling.py::TestProjectErrorHandling::test_coverage_aggregation_errors PASSED [ 11%] tests/test_Project/test_error_handling.py::TestProjectErrorHandling::test_file_change_rates_basic_functionality PASSED [ 11%] tests/test_Project/test_error_handling.py::TestProjectErrorHandling::test_file_change_rates_error_resilience PASSED [ 11%] tests/test_Project/test_error_handling.py::TestProjectErrorHandling::test_punchcard_missing_time_data PASSED [ 12%] tests/test_Project/test_error_handling.py::TestProjectErrorHandling::test_bus_factor_no_committers PASSED [ 12%] tests/test_Project/test_error_handling.py::TestProjectErrorHandling::test_blame_aggregation_errors PASSED [ 12%] tests/test_Project/test_error_handling.py::TestProjectErrorHandling::test_commit_history_error_recovery PASSED [ 13%] tests/test_Project/test_error_handling.py::TestProjectErrorHandling::test_file_change_history_basic_functionality PASSED [ 13%] tests/test_Project/test_error_handling.py::TestProjectErrorHandling::test_project_with_multiple_repos_resilience PASSED [ 13%] tests/test_Project/test_error_handling.py::TestProjectErrorHandling::test_cleanup_on_destruction PASSED [ 14%] tests/test_Project/test_error_handling.py::TestProjectErrorHandling::test_empty_working_dir_list PASSED [ 14%] tests/test_Project/test_error_handling.py::TestProjectErrorHandling::test_branches_aggregation_basic PASSED [ 14%] tests/test_Project/test_error_handling.py::TestProjectErrorHandling::test_tags_aggregation_basic PASSED [ 15%] tests/test_Project/test_error_handling.py::TestProjectErrorHandling::test_revs_aggregation_basic PASSED [ 15%] tests/test_Project/test_error_handling.py::TestProjectErrorHandling::test_cumulative_blame_basic PASSED [ 15%] tests/test_Project/test_error_handling.py::TestProjectErrorHandling::test_project_default_branch_handling PASSED [ 15%] tests/test_Project/test_error_handling.py::TestProjectErrorHandling::test_network_dependent_operations_offline PASSED [ 16%] tests/test_Project/test_error_handling.py::TestProjectErrorHandling::test_invalid_date_handling PASSED [ 16%] tests/test_Project/test_error_handling.py::TestProjectErrorHandling::test_project_with_bare_repositories PASSED [ 16%] tests/test_Project/test_error_handling.py::TestProjectInitializationEdgeCases::test_working_dir_as_string PASSED [ 17%] tests/test_Project/test_error_handling.py::TestProjectInitializationEdgeCases::test_duplicate_repository_paths PASSED [ 17%] tests/test_Project/test_error_handling.py::TestProjectInitializationEdgeCases::test_relative_vs_absolute_paths PASSED [ 17%] tests/test_Project/test_properties.py::TestLocalProperties::test_repo_name PASSED [ 18%] tests/test_Project/test_properties.py::TestLocalProperties::test_branches PASSED [ 18%] tests/test_Project/test_properties.py::TestLocalProperties::test_tags PASSED [ 18%] tests/test_Project/test_properties.py::TestLocalProperties::test_is_bare PASSED [ 19%] tests/test_Project/test_properties.py::TestLocalProperties::test_commit_history PASSED [ 19%] tests/test_Project/test_properties.py::TestLocalProperties::test_file_change_history PASSED [ 19%] tests/test_Project/test_properties.py::TestLocalProperties::test_file_change_rates PASSED [ 20%] tests/test_Project/test_properties.py::TestLocalProperties::test_has_coverage PASSED [ 20%] tests/test_Project/test_properties.py::TestLocalProperties::test_bus_factor PASSED [ 20%] tests/test_Project/test_properties.py::TestLocalProperties::test_blame PASSED [ 21%] tests/test_Project/test_properties.py::TestLocalProperties::test_cumulative_blame PASSED [ 21%] tests/test_Project/test_properties.py::TestLocalProperties::test_revs PASSED [ 21%] tests/test_Repository/test_advanced.py::TestRepositoryAdvanced::test_commits_in_tags PASSED [ 21%] tests/test_Repository/test_advanced.py::TestRepositoryAdvanced::test_get_branches_by_commit PASSED [ 22%] tests/test_Repository/test_advanced.py::TestRepositoryAdvanced::test_file_owner PASSED [ 22%] tests/test_Repository/test_advanced.py::TestRepositoryAdvanced::test_cumulative_blame_multi_author PASSED [ 22%] tests/test_Repository/test_advanced.py::TestRepositoryAdvanced::test_parallel_cumulative_blame PASSED [ 23%] tests/test_Repository/test_advanced.py::TestRepositoryAdvanced::test_punchcard PASSED [ 23%] tests/test_Repository/test_advanced.py::TestRepositoryAdvanced::test_file_last_edit PASSED [ 23%] tests/test_Repository/test_advanced.py::TestRepositoryAdvanced::test_file_detail_with_cache PASSED [ 24%] tests/test_Repository/test_advanced.py::TestRepositoryAdvanced::test_blame_deleted_file PASSED [ 24%] tests/test_Repository/test_advanced.py::TestRepositoryAdvanced::test_time_between_revs PASSED [ 24%] tests/test_Repository/test_advanced.py::TestRepositoryAdvanced::test_diff_stats_between_revs PASSED [ 25%] tests/test_Repository/test_advanced.py::TestRepositoryAdvanced::test_committers_between_revs PASSED [ 25%] tests/test_Repository/test_advanced.py::TestRepositoryAdvanced::test_files_changed_between_revs PASSED [ 25%] tests/test_Repository/test_advanced.py::TestRepositoryAdvanced::test_release_tag_summary PASSED [ 26%] tests/test_Repository/test_bus_factor.py::TestBusFactor::test_bus_factor_by_repository PASSED [ 26%] tests/test_Repository/test_bus_factor.py::TestBusFactor::test_bus_factor_with_globs PASSED [ 26%] tests/test_Repository/test_bus_factor.py::TestBusFactor::test_bus_factor_calculation PASSED [ 26%] tests/test_Repository/test_bus_factor.py::TestBusFactor::test_bus_factor_by_file PASSED [ 27%] tests/test_Repository/test_bus_factor.py::TestBusFactor::test_bus_factor_by_file_with_globs PASSED [ 27%] tests/test_Repository/test_bus_factor.py::TestBusFactor::test_bus_factor_by_file_single_committer_files PASSED [ 27%] tests/test_Repository/test_edge_cases.py::TestRepositoryEdgeCases::test_empty_repository_operations PASSED [ 28%] tests/test_Repository/test_edge_cases.py::TestRepositoryEdgeCases::test_single_commit_repository PASSED [ 28%] tests/test_Repository/test_edge_cases.py::TestRepositoryEdgeCases::test_repository_with_zero_limit PASSED [ 28%] tests/test_Repository/test_edge_cases.py::TestRepositoryEdgeCases::test_repository_with_negative_limit PASSED [ 29%] tests/test_Repository/test_edge_cases.py::TestRepositoryEdgeCases::test_repository_with_very_large_limit PASSED [ 29%] tests/test_Repository/test_edge_cases.py::TestRepositoryEdgeCases::test_repository_with_empty_globs PASSED [ 29%] tests/test_Repository/test_edge_cases.py::TestRepositoryEdgeCases::test_repository_with_nonexistent_globs PASSED [ 30%] tests/test_Repository/test_edge_cases.py::TestRepositoryEdgeCases::test_repository_with_special_characters_in_paths PASSED [ 30%] tests/test_Repository/test_edge_cases.py::TestRepositoryEdgeCases::test_repository_with_unicode_content PASSED [ 30%] tests/test_Repository/test_edge_cases.py::TestRepositoryEdgeCases::test_repository_boundary_dates PASSED [ 31%] tests/test_Repository/test_edge_cases.py::TestRepositoryEdgeCases::test_repository_extreme_skip_values PASSED [ 31%] tests/test_Repository/test_edge_cases.py::TestRepositoryEdgeCases::test_repository_with_large_files PASSED [ 31%] tests/test_Repository/test_edge_cases.py::TestRepositoryEdgeCases::test_repository_operations_consistency PASSED [ 31%] tests/test_Repository/test_edge_cases.py::TestRepositoryEdgeCases::test_repository_cache_behavior_edge_cases PASSED [ 32%] tests/test_Repository/test_edge_cases.py::TestRepositoryEdgeCases::test_repository_with_binary_files PASSED [ 32%] tests/test_Repository/test_edge_cases.py::TestRepositoryEdgeCases::test_repository_memory_constraints PASSED [ 32%] tests/test_Repository/test_edge_cases.py::TestRepositoryEdgeCases::test_repository_concurrent_access_simulation PASSED [ 33%] tests/test_Repository/test_edge_cases.py::TestRepositoryEdgeCases::test_repository_with_no_default_branch PASSED [ 33%] tests/test_Repository/test_edge_cases.py::TestRepositoryDataValidation::test_commit_history_data_types FAILED [ 33%] tests/test_Repository/test_edge_cases.py::TestRepositoryDataValidation::test_blame_data_consistency PASSED [ 34%] tests/test_Repository/test_edge_cases.py::TestRepositoryDataValidation::test_file_change_rates_data_bounds PASSED [ 34%] tests/test_Repository/test_edge_cases.py::TestRepositoryDataValidation::test_punchcard_data_structure PASSED [ 34%] tests/test_Repository/test_edge_cases.py::TestRepositoryDataValidation::test_revs_data_ordering PASSED [ 35%] tests/test_Repository/test_error_handling.py::TestRepositoryErrorHandling::test_coverage_file_not_found PASSED [ 35%] tests/test_Repository/test_error_handling.py::TestRepositoryErrorHandling::test_coverage_permission_denied PASSED [ 35%] tests/test_Repository/test_error_handling.py::TestRepositoryErrorHandling::test_coverage_invalid_format PASSED [ 36%] tests/test_Repository/test_error_handling.py::TestRepositoryErrorHandling::test_coverage_unexpected_error PASSED [ 36%] tests/test_Repository/test_error_handling.py::TestRepositoryErrorHandling::test_file_change_history_git_errors PASSED [ 36%] tests/test_Repository/test_error_handling.py::TestRepositoryErrorHandling::test_file_change_history_skip_broken_commits PASSED [ 36%] tests/test_Repository/test_error_handling.py::TestRepositoryErrorHandling::test_file_change_history_memory_error_simulation PASSED [ 37%] tests/test_Repository/test_error_handling.py::TestRepositoryErrorHandling::test_blame_unicode_decode_errors PASSED [ 37%] tests/test_Repository/test_error_handling.py::TestRepositoryErrorHandling::test_blame_binary_file_handling PASSED [ 37%] tests/test_Repository/test_error_handling.py::TestRepositoryErrorHandling::test_cumulative_blame_broken_commits PASSED [ 38%] tests/test_Repository/test_error_handling.py::TestRepositoryErrorHandling::test_file_operations_missing_branch PASSED [ 38%] tests/test_Repository/test_error_handling.py::TestRepositoryErrorHandling::test_punchcard_missing_columns PASSED [ 38%] tests/test_Repository/test_error_handling.py::TestRepositoryErrorHandling::test_repository_initialization_invalid_path PASSED [ 39%] tests/test_Repository/test_error_handling.py::TestRepositoryErrorHandling::test_repository_initialization_not_a_git_repo PASSED [ 39%] tests/test_Repository/test_error_handling.py::TestRepositoryErrorHandling::test_file_change_rates_empty_repository PASSED [ 39%] tests/test_Repository/test_error_handling.py::TestRepositoryErrorHandling::test_git_command_timeout_simulation PASSED [ 40%] tests/test_Repository/test_error_handling.py::TestRepositoryErrorHandling::test_revs_with_broken_commits PASSED [ 40%] tests/test_Repository/test_error_handling.py::TestRepositoryErrorHandling::test_cleanup_on_error PASSED [ 40%] tests/test_Repository/test_error_handling.py::TestRepositoryErrorHandling::test_process_commit_error_handling PASSED [ 41%] tests/test_Repository/test_error_handling.py::TestRepositoryErrorHandling::test_file_change_rates_git_command_error PASSED [ 41%] tests/test_Repository/test_error_handling.py::TestRepositoryInitializationErrors::test_remote_repo_network_error PASSED [ 41%] tests/test_Repository/test_error_handling.py::TestRepositoryInitializationErrors::test_remote_repo_invalid_url PASSED [ 42%] tests/test_Repository/test_error_handling.py::TestRepositoryInitializationErrors::test_permission_denied_on_temp_dir PASSED [ 42%] tests/test_Repository/test_file_detail.py::TestFileDetail::test_file_detail_basic PASSED [ 42%] tests/test_Repository/test_file_detail.py::TestFileDetail::test_file_detail_with_globs PASSED [ 42%] tests/test_Repository/test_file_detail.py::TestFileDetail::test_file_detail_with_rev PASSED [ 43%] tests/test_Repository/test_file_detail.py::TestFileDetail::test_file_detail_committer PASSED [ 43%] tests/test_Repository/test_file_detail.py::TestFileDetail::test_file_detail_last_edit PASSED [ 43%] tests/test_Repository/test_file_operations.py::TestFileOperations::test_list_files PASSED [ 44%] tests/test_Repository/test_file_operations.py::TestFileOperations::test_get_file_content PASSED [ 44%] tests/test_Repository/test_file_operations.py::TestFileOperations::test_get_commit_content PASSED [ 44%] tests/test_Repository/test_file_operations.py::TestFileOperations::test_file_change_rates_index_ambiguity PASSED [ 45%] tests/test_Repository/test_properties.py::TestLocalProperties::test_repo_name PASSED [ 45%] tests/test_Repository/test_properties.py::TestLocalProperties::test_branches PASSED [ 45%] tests/test_Repository/test_properties.py::TestLocalProperties::test_tags PASSED [ 46%] tests/test_Repository/test_properties.py::TestLocalProperties::test_is_bare PASSED [ 46%] tests/test_Repository/test_properties.py::TestLocalProperties::test_commit_history PASSED [ 46%] tests/test_Repository/test_properties.py::TestLocalProperties::test_file_change_history PASSED [ 47%] tests/test_Repository/test_properties.py::TestLocalProperties::test_file_change_rates PASSED [ 47%] tests/test_Repository/test_properties.py::TestLocalProperties::test_has_coverage PASSED [ 47%] tests/test_Repository/test_properties.py::TestLocalProperties::test_bus_factor PASSED [ 47%] tests/test_Repository/test_properties.py::TestLocalProperties::test_blame PASSED [ 48%] tests/test_Repository/test_properties.py::TestLocalProperties::test_cumulative_blame PASSED [ 48%] tests/test_Repository/test_properties.py::TestLocalProperties::test_revs PASSED [ 48%] tests/test_Repository/test_punchcard.py::TestPunchcard::test_punchcard_basic PASSED [ 49%] tests/test_Repository/test_punchcard.py::TestPunchcard::test_punchcard_normalize PASSED [ 49%] tests/test_Repository/test_punchcard.py::TestPunchcard::test_punchcard_by_parameter PASSED [ 49%] tests/test_Repository/test_punchcard.py::TestPunchcard::test_punchcard_with_globs PASSED [ 50%] tests/test_Repository/test_punchcard.py::TestPunchcard::test_punchcard_with_limit PASSED [ 50%] tests/test_Repository/test_punchcard.py::TestPunchcard::test_punchcard_with_days PASSED [ 50%] tests/test_bulk_fetch_warm.py::TestBulkFetchAndWarm::test_bulk_fetch_and_warm_both_operations PASSED [ 51%] tests/test_bulk_fetch_warm.py::TestBulkFetchAndWarm::test_bulk_fetch_and_warm_cache_failure PASSED [ 51%] tests/test_bulk_fetch_warm.py::TestBulkFetchAndWarm::test_bulk_fetch_and_warm_cache_only PASSED [ 51%] tests/test_bulk_fetch_warm.py::TestBulkFetchAndWarm::test_bulk_fetch_and_warm_custom_parameters PASSED [ 52%] tests/test_bulk_fetch_warm.py::TestBulkFetchAndWarm::test_bulk_fetch_and_warm_fetch_failure PASSED [ 52%] tests/test_bulk_fetch_warm.py::TestBulkFetchAndWarm::test_bulk_fetch_and_warm_fetch_only PASSED [ 52%] tests/test_bulk_fetch_warm.py::TestBulkFetchAndWarm::test_bulk_fetch_and_warm_no_operations PASSED [ 52%] tests/test_bulk_fetch_warm.py::TestBulkFetchAndWarm::test_bulk_fetch_and_warm_no_repos PASSED [ 53%] tests/test_bulk_fetch_warm.py::TestBulkFetchAndWarm::test_bulk_fetch_and_warm_parallel_execution PASSED [ 53%] tests/test_bulk_fetch_warm.py::TestBulkFetchAndWarm::test_bulk_fetch_and_warm_sequential_execution PASSED [ 53%] tests/test_bulk_fetch_warm.py::TestBulkFetchAndWarm::test_bulk_fetch_and_warm_unexpected_error PASSED [ 54%] tests/test_bulk_fetch_warm.py::TestBulkFetchAndWarmIntegration::test_bulk_fetch_and_warm_mixed_repository_types PASSED [ 54%] tests/test_bulk_fetch_warm.py::TestBulkFetchAndWarmIntegration::test_bulk_fetch_and_warm_real_repositories PASSED [ 54%] tests/test_cache.py::TestEphemeralCache::test_init PASSED [ 55%] tests/test_cache.py::TestEphemeralCache::test_set_get PASSED [ 55%] tests/test_cache.py::TestEphemeralCache::test_exists PASSED [ 55%] tests/test_cache.py::TestEphemeralCache::test_cache_miss PASSED [ 56%] tests/test_cache.py::TestEphemeralCache::test_eviction PASSED [ 56%] tests/test_cache.py::TestEphemeralCache::test_update_existing_key PASSED [ 56%] tests/test_cache.py::TestMulticache::test_multicache_decorator PASSED [ 57%] tests/test_cache.py::TestMulticache::test_multicache_skip_if PASSED [ 57%] tests/test_cache.py::TestMulticache::test_multicache_no_cache_backend PASSED [ 57%] tests/test_cache.py::TestRedisDFCache::test_init PASSED [ 57%] tests/test_cache.py::TestRedisDFCache::test_init_no_redis PASSED [ 58%] tests/test_cache.py::TestRedisDFCache::test_set_get PASSED [ 58%] tests/test_cache.py::TestRedisDFCache::test_exists PASSED [ 58%] tests/test_cache.py::TestRedisDFCache::test_cache_miss PASSED [ 59%] tests/test_cache.py::TestRedisDFCache::test_eviction PASSED [ 59%] tests/test_cache.py::TestRedisDFCache::test_ttl PASSED [ 59%] tests/test_cache.py::TestRedisDFCache::test_sync PASSED [ 60%] tests/test_cache.py::TestRedisDFCache::test_purge PASSED [ 60%] tests/test_cache.py::TestDiskCache::test_cache_hit PASSED [ 60%] tests/test_cache.py::TestDiskCache::test_force_refresh PASSED [ 61%] tests/test_cache.py::TestDiskCache::test_different_parameters PASSED [ 61%] tests/test_cache.py::TestDiskCache::test_skip_if_condition PASSED [ 61%] tests/test_cache.py::TestDiskCache::test_cache_persistence PASSED [ 62%] tests/test_cache.py::TestDiskCache::test_cache_key_format PASSED [ 62%] tests/test_cache_integration.py::TestCacheIntegration::test_repository_cache_hit_miss_patterns PASSED [ 62%] tests/test_cache_integration.py::TestCacheIntegration::test_repository_cache_different_methods PASSED [ 63%] tests/test_cache_integration.py::TestCacheIntegration::test_repository_cache_parameter_sensitivity PASSED [ 63%] tests/test_cache_integration.py::TestCacheIntegration::test_repository_cache_with_globs PASSED [ 63%] tests/test_cache_integration.py::TestCacheIntegration::test_project_cache_aggregation PASSED [ 63%] tests/test_cache_integration.py::TestCacheIntegration::test_project_cache_per_repository PASSED [ 64%] tests/test_cache_integration.py::TestCacheIntegration::test_cache_memory_efficiency PASSED [ 64%] tests/test_cache_integration.py::TestCacheIntegration::test_cache_with_concurrent_access_simulation PASSED [ 64%] tests/test_cache_integration.py::TestCacheIntegration::test_cache_invalidation_scenarios PASSED [ 65%] tests/test_cache_integration.py::TestCacheIntegration::test_cache_with_error_conditions PASSED [ 65%] tests/test_cache_integration.py::TestCacheIntegration::test_cache_key_consistency PASSED [ 65%] tests/test_cache_integration.py::TestCacheIntegration::test_cache_data_integrity PASSED [ 66%] tests/test_cache_integration.py::TestCacheIntegration::test_cache_with_different_working_directories PASSED [ 66%] tests/test_cache_integration.py::TestCacheIntegration::test_cache_performance_characteristics PASSED [ 66%] tests/test_cache_integration.py::TestCacheIntegration::test_cache_with_complex_parameters PASSED [ 67%] tests/test_cache_integration.py::TestCacheIntegration::test_cache_cross_method_independence PASSED [ 67%] tests/test_cache_integration.py::TestCacheErrorHandling::test_cache_with_corrupted_repository PASSED [ 67%] tests/test_cache_integration.py::TestCacheErrorHandling::test_cache_with_permission_errors PASSED [ 68%] tests/test_cache_integration.py::TestCacheErrorHandling::test_cache_memory_pressure_simulation PASSED [ 68%] tests/test_cache_integration.py::TestCacheErrorHandling::test_cache_with_unicode_paths PASSED [ 68%] tests/test_cache_integration.py::TestCacheErrorHandling::test_cache_cleanup_behavior PASSED [ 68%] tests/test_cache_key_consistency.py::TestCacheKeyConsistency::test_consistent_cache_keys PASSED [ 69%] tests/test_cache_key_consistency.py::TestCacheKeyConsistency::test_fix_resolves_reported_issue PASSED [ 69%] tests/test_cache_key_consistency.py::TestCacheKeyConsistency::test_varied_path_formats PASSED [ 69%] tests/test_cache_key_consistency.py::TestCacheKeyConsistency::test_complex_key_generation PASSED [ 70%] tests/test_cache_management.py::TestCacheManagement::test_cache_invalidation_ephemeral PASSED [ 70%] tests/test_cache_management.py::TestCacheManagement::test_cache_stats_ephemeral PASSED [ 70%] tests/test_cache_management.py::TestCacheManagement::test_repository_cache_invalidation PASSED [ 71%] tests/test_cache_management.py::TestCacheManagement::test_repository_cache_stats PASSED [ 71%] tests/test_cache_management.py::TestCacheManagement::test_project_directory_cache_management PASSED [ 71%] tests/test_cache_management.py::TestCacheManagement::test_cache_management_no_cache_backend PASSED [ 72%] tests/test_cache_management.py::TestCacheManagement::test_cache_management_error_handling PASSED [ 72%] tests/test_cache_management.py::TestCacheManagement::test_disk_cache_management PASSED [ 72%] tests/test_cache_threading.py::TestDiskCacheThreadSafety::test_concurrent_set_operations PASSED [ 73%] tests/test_cache_threading.py::TestDiskCacheThreadSafety::test_concurrent_get_operations PASSED [ 73%] tests/test_cache_threading.py::TestDiskCacheThreadSafety::test_concurrent_mixed_operations PASSED [ 73%] tests/test_cache_threading.py::TestDiskCacheThreadSafety::test_concurrent_save_operations_no_corruption PASSED [ 73%] tests/test_cache_threading.py::TestDiskCacheThreadSafety::test_multicache_decorator_thread_safety PASSED [ 74%] tests/test_cache_threading.py::TestDiskCacheThreadSafety::test_stress_test_high_concurrency PASSED [ 74%] tests/test_cache_threading.py::TestDiskCacheThreadSafety::test_no_dictionary_changed_size_error PASSED [ 74%] tests/test_cache_threading.py::TestDiskCacheThreadSafety::test_memory_corruption_detection PASSED [ 75%] tests/test_cache_threading.py::TestDiskCacheThreadSafety::test_cache_persistence_across_threads PASSED [ 75%] tests/test_cache_threading.py::TestDiskCacheThreadSafety::test_concurrent_additions_near_max_key_limit PASSED [ 75%] tests/test_cache_threading.py::TestDiskCacheThreadSafety::test_ephemeral_cache_race_condition_near_max_keys PASSED [ 76%] tests/test_cache_threading.py::TestDiskCacheThreadSafety::test_aggressive_ephemeral_cache_race_condition PASSED [ 76%] tests/test_cache_warming.py::TestWarmCache::test_warm_cache_all_methods_fail PASSED [ 76%] tests/test_cache_warming.py::TestWarmCache::test_warm_cache_cache_entries_tracking PASSED [ 77%] tests/test_cache_warming.py::TestWarmCache::test_warm_cache_custom_methods PASSED [ 77%] tests/test_cache_warming.py::TestWarmCache::test_warm_cache_default_methods PASSED [ 77%] tests/test_cache_warming.py::TestWarmCache::test_warm_cache_execution_time_tracking PASSED [ 78%] tests/test_cache_warming.py::TestWarmCache::test_warm_cache_invalid_method PASSED [ 78%] tests/test_cache_warming.py::TestWarmCache::test_warm_cache_method_failure PASSED [ 78%] tests/test_cache_warming.py::TestWarmCache::test_warm_cache_no_cache_backend PASSED [ 78%] tests/test_cache_warming.py::TestWarmCache::test_warm_cache_special_method_defaults PASSED [ 79%] tests/test_cache_warming.py::TestWarmCache::test_warm_cache_with_kwargs PASSED [ 79%] tests/test_cache_warming.py::TestWarmCacheIntegration::test_warm_cache_disk_cache PASSED [ 79%] tests/test_cache_warming.py::TestWarmCacheIntegration::test_warm_cache_no_methods_specified PASSED [ 80%] tests/test_cache_warming.py::TestWarmCacheIntegration::test_warm_cache_real_repository PASSED [ 80%] tests/test_logging.py::TestGetLogger::test_get_logger_without_name PASSED [ 80%] tests/test_logging.py::TestGetLogger::test_get_logger_with_name PASSED [ 81%] tests/test_logging.py::TestGetLogger::test_get_logger_with_nested_name PASSED [ 81%] tests/test_logging.py::TestGetLogger::test_get_logger_with_empty_string PASSED [ 81%] tests/test_logging.py::TestSetLogLevel::test_set_log_level_with_string PASSED [ 82%] tests/test_logging.py::TestSetLogLevel::test_set_log_level_with_integer PASSED [ 82%] tests/test_logging.py::TestSetLogLevel::test_set_log_level_case_insensitive PASSED [ 82%] tests/test_logging.py::TestSetLogLevel::test_set_log_level_with_custom_level PASSED [ 83%] tests/test_logging.py::TestAddStreamHandler::test_add_stream_handler_default PASSED [ 83%] tests/test_logging.py::TestAddStreamHandler::test_add_stream_handler_custom_level PASSED [ 83%] tests/test_logging.py::TestAddStreamHandler::test_add_stream_handler_custom_format PASSED [ 84%] tests/test_logging.py::TestAddStreamHandler::test_add_stream_handler_with_kwargs PASSED [ 84%] tests/test_logging.py::TestAddStreamHandler::test_add_stream_handler_duplicate_prevention PASSED [ 84%] tests/test_logging.py::TestAddStreamHandler::test_add_stream_handler_level_as_string PASSED [ 84%] tests/test_logging.py::TestAddFileHandler::test_add_file_handler_default PASSED [ 85%] tests/test_logging.py::TestAddFileHandler::test_add_file_handler_custom_level PASSED [ 85%] tests/test_logging.py::TestAddFileHandler::test_add_file_handler_custom_format PASSED [ 85%] tests/test_logging.py::TestAddFileHandler::test_add_file_handler_with_kwargs PASSED [ 86%] tests/test_logging.py::TestAddFileHandler::test_add_file_handler_duplicate_prevention PASSED [ 86%] tests/test_logging.py::TestAddFileHandler::test_add_file_handler_different_files PASSED [ 86%] tests/test_logging.py::TestAddFileHandler::test_add_file_handler_level_as_string PASSED [ 87%] tests/test_logging.py::TestRemoveAllHandlers::test_remove_all_handlers_empty PASSED [ 87%] tests/test_logging.py::TestRemoveAllHandlers::test_remove_all_handlers_with_stream_handler PASSED [ 87%] tests/test_logging.py::TestRemoveAllHandlers::test_remove_all_handlers_with_file_handler PASSED [ 88%] tests/test_logging.py::TestRemoveAllHandlers::test_remove_all_handlers_preserves_null_handler PASSED [ 88%] tests/test_logging.py::TestRemoveAllHandlers::test_remove_all_handlers_multiple_types PASSED [ 88%] tests/test_logging.py::TestIntegration::test_logger_functionality_end_to_end PASSED [ 89%] tests/test_logging.py::TestIntegration::test_logger_hierarchy PASSED [ 89%] tests/test_logging.py::TestIntegration::test_handler_formatting_works PASSED [ 89%] tests/test_remote_fetch.py::TestSafeFetchRemote::test_safe_fetch_remote_custom_remote_name PASSED [ 89%] tests/test_remote_fetch.py::TestSafeFetchRemote::test_safe_fetch_remote_dry_run_failure PASSED [ 90%] tests/test_remote_fetch.py::TestSafeFetchRemote::test_safe_fetch_remote_dry_run_success PASSED [ 90%] tests/test_remote_fetch.py::TestSafeFetchRemote::test_safe_fetch_remote_fetch_failure PASSED [ 90%] tests/test_remote_fetch.py::TestSafeFetchRemote::test_safe_fetch_remote_invalid_remote_name PASSED [ 91%] tests/test_remote_fetch.py::TestSafeFetchRemote::test_safe_fetch_remote_no_remotes PASSED [ 91%] tests/test_remote_fetch.py::TestSafeFetchRemote::test_safe_fetch_remote_success_no_changes PASSED [ 91%] tests/test_remote_fetch.py::TestSafeFetchRemote::test_safe_fetch_remote_success_with_changes PASSED [ 92%] tests/test_remote_fetch.py::TestSafeFetchRemote::test_safe_fetch_remote_unexpected_error PASSED [ 92%] tests/test_remote_fetch.py::TestSafeFetchRemote::test_safe_fetch_remote_with_prune PASSED [ 92%] tests/test_remote_fetch.py::TestSafeFetchRemoteIntegration::test_safe_fetch_remote_local_repository PASSED [ 93%] tests/test_remote_fetch.py::TestSafeFetchRemoteIntegration::test_safe_fetch_remote_with_mocked_network PASSED [ 93%] tests/test_repository_cache.py::TestRepositoryCache::test_repository_list_files_cache PASSED [ 93%] tests/test_repository_cache.py::TestRepositoryCache::test_repository_cache_with_different_params PASSED [ 94%] tests/test_repository_cache.py::TestRepositoryCache::test_repository_cache_persistence PASSED [ 94%] tests/test_repository_cache.py::TestRepositoryCache::test_multiple_repository_methods_cache PASSED [ 94%] tests/test_utilities/test_check_api.py::TestCheckAPI::test_extract_objects PASSED [ 94%] tests/test_utilities/test_check_api.py::TestCheckAPI::test_parse_docstring PASSED [ 95%] tests/test_utilities/test_check_api.py::TestCheckAPI::test_get_distinct_params PASSED [ 95%] tests/test_utilities/test_init.py::test_version PASSED [ 95%] tests/test_utilities/test_plotting.py::TestPlotting::test_plot_punchcard_basic PASSED [ 96%] tests/test_utilities/test_plotting.py::TestPlotting::test_plot_punchcard_with_by PASSED [ 96%] tests/test_utilities/test_plotting.py::TestPlotting::test_plot_punchcard_no_matplotlib PASSED [ 96%] tests/test_utilities/test_plotting.py::TestPlotting::test_plot_cumulative_blame PASSED [ 97%] tests/test_utilities/test_plotting.py::TestPlotting::test_plot_cumulative_blame_no_matplotlib PASSED [ 97%] tests/test_utilities/test_plotting.py::TestPlotting::test_plot_lifeline_basic FAILED [ 97%] tests/test_utilities/test_plotting.py::TestPlotting::test_plot_lifeline_empty_events FAILED [ 98%] tests/test_utilities/test_plotting.py::TestPlotting::test_plot_lifeline_no_matplotlib PASSED [ 98%] tests/test_utilities/test_plotting.py::TestPlotting::test_plot_punchcard_edge_cases PASSED [ 98%] tests/test_utilities/test_plotting.py::TestPlotting::test_plot_cumulative_blame_edge_cases PASSED [ 99%] tests/test_utilities/test_plotting.py::TestPlotting::test_plot_lifeline_edge_cases FAILED [ 99%] tests/test_utilities/test_plotting.py::TestPlotting::test_plot_lifeline_with_different_timezones FAILED [ 99%] tests/test_utilities/test_plotting.py::TestPlotting::test_plot_lifeline_with_duplicate_dates FAILED [100%] =================================== FAILURES =================================== _________ TestRepositoryDataValidation.test_commit_history_data_types __________ self = validation_repo = '/usr/src/tmp/pytest-of-builder/pytest-0/test_commit_history_data_types0/validation_repo' default_branch = 'master' def test_commit_history_data_types(self, validation_repo, default_branch): """Test that commit_history returns proper data types.""" repo = Repository(working_dir=validation_repo, default_branch=default_branch) history = repo.commit_history() if not history.empty: # Check that numeric columns are numeric numeric_columns = ["insertions", "deletions", "lines", "net"] for col in numeric_columns: if col in history.columns: assert pd.api.types.is_numeric_dtype(history[col]), f"Column {col} should be numeric" # Check that string columns are strings string_columns = ["message", "author", "committer"] for col in string_columns: if col in history.columns: > assert history[col].dtype == object, f"Column {col} should be string/object type" E AssertionError: Column message should be string/object type E assert == object E + where = date\n2026-08-01 09:09:42+00:00 Test commit\nName: message, dtype: str.dtype tests/test_Repository/test_edge_cases.py:488: AssertionError ____________________ TestPlotting.test_plot_lifeline_basic _____________________ self = def test_plot_lifeline_basic(self): """Test the plot_lifeline function with basic input.""" if not HAS_MPL: pytest.skip("matplotlib is not installed") # Mock matplotlib functions to avoid display issues with ( patch("matplotlib.pyplot.show"), patch("matplotlib.pyplot.subplots", return_value=(MagicMock(), MagicMock())), ): # Create test data dates = pd.date_range(start="2023-01-01", periods=10) # File change history changes = pd.DataFrame( { "filename": ["file1.py", "file2.py", "file1.py", "file3.py"], "author": ["User1", "User1", "User2", "User1"], "committer": ["User1", "User1", "User2", "User1"], "insertions": [10, 5, 8, 12], "deletions": [2, 0, 3, 0], }, index=dates[:4], ) # Ownership changes ownership_changes = pd.DataFrame( { "filename": ["file1.py"], "author": ["User2"], "committer": ["User2"], }, index=[dates[2]], ) # Refactoring events refactoring = pd.DataFrame( { "filename": ["file2.py"], "message": ["Refactored code"], }, index=[dates[1]], ) # Call the function > fig = plot_lifeline(changes, ownership_changes, refactoring) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ tests/test_utilities/test_plotting.py:141: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ changes = filename author committer insertions deletions 2023-01-01 file1.py User1 User1 10 ...23-01-03 file1.py User2 User2 8 3 2023-01-04 file3.py User1 User1 12 0 ownership_changes = filename author committer 2023-01-03 file1.py User2 User2 refactoring = filename message 2023-01-02 file2.py Refactored code def plot_lifeline(changes, ownership_changes, refactoring): """ Plot file lifelines with ownership changes and refactoring events. Args: changes (pd.DataFrame): DataFrame containing file change history ownership_changes (pd.DataFrame): DataFrame containing ownership change events refactoring (pd.DataFrame): DataFrame containing refactoring events Returns: matplotlib.figure.Figure: The generated plot figure """ if not HAS_MPL: raise ImportError("matplotlib is required for plotting. Please install it first.") # Validate input DataFrames if changes.empty: raise ValueError("changes DataFrame cannot be empty") # Validate that all files in ownership_changes and refactoring exist in changes if not ownership_changes.empty: invalid_files = set(ownership_changes.filename) - set(changes.filename) if invalid_files: raise ValueError(f"Files in ownership_changes not found in changes: {invalid_files}") if not refactoring.empty: invalid_files = set(refactoring.filename) - set(changes.filename) if invalid_files: raise ValueError(f"Files in refactoring not found in changes: {invalid_files}") # Create a new figure fig, ax = plt.subplots(figsize=(12, 6)) # Get unique files and sort them files = changes.filename.unique() > files.sort() ^^^^^^^^^^ E AttributeError: 'StringArray' object has no attribute 'sort' gitpandas/utilities/plotting.py:164: AttributeError _________________ TestPlotting.test_plot_lifeline_empty_events _________________ self = def test_plot_lifeline_empty_events(self): """Test plot_lifeline with empty ownership changes and refactoring.""" if not HAS_MPL: pytest.skip("matplotlib is not installed") # Create test data with empty events dates = pd.date_range(start="2023-01-01", periods=5) # File change history changes = pd.DataFrame( { "filename": ["file1.py", "file2.py", "file1.py"], "author": ["User1", "User1", "User1"], "committer": ["User1", "User1", "User1"], }, index=dates[:3], ) # Empty ownership changes and refactoring ownership_changes = pd.DataFrame( { "filename": [], "author": [], "committer": [], } ) refactoring = pd.DataFrame( { "filename": [], "message": [], } ) # Set a non-interactive backend import matplotlib matplotlib.use("Agg") # Call the function > fig = plot_lifeline(changes, ownership_changes, refactoring) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ tests/test_utilities/test_plotting.py:186: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ changes = filename author committer 2023-01-01 file1.py User1 User1 2023-01-02 file2.py User1 User1 2023-01-03 file1.py User1 User1 ownership_changes = Empty DataFrame Columns: [filename, author, committer] Index: [] refactoring = Empty DataFrame Columns: [filename, message] Index: [] def plot_lifeline(changes, ownership_changes, refactoring): """ Plot file lifelines with ownership changes and refactoring events. Args: changes (pd.DataFrame): DataFrame containing file change history ownership_changes (pd.DataFrame): DataFrame containing ownership change events refactoring (pd.DataFrame): DataFrame containing refactoring events Returns: matplotlib.figure.Figure: The generated plot figure """ if not HAS_MPL: raise ImportError("matplotlib is required for plotting. Please install it first.") # Validate input DataFrames if changes.empty: raise ValueError("changes DataFrame cannot be empty") # Validate that all files in ownership_changes and refactoring exist in changes if not ownership_changes.empty: invalid_files = set(ownership_changes.filename) - set(changes.filename) if invalid_files: raise ValueError(f"Files in ownership_changes not found in changes: {invalid_files}") if not refactoring.empty: invalid_files = set(refactoring.filename) - set(changes.filename) if invalid_files: raise ValueError(f"Files in refactoring not found in changes: {invalid_files}") # Create a new figure fig, ax = plt.subplots(figsize=(12, 6)) # Get unique files and sort them files = changes.filename.unique() > files.sort() ^^^^^^^^^^ E AttributeError: 'StringArray' object has no attribute 'sort' gitpandas/utilities/plotting.py:164: AttributeError __________________ TestPlotting.test_plot_lifeline_edge_cases __________________ self = def test_plot_lifeline_edge_cases(self): """Test lifeline plotting with edge cases.""" if not HAS_MPL: pytest.skip("matplotlib is not installed") # Test with empty changes DataFrame dates = pd.date_range(start="2023-01-01", periods=3) empty_changes = pd.DataFrame(columns=["filename", "author", "committer"]) ownership_changes = pd.DataFrame({"filename": []}) refactoring = pd.DataFrame({"filename": []}) with pytest.raises(ValueError): plot_lifeline(empty_changes, ownership_changes, refactoring) # Test with invalid ownership changes (file not in changes) changes = pd.DataFrame( {"filename": ["file1.py"], "author": ["User1"], "committer": ["User1"]}, index=[dates[0]] ) invalid_ownership = pd.DataFrame( {"filename": ["nonexistent.py"], "author": ["User2"], "committer": ["User2"]}, index=[dates[1]] ) with pytest.raises(ValueError): plot_lifeline(changes, invalid_ownership, refactoring) # Test with invalid refactoring (file not in changes) invalid_refactoring = pd.DataFrame( {"filename": ["nonexistent.py"], "message": ["Refactored"]}, index=[dates[1]] ) with pytest.raises(ValueError): plot_lifeline(changes, ownership_changes, invalid_refactoring) # Test with single file and multiple changes changes = pd.DataFrame( { "filename": ["file1.py", "file1.py", "file1.py"], "author": ["User1", "User2", "User1"], "committer": ["User1", "User2", "User1"], }, index=dates[:3], ) ownership_changes = pd.DataFrame( {"filename": ["file1.py"], "author": ["User2"], "committer": ["User2"]}, index=[dates[1]] ) refactoring = pd.DataFrame({"filename": ["file1.py"], "message": ["Refactored"]}, index=[dates[2]]) > fig = plot_lifeline(changes, ownership_changes, refactoring) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ tests/test_utilities/test_plotting.py:320: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ changes = filename author committer 2023-01-01 file1.py User1 User1 2023-01-02 file1.py User2 User2 2023-01-03 file1.py User1 User1 ownership_changes = filename author committer 2023-01-02 file1.py User2 User2 refactoring = filename message 2023-01-03 file1.py Refactored def plot_lifeline(changes, ownership_changes, refactoring): """ Plot file lifelines with ownership changes and refactoring events. Args: changes (pd.DataFrame): DataFrame containing file change history ownership_changes (pd.DataFrame): DataFrame containing ownership change events refactoring (pd.DataFrame): DataFrame containing refactoring events Returns: matplotlib.figure.Figure: The generated plot figure """ if not HAS_MPL: raise ImportError("matplotlib is required for plotting. Please install it first.") # Validate input DataFrames if changes.empty: raise ValueError("changes DataFrame cannot be empty") # Validate that all files in ownership_changes and refactoring exist in changes if not ownership_changes.empty: invalid_files = set(ownership_changes.filename) - set(changes.filename) if invalid_files: raise ValueError(f"Files in ownership_changes not found in changes: {invalid_files}") if not refactoring.empty: invalid_files = set(refactoring.filename) - set(changes.filename) if invalid_files: raise ValueError(f"Files in refactoring not found in changes: {invalid_files}") # Create a new figure fig, ax = plt.subplots(figsize=(12, 6)) # Get unique files and sort them files = changes.filename.unique() > files.sort() ^^^^^^^^^^ E AttributeError: 'StringArray' object has no attribute 'sort' gitpandas/utilities/plotting.py:164: AttributeError ___________ TestPlotting.test_plot_lifeline_with_different_timezones ___________ self = def test_plot_lifeline_with_different_timezones(self): """Test lifeline plotting with different timezone data.""" if not HAS_MPL: pytest.skip("matplotlib is not installed") # Create test data with different timezones dates_utc = pd.date_range(start="2023-01-01", periods=3, tz="UTC") dates_est = pd.date_range(start="2023-01-01", periods=3, tz="America/New_York") changes = pd.DataFrame( { "filename": ["file1.py", "file2.py", "file1.py"], "author": ["User1", "User1", "User2"], "committer": ["User1", "User1", "User2"], }, index=dates_utc, ) ownership_changes = pd.DataFrame( {"filename": ["file1.py"], "author": ["User2"], "committer": ["User2"]}, index=[dates_est[1]] ) refactoring = pd.DataFrame({"filename": ["file2.py"], "message": ["Refactored"]}, index=[dates_utc[2]]) > fig = plot_lifeline(changes, ownership_changes, refactoring) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ tests/test_utilities/test_plotting.py:347: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ changes = filename author committer 2023-01-01 00:00:00+00:00 file1.py User1 User1 2023-01-02 00:00:00+00:00 file2.py User1 User1 2023-01-03 00:00:00+00:00 file1.py User2 User2 ownership_changes = filename author committer 2023-01-02 00:00:00-05:00 file1.py User2 User2 refactoring = filename message 2023-01-03 00:00:00+00:00 file2.py Refactored def plot_lifeline(changes, ownership_changes, refactoring): """ Plot file lifelines with ownership changes and refactoring events. Args: changes (pd.DataFrame): DataFrame containing file change history ownership_changes (pd.DataFrame): DataFrame containing ownership change events refactoring (pd.DataFrame): DataFrame containing refactoring events Returns: matplotlib.figure.Figure: The generated plot figure """ if not HAS_MPL: raise ImportError("matplotlib is required for plotting. Please install it first.") # Validate input DataFrames if changes.empty: raise ValueError("changes DataFrame cannot be empty") # Validate that all files in ownership_changes and refactoring exist in changes if not ownership_changes.empty: invalid_files = set(ownership_changes.filename) - set(changes.filename) if invalid_files: raise ValueError(f"Files in ownership_changes not found in changes: {invalid_files}") if not refactoring.empty: invalid_files = set(refactoring.filename) - set(changes.filename) if invalid_files: raise ValueError(f"Files in refactoring not found in changes: {invalid_files}") # Create a new figure fig, ax = plt.subplots(figsize=(12, 6)) # Get unique files and sort them files = changes.filename.unique() > files.sort() ^^^^^^^^^^ E AttributeError: 'StringArray' object has no attribute 'sort' gitpandas/utilities/plotting.py:164: AttributeError _____________ TestPlotting.test_plot_lifeline_with_duplicate_dates _____________ self = def test_plot_lifeline_with_duplicate_dates(self): """Test lifeline plotting with duplicate dates in the data.""" if not HAS_MPL: pytest.skip("matplotlib is not installed") # Create test data with duplicate dates dates = pd.date_range(start="2023-01-01", periods=3) duplicate_dates = pd.DatetimeIndex([dates[0], dates[0], dates[1], dates[2]]) changes = pd.DataFrame( { "filename": ["file1.py", "file2.py", "file1.py", "file3.py"], "author": ["User1", "User1", "User2", "User1"], "committer": ["User1", "User1", "User2", "User1"], }, index=duplicate_dates, ) ownership_changes = pd.DataFrame( {"filename": ["file1.py"], "author": ["User2"], "committer": ["User2"]}, index=[dates[1]] ) refactoring = pd.DataFrame({"filename": ["file2.py"], "message": ["Refactored"]}, index=[dates[2]]) > fig = plot_lifeline(changes, ownership_changes, refactoring) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ tests/test_utilities/test_plotting.py:374: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ changes = filename author committer 2023-01-01 file1.py User1 User1 2023-01-01 file2.py User1 User1 2023-01-02 file1.py User2 User2 2023-01-03 file3.py User1 User1 ownership_changes = filename author committer 2023-01-02 file1.py User2 User2 refactoring = filename message 2023-01-03 file2.py Refactored def plot_lifeline(changes, ownership_changes, refactoring): """ Plot file lifelines with ownership changes and refactoring events. Args: changes (pd.DataFrame): DataFrame containing file change history ownership_changes (pd.DataFrame): DataFrame containing ownership change events refactoring (pd.DataFrame): DataFrame containing refactoring events Returns: matplotlib.figure.Figure: The generated plot figure """ if not HAS_MPL: raise ImportError("matplotlib is required for plotting. Please install it first.") # Validate input DataFrames if changes.empty: raise ValueError("changes DataFrame cannot be empty") # Validate that all files in ownership_changes and refactoring exist in changes if not ownership_changes.empty: invalid_files = set(ownership_changes.filename) - set(changes.filename) if invalid_files: raise ValueError(f"Files in ownership_changes not found in changes: {invalid_files}") if not refactoring.empty: invalid_files = set(refactoring.filename) - set(changes.filename) if invalid_files: raise ValueError(f"Files in refactoring not found in changes: {invalid_files}") # Create a new figure fig, ax = plt.subplots(figsize=(12, 6)) # Get unique files and sort them files = changes.filename.unique() > files.sort() ^^^^^^^^^^ E AttributeError: 'StringArray' object has no attribute 'sort' gitpandas/utilities/plotting.py:164: AttributeError =============================== warnings summary =============================== tests/test_Repository/test_advanced.py::TestRepositoryAdvanced::test_release_tag_summary /usr/src/RPM/BUILD/python3-module-git-pandas-2.5.0/tests/test_Repository/test_advanced.py:440: DeprecationWarning: datetime.datetime.utcfromtimestamp() is deprecated and scheduled for removal in a future version. Use timezone-aware objects to represent datetimes in UTC: datetime.datetime.fromtimestamp(timestamp, datetime.UTC). last_time = datetime.datetime.utcfromtimestamp(last_commit.committed_date).replace(tzinfo=datetime.timezone.utc) -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ FAILED tests/test_Repository/test_edge_cases.py::TestRepositoryDataValidation::test_commit_history_data_types FAILED tests/test_utilities/test_plotting.py::TestPlotting::test_plot_lifeline_basic FAILED tests/test_utilities/test_plotting.py::TestPlotting::test_plot_lifeline_empty_events FAILED tests/test_utilities/test_plotting.py::TestPlotting::test_plot_lifeline_edge_cases FAILED tests/test_utilities/test_plotting.py::TestPlotting::test_plot_lifeline_with_different_timezones FAILED tests/test_utilities/test_plotting.py::TestPlotting::test_plot_lifeline_with_duplicate_dates =========== 6 failed, 313 passed, 9 deselected, 1 warning in 28.63s ============ INFO : Command's result: FAILURE INFO : Command's error: Command '['python3', '-m', 'pytest', '-m', 'not remote', '--deselect=tests/test_examples.py::test_example_scripts']' returned non-zero exit status 1. error: Bad exit status from /usr/src/tmp/rpmb-tmp.SzHC5w (%check) RPM build errors: Bad exit status from /usr/src/tmp/rpmb-tmp.SzHC5w (%check) Command exited with non-zero status 1 29.16user 3.86system 0:32.19elapsed 102%CPU (0avgtext+0avgdata 137536maxresident)k 0inputs+0outputs (0major+1447300minor)pagefaults 0swaps hsh-rebuild: rebuild of `python3-module-git-pandas-2.5.0-alt2.git2789b49d.src.rpm' failed. Command exited with non-zero status 1 6.04user 1.70system 0:49.62elapsed 15%CPU (0avgtext+0avgdata 146248maxresident)k 131648inputs+0outputs (0major+366629minor)pagefaults 0swaps