==> Building on snover ==> Checking for remote environment... ==> Syncing package to remote host... sending incremental file list created directory packages/python-validate-pyproject ./ .SRCINFO 776 100% 0.00kB/s 0:00:00 776 100% 0.00kB/s 0:00:00 (xfr#1, to-chk=3/5) .nvchecker.toml 118 100% 115.23kB/s 0:00:00 118 100% 115.23kB/s 0:00:00 (xfr#2, to-chk=2/5) PKGBUILD 1,444 100% 1.38MB/s 0:00:00 1,444 100% 1.38MB/s 0:00:00 (xfr#3, to-chk=1/5) python-validate-pyproject-0.22-2.log 505 100% 493.16kB/s 0:00:00 505 100% 493.16kB/s 0:00:00 (xfr#4, to-chk=0/5) sent 1,813 bytes received 152 bytes 3,930.00 bytes/sec total size is 2,531 speedup is 1.29 ==> Running extra-riscv64-build -- -d /home/felix/packages/riscv64-pkg-cache:/var/cache/pacman/pkg -l felix2 on remote host... ]2;🔵 Container arch-nspawn-686356 on snover.felixc.at[?25l:: Synchronizing package databases... core downloading... extra downloading... :: Starting full system upgrade... there is nothing to do [?25h==> Building in chroot for [extra] (riscv64)... ==> Synchronizing chroot copy [/var/lib/archbuild/extra-riscv64/root] -> [felix2]...done ==> Making package: python-validate-pyproject 0.22-2 (Mon Dec 23 22:18:44 2024) ==> Retrieving sources...  -> Cloning validate-pyproject git repo... Cloning into bare repository '/home/felix/packages/python-validate-pyproject/validate-pyproject'... remote: Enumerating objects: 3660, done. remote: Counting objects: 0% (1/665) remote: Counting objects: 1% (7/665) remote: Counting objects: 2% (14/665) remote: Counting objects: 3% (20/665) remote: Counting objects: 4% (27/665) remote: Counting objects: 5% (34/665) remote: Counting objects: 6% (40/665) remote: Counting objects: 7% (47/665) remote: Counting objects: 8% (54/665) remote: Counting objects: 9% (60/665) remote: Counting objects: 10% (67/665) remote: Counting objects: 11% (74/665) remote: Counting objects: 12% (80/665) remote: Counting objects: 13% (87/665) remote: Counting objects: 14% (94/665) remote: Counting objects: 15% (100/665) remote: Counting objects: 16% (107/665) remote: Counting objects: 17% (114/665) remote: Counting objects: 18% (120/665) remote: Counting objects: 19% (127/665) remote: Counting objects: 20% (133/665) remote: Counting objects: 21% (140/665) remote: Counting objects: 22% (147/665) remote: Counting objects: 23% (153/665) remote: Counting objects: 24% (160/665) remote: Counting objects: 25% (167/665) remote: Counting objects: 26% (173/665) remote: Counting objects: 27% (180/665) remote: Counting objects: 28% (187/665) remote: Counting objects: 29% (193/665) remote: Counting objects: 30% (200/665) remote: Counting objects: 31% (207/665) remote: Counting objects: 32% (213/665) remote: Counting objects: 33% (220/665) remote: Counting objects: 34% (227/665) remote: Counting objects: 35% (233/665) remote: Counting objects: 36% (240/665) remote: Counting objects: 37% (247/665) remote: Counting objects: 38% (253/665) remote: Counting objects: 39% (260/665) remote: Counting objects: 40% (266/665) remote: Counting objects: 41% (273/665) remote: Counting objects: 42% (280/665) remote: Counting objects: 43% (286/665) remote: Counting objects: 44% (293/665) remote: Counting objects: 45% (300/665) remote: Counting objects: 46% (306/665) remote: Counting objects: 47% (313/665) remote: Counting objects: 48% (320/665) remote: Counting objects: 49% (326/665) remote: Counting objects: 50% (333/665) remote: Counting objects: 51% (340/665) remote: Counting objects: 52% (346/665) remote: Counting objects: 53% (353/665) remote: Counting objects: 54% (360/665) remote: Counting objects: 55% (366/665) remote: Counting objects: 56% (373/665) remote: Counting objects: 57% (380/665) remote: Counting objects: 58% (386/665) remote: Counting objects: 59% (393/665) remote: Counting objects: 60% (399/665) remote: Counting objects: 61% (406/665) remote: Counting objects: 62% (413/665) remote: Counting objects: 63% (419/665) remote: Counting objects: 64% (426/665) remote: Counting objects: 65% (433/665) remote: Counting objects: 66% (439/665) remote: Counting objects: 67% (446/665) remote: Counting objects: 68% (453/665) remote: Counting objects: 69% (459/665) remote: Counting objects: 70% (466/665) remote: Counting objects: 71% (473/665) remote: Counting objects: 72% (479/665) remote: Counting objects: 73% (486/665) remote: Counting objects: 74% (493/665) remote: Counting objects: 75% (499/665) remote: Counting objects: 76% (506/665) remote: Counting objects: 77% (513/665) remote: Counting objects: 78% (519/665) remote: Counting objects: 79% (526/665) remote: Counting objects: 80% (532/665) remote: Counting objects: 81% (539/665) remote: Counting objects: 82% (546/665) remote: Counting objects: 83% (552/665) remote: Counting objects: 84% (559/665) remote: Counting objects: 85% (566/665) remote: Counting objects: 86% (572/665) remote: Counting objects: 87% (579/665) remote: Counting objects: 88% (586/665) remote: Counting objects: 89% (592/665) remote: Counting objects: 90% (599/665) remote: Counting objects: 91% (606/665) remote: Counting objects: 92% (612/665) remote: Counting objects: 93% (619/665) remote: Counting objects: 94% (626/665) remote: Counting objects: 95% (632/665) remote: Counting objects: 96% (639/665) remote: Counting objects: 97% (646/665) remote: Counting objects: 98% (652/665) remote: Counting objects: 99% (659/665) remote: Counting objects: 100% (665/665) remote: Counting objects: 100% (665/665), done. remote: Compressing objects: 0% (1/335) remote: Compressing objects: 1% (4/335) remote: Compressing objects: 2% (7/335) remote: Compressing objects: 3% (11/335) remote: Compressing objects: 4% (14/335) remote: Compressing objects: 5% (17/335) remote: Compressing objects: 6% (21/335) remote: Compressing objects: 7% (24/335) remote: Compressing objects: 8% (27/335) remote: Compressing objects: 9% (31/335) remote: Compressing objects: 10% (34/335) remote: Compressing objects: 11% (37/335) remote: Compressing objects: 12% (41/335) remote: Compressing objects: 13% (44/335) remote: Compressing objects: 14% (47/335) remote: Compressing objects: 15% (51/335) remote: Compressing objects: 16% (54/335) remote: Compressing objects: 17% (57/335) remote: Compressing objects: 18% (61/335) remote: Compressing objects: 19% (64/335) remote: Compressing objects: 20% (67/335) remote: Compressing objects: 21% (71/335) remote: Compressing objects: 22% (74/335) remote: Compressing objects: 23% (78/335) remote: Compressing objects: 24% (81/335) remote: Compressing objects: 25% (84/335) remote: Compressing objects: 26% (88/335) remote: Compressing objects: 27% (91/335) remote: Compressing objects: 28% (94/335) remote: Compressing objects: 29% (98/335) remote: Compressing objects: 30% (101/335) remote: Compressing objects: 31% (104/335) remote: Compressing objects: 32% (108/335) remote: Compressing objects: 33% (111/335) remote: Compressing objects: 34% (114/335) remote: Compressing objects: 35% (118/335) remote: Compressing objects: 36% (121/335) remote: Compressing objects: 37% (124/335) remote: Compressing objects: 38% (128/335) remote: Compressing objects: 39% (131/335) remote: Compressing objects: 40% (134/335) remote: Compressing objects: 41% (138/335) remote: Compressing objects: 42% (141/335) remote: Compressing objects: 43% (145/335) remote: Compressing objects: 44% (148/335) remote: Compressing objects: 45% (151/335) remote: Compressing objects: 46% (155/335) remote: Compressing objects: 47% (158/335) remote: Compressing objects: 48% (161/335) remote: Compressing objects: 49% (165/335) remote: Compressing objects: 50% (168/335) remote: Compressing objects: 51% (171/335) remote: Compressing objects: 52% (175/335) remote: Compressing objects: 53% (178/335) remote: Compressing objects: 54% (181/335) remote: Compressing objects: 55% (185/335) remote: Compressing objects: 56% (188/335) remote: Compressing objects: 57% (191/335) remote: Compressing objects: 58% (195/335) remote: Compressing objects: 59% (198/335) remote: Compressing objects: 60% (201/335) remote: Compressing objects: 61% (205/335) remote: Compressing objects: 62% (208/335) remote: Compressing objects: 63% (212/335) remote: Compressing objects: 64% (215/335) remote: Compressing objects: 65% (218/335) remote: Compressing objects: 66% (222/335) remote: Compressing objects: 67% (225/335) remote: Compressing objects: 68% (228/335) remote: Compressing objects: 69% (232/335) remote: Compressing objects: 70% (235/335) remote: Compressing objects: 71% (238/335) remote: Compressing objects: 72% (242/335) remote: Compressing objects: 73% (245/335) remote: Compressing objects: 74% (248/335) remote: Compressing objects: 75% (252/335) remote: Compressing objects: 76% (255/335) remote: Compressing objects: 77% (258/335) remote: Compressing objects: 78% (262/335) remote: Compressing objects: 79% (265/335) remote: Compressing objects: 80% (268/335) remote: Compressing objects: 81% (272/335) remote: Compressing objects: 82% (275/335) remote: Compressing objects: 83% (279/335) remote: Compressing objects: 84% (282/335) remote: Compressing objects: 85% (285/335) remote: Compressing objects: 86% (289/335) remote: Compressing objects: 87% (292/335) remote: Compressing objects: 88% (295/335) remote: Compressing objects: 89% (299/335) remote: Compressing objects: 90% (302/335) remote: Compressing objects: 91% (305/335) remote: Compressing objects: 92% (309/335) remote: Compressing objects: 93% (312/335) remote: Compressing objects: 94% (315/335) remote: Compressing objects: 95% (319/335) remote: Compressing objects: 96% (322/335) remote: Compressing objects: 97% (325/335) remote: Compressing objects: 98% (329/335) remote: Compressing objects: 99% (332/335) remote: Compressing objects: 100% (335/335) remote: Compressing objects: 100% (335/335), done. Receiving objects: 0% (1/3660) Receiving objects: 1% (37/3660) Receiving objects: 2% (74/3660) Receiving objects: 3% (110/3660) Receiving objects: 4% (147/3660) Receiving objects: 5% (183/3660) Receiving objects: 6% (220/3660) Receiving objects: 7% (257/3660) Receiving objects: 8% (293/3660) Receiving objects: 9% (330/3660) Receiving objects: 10% (366/3660) Receiving objects: 11% (403/3660) Receiving objects: 12% (440/3660) Receiving objects: 13% (476/3660) Receiving objects: 14% (513/3660) Receiving objects: 15% (549/3660) Receiving objects: 16% (586/3660) Receiving objects: 17% (623/3660) Receiving objects: 18% (659/3660) Receiving objects: 19% (696/3660) Receiving objects: 20% (732/3660) Receiving objects: 21% (769/3660) Receiving objects: 22% (806/3660) Receiving objects: 23% (842/3660) Receiving objects: 24% (879/3660) Receiving objects: 25% (915/3660) Receiving objects: 26% (952/3660) Receiving objects: 27% (989/3660) Receiving objects: 28% (1025/3660) Receiving objects: 29% (1062/3660) Receiving objects: 30% (1098/3660) Receiving objects: 31% (1135/3660) Receiving objects: 32% (1172/3660) Receiving objects: 33% (1208/3660) Receiving objects: 34% (1245/3660) Receiving objects: 35% (1281/3660) Receiving objects: 36% (1318/3660) Receiving objects: 37% (1355/3660) Receiving objects: 38% (1391/3660) Receiving objects: 39% (1428/3660) Receiving objects: 40% (1464/3660) Receiving objects: 41% (1501/3660) Receiving objects: 42% (1538/3660) Receiving objects: 43% (1574/3660) Receiving objects: 44% (1611/3660) Receiving objects: 45% (1647/3660) Receiving objects: 46% (1684/3660) Receiving objects: 47% (1721/3660) Receiving objects: 48% (1757/3660) Receiving objects: 49% (1794/3660) Receiving objects: 50% (1830/3660) Receiving objects: 51% (1867/3660) Receiving objects: 52% (1904/3660) Receiving objects: 53% (1940/3660) Receiving objects: 54% (1977/3660) Receiving objects: 55% (2013/3660) Receiving objects: 56% (2050/3660) Receiving objects: 57% (2087/3660) Receiving objects: 58% (2123/3660) Receiving objects: 59% (2160/3660) Receiving objects: 60% (2196/3660) Receiving objects: 61% (2233/3660) Receiving objects: 62% (2270/3660) Receiving objects: 63% (2306/3660) Receiving objects: 64% (2343/3660) Receiving objects: 65% (2379/3660) Receiving objects: 66% (2416/3660) Receiving objects: 67% (2453/3660) Receiving objects: 68% (2489/3660) Receiving objects: 69% (2526/3660) Receiving objects: 70% (2562/3660) Receiving objects: 71% (2599/3660) Receiving objects: 72% (2636/3660) Receiving objects: 73% (2672/3660) Receiving objects: 74% (2709/3660) Receiving objects: 75% (2745/3660) Receiving objects: 76% (2782/3660) Receiving objects: 77% (2819/3660) Receiving objects: 78% (2855/3660) Receiving objects: 79% (2892/3660) Receiving objects: 80% (2928/3660) Receiving objects: 81% (2965/3660) Receiving objects: 82% (3002/3660) Receiving objects: 83% (3038/3660) Receiving objects: 84% (3075/3660) Receiving objects: 85% (3111/3660) Receiving objects: 86% (3148/3660) Receiving objects: 87% (3185/3660) Receiving objects: 88% (3221/3660) Receiving objects: 89% (3258/3660) Receiving objects: 90% (3294/3660) Receiving objects: 91% (3331/3660) Receiving objects: 92% (3368/3660) Receiving objects: 93% (3404/3660) Receiving objects: 94% (3441/3660) Receiving objects: 95% (3477/3660) Receiving objects: 96% (3514/3660) Receiving objects: 97% (3551/3660) Receiving objects: 98% (3587/3660) Receiving objects: 99% (3624/3660) remote: Total 3660 (delta 391), reused 329 (delta 326), pack-reused 2995 (from 2) Receiving objects: 100% (3660/3660) Receiving objects: 100% (3660/3660), 723.65 KiB | 2.23 MiB/s, done. Resolving deltas: 0% (0/2173) Resolving deltas: 1% (22/2173) Resolving deltas: 2% (44/2173) Resolving deltas: 3% (66/2173) Resolving deltas: 4% (87/2173) Resolving deltas: 5% (109/2173) Resolving deltas: 6% (131/2173) Resolving deltas: 7% (153/2173) Resolving deltas: 8% (174/2173) Resolving deltas: 9% (196/2173) Resolving deltas: 10% (218/2173) Resolving deltas: 11% (240/2173) Resolving deltas: 12% (262/2173) Resolving deltas: 13% (283/2173) Resolving deltas: 14% (305/2173) Resolving deltas: 15% (326/2173) Resolving deltas: 16% (348/2173) Resolving deltas: 17% (370/2173) Resolving deltas: 18% (392/2173) Resolving deltas: 19% (413/2173) Resolving deltas: 20% (435/2173) Resolving deltas: 21% (457/2173) Resolving deltas: 22% (479/2173) Resolving deltas: 23% (500/2173) Resolving deltas: 24% (522/2173) Resolving deltas: 25% (544/2173) Resolving deltas: 26% (565/2173) Resolving deltas: 27% (587/2173) Resolving deltas: 28% (609/2173) Resolving deltas: 29% (631/2173) Resolving deltas: 30% (652/2173) Resolving deltas: 31% (674/2173) Resolving deltas: 32% (696/2173) Resolving deltas: 33% (718/2173) Resolving deltas: 34% (739/2173) Resolving deltas: 35% (762/2173) Resolving deltas: 36% (783/2173) Resolving deltas: 37% (805/2173) Resolving deltas: 38% (827/2173) Resolving deltas: 39% (848/2173) Resolving deltas: 40% (870/2173) Resolving deltas: 41% (891/2173) Resolving deltas: 42% (914/2173) Resolving deltas: 43% (935/2173) Resolving deltas: 44% (957/2173) Resolving deltas: 45% (978/2173) Resolving deltas: 46% (1000/2173) Resolving deltas: 47% (1022/2173) Resolving deltas: 48% (1044/2173) Resolving deltas: 49% (1065/2173) Resolving deltas: 50% (1087/2173) Resolving deltas: 51% (1109/2173) Resolving deltas: 52% (1130/2173) Resolving deltas: 53% (1152/2173) Resolving deltas: 54% (1174/2173) Resolving deltas: 55% (1196/2173) Resolving deltas: 56% (1217/2173) Resolving deltas: 57% (1239/2173) Resolving deltas: 58% (1261/2173) Resolving deltas: 59% (1283/2173) Resolving deltas: 60% (1304/2173) Resolving deltas: 61% (1326/2173) Resolving deltas: 62% (1348/2173) Resolving deltas: 63% (1369/2173) Resolving deltas: 64% (1391/2173) Resolving deltas: 65% (1413/2173) Resolving deltas: 66% (1435/2173) Resolving deltas: 67% (1456/2173) Resolving deltas: 68% (1478/2173) Resolving deltas: 69% (1500/2173) Resolving deltas: 70% (1522/2173) Resolving deltas: 71% (1543/2173) Resolving deltas: 72% (1565/2173) Resolving deltas: 73% (1587/2173) Resolving deltas: 74% (1609/2173) Resolving deltas: 75% (1630/2173) Resolving deltas: 76% (1652/2173) Resolving deltas: 77% (1674/2173) Resolving deltas: 78% (1695/2173) Resolving deltas: 79% (1717/2173) Resolving deltas: 80% (1739/2173) Resolving deltas: 81% (1761/2173) Resolving deltas: 82% (1782/2173) Resolving deltas: 83% (1804/2173) Resolving deltas: 84% (1826/2173) Resolving deltas: 85% (1848/2173) Resolving deltas: 86% (1869/2173) Resolving deltas: 87% (1891/2173) Resolving deltas: 88% (1913/2173) Resolving deltas: 89% (1934/2173) Resolving deltas: 90% (1956/2173) Resolving deltas: 91% (1978/2173) Resolving deltas: 92% (2001/2173) Resolving deltas: 93% (2021/2173) Resolving deltas: 94% (2043/2173) Resolving deltas: 95% (2065/2173) Resolving deltas: 96% (2087/2173) Resolving deltas: 97% (2108/2173) Resolving deltas: 98% (2130/2173) Resolving deltas: 99% (2152/2173) Resolving deltas: 100% (2173/2173) Resolving deltas: 100% (2173/2173), done. ==> Validating source files with sha512sums... validate-pyproject ... Passed ]2;🔵 Container arch-nspawn-687391 on snover.felixc.at==> Making package: python-validate-pyproject 0.22-2 (Mon Dec 23 22:19:04 2024) ==> Checking runtime dependencies... ==> Installing missing dependencies... [?25lresolving dependencies... looking for conflicting packages... Package (5) New Version Net Change Download Size extra/mpdecimal 4.0.0-2 0.29 MiB core/python 3.13.1-1 108.57 MiB extra/python-fastjsonschema 2.21.1-1 0.27 MiB 0.05 MiB extra/python-packaging 24.2-3 0.66 MiB extra/python-trove-classifiers 2024.10.21.16-3 0.12 MiB 0.02 MiB Total Download Size: 0.07 MiB Total Installed Size: 109.91 MiB :: Proceed with installation? [Y/n] :: Retrieving packages... python-fastjsonschema-2.21.1-1-any downloading... python-trove-classifiers-2024.10.21.16-3-any downloading... checking keyring... checking package integrity... loading package files... checking for file conflicts... :: Processing package changes... installing mpdecimal... installing python... Optional dependencies for python python-setuptools: for building Python packages using tooling that is usually bundled with Python python-pip: for installing Python packages using tooling that is usually bundled with Python python-pipx: for installing Python software not packaged on Arch Linux sqlite: for a default database integration [installed] xz: for lzma [installed] tk: for tkinter installing python-fastjsonschema... installing python-packaging... installing python-trove-classifiers... :: Running post-transaction hooks... (1/1) Arming ConditionNeedsUpdate... [?25h==> Checking buildtime dependencies... ==> Installing missing dependencies... [?25lresolving dependencies... looking for conflicting packages... Package (20) New Version Net Change Download Size extra/perl-error 0.17029-7 0.04 MiB extra/perl-mailtools 2.22-1 0.10 MiB extra/perl-timedate 2.33-7 0.08 MiB extra/python-autocommand 2.2.2-7 0.08 MiB extra/python-iniconfig 2.0.0-6 0.04 MiB 0.01 MiB extra/python-jaraco.collections 5.0.1-2 0.10 MiB extra/python-jaraco.context 5.3.0-3 0.04 MiB extra/python-jaraco.functools 4.1.0-1 0.07 MiB extra/python-jaraco.text 4.0.0-2 0.08 MiB extra/python-more-itertools 10.5.0-1 0.64 MiB extra/python-platformdirs 4.3.6-2 0.24 MiB extra/python-pluggy 1.5.0-3 0.20 MiB 0.04 MiB extra/python-pyproject-hooks 1.2.0-3 0.10 MiB extra/python-setuptools 1:75.2.0-4 8.05 MiB extra/git 2.47.1-1 27.20 MiB extra/python-build 1.2.2-3 0.20 MiB extra/python-installer 0.7.0-10 0.17 MiB extra/python-pytest 1:8.3.4-1 3.92 MiB 0.69 MiB extra/python-setuptools-scm 8.1.0-3 0.37 MiB 0.08 MiB extra/python-wheel 0.45.0-3 0.28 MiB Total Download Size: 0.83 MiB Total Installed Size: 42.02 MiB :: Proceed with installation? [Y/n] :: Retrieving packages... python-pytest-1:8.3.4-1-any downloading... python-setuptools-scm-8.1.0-3-any downloading... python-pluggy-1.5.0-3-any downloading... python-iniconfig-2.0.0-6-any downloading... checking keyring... checking package integrity... loading package files... checking for file conflicts... :: Processing package changes... installing perl-error... installing perl-timedate... installing perl-mailtools... installing git... Optional dependencies for git tk: gitk and git gui openssh: ssh transport and crypto perl-libwww: git svn perl-term-readkey: git svn and interactive.singlekey setting perl-io-socket-ssl: git send-email TLS support perl-authen-sasl: git send-email TLS support perl-mediawiki-api: git mediawiki support perl-datetime-format-iso8601: git mediawiki support perl-lwp-protocol-https: git mediawiki https support perl-cgi: gitweb (web interface) support python: git svn & git p4 [installed] subversion: git svn org.freedesktop.secrets: keyring credential helper libsecret: libsecret credential helper [installed] installing python-pyproject-hooks... installing python-build... Optional dependencies for python-build python-pip: to use as the Python package installer (default) python-uv: to use as the Python package installer python-virtualenv: to use virtualenv for build isolation installing python-installer... installing python-wheel... Optional dependencies for python-wheel python-keyring: for wheel.signatures python-xdg: for wheel.signatures python-setuptools: for legacy bdist_wheel subcommand [pending] installing python-more-itertools... installing python-jaraco.functools... installing python-jaraco.context... installing python-autocommand... installing python-jaraco.text... Optional dependencies for python-jaraco.text python-inflect: for show-newlines script installing python-jaraco.collections... installing python-platformdirs... installing python-setuptools... installing python-setuptools-scm... installing python-iniconfig... installing python-pluggy... installing python-pytest... :: Running post-transaction hooks... (1/4) Creating system user accounts... Creating group 'git' with GID 972. Creating user 'git' (git daemon user) with UID 972 and GID 972. (2/4) Reloading system manager configuration... Skipped: Current root is not booted. (3/4) Arming ConditionNeedsUpdate... (4/4) Warn about old perl modules [?25h==> Retrieving sources... ==> WARNING: Skipping all source file integrity checks. ==> Extracting sources...  -> Creating working copy of validate-pyproject git repo... Cloning into 'validate-pyproject'... done. Switched to a new branch 'makepkg' ==> Starting prepare()... ==> Starting build()... * Getting build dependencies for wheel... running egg_info creating src/validate_pyproject.egg-info writing src/validate_pyproject.egg-info/PKG-INFO writing dependency_links to src/validate_pyproject.egg-info/dependency_links.txt writing entry points to src/validate_pyproject.egg-info/entry_points.txt writing requirements to src/validate_pyproject.egg-info/requires.txt writing top-level names to src/validate_pyproject.egg-info/top_level.txt writing manifest file 'src/validate_pyproject.egg-info/SOURCES.txt' adding license file 'LICENSE.txt' adding license file 'NOTICE.txt' adding license file 'AUTHORS.rst' writing manifest file 'src/validate_pyproject.egg-info/SOURCES.txt' * Building wheel... running bdist_wheel running build running build_py creating build/lib/validate_pyproject copying src/validate_pyproject/repo_review.py -> build/lib/validate_pyproject copying src/validate_pyproject/cli.py -> build/lib/validate_pyproject copying src/validate_pyproject/remote.py -> build/lib/validate_pyproject copying src/validate_pyproject/api.py -> build/lib/validate_pyproject copying src/validate_pyproject/error_reporting.py -> build/lib/validate_pyproject copying src/validate_pyproject/extra_validations.py -> build/lib/validate_pyproject copying src/validate_pyproject/__init__.py -> build/lib/validate_pyproject copying src/validate_pyproject/types.py -> build/lib/validate_pyproject copying src/validate_pyproject/__main__.py -> build/lib/validate_pyproject copying src/validate_pyproject/_tomllib.py -> build/lib/validate_pyproject copying src/validate_pyproject/caching.py -> build/lib/validate_pyproject copying src/validate_pyproject/http.py -> build/lib/validate_pyproject copying src/validate_pyproject/errors.py -> build/lib/validate_pyproject copying src/validate_pyproject/formats.py -> build/lib/validate_pyproject creating build/lib/validate_pyproject/pre_compile copying src/validate_pyproject/pre_compile/cli.py -> build/lib/validate_pyproject/pre_compile copying src/validate_pyproject/pre_compile/__init__.py -> build/lib/validate_pyproject/pre_compile copying src/validate_pyproject/pre_compile/__main__.py -> build/lib/validate_pyproject/pre_compile creating build/lib/validate_pyproject/vendoring copying src/validate_pyproject/vendoring/cli.py -> build/lib/validate_pyproject/vendoring copying src/validate_pyproject/vendoring/__init__.py -> build/lib/validate_pyproject/vendoring copying src/validate_pyproject/vendoring/__main__.py -> build/lib/validate_pyproject/vendoring creating build/lib/validate_pyproject/plugins copying src/validate_pyproject/plugins/__init__.py -> build/lib/validate_pyproject/plugins running egg_info writing src/validate_pyproject.egg-info/PKG-INFO writing dependency_links to src/validate_pyproject.egg-info/dependency_links.txt writing entry points to src/validate_pyproject.egg-info/entry_points.txt writing requirements to src/validate_pyproject.egg-info/requires.txt writing top-level names to src/validate_pyproject.egg-info/top_level.txt adding license file 'LICENSE.txt' adding license file 'NOTICE.txt' adding license file 'AUTHORS.rst' writing manifest file 'src/validate_pyproject.egg-info/SOURCES.txt' copying src/validate_pyproject/project_metadata.schema.json -> build/lib/validate_pyproject copying src/validate_pyproject/py.typed -> build/lib/validate_pyproject copying src/validate_pyproject/pyproject_toml.schema.json -> build/lib/validate_pyproject copying src/validate_pyproject/pre_compile/NOTICE.template -> build/lib/validate_pyproject/pre_compile copying src/validate_pyproject/pre_compile/api-notice.template -> build/lib/validate_pyproject/pre_compile copying src/validate_pyproject/pre_compile/cli-notice.template -> build/lib/validate_pyproject/pre_compile copying src/validate_pyproject/pre_compile/main_file.template -> build/lib/validate_pyproject/pre_compile copying src/validate_pyproject/plugins/distutils.schema.json -> build/lib/validate_pyproject/plugins copying src/validate_pyproject/plugins/setuptools.schema.json -> build/lib/validate_pyproject/plugins installing to build/bdist.linux-riscv64/wheel running install running install_lib creating build/bdist.linux-riscv64/wheel creating build/bdist.linux-riscv64/wheel/validate_pyproject copying build/lib/validate_pyproject/repo_review.py -> build/bdist.linux-riscv64/wheel/./validate_pyproject copying build/lib/validate_pyproject/cli.py -> build/bdist.linux-riscv64/wheel/./validate_pyproject copying build/lib/validate_pyproject/remote.py -> build/bdist.linux-riscv64/wheel/./validate_pyproject copying build/lib/validate_pyproject/api.py -> build/bdist.linux-riscv64/wheel/./validate_pyproject creating build/bdist.linux-riscv64/wheel/validate_pyproject/pre_compile copying build/lib/validate_pyproject/pre_compile/main_file.template -> build/bdist.linux-riscv64/wheel/./validate_pyproject/pre_compile copying build/lib/validate_pyproject/pre_compile/cli.py -> build/bdist.linux-riscv64/wheel/./validate_pyproject/pre_compile copying build/lib/validate_pyproject/pre_compile/cli-notice.template -> build/bdist.linux-riscv64/wheel/./validate_pyproject/pre_compile copying build/lib/validate_pyproject/pre_compile/api-notice.template -> build/bdist.linux-riscv64/wheel/./validate_pyproject/pre_compile copying build/lib/validate_pyproject/pre_compile/__init__.py -> build/bdist.linux-riscv64/wheel/./validate_pyproject/pre_compile copying build/lib/validate_pyproject/pre_compile/__main__.py -> build/bdist.linux-riscv64/wheel/./validate_pyproject/pre_compile copying build/lib/validate_pyproject/pre_compile/NOTICE.template -> build/bdist.linux-riscv64/wheel/./validate_pyproject/pre_compile copying build/lib/validate_pyproject/error_reporting.py -> build/bdist.linux-riscv64/wheel/./validate_pyproject copying build/lib/validate_pyproject/extra_validations.py -> build/bdist.linux-riscv64/wheel/./validate_pyproject creating build/bdist.linux-riscv64/wheel/validate_pyproject/vendoring copying build/lib/validate_pyproject/vendoring/cli.py -> build/bdist.linux-riscv64/wheel/./validate_pyproject/vendoring copying build/lib/validate_pyproject/vendoring/__init__.py -> build/bdist.linux-riscv64/wheel/./validate_pyproject/vendoring copying build/lib/validate_pyproject/vendoring/__main__.py -> build/bdist.linux-riscv64/wheel/./validate_pyproject/vendoring copying build/lib/validate_pyproject/py.typed -> build/bdist.linux-riscv64/wheel/./validate_pyproject copying build/lib/validate_pyproject/__init__.py -> build/bdist.linux-riscv64/wheel/./validate_pyproject copying build/lib/validate_pyproject/types.py -> build/bdist.linux-riscv64/wheel/./validate_pyproject copying build/lib/validate_pyproject/__main__.py -> build/bdist.linux-riscv64/wheel/./validate_pyproject copying build/lib/validate_pyproject/pyproject_toml.schema.json -> build/bdist.linux-riscv64/wheel/./validate_pyproject copying build/lib/validate_pyproject/_tomllib.py -> build/bdist.linux-riscv64/wheel/./validate_pyproject copying build/lib/validate_pyproject/caching.py -> build/bdist.linux-riscv64/wheel/./validate_pyproject creating build/bdist.linux-riscv64/wheel/validate_pyproject/plugins copying build/lib/validate_pyproject/plugins/__init__.py -> build/bdist.linux-riscv64/wheel/./validate_pyproject/plugins copying build/lib/validate_pyproject/plugins/setuptools.schema.json -> build/bdist.linux-riscv64/wheel/./validate_pyproject/plugins copying build/lib/validate_pyproject/plugins/distutils.schema.json -> build/bdist.linux-riscv64/wheel/./validate_pyproject/plugins copying build/lib/validate_pyproject/http.py -> build/bdist.linux-riscv64/wheel/./validate_pyproject copying build/lib/validate_pyproject/project_metadata.schema.json -> build/bdist.linux-riscv64/wheel/./validate_pyproject copying build/lib/validate_pyproject/errors.py -> build/bdist.linux-riscv64/wheel/./validate_pyproject copying build/lib/validate_pyproject/formats.py -> build/bdist.linux-riscv64/wheel/./validate_pyproject running install_egg_info Copying src/validate_pyproject.egg-info to build/bdist.linux-riscv64/wheel/./validate_pyproject-0.22-py3.13.egg-info running install_scripts creating build/bdist.linux-riscv64/wheel/validate_pyproject-0.22.dist-info/WHEEL creating '/build/python-validate-pyproject/src/validate-pyproject/dist/.tmp-ap52ht_f/validate_pyproject-0.22-py3-none-any.whl' and adding 'build/bdist.linux-riscv64/wheel' to it adding 'validate_pyproject/__init__.py' adding 'validate_pyproject/__main__.py' adding 'validate_pyproject/_tomllib.py' adding 'validate_pyproject/api.py' adding 'validate_pyproject/caching.py' adding 'validate_pyproject/cli.py' adding 'validate_pyproject/error_reporting.py' adding 'validate_pyproject/errors.py' adding 'validate_pyproject/extra_validations.py' adding 'validate_pyproject/formats.py' adding 'validate_pyproject/http.py' adding 'validate_pyproject/project_metadata.schema.json' adding 'validate_pyproject/py.typed' adding 'validate_pyproject/pyproject_toml.schema.json' adding 'validate_pyproject/remote.py' adding 'validate_pyproject/repo_review.py' adding 'validate_pyproject/types.py' adding 'validate_pyproject/plugins/__init__.py' adding 'validate_pyproject/plugins/distutils.schema.json' adding 'validate_pyproject/plugins/setuptools.schema.json' adding 'validate_pyproject/pre_compile/NOTICE.template' adding 'validate_pyproject/pre_compile/__init__.py' adding 'validate_pyproject/pre_compile/__main__.py' adding 'validate_pyproject/pre_compile/api-notice.template' adding 'validate_pyproject/pre_compile/cli-notice.template' adding 'validate_pyproject/pre_compile/cli.py' adding 'validate_pyproject/pre_compile/main_file.template' adding 'validate_pyproject/vendoring/__init__.py' adding 'validate_pyproject/vendoring/__main__.py' adding 'validate_pyproject/vendoring/cli.py' adding 'validate_pyproject-0.22.dist-info/AUTHORS.rst' adding 'validate_pyproject-0.22.dist-info/LICENSE.txt' adding 'validate_pyproject-0.22.dist-info/METADATA' adding 'validate_pyproject-0.22.dist-info/NOTICE.txt' adding 'validate_pyproject-0.22.dist-info/WHEEL' adding 'validate_pyproject-0.22.dist-info/entry_points.txt' adding 'validate_pyproject-0.22.dist-info/top_level.txt' adding 'validate_pyproject-0.22.dist-info/RECORD' removing build/bdist.linux-riscv64/wheel Successfully built validate_pyproject-0.22-py3-none-any.whl ==> Starting check()... ============================= test session starts ============================== platform linux -- Python 3.13.1, pytest-8.3.4, pluggy-1.5.0 rootdir: /build/python-validate-pyproject/src/validate-pyproject configfile: pyproject.toml collected 1 item src/validate_pyproject/error_reporting.py . [100%] ============================== 1 passed in 0.43s =============================== ============================= test session starts ============================== platform linux -- Python 3.13.1, pytest-8.3.4, pluggy-1.5.0 rootdir: /build/python-validate-pyproject/src/validate-pyproject configfile: pyproject.toml testpaths: src, tests collected 527 items / 153 deselected / 374 selected tests/pre_compile/test_cli.py .. [ 0%] tests/test_api.py .............. [ 4%] tests/test_caching.py .... [ 5%] tests/test_cli.py .................... [ 10%] tests/test_error_reporting.py ...... [ 12%] tests/test_examples.py ..................F.............................. [ 25%] ..F......................FFFFF....................................FFFFF. [ 44%] ........................... [ 51%] tests/test_formats.py .................................................. [ 65%] ........................................................................ [ 84%] .................................. [ 93%] tests/test_json_schema_summary.py ........... [ 96%] tests/test_plugins.py .... [ 97%] tests/test_repo_review.py ......... [100%] =================================== FAILURES =================================== ____________________ test_examples_api[store/example.toml] _____________________ example = PosixPath('/build/python-validate-pyproject/src/validate-pyproject/tests/examples/store/example.toml') def test_examples_api(example: Path) -> None: load_tools = get_tools(example) toml_equivalent = tomllib.loads(example.read_text()) copy_toml = copy.deepcopy(toml_equivalent) validator = api.Validator(extra_plugins=load_tools) > assert validator(toml_equivalent) is not None tests/test_examples.py:20: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/api.py:264: in __call__ compiled = FJS.compile( /usr/lib/python3.13/site-packages/fastjsonschema/__init__.py:215: in compile global_state = code_generator.global_state /usr/lib/python3.13/site-packages/fastjsonschema/draft04.py:73: in global_state res = super().global_state /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:87: in global_state self._generate_func_code() /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:122: in _generate_func_code self.generate_func_code() /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:136: in generate_func_code self.generate_validation_function(uri, name) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:146: in generate_validation_function self.generate_func_code_block(definition, 'data', 'data', clear_variables=True) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:161: in generate_func_code_block count = self._generate_func_code_block(definition) /usr/lib/python3.13/site-packages/fastjsonschema/draft06.py:36: in _generate_func_code_block self.run_generate_functions(definition) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:183: in run_generate_functions func() /usr/lib/python3.13/site-packages/fastjsonschema/draft06.py:76: in generate_type self.exc('{name} must be {}', ' or '.join(types), rule='type') /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:278: in exc definition = self._expand_refs(self._definition) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:290: in _expand_refs return {k: self._expand_refs(v) for k, v in definition.items()} /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:290: in _expand_refs return {k: self._expand_refs(v) for k, v in definition.items()} /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:288: in _expand_refs with self._resolver.resolving(definition["$ref"]) as schema: /usr/lib/python3.13/contextlib.py:141: in __enter__ return next(self.gen) /usr/lib/python3.13/site-packages/fastjsonschema/ref_resolver.py:136: in resolving schema = resolve_remote(uri, self.handlers) /usr/lib/python3.13/site-packages/fastjsonschema/ref_resolver.py:59: in resolve_remote result = handlers[scheme](uri) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = key = 'https://json.schemastore.org/partial-pdm-dockerize.json' def __getitem__(self, key: str) -> Schema: > return self._schemas[key][-1] E KeyError: 'https://json.schemastore.org/partial-pdm-dockerize.json' tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/api.py:156: KeyError ____________________ test_examples_cli[store/example.toml] _____________________ example = PosixPath('/build/python-validate-pyproject/src/validate-pyproject/tests/examples/store/example.toml') def test_examples_cli(example: Path) -> None: args = get_tools_as_args(example) > assert cli.run(["--dump-json", str(example), *args]) == 0 # no errors tests/test_examples.py:27: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/cli.py:233: in run _run_on_file(validator, params, file) tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/cli.py:247: in _run_on_file validator(toml_equivalent) tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/api.py:264: in __call__ compiled = FJS.compile( /usr/lib/python3.13/site-packages/fastjsonschema/__init__.py:215: in compile global_state = code_generator.global_state /usr/lib/python3.13/site-packages/fastjsonschema/draft04.py:73: in global_state res = super().global_state /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:87: in global_state self._generate_func_code() /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:122: in _generate_func_code self.generate_func_code() /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:136: in generate_func_code self.generate_validation_function(uri, name) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:146: in generate_validation_function self.generate_func_code_block(definition, 'data', 'data', clear_variables=True) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:161: in generate_func_code_block count = self._generate_func_code_block(definition) /usr/lib/python3.13/site-packages/fastjsonschema/draft06.py:36: in _generate_func_code_block self.run_generate_functions(definition) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:183: in run_generate_functions func() /usr/lib/python3.13/site-packages/fastjsonschema/draft06.py:76: in generate_type self.exc('{name} must be {}', ' or '.join(types), rule='type') /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:278: in exc definition = self._expand_refs(self._definition) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:290: in _expand_refs return {k: self._expand_refs(v) for k, v in definition.items()} /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:290: in _expand_refs return {k: self._expand_refs(v) for k, v in definition.items()} /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:288: in _expand_refs with self._resolver.resolving(definition["$ref"]) as schema: /usr/lib/python3.13/contextlib.py:141: in __enter__ return next(self.gen) /usr/lib/python3.13/site-packages/fastjsonschema/ref_resolver.py:136: in resolving schema = resolve_remote(uri, self.handlers) /usr/lib/python3.13/site-packages/fastjsonschema/ref_resolver.py:59: in resolve_remote result = handlers[scheme](uri) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = key = 'https://json.schemastore.org/partial-pdm-dockerize.json' def __getitem__(self, key: str) -> Schema: > return self._schemas[key][-1] E KeyError: 'https://json.schemastore.org/partial-pdm-dockerize.json' tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/api.py:156: KeyError ______________ test_invalid_examples_api[store/ruff-unknown.toml] ______________ invalid_example = PosixPath('/build/python-validate-pyproject/src/validate-pyproject/tests/invalid-examples/store/ruff-unknown.toml') def test_invalid_examples_api(invalid_example: Path) -> None: load_tools = get_tools(invalid_example) expected_error = error_file(invalid_example).read_text("utf-8") toml_equivalent = tomllib.loads(invalid_example.read_text()) validator = api.Validator(extra_plugins=load_tools) with pytest.raises(ValidationError) as exc_info: > validator(toml_equivalent) tests/test_examples.py:37: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/api.py:264: in __call__ compiled = FJS.compile( /usr/lib/python3.13/site-packages/fastjsonschema/__init__.py:215: in compile global_state = code_generator.global_state /usr/lib/python3.13/site-packages/fastjsonschema/draft04.py:73: in global_state res = super().global_state /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:87: in global_state self._generate_func_code() /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:122: in _generate_func_code self.generate_func_code() /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:136: in generate_func_code self.generate_validation_function(uri, name) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:146: in generate_validation_function self.generate_func_code_block(definition, 'data', 'data', clear_variables=True) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:161: in generate_func_code_block count = self._generate_func_code_block(definition) /usr/lib/python3.13/site-packages/fastjsonschema/draft06.py:36: in _generate_func_code_block self.run_generate_functions(definition) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:183: in run_generate_functions func() /usr/lib/python3.13/site-packages/fastjsonschema/draft06.py:76: in generate_type self.exc('{name} must be {}', ' or '.join(types), rule='type') /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:278: in exc definition = self._expand_refs(self._definition) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:290: in _expand_refs return {k: self._expand_refs(v) for k, v in definition.items()} /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:290: in _expand_refs return {k: self._expand_refs(v) for k, v in definition.items()} /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:288: in _expand_refs with self._resolver.resolving(definition["$ref"]) as schema: /usr/lib/python3.13/contextlib.py:141: in __enter__ return next(self.gen) /usr/lib/python3.13/site-packages/fastjsonschema/ref_resolver.py:136: in resolving schema = resolve_remote(uri, self.handlers) /usr/lib/python3.13/site-packages/fastjsonschema/ref_resolver.py:59: in resolve_remote result = handlers[scheme](uri) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = key = 'https://json.schemastore.org/partial-pdm-dockerize.json' def __getitem__(self, key: str) -> Schema: > return self._schemas[key][-1] E KeyError: 'https://json.schemastore.org/partial-pdm-dockerize.json' tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/api.py:156: KeyError __________ test_invalid_examples_api[store/cibw-unknown-option.toml] ___________ invalid_example = PosixPath('/build/python-validate-pyproject/src/validate-pyproject/tests/invalid-examples/store/cibw-unknown-option.toml') def test_invalid_examples_api(invalid_example: Path) -> None: load_tools = get_tools(invalid_example) expected_error = error_file(invalid_example).read_text("utf-8") toml_equivalent = tomllib.loads(invalid_example.read_text()) validator = api.Validator(extra_plugins=load_tools) with pytest.raises(ValidationError) as exc_info: > validator(toml_equivalent) tests/test_examples.py:37: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/api.py:264: in __call__ compiled = FJS.compile( /usr/lib/python3.13/site-packages/fastjsonschema/__init__.py:215: in compile global_state = code_generator.global_state /usr/lib/python3.13/site-packages/fastjsonschema/draft04.py:73: in global_state res = super().global_state /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:87: in global_state self._generate_func_code() /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:122: in _generate_func_code self.generate_func_code() /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:136: in generate_func_code self.generate_validation_function(uri, name) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:146: in generate_validation_function self.generate_func_code_block(definition, 'data', 'data', clear_variables=True) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:161: in generate_func_code_block count = self._generate_func_code_block(definition) /usr/lib/python3.13/site-packages/fastjsonschema/draft06.py:36: in _generate_func_code_block self.run_generate_functions(definition) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:183: in run_generate_functions func() /usr/lib/python3.13/site-packages/fastjsonschema/draft06.py:76: in generate_type self.exc('{name} must be {}', ' or '.join(types), rule='type') /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:278: in exc definition = self._expand_refs(self._definition) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:290: in _expand_refs return {k: self._expand_refs(v) for k, v in definition.items()} /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:290: in _expand_refs return {k: self._expand_refs(v) for k, v in definition.items()} /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:288: in _expand_refs with self._resolver.resolving(definition["$ref"]) as schema: /usr/lib/python3.13/contextlib.py:141: in __enter__ return next(self.gen) /usr/lib/python3.13/site-packages/fastjsonschema/ref_resolver.py:136: in resolving schema = resolve_remote(uri, self.handlers) /usr/lib/python3.13/site-packages/fastjsonschema/ref_resolver.py:59: in resolve_remote result = handlers[scheme](uri) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = key = 'https://json.schemastore.org/partial-pdm-dockerize.json' def __getitem__(self, key: str) -> Schema: > return self._schemas[key][-1] E KeyError: 'https://json.schemastore.org/partial-pdm-dockerize.json' tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/api.py:156: KeyError ______________ test_invalid_examples_api[store/ruff-badcode.toml] ______________ invalid_example = PosixPath('/build/python-validate-pyproject/src/validate-pyproject/tests/invalid-examples/store/ruff-badcode.toml') def test_invalid_examples_api(invalid_example: Path) -> None: load_tools = get_tools(invalid_example) expected_error = error_file(invalid_example).read_text("utf-8") toml_equivalent = tomllib.loads(invalid_example.read_text()) validator = api.Validator(extra_plugins=load_tools) with pytest.raises(ValidationError) as exc_info: > validator(toml_equivalent) tests/test_examples.py:37: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/api.py:264: in __call__ compiled = FJS.compile( /usr/lib/python3.13/site-packages/fastjsonschema/__init__.py:215: in compile global_state = code_generator.global_state /usr/lib/python3.13/site-packages/fastjsonschema/draft04.py:73: in global_state res = super().global_state /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:87: in global_state self._generate_func_code() /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:122: in _generate_func_code self.generate_func_code() /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:136: in generate_func_code self.generate_validation_function(uri, name) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:146: in generate_validation_function self.generate_func_code_block(definition, 'data', 'data', clear_variables=True) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:161: in generate_func_code_block count = self._generate_func_code_block(definition) /usr/lib/python3.13/site-packages/fastjsonschema/draft06.py:36: in _generate_func_code_block self.run_generate_functions(definition) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:183: in run_generate_functions func() /usr/lib/python3.13/site-packages/fastjsonschema/draft06.py:76: in generate_type self.exc('{name} must be {}', ' or '.join(types), rule='type') /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:278: in exc definition = self._expand_refs(self._definition) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:290: in _expand_refs return {k: self._expand_refs(v) for k, v in definition.items()} /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:290: in _expand_refs return {k: self._expand_refs(v) for k, v in definition.items()} /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:288: in _expand_refs with self._resolver.resolving(definition["$ref"]) as schema: /usr/lib/python3.13/contextlib.py:141: in __enter__ return next(self.gen) /usr/lib/python3.13/site-packages/fastjsonschema/ref_resolver.py:136: in resolving schema = resolve_remote(uri, self.handlers) /usr/lib/python3.13/site-packages/fastjsonschema/ref_resolver.py:59: in resolve_remote result = handlers[scheme](uri) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = key = 'https://json.schemastore.org/partial-pdm-dockerize.json' def __getitem__(self, key: str) -> Schema: > return self._schemas[key][-1] E KeyError: 'https://json.schemastore.org/partial-pdm-dockerize.json' tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/api.py:156: KeyError ________ test_invalid_examples_api[store/cibw-overrides-noaction.toml] _________ invalid_example = PosixPath('/build/python-validate-pyproject/src/validate-pyproject/tests/invalid-examples/store/cibw-overrides-noaction.toml') def test_invalid_examples_api(invalid_example: Path) -> None: load_tools = get_tools(invalid_example) expected_error = error_file(invalid_example).read_text("utf-8") toml_equivalent = tomllib.loads(invalid_example.read_text()) validator = api.Validator(extra_plugins=load_tools) with pytest.raises(ValidationError) as exc_info: > validator(toml_equivalent) tests/test_examples.py:37: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/api.py:264: in __call__ compiled = FJS.compile( /usr/lib/python3.13/site-packages/fastjsonschema/__init__.py:215: in compile global_state = code_generator.global_state /usr/lib/python3.13/site-packages/fastjsonschema/draft04.py:73: in global_state res = super().global_state /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:87: in global_state self._generate_func_code() /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:122: in _generate_func_code self.generate_func_code() /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:136: in generate_func_code self.generate_validation_function(uri, name) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:146: in generate_validation_function self.generate_func_code_block(definition, 'data', 'data', clear_variables=True) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:161: in generate_func_code_block count = self._generate_func_code_block(definition) /usr/lib/python3.13/site-packages/fastjsonschema/draft06.py:36: in _generate_func_code_block self.run_generate_functions(definition) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:183: in run_generate_functions func() /usr/lib/python3.13/site-packages/fastjsonschema/draft06.py:76: in generate_type self.exc('{name} must be {}', ' or '.join(types), rule='type') /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:278: in exc definition = self._expand_refs(self._definition) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:290: in _expand_refs return {k: self._expand_refs(v) for k, v in definition.items()} /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:290: in _expand_refs return {k: self._expand_refs(v) for k, v in definition.items()} /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:288: in _expand_refs with self._resolver.resolving(definition["$ref"]) as schema: /usr/lib/python3.13/contextlib.py:141: in __enter__ return next(self.gen) /usr/lib/python3.13/site-packages/fastjsonschema/ref_resolver.py:136: in resolving schema = resolve_remote(uri, self.handlers) /usr/lib/python3.13/site-packages/fastjsonschema/ref_resolver.py:59: in resolve_remote result = handlers[scheme](uri) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = key = 'https://json.schemastore.org/partial-pdm-dockerize.json' def __getitem__(self, key: str) -> Schema: > return self._schemas[key][-1] E KeyError: 'https://json.schemastore.org/partial-pdm-dockerize.json' tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/api.py:156: KeyError ________ test_invalid_examples_api[store/cibw-overrides-noselect.toml] _________ invalid_example = PosixPath('/build/python-validate-pyproject/src/validate-pyproject/tests/invalid-examples/store/cibw-overrides-noselect.toml') def test_invalid_examples_api(invalid_example: Path) -> None: load_tools = get_tools(invalid_example) expected_error = error_file(invalid_example).read_text("utf-8") toml_equivalent = tomllib.loads(invalid_example.read_text()) validator = api.Validator(extra_plugins=load_tools) with pytest.raises(ValidationError) as exc_info: > validator(toml_equivalent) tests/test_examples.py:37: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/api.py:264: in __call__ compiled = FJS.compile( /usr/lib/python3.13/site-packages/fastjsonschema/__init__.py:215: in compile global_state = code_generator.global_state /usr/lib/python3.13/site-packages/fastjsonschema/draft04.py:73: in global_state res = super().global_state /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:87: in global_state self._generate_func_code() /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:122: in _generate_func_code self.generate_func_code() /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:136: in generate_func_code self.generate_validation_function(uri, name) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:146: in generate_validation_function self.generate_func_code_block(definition, 'data', 'data', clear_variables=True) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:161: in generate_func_code_block count = self._generate_func_code_block(definition) /usr/lib/python3.13/site-packages/fastjsonschema/draft06.py:36: in _generate_func_code_block self.run_generate_functions(definition) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:183: in run_generate_functions func() /usr/lib/python3.13/site-packages/fastjsonschema/draft06.py:76: in generate_type self.exc('{name} must be {}', ' or '.join(types), rule='type') /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:278: in exc definition = self._expand_refs(self._definition) /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:290: in _expand_refs return {k: self._expand_refs(v) for k, v in definition.items()} /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:290: in _expand_refs return {k: self._expand_refs(v) for k, v in definition.items()} /usr/lib/python3.13/site-packages/fastjsonschema/generator.py:288: in _expand_refs with self._resolver.resolving(definition["$ref"]) as schema: /usr/lib/python3.13/contextlib.py:141: in __enter__ return next(self.gen) /usr/lib/python3.13/site-packages/fastjsonschema/ref_resolver.py:136: in resolving schema = resolve_remote(uri, self.handlers) /usr/lib/python3.13/site-packages/fastjsonschema/ref_resolver.py:59: in resolve_remote result = handlers[scheme](uri) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = key = 'https://json.schemastore.org/partial-pdm-dockerize.json' def __getitem__(self, key: str) -> Schema: > return self._schemas[key][-1] E KeyError: 'https://json.schemastore.org/partial-pdm-dockerize.json' tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/api.py:156: KeyError ______________ test_invalid_examples_cli[store/ruff-unknown.toml] ______________ invalid_example = PosixPath('/build/python-validate-pyproject/src/validate-pyproject/tests/invalid-examples/store/ruff-unknown.toml') caplog = <_pytest.logging.LogCaptureFixture object at 0x7fffa1283950> def test_invalid_examples_cli(invalid_example: Path, caplog) -> None: args = get_tools_as_args(invalid_example) caplog.set_level(logging.DEBUG) expected_error = error_file(invalid_example).read_text("utf-8") with pytest.raises(SystemExit) as exc_info: cli.main([str(invalid_example), *args]) assert exc_info.value.args == (1,) for error in expected_error.splitlines(): > assert error in caplog.text E assert "`tool.ruff` must not contain {'not-a-real-option'} properties" in "INFO validate_pyproject.remote:remote.py:76 Loading black from store: https://json.schemastore.org/pyproject.json...schemas[key][-1]\n ~~~~~~~~~~~~~^^^^^\nKeyError: 'https://json.schemastore.org/partial-pdm-dockerize.json'\n" E + where "INFO validate_pyproject.remote:remote.py:76 Loading black from store: https://json.schemastore.org/pyproject.json...schemas[key][-1]\n ~~~~~~~~~~~~~^^^^^\nKeyError: 'https://json.schemastore.org/partial-pdm-dockerize.json'\n" = <_pytest.logging.LogCaptureFixture object at 0x7fffa1283950>.text tests/test_examples.py:54: AssertionError ------------------------------ Captured log call ------------------------------- INFO validate_pyproject.remote:remote.py:76 Loading black from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading cibuildwheel from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading mypy from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading ruff from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading hatch from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading scikit-build from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading setuptools_scm from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading poe from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading poetry from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading pdm from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading pyright from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading tox from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading uv from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.api:api.py:117 validate_pyproject.api.load_builtin_plugin defines `tool.distutils` schema INFO validate_pyproject.api:api.py:117 validate_pyproject.api.load_builtin_plugin defines `tool.setuptools` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-black.json defines `tool.black` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-cibuildwheel.json defines `tool.cibuildwheel` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-mypy.json defines `tool.mypy` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/ruff.json defines `tool.ruff` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/hatch.json defines `tool.hatch` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-scikit-build.json defines `tool.scikit-build` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-setuptools-scm.json defines `tool.setuptools_scm` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-poe.json defines `tool.poe` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-poetry.json defines `tool.poetry` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-pdm.json defines `tool.pdm` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-pyright.json defines `tool.pyright` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-tox.json defines `tool.tox` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/uv.json defines `tool.uv` schema ERROR validate_pyproject:cli.py:206 KeyError: 'https://json.schemastore.org/partial-pdm-dockerize.json' DEBUG validate_pyproject:cli.py:207 Please check the following information: Traceback (most recent call last): File "/build/python-validate-pyproject/src/validate-pyproject/tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/cli.py", line 196, in exceptions2exit yield File "/usr/lib/python3.13/contextlib.py", line 85, in inner return func(*args, **kwds) File "/build/python-validate-pyproject/src/validate-pyproject/tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/cli.py", line 233, in run _run_on_file(validator, params, file) ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ File "/build/python-validate-pyproject/src/validate-pyproject/tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/cli.py", line 247, in _run_on_file validator(toml_equivalent) ~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/build/python-validate-pyproject/src/validate-pyproject/tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/api.py", line 264, in __call__ compiled = FJS.compile( self.schema, self.handlers, dict(self.formats), use_default=False ) File "/usr/lib/python3.13/site-packages/fastjsonschema/__init__.py", line 215, in compile global_state = code_generator.global_state ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/draft04.py", line 73, in global_state res = super().global_state ^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 87, in global_state self._generate_func_code() ~~~~~~~~~~~~~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 122, in _generate_func_code self.generate_func_code() ~~~~~~~~~~~~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 136, in generate_func_code self.generate_validation_function(uri, name) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 146, in generate_validation_function self.generate_func_code_block(definition, 'data', 'data', clear_variables=True) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 161, in generate_func_code_block count = self._generate_func_code_block(definition) File "/usr/lib/python3.13/site-packages/fastjsonschema/draft06.py", line 36, in _generate_func_code_block self.run_generate_functions(definition) ~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 183, in run_generate_functions func() ~~~~^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/draft06.py", line 76, in generate_type self.exc('{name} must be {}', ' or '.join(types), rule='type') ~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 278, in exc definition = self._expand_refs(self._definition) File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 290, in _expand_refs return {k: self._expand_refs(v) for k, v in definition.items()} ~~~~~~~~~~~~~~~~~^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 290, in _expand_refs return {k: self._expand_refs(v) for k, v in definition.items()} ~~~~~~~~~~~~~~~~~^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 288, in _expand_refs with self._resolver.resolving(definition["$ref"]) as schema: ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/contextlib.py", line 141, in __enter__ return next(self.gen) File "/usr/lib/python3.13/site-packages/fastjsonschema/ref_resolver.py", line 136, in resolving schema = resolve_remote(uri, self.handlers) File "/usr/lib/python3.13/site-packages/fastjsonschema/ref_resolver.py", line 59, in resolve_remote result = handlers[scheme](uri) File "/build/python-validate-pyproject/src/validate-pyproject/tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/api.py", line 156, in __getitem__ return self._schemas[key][-1] ~~~~~~~~~~~~~^^^^^ KeyError: 'https://json.schemastore.org/partial-pdm-dockerize.json' __________ test_invalid_examples_cli[store/cibw-unknown-option.toml] ___________ invalid_example = PosixPath('/build/python-validate-pyproject/src/validate-pyproject/tests/invalid-examples/store/cibw-unknown-option.toml') caplog = <_pytest.logging.LogCaptureFixture object at 0x7fffa12428d0> def test_invalid_examples_cli(invalid_example: Path, caplog) -> None: args = get_tools_as_args(invalid_example) caplog.set_level(logging.DEBUG) expected_error = error_file(invalid_example).read_text("utf-8") with pytest.raises(SystemExit) as exc_info: cli.main([str(invalid_example), *args]) assert exc_info.value.args == (1,) for error in expected_error.splitlines(): > assert error in caplog.text E assert "`tool.cibuildwheel` must not contain {'no-a-read-option'} properties" in "INFO validate_pyproject.remote:remote.py:76 Loading black from store: https://json.schemastore.org/pyproject.json...schemas[key][-1]\n ~~~~~~~~~~~~~^^^^^\nKeyError: 'https://json.schemastore.org/partial-pdm-dockerize.json'\n" E + where "INFO validate_pyproject.remote:remote.py:76 Loading black from store: https://json.schemastore.org/pyproject.json...schemas[key][-1]\n ~~~~~~~~~~~~~^^^^^\nKeyError: 'https://json.schemastore.org/partial-pdm-dockerize.json'\n" = <_pytest.logging.LogCaptureFixture object at 0x7fffa12428d0>.text tests/test_examples.py:54: AssertionError ------------------------------ Captured log call ------------------------------- INFO validate_pyproject.remote:remote.py:76 Loading black from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading cibuildwheel from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading mypy from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading ruff from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading hatch from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading scikit-build from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading setuptools_scm from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading poe from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading poetry from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading pdm from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading pyright from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading tox from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading uv from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.api:api.py:117 validate_pyproject.api.load_builtin_plugin defines `tool.distutils` schema INFO validate_pyproject.api:api.py:117 validate_pyproject.api.load_builtin_plugin defines `tool.setuptools` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-black.json defines `tool.black` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-cibuildwheel.json defines `tool.cibuildwheel` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-mypy.json defines `tool.mypy` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/ruff.json defines `tool.ruff` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/hatch.json defines `tool.hatch` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-scikit-build.json defines `tool.scikit-build` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-setuptools-scm.json defines `tool.setuptools_scm` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-poe.json defines `tool.poe` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-poetry.json defines `tool.poetry` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-pdm.json defines `tool.pdm` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-pyright.json defines `tool.pyright` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-tox.json defines `tool.tox` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/uv.json defines `tool.uv` schema ERROR validate_pyproject:cli.py:206 KeyError: 'https://json.schemastore.org/partial-pdm-dockerize.json' DEBUG validate_pyproject:cli.py:207 Please check the following information: Traceback (most recent call last): File "/build/python-validate-pyproject/src/validate-pyproject/tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/cli.py", line 196, in exceptions2exit yield File "/usr/lib/python3.13/contextlib.py", line 85, in inner return func(*args, **kwds) File "/build/python-validate-pyproject/src/validate-pyproject/tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/cli.py", line 233, in run _run_on_file(validator, params, file) ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ File "/build/python-validate-pyproject/src/validate-pyproject/tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/cli.py", line 247, in _run_on_file validator(toml_equivalent) ~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/build/python-validate-pyproject/src/validate-pyproject/tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/api.py", line 264, in __call__ compiled = FJS.compile( self.schema, self.handlers, dict(self.formats), use_default=False ) File "/usr/lib/python3.13/site-packages/fastjsonschema/__init__.py", line 215, in compile global_state = code_generator.global_state ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/draft04.py", line 73, in global_state res = super().global_state ^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 87, in global_state self._generate_func_code() ~~~~~~~~~~~~~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 122, in _generate_func_code self.generate_func_code() ~~~~~~~~~~~~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 136, in generate_func_code self.generate_validation_function(uri, name) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 146, in generate_validation_function self.generate_func_code_block(definition, 'data', 'data', clear_variables=True) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 161, in generate_func_code_block count = self._generate_func_code_block(definition) File "/usr/lib/python3.13/site-packages/fastjsonschema/draft06.py", line 36, in _generate_func_code_block self.run_generate_functions(definition) ~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 183, in run_generate_functions func() ~~~~^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/draft06.py", line 76, in generate_type self.exc('{name} must be {}', ' or '.join(types), rule='type') ~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 278, in exc definition = self._expand_refs(self._definition) File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 290, in _expand_refs return {k: self._expand_refs(v) for k, v in definition.items()} ~~~~~~~~~~~~~~~~~^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 290, in _expand_refs return {k: self._expand_refs(v) for k, v in definition.items()} ~~~~~~~~~~~~~~~~~^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 288, in _expand_refs with self._resolver.resolving(definition["$ref"]) as schema: ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/contextlib.py", line 141, in __enter__ return next(self.gen) File "/usr/lib/python3.13/site-packages/fastjsonschema/ref_resolver.py", line 136, in resolving schema = resolve_remote(uri, self.handlers) File "/usr/lib/python3.13/site-packages/fastjsonschema/ref_resolver.py", line 59, in resolve_remote result = handlers[scheme](uri) File "/build/python-validate-pyproject/src/validate-pyproject/tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/api.py", line 156, in __getitem__ return self._schemas[key][-1] ~~~~~~~~~~~~~^^^^^ KeyError: 'https://json.schemastore.org/partial-pdm-dockerize.json' ______________ test_invalid_examples_cli[store/ruff-badcode.toml] ______________ invalid_example = PosixPath('/build/python-validate-pyproject/src/validate-pyproject/tests/invalid-examples/store/ruff-badcode.toml') caplog = <_pytest.logging.LogCaptureFixture object at 0x7fff9ed48f70> def test_invalid_examples_cli(invalid_example: Path, caplog) -> None: args = get_tools_as_args(invalid_example) caplog.set_level(logging.DEBUG) expected_error = error_file(invalid_example).read_text("utf-8") with pytest.raises(SystemExit) as exc_info: cli.main([str(invalid_example), *args]) assert exc_info.value.args == (1,) for error in expected_error.splitlines(): > assert error in caplog.text E assert '`tool.ruff.lint` cannot be validated by any definition' in "INFO validate_pyproject.remote:remote.py:76 Loading black from store: https://json.schemastore.org/pyproject.json...schemas[key][-1]\n ~~~~~~~~~~~~~^^^^^\nKeyError: 'https://json.schemastore.org/partial-pdm-dockerize.json'\n" E + where "INFO validate_pyproject.remote:remote.py:76 Loading black from store: https://json.schemastore.org/pyproject.json...schemas[key][-1]\n ~~~~~~~~~~~~~^^^^^\nKeyError: 'https://json.schemastore.org/partial-pdm-dockerize.json'\n" = <_pytest.logging.LogCaptureFixture object at 0x7fff9ed48f70>.text tests/test_examples.py:54: AssertionError ------------------------------ Captured log call ------------------------------- INFO validate_pyproject.remote:remote.py:76 Loading black from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading cibuildwheel from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading mypy from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading ruff from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading hatch from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading scikit-build from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading setuptools_scm from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading poe from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading poetry from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading pdm from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading pyright from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading tox from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading uv from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.api:api.py:117 validate_pyproject.api.load_builtin_plugin defines `tool.distutils` schema INFO validate_pyproject.api:api.py:117 validate_pyproject.api.load_builtin_plugin defines `tool.setuptools` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-black.json defines `tool.black` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-cibuildwheel.json defines `tool.cibuildwheel` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-mypy.json defines `tool.mypy` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/ruff.json defines `tool.ruff` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/hatch.json defines `tool.hatch` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-scikit-build.json defines `tool.scikit-build` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-setuptools-scm.json defines `tool.setuptools_scm` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-poe.json defines `tool.poe` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-poetry.json defines `tool.poetry` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-pdm.json defines `tool.pdm` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-pyright.json defines `tool.pyright` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-tox.json defines `tool.tox` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/uv.json defines `tool.uv` schema ERROR validate_pyproject:cli.py:206 KeyError: 'https://json.schemastore.org/partial-pdm-dockerize.json' DEBUG validate_pyproject:cli.py:207 Please check the following information: Traceback (most recent call last): File "/build/python-validate-pyproject/src/validate-pyproject/tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/cli.py", line 196, in exceptions2exit yield File "/usr/lib/python3.13/contextlib.py", line 85, in inner return func(*args, **kwds) File "/build/python-validate-pyproject/src/validate-pyproject/tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/cli.py", line 233, in run _run_on_file(validator, params, file) ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ File "/build/python-validate-pyproject/src/validate-pyproject/tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/cli.py", line 247, in _run_on_file validator(toml_equivalent) ~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/build/python-validate-pyproject/src/validate-pyproject/tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/api.py", line 264, in __call__ compiled = FJS.compile( self.schema, self.handlers, dict(self.formats), use_default=False ) File "/usr/lib/python3.13/site-packages/fastjsonschema/__init__.py", line 215, in compile global_state = code_generator.global_state ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/draft04.py", line 73, in global_state res = super().global_state ^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 87, in global_state self._generate_func_code() ~~~~~~~~~~~~~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 122, in _generate_func_code self.generate_func_code() ~~~~~~~~~~~~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 136, in generate_func_code self.generate_validation_function(uri, name) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 146, in generate_validation_function self.generate_func_code_block(definition, 'data', 'data', clear_variables=True) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 161, in generate_func_code_block count = self._generate_func_code_block(definition) File "/usr/lib/python3.13/site-packages/fastjsonschema/draft06.py", line 36, in _generate_func_code_block self.run_generate_functions(definition) ~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 183, in run_generate_functions func() ~~~~^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/draft06.py", line 76, in generate_type self.exc('{name} must be {}', ' or '.join(types), rule='type') ~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 278, in exc definition = self._expand_refs(self._definition) File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 290, in _expand_refs return {k: self._expand_refs(v) for k, v in definition.items()} ~~~~~~~~~~~~~~~~~^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 290, in _expand_refs return {k: self._expand_refs(v) for k, v in definition.items()} ~~~~~~~~~~~~~~~~~^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 288, in _expand_refs with self._resolver.resolving(definition["$ref"]) as schema: ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/contextlib.py", line 141, in __enter__ return next(self.gen) File "/usr/lib/python3.13/site-packages/fastjsonschema/ref_resolver.py", line 136, in resolving schema = resolve_remote(uri, self.handlers) File "/usr/lib/python3.13/site-packages/fastjsonschema/ref_resolver.py", line 59, in resolve_remote result = handlers[scheme](uri) File "/build/python-validate-pyproject/src/validate-pyproject/tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/api.py", line 156, in __getitem__ return self._schemas[key][-1] ~~~~~~~~~~~~~^^^^^ KeyError: 'https://json.schemastore.org/partial-pdm-dockerize.json' ________ test_invalid_examples_cli[store/cibw-overrides-noaction.toml] _________ invalid_example = PosixPath('/build/python-validate-pyproject/src/validate-pyproject/tests/invalid-examples/store/cibw-overrides-noaction.toml') caplog = <_pytest.logging.LogCaptureFixture object at 0x7fffa09a9910> def test_invalid_examples_cli(invalid_example: Path, caplog) -> None: args = get_tools_as_args(invalid_example) caplog.set_level(logging.DEBUG) expected_error = error_file(invalid_example).read_text("utf-8") with pytest.raises(SystemExit) as exc_info: cli.main([str(invalid_example), *args]) assert exc_info.value.args == (1,) for error in expected_error.splitlines(): > assert error in caplog.text E assert '`tool.cibuildwheel.overrides[0]` must contain at least 2 properties' in "INFO validate_pyproject.remote:remote.py:76 Loading black from store: https://json.schemastore.org/pyproject.json...schemas[key][-1]\n ~~~~~~~~~~~~~^^^^^\nKeyError: 'https://json.schemastore.org/partial-pdm-dockerize.json'\n" E + where "INFO validate_pyproject.remote:remote.py:76 Loading black from store: https://json.schemastore.org/pyproject.json...schemas[key][-1]\n ~~~~~~~~~~~~~^^^^^\nKeyError: 'https://json.schemastore.org/partial-pdm-dockerize.json'\n" = <_pytest.logging.LogCaptureFixture object at 0x7fffa09a9910>.text tests/test_examples.py:54: AssertionError ------------------------------ Captured log call ------------------------------- INFO validate_pyproject.remote:remote.py:76 Loading black from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading cibuildwheel from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading mypy from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading ruff from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading hatch from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading scikit-build from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading setuptools_scm from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading poe from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading poetry from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading pdm from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading pyright from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading tox from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading uv from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.api:api.py:117 validate_pyproject.api.load_builtin_plugin defines `tool.distutils` schema INFO validate_pyproject.api:api.py:117 validate_pyproject.api.load_builtin_plugin defines `tool.setuptools` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-black.json defines `tool.black` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-cibuildwheel.json defines `tool.cibuildwheel` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-mypy.json defines `tool.mypy` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/ruff.json defines `tool.ruff` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/hatch.json defines `tool.hatch` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-scikit-build.json defines `tool.scikit-build` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-setuptools-scm.json defines `tool.setuptools_scm` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-poe.json defines `tool.poe` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-poetry.json defines `tool.poetry` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-pdm.json defines `tool.pdm` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-pyright.json defines `tool.pyright` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-tox.json defines `tool.tox` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/uv.json defines `tool.uv` schema ERROR validate_pyproject:cli.py:206 KeyError: 'https://json.schemastore.org/partial-pdm-dockerize.json' DEBUG validate_pyproject:cli.py:207 Please check the following information: Traceback (most recent call last): File "/build/python-validate-pyproject/src/validate-pyproject/tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/cli.py", line 196, in exceptions2exit yield File "/usr/lib/python3.13/contextlib.py", line 85, in inner return func(*args, **kwds) File "/build/python-validate-pyproject/src/validate-pyproject/tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/cli.py", line 233, in run _run_on_file(validator, params, file) ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ File "/build/python-validate-pyproject/src/validate-pyproject/tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/cli.py", line 247, in _run_on_file validator(toml_equivalent) ~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/build/python-validate-pyproject/src/validate-pyproject/tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/api.py", line 264, in __call__ compiled = FJS.compile( self.schema, self.handlers, dict(self.formats), use_default=False ) File "/usr/lib/python3.13/site-packages/fastjsonschema/__init__.py", line 215, in compile global_state = code_generator.global_state ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/draft04.py", line 73, in global_state res = super().global_state ^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 87, in global_state self._generate_func_code() ~~~~~~~~~~~~~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 122, in _generate_func_code self.generate_func_code() ~~~~~~~~~~~~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 136, in generate_func_code self.generate_validation_function(uri, name) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 146, in generate_validation_function self.generate_func_code_block(definition, 'data', 'data', clear_variables=True) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 161, in generate_func_code_block count = self._generate_func_code_block(definition) File "/usr/lib/python3.13/site-packages/fastjsonschema/draft06.py", line 36, in _generate_func_code_block self.run_generate_functions(definition) ~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 183, in run_generate_functions func() ~~~~^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/draft06.py", line 76, in generate_type self.exc('{name} must be {}', ' or '.join(types), rule='type') ~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 278, in exc definition = self._expand_refs(self._definition) File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 290, in _expand_refs return {k: self._expand_refs(v) for k, v in definition.items()} ~~~~~~~~~~~~~~~~~^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 290, in _expand_refs return {k: self._expand_refs(v) for k, v in definition.items()} ~~~~~~~~~~~~~~~~~^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 288, in _expand_refs with self._resolver.resolving(definition["$ref"]) as schema: ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/contextlib.py", line 141, in __enter__ return next(self.gen) File "/usr/lib/python3.13/site-packages/fastjsonschema/ref_resolver.py", line 136, in resolving schema = resolve_remote(uri, self.handlers) File "/usr/lib/python3.13/site-packages/fastjsonschema/ref_resolver.py", line 59, in resolve_remote result = handlers[scheme](uri) File "/build/python-validate-pyproject/src/validate-pyproject/tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/api.py", line 156, in __getitem__ return self._schemas[key][-1] ~~~~~~~~~~~~~^^^^^ KeyError: 'https://json.schemastore.org/partial-pdm-dockerize.json' ________ test_invalid_examples_cli[store/cibw-overrides-noselect.toml] _________ invalid_example = PosixPath('/build/python-validate-pyproject/src/validate-pyproject/tests/invalid-examples/store/cibw-overrides-noselect.toml') caplog = <_pytest.logging.LogCaptureFixture object at 0x7fffa09baa30> def test_invalid_examples_cli(invalid_example: Path, caplog) -> None: args = get_tools_as_args(invalid_example) caplog.set_level(logging.DEBUG) expected_error = error_file(invalid_example).read_text("utf-8") with pytest.raises(SystemExit) as exc_info: cli.main([str(invalid_example), *args]) assert exc_info.value.args == (1,) for error in expected_error.splitlines(): > assert error in caplog.text E assert "`tool.cibuildwheel.overrides[0]` must contain ['select'] properties" in "INFO validate_pyproject.remote:remote.py:76 Loading black from store: https://json.schemastore.org/pyproject.json...schemas[key][-1]\n ~~~~~~~~~~~~~^^^^^\nKeyError: 'https://json.schemastore.org/partial-pdm-dockerize.json'\n" E + where "INFO validate_pyproject.remote:remote.py:76 Loading black from store: https://json.schemastore.org/pyproject.json...schemas[key][-1]\n ~~~~~~~~~~~~~^^^^^\nKeyError: 'https://json.schemastore.org/partial-pdm-dockerize.json'\n" = <_pytest.logging.LogCaptureFixture object at 0x7fffa09baa30>.text tests/test_examples.py:54: AssertionError ------------------------------ Captured log call ------------------------------- INFO validate_pyproject.remote:remote.py:76 Loading black from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading cibuildwheel from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading mypy from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading ruff from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading hatch from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading scikit-build from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading setuptools_scm from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading poe from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading poetry from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading pdm from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading pyright from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading tox from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.remote:remote.py:76 Loading uv from store: https://json.schemastore.org/pyproject.json INFO validate_pyproject.api:api.py:117 validate_pyproject.api.load_builtin_plugin defines `tool.distutils` schema INFO validate_pyproject.api:api.py:117 validate_pyproject.api.load_builtin_plugin defines `tool.setuptools` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-black.json defines `tool.black` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-cibuildwheel.json defines `tool.cibuildwheel` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-mypy.json defines `tool.mypy` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/ruff.json defines `tool.ruff` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/hatch.json defines `tool.hatch` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-scikit-build.json defines `tool.scikit-build` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-setuptools-scm.json defines `tool.setuptools_scm` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-poe.json defines `tool.poe` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-poetry.json defines `tool.poetry` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-pdm.json defines `tool.pdm` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-pyright.json defines `tool.pyright` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/partial-tox.json defines `tool.tox` schema INFO validate_pyproject.api:api.py:117 https://json.schemastore.org/uv.json defines `tool.uv` schema ERROR validate_pyproject:cli.py:206 KeyError: 'https://json.schemastore.org/partial-pdm-dockerize.json' DEBUG validate_pyproject:cli.py:207 Please check the following information: Traceback (most recent call last): File "/build/python-validate-pyproject/src/validate-pyproject/tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/cli.py", line 196, in exceptions2exit yield File "/usr/lib/python3.13/contextlib.py", line 85, in inner return func(*args, **kwds) File "/build/python-validate-pyproject/src/validate-pyproject/tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/cli.py", line 233, in run _run_on_file(validator, params, file) ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ File "/build/python-validate-pyproject/src/validate-pyproject/tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/cli.py", line 247, in _run_on_file validator(toml_equivalent) ~~~~~~~~~^^^^^^^^^^^^^^^^^ File "/build/python-validate-pyproject/src/validate-pyproject/tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/api.py", line 264, in __call__ compiled = FJS.compile( self.schema, self.handlers, dict(self.formats), use_default=False ) File "/usr/lib/python3.13/site-packages/fastjsonschema/__init__.py", line 215, in compile global_state = code_generator.global_state ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/draft04.py", line 73, in global_state res = super().global_state ^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 87, in global_state self._generate_func_code() ~~~~~~~~~~~~~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 122, in _generate_func_code self.generate_func_code() ~~~~~~~~~~~~~~~~~~~~~~~^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 136, in generate_func_code self.generate_validation_function(uri, name) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 146, in generate_validation_function self.generate_func_code_block(definition, 'data', 'data', clear_variables=True) ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 161, in generate_func_code_block count = self._generate_func_code_block(definition) File "/usr/lib/python3.13/site-packages/fastjsonschema/draft06.py", line 36, in _generate_func_code_block self.run_generate_functions(definition) ~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 183, in run_generate_functions func() ~~~~^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/draft06.py", line 76, in generate_type self.exc('{name} must be {}', ' or '.join(types), rule='type') ~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 278, in exc definition = self._expand_refs(self._definition) File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 290, in _expand_refs return {k: self._expand_refs(v) for k, v in definition.items()} ~~~~~~~~~~~~~~~~~^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 290, in _expand_refs return {k: self._expand_refs(v) for k, v in definition.items()} ~~~~~~~~~~~~~~~~~^^^ File "/usr/lib/python3.13/site-packages/fastjsonschema/generator.py", line 288, in _expand_refs with self._resolver.resolving(definition["$ref"]) as schema: ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.13/contextlib.py", line 141, in __enter__ return next(self.gen) File "/usr/lib/python3.13/site-packages/fastjsonschema/ref_resolver.py", line 136, in resolving schema = resolve_remote(uri, self.handlers) File "/usr/lib/python3.13/site-packages/fastjsonschema/ref_resolver.py", line 59, in resolve_remote result = handlers[scheme](uri) File "/build/python-validate-pyproject/src/validate-pyproject/tmp_install/usr/lib/python3.13/site-packages/validate_pyproject/api.py", line 156, in __getitem__ return self._schemas[key][-1] ~~~~~~~~~~~~~^^^^^ KeyError: 'https://json.schemastore.org/partial-pdm-dockerize.json' =========================== short test summary info ============================ FAILED tests/test_examples.py::test_examples_api[store/example.toml] - KeyErr... FAILED tests/test_examples.py::test_examples_cli[store/example.toml] - KeyErr... FAILED tests/test_examples.py::test_invalid_examples_api[store/ruff-unknown.toml] FAILED tests/test_examples.py::test_invalid_examples_api[store/cibw-unknown-option.toml] FAILED tests/test_examples.py::test_invalid_examples_api[store/ruff-badcode.toml] FAILED tests/test_examples.py::test_invalid_examples_api[store/cibw-overrides-noaction.toml] FAILED tests/test_examples.py::test_invalid_examples_api[store/cibw-overrides-noselect.toml] FAILED tests/test_examples.py::test_invalid_examples_cli[store/ruff-unknown.toml] FAILED tests/test_examples.py::test_invalid_examples_cli[store/cibw-unknown-option.toml] FAILED tests/test_examples.py::test_invalid_examples_cli[store/ruff-badcode.toml] FAILED tests/test_examples.py::test_invalid_examples_cli[store/cibw-overrides-noaction.toml] FAILED tests/test_examples.py::test_invalid_examples_cli[store/cibw-overrides-noselect.toml] ========== 12 failed, 362 passed, 153 deselected in 269.13s (0:04:29) ========== ==> ERROR: A failure occurred in check().  Aborting... ==> ERROR: Build failed, check /var/lib/archbuild/extra-riscv64/felix2/build [?25h[?25hreceiving incremental file list python-validate-pyproject-0.22-2-riscv64-build.log python-validate-pyproject-0.22-2-riscv64-check.log python-validate-pyproject-0.22-2-riscv64-prepare.log sent 81 bytes received 5,113 bytes 10,388.00 bytes/sec total size is 85,436 speedup is 16.45