0s autopkgtest [13:53:28]: starting date and time: 2025-11-17 13:53:28+0000 0s autopkgtest [13:53:28]: git checkout: 4b346b80 nova: make wait_reboot return success even when a no-op 0s autopkgtest [13:53:28]: host juju-7f2275-prod-proposed-migration-environment-15; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.cn2y0gr7/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:python3-defaults --apt-upgrade dataclasses-json --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=python3-defaults/3.13.7-2 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-15@bos03-arm64-12.secgroup --name adt-resolute-arm64-dataclasses-json-20251117-133507-juju-7f2275-prod-proposed-migration-environment-15-22020502-4af2-4971-a22e-a57089ef9182 --image adt/ubuntu-resolute-arm64-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-15 --net-id=net_prod-proposed-migration -e TERM=linux --mirror=http://ftpmaster.internal/ubuntu/ 3s Creating nova instance adt-resolute-arm64-dataclasses-json-20251117-133507-juju-7f2275-prod-proposed-migration-environment-15-22020502-4af2-4971-a22e-a57089ef9182 from image adt/ubuntu-resolute-arm64-server-20251117.img (UUID 1cd33fbb-18df-4c5a-b8f0-2dcb25269485)... 56s autopkgtest [13:54:24]: testbed dpkg architecture: arm64 56s autopkgtest [13:54:24]: testbed apt version: 3.1.11 57s autopkgtest [13:54:25]: @@@@@@@@@@@@@@@@@@@@ test bed setup 57s autopkgtest [13:54:25]: testbed release detected to be: None 58s autopkgtest [13:54:26]: updating testbed package index (apt update) 58s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease [87.8 kB] 58s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 58s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 58s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 58s Get:5 http://ftpmaster.internal/ubuntu resolute-proposed/universe Sources [868 kB] 59s Get:6 http://ftpmaster.internal/ubuntu resolute-proposed/restricted Sources [9848 B] 59s Get:7 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse Sources [22.9 kB] 59s Get:8 http://ftpmaster.internal/ubuntu resolute-proposed/main Sources [81.1 kB] 59s Get:9 http://ftpmaster.internal/ubuntu resolute-proposed/main arm64 Packages [149 kB] 59s Get:10 http://ftpmaster.internal/ubuntu resolute-proposed/main arm64 c-n-f Metadata [3084 B] 59s Get:11 http://ftpmaster.internal/ubuntu resolute-proposed/restricted arm64 Packages [107 kB] 59s Get:12 http://ftpmaster.internal/ubuntu resolute-proposed/restricted arm64 c-n-f Metadata [324 B] 59s Get:13 http://ftpmaster.internal/ubuntu resolute-proposed/universe arm64 Packages [577 kB] 59s Get:14 http://ftpmaster.internal/ubuntu resolute-proposed/universe arm64 c-n-f Metadata [17.8 kB] 59s Get:15 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse arm64 Packages [12.5 kB] 59s Get:16 http://ftpmaster.internal/ubuntu resolute-proposed/multiverse arm64 c-n-f Metadata [576 B] 60s Fetched 1938 kB in 1s (1834 kB/s) 61s Reading package lists... 61s Hit:1 http://ftpmaster.internal/ubuntu resolute-proposed InRelease 61s Hit:2 http://ftpmaster.internal/ubuntu resolute InRelease 61s Hit:3 http://ftpmaster.internal/ubuntu resolute-updates InRelease 62s Hit:4 http://ftpmaster.internal/ubuntu resolute-security InRelease 62s Reading package lists... 62s Reading package lists... 63s Building dependency tree... 63s Reading state information... 63s Calculating upgrade... 64s The following packages will be upgraded: 64s libpython3-stdlib python3 python3-minimal usbutils 64s 4 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 64s Need to get 144 kB of archives. 64s After this operation, 0 B of additional disk space will be used. 64s Get:1 http://ftpmaster.internal/ubuntu resolute-proposed/main arm64 python3-minimal arm64 3.13.7-2 [27.8 kB] 64s Get:2 http://ftpmaster.internal/ubuntu resolute-proposed/main arm64 python3 arm64 3.13.7-2 [23.9 kB] 64s Get:3 http://ftpmaster.internal/ubuntu resolute-proposed/main arm64 libpython3-stdlib arm64 3.13.7-2 [10.6 kB] 64s Get:4 http://ftpmaster.internal/ubuntu resolute/main arm64 usbutils arm64 1:019-1 [81.7 kB] 65s dpkg-preconfigure: unable to re-open stdin: No such file or directory 65s Fetched 144 kB in 0s (344 kB/s) 65s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 88137 files and directories currently installed.) 65s Preparing to unpack .../python3-minimal_3.13.7-2_arm64.deb ... 65s Unpacking python3-minimal (3.13.7-2) over (3.13.7-1) ... 65s Setting up python3-minimal (3.13.7-2) ... 65s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 88137 files and directories currently installed.) 65s Preparing to unpack .../python3_3.13.7-2_arm64.deb ... 65s running python pre-rtupdate hooks for python3.13... 65s Unpacking python3 (3.13.7-2) over (3.13.7-1) ... 66s Preparing to unpack .../libpython3-stdlib_3.13.7-2_arm64.deb ... 66s Unpacking libpython3-stdlib:arm64 (3.13.7-2) over (3.13.7-1) ... 66s Preparing to unpack .../usbutils_1%3a019-1_arm64.deb ... 66s Unpacking usbutils (1:019-1) over (1:018-2) ... 66s Setting up usbutils (1:019-1) ... 66s Setting up libpython3-stdlib:arm64 (3.13.7-2) ... 66s Setting up python3 (3.13.7-2) ... 66s running python rtupdate hooks for python3.13... 66s running python post-rtupdate hooks for python3.13... 66s Processing triggers for man-db (2.13.1-1) ... 67s autopkgtest [13:54:35]: upgrading testbed (apt dist-upgrade and autopurge) 68s Reading package lists... 68s Building dependency tree... 68s Reading state information... 68s Calculating upgrade... 68s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 69s Reading package lists... 69s Building dependency tree... 69s Reading state information... 69s Solving dependencies... 69s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 72s autopkgtest [13:54:40]: testbed running kernel: Linux 6.17.0-5-generic #5-Ubuntu SMP PREEMPT_DYNAMIC Mon Sep 22 09:50:31 UTC 2025 72s autopkgtest [13:54:40]: @@@@@@@@@@@@@@@@@@@@ apt-source dataclasses-json 74s Get:1 http://ftpmaster.internal/ubuntu resolute/universe dataclasses-json 0.6.7-1 (dsc) [1733 B] 74s Get:2 http://ftpmaster.internal/ubuntu resolute/universe dataclasses-json 0.6.7-1 (tar) [65.2 kB] 74s Get:3 http://ftpmaster.internal/ubuntu resolute/universe dataclasses-json 0.6.7-1 (diff) [3188 B] 74s gpgv: Signature made Thu Jul 4 00:01:01 2024 UTC 74s gpgv: using EDDSA key CAA7400707A816B0202FC3CDF4257A50B21CFA85 74s gpgv: Can't check signature: No public key 74s dpkg-source: warning: cannot verify inline signature for ./dataclasses-json_0.6.7-1.dsc: no acceptable signature found 74s autopkgtest [13:54:42]: testing package dataclasses-json version 0.6.7-1 74s autopkgtest [13:54:42]: build not needed 75s autopkgtest [13:54:43]: test pybuild-autopkgtest: preparing testbed 75s Reading package lists... 75s Building dependency tree... 75s Reading state information... 75s Solving dependencies... 76s The following NEW packages will be installed: 76s autoconf automake autopoint autotools-dev build-essential cpp cpp-15 76s cpp-15-aarch64-linux-gnu cpp-aarch64-linux-gnu debhelper debugedit 76s dh-autoreconf dh-python dh-strip-nondeterminism dwz g++ g++-15 76s g++-15-aarch64-linux-gnu g++-aarch64-linux-gnu gcc gcc-15 76s gcc-15-aarch64-linux-gnu gcc-aarch64-linux-gnu gettext intltool-debian 76s libarchive-zip-perl libasan8 libcc1-0 libdebhelper-perl 76s libfile-stripnondeterminism-perl libgcc-15-dev libgomp1 libhwasan0 libisl23 76s libitm1 liblsan0 libmpc3 libpython3.14-minimal libpython3.14-stdlib 76s libstdc++-15-dev libtool libtsan2 libubsan1 m4 po-debconf 76s pybuild-plugin-autopkgtest pybuild-plugin-pyproject python3-all 76s python3-build python3-dataclasses-json python3-dunamai python3-hypothesis 76s python3-iniconfig python3-installer python3-marshmallow python3-mypy 76s python3-mypy-extensions python3-pluggy python3-poetry-core 76s python3-poetry-dynamic-versioning python3-psutil python3-pyproject-hooks 76s python3-pytest python3-sortedcontainers python3-tomlkit 76s python3-typing-inspect python3-wheel python3.14 python3.14-minimal 76s 0 upgraded, 69 newly installed, 0 to remove and 0 not upgraded. 76s Need to get 85.8 MB of archives. 76s After this operation, 326 MB of additional disk space will be used. 76s Get:1 http://ftpmaster.internal/ubuntu resolute/main arm64 libpython3.14-minimal arm64 3.14.0-4 [903 kB] 77s Get:2 http://ftpmaster.internal/ubuntu resolute/main arm64 python3.14-minimal arm64 3.14.0-4 [2543 kB] 77s Get:3 http://ftpmaster.internal/ubuntu resolute/main arm64 m4 arm64 1.4.20-2 [213 kB] 77s Get:4 http://ftpmaster.internal/ubuntu resolute/main arm64 autoconf all 2.72-3.1ubuntu1 [384 kB] 77s Get:5 http://ftpmaster.internal/ubuntu resolute/main arm64 autotools-dev all 20240727.1 [43.4 kB] 77s Get:6 http://ftpmaster.internal/ubuntu resolute/main arm64 automake all 1:1.18.1-2 [581 kB] 77s Get:7 http://ftpmaster.internal/ubuntu resolute/main arm64 autopoint all 0.23.2-1 [620 kB] 77s Get:8 http://ftpmaster.internal/ubuntu resolute/main arm64 libisl23 arm64 0.27-1 [676 kB] 77s Get:9 http://ftpmaster.internal/ubuntu resolute/main arm64 libmpc3 arm64 1.3.1-2 [55.6 kB] 77s Get:10 http://ftpmaster.internal/ubuntu resolute/main arm64 cpp-15-aarch64-linux-gnu arm64 15.2.0-7ubuntu1 [11.7 MB] 77s Get:11 http://ftpmaster.internal/ubuntu resolute/main arm64 cpp-15 arm64 15.2.0-7ubuntu1 [1026 B] 77s Get:12 http://ftpmaster.internal/ubuntu resolute/main arm64 cpp-aarch64-linux-gnu arm64 4:15.2.0-4ubuntu1 [5736 B] 77s Get:13 http://ftpmaster.internal/ubuntu resolute/main arm64 cpp arm64 4:15.2.0-4ubuntu1 [22.4 kB] 77s Get:14 http://ftpmaster.internal/ubuntu resolute/main arm64 libcc1-0 arm64 15.2.0-7ubuntu1 [49.0 kB] 77s Get:15 http://ftpmaster.internal/ubuntu resolute/main arm64 libgomp1 arm64 15.2.0-7ubuntu1 [147 kB] 77s Get:16 http://ftpmaster.internal/ubuntu resolute/main arm64 libitm1 arm64 15.2.0-7ubuntu1 [27.9 kB] 77s Get:17 http://ftpmaster.internal/ubuntu resolute/main arm64 libasan8 arm64 15.2.0-7ubuntu1 [2923 kB] 77s Get:18 http://ftpmaster.internal/ubuntu resolute/main arm64 liblsan0 arm64 15.2.0-7ubuntu1 [1316 kB] 77s Get:19 http://ftpmaster.internal/ubuntu resolute/main arm64 libtsan2 arm64 15.2.0-7ubuntu1 [2689 kB] 78s Get:20 http://ftpmaster.internal/ubuntu resolute/main arm64 libubsan1 arm64 15.2.0-7ubuntu1 [1176 kB] 78s Get:21 http://ftpmaster.internal/ubuntu resolute/main arm64 libhwasan0 arm64 15.2.0-7ubuntu1 [1638 kB] 78s Get:22 http://ftpmaster.internal/ubuntu resolute/main arm64 libgcc-15-dev arm64 15.2.0-7ubuntu1 [2600 kB] 78s Get:23 http://ftpmaster.internal/ubuntu resolute/main arm64 gcc-15-aarch64-linux-gnu arm64 15.2.0-7ubuntu1 [23.1 MB] 78s Get:24 http://ftpmaster.internal/ubuntu resolute/main arm64 gcc-15 arm64 15.2.0-7ubuntu1 [513 kB] 78s Get:25 http://ftpmaster.internal/ubuntu resolute/main arm64 gcc-aarch64-linux-gnu arm64 4:15.2.0-4ubuntu1 [1206 B] 78s Get:26 http://ftpmaster.internal/ubuntu resolute/main arm64 gcc arm64 4:15.2.0-4ubuntu1 [5016 B] 78s Get:27 http://ftpmaster.internal/ubuntu resolute/main arm64 libstdc++-15-dev arm64 15.2.0-7ubuntu1 [2546 kB] 78s Get:28 http://ftpmaster.internal/ubuntu resolute/main arm64 g++-15-aarch64-linux-gnu arm64 15.2.0-7ubuntu1 [13.2 MB] 79s Get:29 http://ftpmaster.internal/ubuntu resolute/main arm64 g++-15 arm64 15.2.0-7ubuntu1 [23.7 kB] 79s Get:30 http://ftpmaster.internal/ubuntu resolute/main arm64 g++-aarch64-linux-gnu arm64 4:15.2.0-4ubuntu1 [956 B] 79s Get:31 http://ftpmaster.internal/ubuntu resolute/main arm64 g++ arm64 4:15.2.0-4ubuntu1 [1080 B] 79s Get:32 http://ftpmaster.internal/ubuntu resolute/main arm64 build-essential arm64 12.12ubuntu1 [5082 B] 79s Get:33 http://ftpmaster.internal/ubuntu resolute/main arm64 libdebhelper-perl all 13.24.2ubuntu1 [95.7 kB] 79s Get:34 http://ftpmaster.internal/ubuntu resolute/main arm64 libtool all 2.5.4-7 [169 kB] 79s Get:35 http://ftpmaster.internal/ubuntu resolute/main arm64 dh-autoreconf all 21 [12.5 kB] 79s Get:36 http://ftpmaster.internal/ubuntu resolute/main arm64 libarchive-zip-perl all 1.68-1 [90.2 kB] 79s Get:37 http://ftpmaster.internal/ubuntu resolute/main arm64 libfile-stripnondeterminism-perl all 1.15.0-1 [20.5 kB] 79s Get:38 http://ftpmaster.internal/ubuntu resolute/main arm64 dh-strip-nondeterminism all 1.15.0-1 [5090 B] 79s Get:39 http://ftpmaster.internal/ubuntu resolute/main arm64 debugedit arm64 1:5.2-3 [49.1 kB] 79s Get:40 http://ftpmaster.internal/ubuntu resolute/main arm64 dwz arm64 0.16-2 [113 kB] 79s Get:41 http://ftpmaster.internal/ubuntu resolute/main arm64 gettext arm64 0.23.2-1 [998 kB] 79s Get:42 http://ftpmaster.internal/ubuntu resolute/main arm64 intltool-debian all 0.35.0+20060710.6 [23.2 kB] 79s Get:43 http://ftpmaster.internal/ubuntu resolute/main arm64 po-debconf all 1.0.21+nmu1 [233 kB] 79s Get:44 http://ftpmaster.internal/ubuntu resolute/main arm64 debhelper all 13.24.2ubuntu1 [896 kB] 79s Get:45 http://ftpmaster.internal/ubuntu resolute/universe arm64 dh-python all 6.20250414 [119 kB] 79s Get:46 http://ftpmaster.internal/ubuntu resolute/main arm64 libpython3.14-stdlib arm64 3.14.0-4 [2349 kB] 79s Get:47 http://ftpmaster.internal/ubuntu resolute/universe arm64 pybuild-plugin-autopkgtest all 6.20250414 [1746 B] 79s Get:48 http://ftpmaster.internal/ubuntu resolute/universe arm64 python3-pyproject-hooks all 1.2.0-1 [10.2 kB] 79s Get:49 http://ftpmaster.internal/ubuntu resolute/universe arm64 python3-wheel all 0.46.1-2 [22.1 kB] 79s Get:50 http://ftpmaster.internal/ubuntu resolute/universe arm64 python3-build all 1.2.2-4 [31.0 kB] 79s Get:51 http://ftpmaster.internal/ubuntu resolute/universe arm64 python3-installer all 0.7.0+dfsg1-3 [17.4 kB] 79s Get:52 http://ftpmaster.internal/ubuntu resolute/universe arm64 pybuild-plugin-pyproject all 6.20250414 [1728 B] 79s Get:53 http://ftpmaster.internal/ubuntu resolute/main arm64 python3.14 arm64 3.14.0-4 [805 kB] 79s Get:54 http://ftpmaster.internal/ubuntu resolute-proposed/main arm64 python3-all arm64 3.13.7-2 [890 B] 79s Get:55 http://ftpmaster.internal/ubuntu resolute/universe arm64 python3-marshmallow all 3.26.1-0.2 [47.5 kB] 79s Get:56 http://ftpmaster.internal/ubuntu resolute/universe arm64 python3-mypy-extensions all 1.1.0-1 [6716 B] 79s Get:57 http://ftpmaster.internal/ubuntu resolute/universe arm64 python3-typing-inspect all 0.9.0-1 [10.7 kB] 79s Get:58 http://ftpmaster.internal/ubuntu resolute/universe arm64 python3-dataclasses-json all 0.6.7-1 [32.7 kB] 79s Get:59 http://ftpmaster.internal/ubuntu resolute/universe arm64 python3-dunamai all 1.23.0-1 [25.2 kB] 79s Get:60 http://ftpmaster.internal/ubuntu resolute/main arm64 python3-sortedcontainers all 2.4.0-2 [27.6 kB] 79s Get:61 http://ftpmaster.internal/ubuntu resolute/universe arm64 python3-hypothesis all 6.130.5-2 [341 kB] 79s Get:62 http://ftpmaster.internal/ubuntu resolute/universe arm64 python3-iniconfig all 2.1.0-1 [6840 B] 79s Get:63 http://ftpmaster.internal/ubuntu resolute/main arm64 python3-psutil arm64 7.1.0-1ubuntu1 [191 kB] 79s Get:64 http://ftpmaster.internal/ubuntu resolute/universe arm64 python3-mypy arm64 1.15.0-5 [8679 kB] 79s Get:65 http://ftpmaster.internal/ubuntu resolute/universe arm64 python3-pluggy all 1.6.0-1 [21.0 kB] 79s Get:66 http://ftpmaster.internal/ubuntu resolute/universe arm64 python3-poetry-core all 2.2.1-2 [226 kB] 79s Get:67 http://ftpmaster.internal/ubuntu resolute/universe arm64 python3-tomlkit all 0.13.3-2 [39.1 kB] 79s Get:68 http://ftpmaster.internal/ubuntu resolute/universe arm64 python3-poetry-dynamic-versioning arm64 1.8.2-1 [27.3 kB] 79s Get:69 http://ftpmaster.internal/ubuntu resolute/universe arm64 python3-pytest all 8.3.5-2 [252 kB] 79s Fetched 85.8 MB in 3s (27.4 MB/s) 80s Selecting previously unselected package libpython3.14-minimal:arm64. 80s (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 88137 files and directories currently installed.) 80s Preparing to unpack .../00-libpython3.14-minimal_3.14.0-4_arm64.deb ... 80s Unpacking libpython3.14-minimal:arm64 (3.14.0-4) ... 80s Selecting previously unselected package python3.14-minimal. 80s Preparing to unpack .../01-python3.14-minimal_3.14.0-4_arm64.deb ... 80s Unpacking python3.14-minimal (3.14.0-4) ... 80s Selecting previously unselected package m4. 80s Preparing to unpack .../02-m4_1.4.20-2_arm64.deb ... 80s Unpacking m4 (1.4.20-2) ... 80s Selecting previously unselected package autoconf. 80s Preparing to unpack .../03-autoconf_2.72-3.1ubuntu1_all.deb ... 80s Unpacking autoconf (2.72-3.1ubuntu1) ... 80s Selecting previously unselected package autotools-dev. 80s Preparing to unpack .../04-autotools-dev_20240727.1_all.deb ... 80s Unpacking autotools-dev (20240727.1) ... 80s Selecting previously unselected package automake. 80s Preparing to unpack .../05-automake_1%3a1.18.1-2_all.deb ... 80s Unpacking automake (1:1.18.1-2) ... 80s Selecting previously unselected package autopoint. 80s Preparing to unpack .../06-autopoint_0.23.2-1_all.deb ... 80s Unpacking autopoint (0.23.2-1) ... 80s Selecting previously unselected package libisl23:arm64. 80s Preparing to unpack .../07-libisl23_0.27-1_arm64.deb ... 80s Unpacking libisl23:arm64 (0.27-1) ... 80s Selecting previously unselected package libmpc3:arm64. 80s Preparing to unpack .../08-libmpc3_1.3.1-2_arm64.deb ... 80s Unpacking libmpc3:arm64 (1.3.1-2) ... 80s Selecting previously unselected package cpp-15-aarch64-linux-gnu. 80s Preparing to unpack .../09-cpp-15-aarch64-linux-gnu_15.2.0-7ubuntu1_arm64.deb ... 80s Unpacking cpp-15-aarch64-linux-gnu (15.2.0-7ubuntu1) ... 80s Selecting previously unselected package cpp-15. 80s Preparing to unpack .../10-cpp-15_15.2.0-7ubuntu1_arm64.deb ... 80s Unpacking cpp-15 (15.2.0-7ubuntu1) ... 80s Selecting previously unselected package cpp-aarch64-linux-gnu. 80s Preparing to unpack .../11-cpp-aarch64-linux-gnu_4%3a15.2.0-4ubuntu1_arm64.deb ... 80s Unpacking cpp-aarch64-linux-gnu (4:15.2.0-4ubuntu1) ... 80s Selecting previously unselected package cpp. 80s Preparing to unpack .../12-cpp_4%3a15.2.0-4ubuntu1_arm64.deb ... 80s Unpacking cpp (4:15.2.0-4ubuntu1) ... 80s Selecting previously unselected package libcc1-0:arm64. 80s Preparing to unpack .../13-libcc1-0_15.2.0-7ubuntu1_arm64.deb ... 80s Unpacking libcc1-0:arm64 (15.2.0-7ubuntu1) ... 80s Selecting previously unselected package libgomp1:arm64. 80s Preparing to unpack .../14-libgomp1_15.2.0-7ubuntu1_arm64.deb ... 80s Unpacking libgomp1:arm64 (15.2.0-7ubuntu1) ... 80s Selecting previously unselected package libitm1:arm64. 80s Preparing to unpack .../15-libitm1_15.2.0-7ubuntu1_arm64.deb ... 80s Unpacking libitm1:arm64 (15.2.0-7ubuntu1) ... 81s Selecting previously unselected package libasan8:arm64. 81s Preparing to unpack .../16-libasan8_15.2.0-7ubuntu1_arm64.deb ... 81s Unpacking libasan8:arm64 (15.2.0-7ubuntu1) ... 81s Selecting previously unselected package liblsan0:arm64. 81s Preparing to unpack .../17-liblsan0_15.2.0-7ubuntu1_arm64.deb ... 81s Unpacking liblsan0:arm64 (15.2.0-7ubuntu1) ... 81s Selecting previously unselected package libtsan2:arm64. 81s Preparing to unpack .../18-libtsan2_15.2.0-7ubuntu1_arm64.deb ... 81s Unpacking libtsan2:arm64 (15.2.0-7ubuntu1) ... 81s Selecting previously unselected package libubsan1:arm64. 81s Preparing to unpack .../19-libubsan1_15.2.0-7ubuntu1_arm64.deb ... 81s Unpacking libubsan1:arm64 (15.2.0-7ubuntu1) ... 81s Selecting previously unselected package libhwasan0:arm64. 81s Preparing to unpack .../20-libhwasan0_15.2.0-7ubuntu1_arm64.deb ... 81s Unpacking libhwasan0:arm64 (15.2.0-7ubuntu1) ... 81s Selecting previously unselected package libgcc-15-dev:arm64. 81s Preparing to unpack .../21-libgcc-15-dev_15.2.0-7ubuntu1_arm64.deb ... 81s Unpacking libgcc-15-dev:arm64 (15.2.0-7ubuntu1) ... 81s Selecting previously unselected package gcc-15-aarch64-linux-gnu. 81s Preparing to unpack .../22-gcc-15-aarch64-linux-gnu_15.2.0-7ubuntu1_arm64.deb ... 81s Unpacking gcc-15-aarch64-linux-gnu (15.2.0-7ubuntu1) ... 81s Selecting previously unselected package gcc-15. 81s Preparing to unpack .../23-gcc-15_15.2.0-7ubuntu1_arm64.deb ... 81s Unpacking gcc-15 (15.2.0-7ubuntu1) ... 81s Selecting previously unselected package gcc-aarch64-linux-gnu. 82s Preparing to unpack .../24-gcc-aarch64-linux-gnu_4%3a15.2.0-4ubuntu1_arm64.deb ... 82s Unpacking gcc-aarch64-linux-gnu (4:15.2.0-4ubuntu1) ... 82s Selecting previously unselected package gcc. 82s Preparing to unpack .../25-gcc_4%3a15.2.0-4ubuntu1_arm64.deb ... 82s Unpacking gcc (4:15.2.0-4ubuntu1) ... 82s Selecting previously unselected package libstdc++-15-dev:arm64. 82s Preparing to unpack .../26-libstdc++-15-dev_15.2.0-7ubuntu1_arm64.deb ... 82s Unpacking libstdc++-15-dev:arm64 (15.2.0-7ubuntu1) ... 82s Selecting previously unselected package g++-15-aarch64-linux-gnu. 82s Preparing to unpack .../27-g++-15-aarch64-linux-gnu_15.2.0-7ubuntu1_arm64.deb ... 82s Unpacking g++-15-aarch64-linux-gnu (15.2.0-7ubuntu1) ... 82s Selecting previously unselected package g++-15. 82s Preparing to unpack .../28-g++-15_15.2.0-7ubuntu1_arm64.deb ... 82s Unpacking g++-15 (15.2.0-7ubuntu1) ... 82s Selecting previously unselected package g++-aarch64-linux-gnu. 82s Preparing to unpack .../29-g++-aarch64-linux-gnu_4%3a15.2.0-4ubuntu1_arm64.deb ... 82s Unpacking g++-aarch64-linux-gnu (4:15.2.0-4ubuntu1) ... 82s Selecting previously unselected package g++. 82s Preparing to unpack .../30-g++_4%3a15.2.0-4ubuntu1_arm64.deb ... 82s Unpacking g++ (4:15.2.0-4ubuntu1) ... 82s Selecting previously unselected package build-essential. 82s Preparing to unpack .../31-build-essential_12.12ubuntu1_arm64.deb ... 82s Unpacking build-essential (12.12ubuntu1) ... 82s Selecting previously unselected package libdebhelper-perl. 82s Preparing to unpack .../32-libdebhelper-perl_13.24.2ubuntu1_all.deb ... 82s Unpacking libdebhelper-perl (13.24.2ubuntu1) ... 82s Selecting previously unselected package libtool. 82s Preparing to unpack .../33-libtool_2.5.4-7_all.deb ... 82s Unpacking libtool (2.5.4-7) ... 82s Selecting previously unselected package dh-autoreconf. 82s Preparing to unpack .../34-dh-autoreconf_21_all.deb ... 82s Unpacking dh-autoreconf (21) ... 82s Selecting previously unselected package libarchive-zip-perl. 82s Preparing to unpack .../35-libarchive-zip-perl_1.68-1_all.deb ... 82s Unpacking libarchive-zip-perl (1.68-1) ... 82s Selecting previously unselected package libfile-stripnondeterminism-perl. 82s Preparing to unpack .../36-libfile-stripnondeterminism-perl_1.15.0-1_all.deb ... 82s Unpacking libfile-stripnondeterminism-perl (1.15.0-1) ... 82s Selecting previously unselected package dh-strip-nondeterminism. 82s Preparing to unpack .../37-dh-strip-nondeterminism_1.15.0-1_all.deb ... 82s Unpacking dh-strip-nondeterminism (1.15.0-1) ... 82s Selecting previously unselected package debugedit. 82s Preparing to unpack .../38-debugedit_1%3a5.2-3_arm64.deb ... 82s Unpacking debugedit (1:5.2-3) ... 82s Selecting previously unselected package dwz. 82s Preparing to unpack .../39-dwz_0.16-2_arm64.deb ... 82s Unpacking dwz (0.16-2) ... 82s Selecting previously unselected package gettext. 82s Preparing to unpack .../40-gettext_0.23.2-1_arm64.deb ... 82s Unpacking gettext (0.23.2-1) ... 83s Selecting previously unselected package intltool-debian. 83s Preparing to unpack .../41-intltool-debian_0.35.0+20060710.6_all.deb ... 83s Unpacking intltool-debian (0.35.0+20060710.6) ... 83s Selecting previously unselected package po-debconf. 83s Preparing to unpack .../42-po-debconf_1.0.21+nmu1_all.deb ... 83s Unpacking po-debconf (1.0.21+nmu1) ... 83s Selecting previously unselected package debhelper. 83s Preparing to unpack .../43-debhelper_13.24.2ubuntu1_all.deb ... 83s Unpacking debhelper (13.24.2ubuntu1) ... 83s Selecting previously unselected package dh-python. 83s Preparing to unpack .../44-dh-python_6.20250414_all.deb ... 83s Unpacking dh-python (6.20250414) ... 83s Selecting previously unselected package libpython3.14-stdlib:arm64. 83s Preparing to unpack .../45-libpython3.14-stdlib_3.14.0-4_arm64.deb ... 83s Unpacking libpython3.14-stdlib:arm64 (3.14.0-4) ... 83s Selecting previously unselected package pybuild-plugin-autopkgtest. 83s Preparing to unpack .../46-pybuild-plugin-autopkgtest_6.20250414_all.deb ... 83s Unpacking pybuild-plugin-autopkgtest (6.20250414) ... 83s Selecting previously unselected package python3-pyproject-hooks. 83s Preparing to unpack .../47-python3-pyproject-hooks_1.2.0-1_all.deb ... 83s Unpacking python3-pyproject-hooks (1.2.0-1) ... 83s Selecting previously unselected package python3-wheel. 83s Preparing to unpack .../48-python3-wheel_0.46.1-2_all.deb ... 83s Unpacking python3-wheel (0.46.1-2) ... 83s Selecting previously unselected package python3-build. 83s Preparing to unpack .../49-python3-build_1.2.2-4_all.deb ... 83s Unpacking python3-build (1.2.2-4) ... 83s Selecting previously unselected package python3-installer. 83s Preparing to unpack .../50-python3-installer_0.7.0+dfsg1-3_all.deb ... 83s Unpacking python3-installer (0.7.0+dfsg1-3) ... 83s Selecting previously unselected package pybuild-plugin-pyproject. 83s Preparing to unpack .../51-pybuild-plugin-pyproject_6.20250414_all.deb ... 83s Unpacking pybuild-plugin-pyproject (6.20250414) ... 83s Selecting previously unselected package python3.14. 83s Preparing to unpack .../52-python3.14_3.14.0-4_arm64.deb ... 83s Unpacking python3.14 (3.14.0-4) ... 83s Selecting previously unselected package python3-all. 83s Preparing to unpack .../53-python3-all_3.13.7-2_arm64.deb ... 83s Unpacking python3-all (3.13.7-2) ... 83s Selecting previously unselected package python3-marshmallow. 83s Preparing to unpack .../54-python3-marshmallow_3.26.1-0.2_all.deb ... 83s Unpacking python3-marshmallow (3.26.1-0.2) ... 83s Selecting previously unselected package python3-mypy-extensions. 83s Preparing to unpack .../55-python3-mypy-extensions_1.1.0-1_all.deb ... 83s Unpacking python3-mypy-extensions (1.1.0-1) ... 83s Selecting previously unselected package python3-typing-inspect. 83s Preparing to unpack .../56-python3-typing-inspect_0.9.0-1_all.deb ... 83s Unpacking python3-typing-inspect (0.9.0-1) ... 83s Selecting previously unselected package python3-dataclasses-json. 83s Preparing to unpack .../57-python3-dataclasses-json_0.6.7-1_all.deb ... 83s Unpacking python3-dataclasses-json (0.6.7-1) ... 83s Selecting previously unselected package python3-dunamai. 83s Preparing to unpack .../58-python3-dunamai_1.23.0-1_all.deb ... 83s Unpacking python3-dunamai (1.23.0-1) ... 83s Selecting previously unselected package python3-sortedcontainers. 83s Preparing to unpack .../59-python3-sortedcontainers_2.4.0-2_all.deb ... 83s Unpacking python3-sortedcontainers (2.4.0-2) ... 83s Selecting previously unselected package python3-hypothesis. 83s Preparing to unpack .../60-python3-hypothesis_6.130.5-2_all.deb ... 83s Unpacking python3-hypothesis (6.130.5-2) ... 83s Selecting previously unselected package python3-iniconfig. 83s Preparing to unpack .../61-python3-iniconfig_2.1.0-1_all.deb ... 83s Unpacking python3-iniconfig (2.1.0-1) ... 83s Selecting previously unselected package python3-psutil. 83s Preparing to unpack .../62-python3-psutil_7.1.0-1ubuntu1_arm64.deb ... 83s Unpacking python3-psutil (7.1.0-1ubuntu1) ... 83s Selecting previously unselected package python3-mypy. 83s Preparing to unpack .../63-python3-mypy_1.15.0-5_arm64.deb ... 83s Unpacking python3-mypy (1.15.0-5) ... 84s Selecting previously unselected package python3-pluggy. 84s Preparing to unpack .../64-python3-pluggy_1.6.0-1_all.deb ... 84s Unpacking python3-pluggy (1.6.0-1) ... 84s Selecting previously unselected package python3-poetry-core. 84s Preparing to unpack .../65-python3-poetry-core_2.2.1-2_all.deb ... 84s Unpacking python3-poetry-core (2.2.1-2) ... 84s Selecting previously unselected package python3-tomlkit. 84s Preparing to unpack .../66-python3-tomlkit_0.13.3-2_all.deb ... 84s Unpacking python3-tomlkit (0.13.3-2) ... 84s Selecting previously unselected package python3-poetry-dynamic-versioning. 84s Preparing to unpack .../67-python3-poetry-dynamic-versioning_1.8.2-1_arm64.deb ... 84s Unpacking python3-poetry-dynamic-versioning (1.8.2-1) ... 84s Selecting previously unselected package python3-pytest. 84s Preparing to unpack .../68-python3-pytest_8.3.5-2_all.deb ... 84s Unpacking python3-pytest (8.3.5-2) ... 84s Setting up dh-python (6.20250414) ... 84s Setting up python3-dunamai (1.23.0-1) ... 85s Setting up python3-iniconfig (2.1.0-1) ... 85s Setting up libarchive-zip-perl (1.68-1) ... 85s Setting up python3-mypy-extensions (1.1.0-1) ... 85s Setting up libdebhelper-perl (13.24.2ubuntu1) ... 85s Setting up libpython3.14-minimal:arm64 (3.14.0-4) ... 85s Setting up python3-marshmallow (3.26.1-0.2) ... 85s Setting up m4 (1.4.20-2) ... 85s Setting up python3-sortedcontainers (2.4.0-2) ... 85s Setting up libgomp1:arm64 (15.2.0-7ubuntu1) ... 85s Setting up python3-wheel (0.46.1-2) ... 86s Setting up python3-psutil (7.1.0-1ubuntu1) ... 86s Setting up autotools-dev (20240727.1) ... 86s Setting up python3-pyproject-hooks (1.2.0-1) ... 86s Setting up python3-poetry-core (2.2.1-2) ... 87s Setting up libmpc3:arm64 (1.3.1-2) ... 87s Setting up python3-mypy (1.15.0-5) ... 90s Setting up autopoint (0.23.2-1) ... 90s Setting up python3-installer (0.7.0+dfsg1-3) ... 90s Setting up autoconf (2.72-3.1ubuntu1) ... 90s Setting up python3-pluggy (1.6.0-1) ... 90s Setting up libubsan1:arm64 (15.2.0-7ubuntu1) ... 90s Setting up dwz (0.16-2) ... 90s Setting up libhwasan0:arm64 (15.2.0-7ubuntu1) ... 90s Setting up libasan8:arm64 (15.2.0-7ubuntu1) ... 90s Setting up debugedit (1:5.2-3) ... 90s Setting up python3-typing-inspect (0.9.0-1) ... 90s Setting up libtsan2:arm64 (15.2.0-7ubuntu1) ... 90s Setting up libisl23:arm64 (0.27-1) ... 90s Setting up python3-build (1.2.2-4) ... 91s Setting up python3-tomlkit (0.13.3-2) ... 91s Setting up python3.14-minimal (3.14.0-4) ... 92s Setting up libcc1-0:arm64 (15.2.0-7ubuntu1) ... 92s Setting up liblsan0:arm64 (15.2.0-7ubuntu1) ... 92s Setting up libitm1:arm64 (15.2.0-7ubuntu1) ... 92s Setting up automake (1:1.18.1-2) ... 92s update-alternatives: using /usr/bin/automake-1.18 to provide /usr/bin/automake (automake) in auto mode 92s Setting up libfile-stripnondeterminism-perl (1.15.0-1) ... 92s Setting up cpp-15-aarch64-linux-gnu (15.2.0-7ubuntu1) ... 92s Setting up gettext (0.23.2-1) ... 92s Setting up libgcc-15-dev:arm64 (15.2.0-7ubuntu1) ... 92s Setting up libpython3.14-stdlib:arm64 (3.14.0-4) ... 92s Setting up pybuild-plugin-pyproject (6.20250414) ... 92s Setting up python3-pytest (8.3.5-2) ... 92s Setting up python3-hypothesis (6.130.5-2) ... 93s Setting up python3-poetry-dynamic-versioning (1.8.2-1) ... 93s Setting up intltool-debian (0.35.0+20060710.6) ... 93s Setting up cpp-aarch64-linux-gnu (4:15.2.0-4ubuntu1) ... 93s Setting up libstdc++-15-dev:arm64 (15.2.0-7ubuntu1) ... 93s Setting up python3-dataclasses-json (0.6.7-1) ... 94s Setting up dh-strip-nondeterminism (1.15.0-1) ... 94s Setting up cpp-15 (15.2.0-7ubuntu1) ... 94s Setting up cpp (4:15.2.0-4ubuntu1) ... 94s Setting up python3.14 (3.14.0-4) ... 95s Setting up gcc-15-aarch64-linux-gnu (15.2.0-7ubuntu1) ... 95s Setting up po-debconf (1.0.21+nmu1) ... 95s Setting up python3-all (3.13.7-2) ... 95s Setting up gcc-15 (15.2.0-7ubuntu1) ... 95s Setting up g++-15-aarch64-linux-gnu (15.2.0-7ubuntu1) ... 95s Setting up g++-15 (15.2.0-7ubuntu1) ... 95s Setting up gcc-aarch64-linux-gnu (4:15.2.0-4ubuntu1) ... 95s Setting up libtool (2.5.4-7) ... 95s Setting up gcc (4:15.2.0-4ubuntu1) ... 95s Setting up dh-autoreconf (21) ... 95s Setting up g++-aarch64-linux-gnu (4:15.2.0-4ubuntu1) ... 95s Setting up debhelper (13.24.2ubuntu1) ... 95s Setting up g++ (4:15.2.0-4ubuntu1) ... 95s update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode 95s Setting up build-essential (12.12ubuntu1) ... 95s Setting up pybuild-plugin-autopkgtest (6.20250414) ... 95s Processing triggers for man-db (2.13.1-1) ... 96s Processing triggers for install-info (7.2-5) ... 96s Processing triggers for libc-bin (2.42-2ubuntu2) ... 96s Processing triggers for systemd (257.9-0ubuntu2) ... 97s autopkgtest [13:55:05]: test pybuild-autopkgtest: pybuild-autopkgtest 97s autopkgtest [13:55:05]: test pybuild-autopkgtest: [----------------------- 97s pybuild-autopkgtest 98s I: pybuild base:311: cd /tmp/autopkgtest.s1BeZA/autopkgtest_tmp/build; python3.14 -m pytest tests 99s ============================= test session starts ============================== 99s platform linux -- Python 3.14.0, pytest-8.3.5, pluggy-1.6.0 99s rootdir: /tmp/autopkgtest.s1BeZA/autopkgtest_tmp/build 99s configfile: pyproject.toml 99s plugins: typeguard-4.4.2, hypothesis-6.130.5 99s collected 328 items 99s 99s tests/test_annotations.py s [ 0%] 99s tests/test_api.py ........s.s....................... [ 10%] 99s tests/test_builtins.py .. [ 11%] 99s tests/test_collection_of_unions.py ...... [ 13%] 99s tests/test_collections.py .............................................. [ 27%] 99s .................. [ 32%] 99s tests/test_core.py ss [ 33%] 99s tests/test_dict.py .................. [ 38%] 99s tests/test_enum.py ............................ [ 47%] 99s tests/test_examples.py ..... [ 48%] 99s tests/test_exclude.py .... [ 50%] 99s tests/test_generic_dataclass.py .......... [ 53%] 99s tests/test_global_config.py .... [ 54%] 99s tests/test_invariants.py . [ 54%] 99s tests/test_letter_case.py ................. [ 59%] 99s tests/test_metadata.py ... [ 60%] 99s tests/test_nested.py ...... [ 62%] 99s tests/test_recursive.py ... [ 63%] 99s tests/test_schema.py .......... [ 66%] 99s tests/test_self.py .... [ 67%] 99s tests/test_str_subclass.py .. [ 68%] 99s tests/test_time.py .......... [ 71%] 99s tests/test_tuples.py ............ [ 75%] 100s tests/test_undefined_parameters.py ..............FF................ [ 84%] 100s tests/test_union.py .............................................. [ 98%] 100s tests/test_unsupported_generics.py .... [100%] 100s 100s =================================== FAILURES =================================== 100s _______________ test_undefined_parameters_catch_all_schema_dump ________________ 100s 100s boss_json = '{\n "minions": [\n {\n "name": "evil minion", \n "UNKNOWN_PROPERTY" :... {\n "name": "very evil minion"\n }\n ],\n "UNKNOWN_PROPERTY" : "value"\n }' 100s 100s def test_undefined_parameters_catch_all_schema_dump(boss_json): 100s import json 100s 100s @dataclass_json(undefined=Undefined.INCLUDE) 100s @dataclass(frozen=True) 100s class Minion: 100s name: str 100s catch_all: CatchAll 100s 100s @dataclass_json(undefined=Undefined.INCLUDE) 100s @dataclass(frozen=True) 100s class Boss: 100s minions: List[Minion] 100s catch_all: CatchAll 100s 100s boss = Boss.schema().loads(boss_json) 100s > assert json.loads(boss_json) == Boss.schema().dump(boss) 100s 100s tests/test_undefined_parameters.py:221: 100s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 100s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:373: in dump 100s dumped = Schema.dump(self, obj, many=many) 100s /usr/lib/python3/dist-packages/marshmallow/schema.py:621: in dump 100s result = self._serialize(processed_obj, many=many) 100s /usr/lib/python3/dist-packages/marshmallow/schema.py:589: in _serialize 100s value = field_obj.serialize(attr_name, obj, accessor=self.get_attribute) 100s /usr/lib/python3/dist-packages/marshmallow/fields.py:348: in serialize 100s return self._serialize(value, attr, obj, **kwargs) 100s /usr/lib/python3/dist-packages/marshmallow/fields.py:799: in _serialize 100s return [self.inner._serialize(each, attr, obj, **kwargs) for each in value] 100s /usr/lib/python3/dist-packages/marshmallow/fields.py:656: in _serialize 100s return schema.dump(nested_obj, many=many) 100s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:385: in dump 100s dumped.update(_handle_undefined_parameters_safe(cls=obj, kvs={}, 100s /usr/lib/python3/dist-packages/dataclasses_json/utils.py:208: in _handle_undefined_parameters_safe 100s return undefined_parameter_action.value.handle_dump(obj=cls) 100s /usr/lib/python3/dist-packages/dataclasses_json/undefined.py:210: in handle_dump 100s catch_all_field = _CatchAllUndefinedParameters._get_catch_all_field( 100s /usr/lib/python3/dist-packages/dataclasses_json/undefined.py:251: in _get_catch_all_field 100s types = get_type_hints(cls, globalns=cls_globals) 100s /usr/lib/python3.14/typing.py:2387: in get_type_hints 100s hints = _lazy_annotationlib.get_annotations(obj, format=format) 100s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 100s 100s obj = test_undefined_parameters_catch_all_schema_dump..Minion(name='evil minion', catch_all={'UNKNOWN_PROPERTY': 'value'}) 100s 100s def get_annotations( 100s obj, *, globals=None, locals=None, eval_str=False, format=Format.VALUE 100s ): 100s """Compute the annotations dict for an object. 100s 100s obj may be a callable, class, module, or other object with 100s __annotate__ or __annotations__ attributes. 100s Passing any other object raises TypeError. 100s 100s The *format* parameter controls the format in which annotations are returned, 100s and must be a member of the Format enum or its integer equivalent. 100s For the VALUE format, the __annotations__ is tried first; if it 100s does not exist, the __annotate__ function is called. The 100s FORWARDREF format uses __annotations__ if it exists and can be 100s evaluated, and otherwise falls back to calling the __annotate__ function. 100s The SOURCE format tries __annotate__ first, and falls back to 100s using __annotations__, stringified using annotations_to_string(). 100s 100s This function handles several details for you: 100s 100s * If eval_str is true, values of type str will 100s be un-stringized using eval(). This is intended 100s for use with stringized annotations 100s ("from __future__ import annotations"). 100s * If obj doesn't have an annotations dict, returns an 100s empty dict. (Functions and methods always have an 100s annotations dict; classes, modules, and other types of 100s callables may not.) 100s * Ignores inherited annotations on classes. If a class 100s doesn't have its own annotations dict, returns an empty dict. 100s * All accesses to object members and dict values are done 100s using getattr() and dict.get() for safety. 100s * Always, always, always returns a freshly-created dict. 100s 100s eval_str controls whether or not values of type str are replaced 100s with the result of calling eval() on those values: 100s 100s * If eval_str is true, eval() is called on values of type str. 100s * If eval_str is false (the default), values of type str are unchanged. 100s 100s globals and locals are passed in to eval(); see the documentation 100s for eval() for more information. If either globals or locals is 100s None, this function may replace that value with a context-specific 100s default, contingent on type(obj): 100s 100s * If obj is a module, globals defaults to obj.__dict__. 100s * If obj is a class, globals defaults to 100s sys.modules[obj.__module__].__dict__ and locals 100s defaults to the obj class namespace. 100s * If obj is a callable, globals defaults to obj.__globals__, 100s although if obj is a wrapped function (using 100s functools.update_wrapper()) it is first unwrapped. 100s """ 100s if eval_str and format != Format.VALUE: 100s raise ValueError("eval_str=True is only supported with format=Format.VALUE") 100s 100s match format: 100s case Format.VALUE: 100s # For VALUE, we first look at __annotations__ 100s ann = _get_dunder_annotations(obj) 100s 100s # If it's not there, try __annotate__ instead 100s if ann is None: 100s ann = _get_and_call_annotate(obj, format) 100s case Format.FORWARDREF: 100s # For FORWARDREF, we use __annotations__ if it exists 100s try: 100s ann = _get_dunder_annotations(obj) 100s except Exception: 100s pass 100s else: 100s if ann is not None: 100s return dict(ann) 100s 100s # But if __annotations__ threw a NameError, we try calling __annotate__ 100s ann = _get_and_call_annotate(obj, format) 100s if ann is None: 100s # If that didn't work either, we have a very weird object: evaluating 100s # __annotations__ threw NameError and there is no __annotate__. In that case, 100s # we fall back to trying __annotations__ again. 100s ann = _get_dunder_annotations(obj) 100s case Format.STRING: 100s # For STRING, we try to call __annotate__ 100s ann = _get_and_call_annotate(obj, format) 100s if ann is not None: 100s return dict(ann) 100s # But if we didn't get it, we use __annotations__ instead. 100s ann = _get_dunder_annotations(obj) 100s if ann is not None: 100s return annotations_to_string(ann) 100s case Format.VALUE_WITH_FAKE_GLOBALS: 100s raise ValueError("The VALUE_WITH_FAKE_GLOBALS format is for internal use only") 100s case _: 100s raise ValueError(f"Unsupported format {format!r}") 100s 100s if ann is None: 100s if isinstance(obj, type) or callable(obj): 100s return {} 100s > raise TypeError(f"{obj!r} does not have annotations") 100s E TypeError: test_undefined_parameters_catch_all_schema_dump..Minion(name='evil minion', catch_all={'UNKNOWN_PROPERTY': 'value'}) does not have annotations 100s 100s /usr/lib/python3.14/annotationlib.py:929: TypeError 100s _____________ test_undefined_parameters_catch_all_schema_roundtrip _____________ 100s 100s boss_json = '{\n "minions": [\n {\n "name": "evil minion", \n "UNKNOWN_PROPERTY" :... {\n "name": "very evil minion"\n }\n ],\n "UNKNOWN_PROPERTY" : "value"\n }' 100s 100s def test_undefined_parameters_catch_all_schema_roundtrip(boss_json): 100s @dataclass_json(undefined=Undefined.INCLUDE) 100s @dataclass(frozen=True) 100s class Minion: 100s name: str 100s catch_all: CatchAll 100s 100s @dataclass_json(undefined=Undefined.INCLUDE) 100s @dataclass(frozen=True) 100s class Boss: 100s minions: List[Minion] 100s catch_all: CatchAll 100s 100s boss1 = Boss.schema().loads(boss_json) 100s > dumped_s = Boss.schema().dumps(boss1) 100s 100s tests/test_undefined_parameters.py:239: 100s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 100s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:369: in dumps 100s return Schema.dumps(self, *args, **kwargs) 100s /usr/lib/python3/dist-packages/marshmallow/schema.py:644: in dumps 100s serialized = self.dump(obj, many=many) 100s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:373: in dump 100s dumped = Schema.dump(self, obj, many=many) 100s /usr/lib/python3/dist-packages/marshmallow/schema.py:621: in dump 100s result = self._serialize(processed_obj, many=many) 100s /usr/lib/python3/dist-packages/marshmallow/schema.py:589: in _serialize 100s value = field_obj.serialize(attr_name, obj, accessor=self.get_attribute) 100s /usr/lib/python3/dist-packages/marshmallow/fields.py:348: in serialize 100s return self._serialize(value, attr, obj, **kwargs) 100s /usr/lib/python3/dist-packages/marshmallow/fields.py:799: in _serialize 100s return [self.inner._serialize(each, attr, obj, **kwargs) for each in value] 100s /usr/lib/python3/dist-packages/marshmallow/fields.py:656: in _serialize 100s return schema.dump(nested_obj, many=many) 100s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:385: in dump 100s dumped.update(_handle_undefined_parameters_safe(cls=obj, kvs={}, 100s /usr/lib/python3/dist-packages/dataclasses_json/utils.py:208: in _handle_undefined_parameters_safe 100s return undefined_parameter_action.value.handle_dump(obj=cls) 100s /usr/lib/python3/dist-packages/dataclasses_json/undefined.py:210: in handle_dump 100s catch_all_field = _CatchAllUndefinedParameters._get_catch_all_field( 100s /usr/lib/python3/dist-packages/dataclasses_json/undefined.py:251: in _get_catch_all_field 100s types = get_type_hints(cls, globalns=cls_globals) 100s /usr/lib/python3.14/typing.py:2387: in get_type_hints 100s hints = _lazy_annotationlib.get_annotations(obj, format=format) 100s _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 100s 100s obj = test_undefined_parameters_catch_all_schema_roundtrip..Minion(name='evil minion', catch_all={'UNKNOWN_PROPERTY': 'value'}) 100s 100s def get_annotations( 100s obj, *, globals=None, locals=None, eval_str=False, format=Format.VALUE 100s ): 100s """Compute the annotations dict for an object. 100s 100s obj may be a callable, class, module, or other object with 100s __annotate__ or __annotations__ attributes. 100s Passing any other object raises TypeError. 100s 100s The *format* parameter controls the format in which annotations are returned, 100s and must be a member of the Format enum or its integer equivalent. 100s For the VALUE format, the __annotations__ is tried first; if it 100s does not exist, the __annotate__ function is called. The 100s FORWARDREF format uses __annotations__ if it exists and can be 100s evaluated, and otherwise falls back to calling the __annotate__ function. 100s The SOURCE format tries __annotate__ first, and falls back to 100s using __annotations__, stringified using annotations_to_string(). 100s 100s This function handles several details for you: 100s 100s * If eval_str is true, values of type str will 100s be un-stringized using eval(). This is intended 100s for use with stringized annotations 100s ("from __future__ import annotations"). 100s * If obj doesn't have an annotations dict, returns an 100s empty dict. (Functions and methods always have an 100s annotations dict; classes, modules, and other types of 100s callables may not.) 100s * Ignores inherited annotations on classes. If a class 100s doesn't have its own annotations dict, returns an empty dict. 100s * All accesses to object members and dict values are done 100s using getattr() and dict.get() for safety. 100s * Always, always, always returns a freshly-created dict. 100s 100s eval_str controls whether or not values of type str are replaced 100s with the result of calling eval() on those values: 100s 100s * If eval_str is true, eval() is called on values of type str. 100s * If eval_str is false (the default), values of type str are unchanged. 100s 100s globals and locals are passed in to eval(); see the documentation 100s for eval() for more information. If either globals or locals is 100s None, this function may replace that value with a context-specific 100s default, contingent on type(obj): 100s 100s * If obj is a module, globals defaults to obj.__dict__. 100s * If obj is a class, globals defaults to 100s sys.modules[obj.__module__].__dict__ and locals 100s defaults to the obj class namespace. 100s * If obj is a callable, globals defaults to obj.__globals__, 100s although if obj is a wrapped function (using 100s functools.update_wrapper()) it is first unwrapped. 100s """ 100s if eval_str and format != Format.VALUE: 100s raise ValueError("eval_str=True is only supported with format=Format.VALUE") 100s 100s match format: 100s case Format.VALUE: 100s # For VALUE, we first look at __annotations__ 100s ann = _get_dunder_annotations(obj) 100s 100s # If it's not there, try __annotate__ instead 100s if ann is None: 100s ann = _get_and_call_annotate(obj, format) 100s case Format.FORWARDREF: 100s # For FORWARDREF, we use __annotations__ if it exists 100s try: 100s ann = _get_dunder_annotations(obj) 100s except Exception: 100s pass 100s else: 100s if ann is not None: 100s return dict(ann) 100s 100s # But if __annotations__ threw a NameError, we try calling __annotate__ 100s ann = _get_and_call_annotate(obj, format) 100s if ann is None: 100s # If that didn't work either, we have a very weird object: evaluating 100s # __annotations__ threw NameError and there is no __annotate__. In that case, 100s # we fall back to trying __annotations__ again. 100s ann = _get_dunder_annotations(obj) 100s case Format.STRING: 100s # For STRING, we try to call __annotate__ 100s ann = _get_and_call_annotate(obj, format) 100s if ann is not None: 100s return dict(ann) 100s # But if we didn't get it, we use __annotations__ instead. 100s ann = _get_dunder_annotations(obj) 100s if ann is not None: 100s return annotations_to_string(ann) 100s case Format.VALUE_WITH_FAKE_GLOBALS: 100s raise ValueError("The VALUE_WITH_FAKE_GLOBALS format is for internal use only") 100s case _: 100s raise ValueError(f"Unsupported format {format!r}") 100s 100s if ann is None: 100s if isinstance(obj, type) or callable(obj): 100s return {} 100s > raise TypeError(f"{obj!r} does not have annotations") 100s E TypeError: test_undefined_parameters_catch_all_schema_roundtrip..Minion(name='evil minion', catch_all={'UNKNOWN_PROPERTY': 'value'}) does not have annotations 100s 100s /usr/lib/python3.14/annotationlib.py:929: TypeError 100s =============================== warnings summary =============================== 100s ../../../../usr/lib/python3/dist-packages/dataclasses_json/mm.py:277 100s tests/test_examples.py::TestEncoder::test_students_missing 100s tests/test_union.py::test_serialize[obj17-expected17-{"f1": null}] 100s tests/test_union.py::test_serialize[obj18-expected18-{"f1": "str1"}] 100s tests/test_union.py::test_serialize[obj19-expected19-{"f1": null}] 100s tests/test_union.py::test_deserialize[expected_obj17-data17-{"f1": null}] 100s tests/test_union.py::test_deserialize[expected_obj18-data18-{"f1": "str1"}] 100s tests/test_union.py::test_deserialize[expected_obj19-data19-{"f1": null}] 100s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:277: RemovedInMarshmallow4Warning: The 'default' argument to fields is deprecated. Use 'dump_default' instead. 100s return TYPES[origin](*args, **options) 100s 100s ../../../../usr/lib/python3/dist-packages/marshmallow/fields.py:1606: 1 warning 100s tests/test_enum.py: 13 warnings 100s tests/test_undefined_parameters.py: 11 warnings 100s /usr/lib/python3/dist-packages/marshmallow/fields.py:1606: RemovedInMarshmallow4Warning: The 'default' argument to fields is deprecated. Use 'dump_default' instead. 100s super().__init__(**kwargs) 100s 100s tests/test_collection_of_unions.py:8 100s /tmp/autopkgtest.s1BeZA/autopkgtest_tmp/build/tests/test_collection_of_unions.py:8: PytestCollectionWarning: cannot collect test class 'TestChild' because it has a __init__ constructor (from: tests/test_collection_of_unions.py) 100s @dataclass_json 100s 100s tests/test_collection_of_unions.py:14 100s /tmp/autopkgtest.s1BeZA/autopkgtest_tmp/build/tests/test_collection_of_unions.py:14: PytestCollectionWarning: cannot collect test class 'TestOtherChild' because it has a __init__ constructor (from: tests/test_collection_of_unions.py) 100s @dataclass_json 100s 100s tests/test_api.py: 3 warnings 100s tests/test_schema.py: 1 warning 100s tests/test_union.py: 57 warnings 100s /usr/lib/python3/dist-packages/marshmallow/fields.py:582: RemovedInMarshmallow4Warning: Passing field metadata as keyword arguments is deprecated. Use the explicit `metadata=...` argument instead. Additional metadata: {'field_many': False} 100s super().__init__(default=default, dump_default=dump_default, **kwargs) 100s 100s tests/test_api.py::TestSchema::test_loads_default 100s tests/test_api.py::TestSchema::test_loads_default_many 100s tests/test_api.py::TestSchema::test_dumps_default 100s tests/test_api.py::TestSchema::test_dumps_default_many 100s tests/test_api.py::TestSchema::test_loads_infer_missing_nested 100s tests/test_examples.py::TestEncoder::test_students_missing 100s tests/test_schema.py::TestSchema::test_optional 100s tests/test_schema.py::TestSchema::test_not_providing_required_field 100s /usr/lib/python3/dist-packages/marshmallow/fields.py:986: RemovedInMarshmallow4Warning: The 'default' argument to fields is deprecated. Use 'dump_default' instead. 100s super().__init__(**kwargs) 100s 100s tests/test_api.py::TestSchema::test_loads_default 100s tests/test_api.py::TestSchema::test_loads_default_many 100s tests/test_api.py::TestSchema::test_dumps_default 100s tests/test_api.py::TestSchema::test_dumps_default_many 100s /usr/lib/python3/dist-packages/marshmallow/fields.py:1218: RemovedInMarshmallow4Warning: The 'default' argument to fields is deprecated. Use 'dump_default' instead. 100s super().__init__(**kwargs) 100s 100s tests/test_api.py::TestSchema::test_dumps_new_type 100s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:288: UserWarning: Unknown type tests.entities.UUIDWrapper at DataClassWithNewType.id: tests.entities.UUIDWrapper It's advised to pass the correct marshmallow type to `mm_field`. 100s warnings.warn( 100s 100s tests/test_api.py::TestSchema::test_dumps_new_type 100s tests/test_api.py::TestSchema::test_dumps_nested_new_type 100s tests/test_recursive.py::TestRecursive::test_tree_schema_round_trip 100s tests/test_recursive.py::TestRecursive::test_tree_schema_round_trip 100s tests/test_recursive.py::TestRecursive::test_tree_schema_round_trip 100s tests/test_recursive.py::TestRecursive::test_tree_schema_round_trip 100s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:291: ChangedInMarshmallow4Warning: `Field` should not be instantiated. Use `fields.Raw` or another field subclass instead. 100s return fields.Field(**options) 100s 100s tests/test_api.py::TestSchema::test_dumps_nested_new_type 100s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:288: UserWarning: Unknown type tests.entities.UUIDWrapperWrapper at DataClassWithNestedNewType.id: tests.entities.UUIDWrapperWrapper It's advised to pass the correct marshmallow type to `mm_field`. 100s warnings.warn( 100s 100s tests/test_api.py::TestSchema::test_loads_infer_missing 100s /usr/lib/python3/dist-packages/marshmallow/fields.py:986: RemovedInMarshmallow4Warning: The 'missing' argument to fields is deprecated. Use 'load_default' instead. 100s super().__init__(**kwargs) 100s 100s tests/test_api.py::TestSchema::test_loads_infer_missing_nested 100s /usr/lib/python3/dist-packages/marshmallow/fields.py:582: RemovedInMarshmallow4Warning: The 'missing' argument to fields is deprecated. Use 'load_default' instead. 100s super().__init__(default=default, dump_default=dump_default, **kwargs) 100s 100s tests/test_collection_of_unions.py::TestCollectionOfUnions::test_dict 100s tests/test_collection_of_unions.py::TestCollectionOfUnions::test_list 100s /usr/lib/python3/dist-packages/dataclasses_json/core.py:201: RuntimeWarning: 'NoneType' object value of non-optional type some_field detected when decoding TestChild. 100s warnings.warn( 100s 100s tests/test_collections.py::TestDecoder::test_optional_unbound 100s /usr/lib/python3/dist-packages/dataclasses_json/core.py:201: RuntimeWarning: 'NoneType' object value of non-optional type x detected when decoding DataClassWithOptionalUnbound. 100s warnings.warn( 100s 100s tests/test_dict.py::TestValidator::test_dataclass_with_typed_dict[metadata_dict2-False] 100s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:116: UserWarning: The type "bool" (value: "True") is not in the list of possible types of typing.Union (dataclass: DataWithTypedDict, field: metadata). Value cannot be deserialized properly. 100s warnings.warn( 100s 100s tests/test_enum.py: 17 warnings 100s /usr/lib/python3/dist-packages/marshmallow/fields.py:1928: RemovedInMarshmallow4Warning: The 'default' argument to fields is deprecated. Use 'dump_default' instead. 100s super().__init__(**kwargs) 100s 100s tests/test_enum.py: 13 warnings 100s tests/test_schema.py: 3 warnings 100s /usr/lib/python3/dist-packages/marshmallow/fields.py:776: RemovedInMarshmallow4Warning: The 'default' argument to fields is deprecated. Use 'dump_default' instead. 100s super().__init__(**kwargs) 100s 100s tests/test_recursive.py::TestRecursive::test_tree_schema_round_trip 100s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:288: UserWarning: Unknown type ForwardRef('Tree') at Tree.left: ForwardRef('Tree') | None It's advised to pass the correct marshmallow type to `mm_field`. 100s warnings.warn( 100s 100s tests/test_recursive.py::TestRecursive::test_tree_schema_round_trip 100s tests/test_recursive.py::TestRecursive::test_tree_schema_round_trip 100s tests/test_recursive.py::TestRecursive::test_tree_schema_round_trip 100s tests/test_recursive.py::TestRecursive::test_tree_schema_round_trip 100s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:291: RemovedInMarshmallow4Warning: The 'default' argument to fields is deprecated. Use 'dump_default' instead. 100s return fields.Field(**options) 100s 100s tests/test_recursive.py::TestRecursive::test_tree_schema_round_trip 100s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:288: UserWarning: Unknown type ForwardRef('Tree') at Tree.right: ForwardRef('Tree') | None It's advised to pass the correct marshmallow type to `mm_field`. 100s warnings.warn( 100s 100s tests/test_schema.py: 1 warning 100s tests/test_undefined_parameters.py: 8 warnings 100s tests/test_union.py: 10 warnings 100s /usr/lib/python3/dist-packages/marshmallow/fields.py:582: RemovedInMarshmallow4Warning: Passing field metadata as keyword arguments is deprecated. Use the explicit `metadata=...` argument instead. Additional metadata: {'field_many': True} 100s super().__init__(default=default, dump_default=dump_default, **kwargs) 100s 100s tests/test_union.py: 10 warnings 100s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:73: RemovedInMarshmallow4Warning: The 'default' argument to fields is deprecated. Use 'dump_default' instead. 100s super().__init__(*args, **kwargs) 100s 100s tests/test_union.py::test_serialize[obj11-expected11-{"f1": {"f1": 1}}] 100s tests/test_union.py::test_serialize[obj12-expected12-{"f1": null}] 100s tests/test_union.py::test_serialize[obj13-expected13-{"f1": {"f1": {"f1": "str1", "__type": "Aux2"}, "__type": "C5"}}] 100s tests/test_union.py::test_serialize[obj14-expected14-{"f1": {"f1": {"f1": 12}, "__type": "C6"}}] 100s tests/test_union.py::test_deserialize[expected_obj11-data11-{"f1": {"f1": 1}}] 100s tests/test_union.py::test_deserialize[expected_obj12-data12-{"f1": null}] 100s tests/test_union.py::test_deserialize[expected_obj13-data13-{"f1": {"f1": {"f1": "str1", "__type": "Aux2"}, "__type": "C5"}}] 100s tests/test_union.py::test_deserialize[expected_obj14-data14-{"f1": {"f1": {"f1": 12}, "__type": "C6"}}] 100s /usr/lib/python3/dist-packages/marshmallow/fields.py:582: RemovedInMarshmallow4Warning: The 'default' argument to fields is deprecated. Use 'dump_default' instead. 100s super().__init__(default=default, dump_default=dump_default, **kwargs) 100s 100s tests/test_union.py::test_deserialize[expected_obj3-data3-{"f1": {"str1": 0.12}}] 100s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:104: UserWarning: Attempting to deserialize "dict" (value: "{'str1': 0.12}) that does not have a "__type" type specifier field into(dataclass: C2, field: f1).Deserialization may fail, or deserialization to wrong type may occur. 100s warnings.warn( 100s 100s tests/test_union.py::test_deserialize[expected_obj3-data3-{"f1": {"str1": 0.12}}] 100s /usr/lib/python3/dist-packages/dataclasses_json/core.py:342: UserWarning: Failed to decode {'str1': 0.12} Union dataclasses.Expected Union to include a matching dataclass and it didn't. 100s warnings.warn( 100s 100s tests/test_union.py::test_deserialize_without_discriminator 100s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:104: UserWarning: Attempting to deserialize "dict" (value: "{'f1': 1}) that does not have a "__type" type specifier field into(dataclass: C4, field: f1).Deserialization may fail, or deserialization to wrong type may occur. 100s warnings.warn( 100s 100s tests/test_union.py::test_deserialize_without_discriminator 100s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:104: UserWarning: Attempting to deserialize "dict" (value: "{'f1': 'str1'}) that does not have a "__type" type specifier field into(dataclass: C4, field: f1).Deserialization may fail, or deserialization to wrong type may occur. 100s warnings.warn( 100s 100s tests/test_union.py::test_deserialize_without_discriminator 100s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:104: UserWarning: Attempting to deserialize "dict" (value: "{'f1': 'str1'}) that does not have a "__type" type specifier field into(dataclass: C12, field: f1).Deserialization may fail, or deserialization to wrong type may occur. 100s warnings.warn( 100s 100s tests/test_union.py::test_deserialize_without_discriminator 100s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:104: UserWarning: Attempting to deserialize "dict" (value: "{'f2': 'str1'}) that does not have a "__type" type specifier field into(dataclass: C12, field: f1).Deserialization may fail, or deserialization to wrong type may occur. 100s warnings.warn( 100s 100s tests/test_union.py::test_deserialize_without_discriminator 100s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:104: UserWarning: Attempting to deserialize "dict" (value: "{'f3': 'str2'}) that does not have a "__type" type specifier field into(dataclass: C12, field: f1).Deserialization may fail, or deserialization to wrong type may occur. 100s warnings.warn( 100s 100s tests/test_union.py::test_deserialize_without_discriminator 100s /usr/lib/python3/dist-packages/dataclasses_json/core.py:342: UserWarning: Failed to decode {'f3': 'str2'} Union dataclasses.Expected Union to include a matching dataclass and it didn't. 100s warnings.warn( 100s 100s tests/test_union.py::test_deserialize_with_mismatched_field_types 100s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:104: UserWarning: Attempting to deserialize "dict" (value: "{'data': 'Hello world!'}) that does not have a "__type" type specifier field into(dataclass: C16, field: event).Deserialization may fail, or deserialization to wrong type may occur. 100s warnings.warn( 100s 100s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 100s =========================== short test summary info ============================ 100s FAILED tests/test_undefined_parameters.py::test_undefined_parameters_catch_all_schema_dump 100s FAILED tests/test_undefined_parameters.py::test_undefined_parameters_catch_all_schema_roundtrip 100s ============ 2 failed, 321 passed, 5 skipped, 207 warnings in 1.62s ============ 100s E: pybuild pybuild:389: test: plugin pyproject failed with: exit code=1: cd /tmp/autopkgtest.s1BeZA/autopkgtest_tmp/build; python3.14 -m pytest tests 100s I: pybuild base:311: cd /tmp/autopkgtest.s1BeZA/autopkgtest_tmp/build; python3.13 -m pytest tests 102s ============================= test session starts ============================== 102s platform linux -- Python 3.13.9, pytest-8.3.5, pluggy-1.6.0 102s rootdir: /tmp/autopkgtest.s1BeZA/autopkgtest_tmp/build 102s configfile: pyproject.toml 102s plugins: typeguard-4.4.2, hypothesis-6.130.5 102s collected 328 items 102s 102s tests/test_annotations.py s [ 0%] 102s tests/test_api.py ........s.s....................... [ 10%] 102s tests/test_builtins.py .. [ 11%] 102s tests/test_collection_of_unions.py ...... [ 13%] 102s tests/test_collections.py .............................................. [ 27%] 102s .................. [ 32%] 102s tests/test_core.py ss [ 33%] 102s tests/test_dict.py .................. [ 38%] 102s tests/test_enum.py ............................ [ 47%] 102s tests/test_examples.py ..... [ 48%] 102s tests/test_exclude.py .... [ 50%] 102s tests/test_generic_dataclass.py .......... [ 53%] 102s tests/test_global_config.py .... [ 54%] 103s tests/test_invariants.py . [ 54%] 103s tests/test_letter_case.py ................. [ 59%] 103s tests/test_metadata.py ... [ 60%] 103s tests/test_nested.py ...... [ 62%] 103s tests/test_recursive.py ... [ 63%] 103s tests/test_schema.py .......... [ 66%] 103s tests/test_self.py .... [ 67%] 103s tests/test_str_subclass.py .. [ 68%] 103s tests/test_time.py .......... [ 71%] 103s tests/test_tuples.py ............ [ 75%] 103s tests/test_undefined_parameters.py ................................ [ 84%] 104s tests/test_union.py .............................................. [ 98%] 104s tests/test_unsupported_generics.py .... [100%] 104s 104s =============================== warnings summary =============================== 104s ../../../../usr/lib/python3/dist-packages/dataclasses_json/mm.py:277 104s tests/test_examples.py::TestEncoder::test_students_missing 104s tests/test_union.py::test_serialize[obj17-expected17-{"f1": null}] 104s tests/test_union.py::test_serialize[obj18-expected18-{"f1": "str1"}] 104s tests/test_union.py::test_serialize[obj19-expected19-{"f1": null}] 104s tests/test_union.py::test_deserialize[expected_obj17-data17-{"f1": null}] 104s tests/test_union.py::test_deserialize[expected_obj18-data18-{"f1": "str1"}] 104s tests/test_union.py::test_deserialize[expected_obj19-data19-{"f1": null}] 104s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:277: RemovedInMarshmallow4Warning: The 'default' argument to fields is deprecated. Use 'dump_default' instead. 104s return TYPES[origin](*args, **options) 104s 104s ../../../../usr/lib/python3/dist-packages/marshmallow/fields.py:1606: 1 warning 104s tests/test_enum.py: 13 warnings 104s tests/test_undefined_parameters.py: 15 warnings 104s /usr/lib/python3/dist-packages/marshmallow/fields.py:1606: RemovedInMarshmallow4Warning: The 'default' argument to fields is deprecated. Use 'dump_default' instead. 104s super().__init__(**kwargs) 104s 104s tests/test_collection_of_unions.py:8 104s /tmp/autopkgtest.s1BeZA/autopkgtest_tmp/build/tests/test_collection_of_unions.py:8: PytestCollectionWarning: cannot collect test class 'TestChild' because it has a __init__ constructor (from: tests/test_collection_of_unions.py) 104s @dataclass_json 104s 104s tests/test_collection_of_unions.py:14 104s /tmp/autopkgtest.s1BeZA/autopkgtest_tmp/build/tests/test_collection_of_unions.py:14: PytestCollectionWarning: cannot collect test class 'TestOtherChild' because it has a __init__ constructor (from: tests/test_collection_of_unions.py) 104s @dataclass_json 104s 104s tests/test_api.py: 3 warnings 104s tests/test_schema.py: 1 warning 104s tests/test_union.py: 57 warnings 104s /usr/lib/python3/dist-packages/marshmallow/fields.py:582: RemovedInMarshmallow4Warning: Passing field metadata as keyword arguments is deprecated. Use the explicit `metadata=...` argument instead. Additional metadata: {'field_many': False} 104s super().__init__(default=default, dump_default=dump_default, **kwargs) 104s 104s tests/test_api.py::TestSchema::test_loads_default 104s tests/test_api.py::TestSchema::test_loads_default_many 104s tests/test_api.py::TestSchema::test_dumps_default 104s tests/test_api.py::TestSchema::test_dumps_default_many 104s tests/test_api.py::TestSchema::test_loads_infer_missing_nested 104s tests/test_examples.py::TestEncoder::test_students_missing 104s tests/test_schema.py::TestSchema::test_optional 104s tests/test_schema.py::TestSchema::test_not_providing_required_field 104s /usr/lib/python3/dist-packages/marshmallow/fields.py:986: RemovedInMarshmallow4Warning: The 'default' argument to fields is deprecated. Use 'dump_default' instead. 104s super().__init__(**kwargs) 104s 104s tests/test_api.py::TestSchema::test_loads_default 104s tests/test_api.py::TestSchema::test_loads_default_many 104s tests/test_api.py::TestSchema::test_dumps_default 104s tests/test_api.py::TestSchema::test_dumps_default_many 104s /usr/lib/python3/dist-packages/marshmallow/fields.py:1218: RemovedInMarshmallow4Warning: The 'default' argument to fields is deprecated. Use 'dump_default' instead. 104s super().__init__(**kwargs) 104s 104s tests/test_api.py::TestSchema::test_dumps_new_type 104s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:288: UserWarning: Unknown type tests.entities.UUIDWrapper at DataClassWithNewType.id: tests.entities.UUIDWrapper It's advised to pass the correct marshmallow type to `mm_field`. 104s warnings.warn( 104s 104s tests/test_api.py::TestSchema::test_dumps_new_type 104s tests/test_api.py::TestSchema::test_dumps_nested_new_type 104s tests/test_recursive.py::TestRecursive::test_tree_schema_round_trip 104s tests/test_recursive.py::TestRecursive::test_tree_schema_round_trip 104s tests/test_recursive.py::TestRecursive::test_tree_schema_round_trip 104s tests/test_recursive.py::TestRecursive::test_tree_schema_round_trip 104s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:291: ChangedInMarshmallow4Warning: `Field` should not be instantiated. Use `fields.Raw` or another field subclass instead. 104s return fields.Field(**options) 104s 104s tests/test_api.py::TestSchema::test_dumps_nested_new_type 104s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:288: UserWarning: Unknown type tests.entities.UUIDWrapperWrapper at DataClassWithNestedNewType.id: tests.entities.UUIDWrapperWrapper It's advised to pass the correct marshmallow type to `mm_field`. 104s warnings.warn( 104s 104s tests/test_api.py::TestSchema::test_loads_infer_missing 104s /usr/lib/python3/dist-packages/marshmallow/fields.py:986: RemovedInMarshmallow4Warning: The 'missing' argument to fields is deprecated. Use 'load_default' instead. 104s super().__init__(**kwargs) 104s 104s tests/test_api.py::TestSchema::test_loads_infer_missing_nested 104s /usr/lib/python3/dist-packages/marshmallow/fields.py:582: RemovedInMarshmallow4Warning: The 'missing' argument to fields is deprecated. Use 'load_default' instead. 104s super().__init__(default=default, dump_default=dump_default, **kwargs) 104s 104s tests/test_collection_of_unions.py::TestCollectionOfUnions::test_dict 104s tests/test_collection_of_unions.py::TestCollectionOfUnions::test_list 104s /usr/lib/python3/dist-packages/dataclasses_json/core.py:201: RuntimeWarning: 'NoneType' object value of non-optional type some_field detected when decoding TestChild. 104s warnings.warn( 104s 104s tests/test_collections.py::TestDecoder::test_optional_unbound 104s /usr/lib/python3/dist-packages/dataclasses_json/core.py:201: RuntimeWarning: 'NoneType' object value of non-optional type x detected when decoding DataClassWithOptionalUnbound. 104s warnings.warn( 104s 104s tests/test_dict.py::TestValidator::test_dataclass_with_typed_dict[metadata_dict2-False] 104s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:116: UserWarning: The type "bool" (value: "True") is not in the list of possible types of typing.Union (dataclass: DataWithTypedDict, field: metadata). Value cannot be deserialized properly. 104s warnings.warn( 104s 104s tests/test_enum.py: 17 warnings 104s /usr/lib/python3/dist-packages/marshmallow/fields.py:1928: RemovedInMarshmallow4Warning: The 'default' argument to fields is deprecated. Use 'dump_default' instead. 104s super().__init__(**kwargs) 104s 104s tests/test_enum.py: 13 warnings 104s tests/test_schema.py: 3 warnings 104s /usr/lib/python3/dist-packages/marshmallow/fields.py:776: RemovedInMarshmallow4Warning: The 'default' argument to fields is deprecated. Use 'dump_default' instead. 104s super().__init__(**kwargs) 104s 104s tests/test_recursive.py::TestRecursive::test_tree_schema_round_trip 104s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:288: UserWarning: Unknown type ForwardRef('Tree') at Tree.left: typing.Optional[ForwardRef('Tree')] It's advised to pass the correct marshmallow type to `mm_field`. 104s warnings.warn( 104s 104s tests/test_recursive.py::TestRecursive::test_tree_schema_round_trip 104s tests/test_recursive.py::TestRecursive::test_tree_schema_round_trip 104s tests/test_recursive.py::TestRecursive::test_tree_schema_round_trip 104s tests/test_recursive.py::TestRecursive::test_tree_schema_round_trip 104s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:291: RemovedInMarshmallow4Warning: The 'default' argument to fields is deprecated. Use 'dump_default' instead. 104s return fields.Field(**options) 104s 104s tests/test_recursive.py::TestRecursive::test_tree_schema_round_trip 104s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:288: UserWarning: Unknown type ForwardRef('Tree') at Tree.right: typing.Optional[ForwardRef('Tree')] It's advised to pass the correct marshmallow type to `mm_field`. 104s warnings.warn( 104s 104s tests/test_schema.py: 1 warning 104s tests/test_undefined_parameters.py: 10 warnings 104s tests/test_union.py: 10 warnings 104s /usr/lib/python3/dist-packages/marshmallow/fields.py:582: RemovedInMarshmallow4Warning: Passing field metadata as keyword arguments is deprecated. Use the explicit `metadata=...` argument instead. Additional metadata: {'field_many': True} 104s super().__init__(default=default, dump_default=dump_default, **kwargs) 104s 104s tests/test_union.py: 10 warnings 104s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:73: RemovedInMarshmallow4Warning: The 'default' argument to fields is deprecated. Use 'dump_default' instead. 104s super().__init__(*args, **kwargs) 104s 104s tests/test_union.py::test_serialize[obj11-expected11-{"f1": {"f1": 1}}] 104s tests/test_union.py::test_serialize[obj12-expected12-{"f1": null}] 104s tests/test_union.py::test_serialize[obj13-expected13-{"f1": {"f1": {"f1": "str1", "__type": "Aux2"}, "__type": "C5"}}] 104s tests/test_union.py::test_serialize[obj14-expected14-{"f1": {"f1": {"f1": 12}, "__type": "C6"}}] 104s tests/test_union.py::test_deserialize[expected_obj11-data11-{"f1": {"f1": 1}}] 104s tests/test_union.py::test_deserialize[expected_obj12-data12-{"f1": null}] 104s tests/test_union.py::test_deserialize[expected_obj13-data13-{"f1": {"f1": {"f1": "str1", "__type": "Aux2"}, "__type": "C5"}}] 104s tests/test_union.py::test_deserialize[expected_obj14-data14-{"f1": {"f1": {"f1": 12}, "__type": "C6"}}] 104s /usr/lib/python3/dist-packages/marshmallow/fields.py:582: RemovedInMarshmallow4Warning: The 'default' argument to fields is deprecated. Use 'dump_default' instead. 104s super().__init__(default=default, dump_default=dump_default, **kwargs) 104s 104s tests/test_union.py::test_deserialize[expected_obj3-data3-{"f1": {"str1": 0.12}}] 104s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:104: UserWarning: Attempting to deserialize "dict" (value: "{'str1': 0.12}) that does not have a "__type" type specifier field into(dataclass: C2, field: f1).Deserialization may fail, or deserialization to wrong type may occur. 104s warnings.warn( 104s 104s tests/test_union.py::test_deserialize[expected_obj3-data3-{"f1": {"str1": 0.12}}] 104s /usr/lib/python3/dist-packages/dataclasses_json/core.py:342: UserWarning: Failed to decode {'str1': 0.12} Union dataclasses.Expected Union to include a matching dataclass and it didn't. 104s warnings.warn( 104s 104s tests/test_union.py::test_deserialize_without_discriminator 104s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:104: UserWarning: Attempting to deserialize "dict" (value: "{'f1': 1}) that does not have a "__type" type specifier field into(dataclass: C4, field: f1).Deserialization may fail, or deserialization to wrong type may occur. 104s warnings.warn( 104s 104s tests/test_union.py::test_deserialize_without_discriminator 104s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:104: UserWarning: Attempting to deserialize "dict" (value: "{'f1': 'str1'}) that does not have a "__type" type specifier field into(dataclass: C4, field: f1).Deserialization may fail, or deserialization to wrong type may occur. 104s warnings.warn( 104s 104s tests/test_union.py::test_deserialize_without_discriminator 104s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:104: UserWarning: Attempting to deserialize "dict" (value: "{'f1': 'str1'}) that does not have a "__type" type specifier field into(dataclass: C12, field: f1).Deserialization may fail, or deserialization to wrong type may occur. 104s warnings.warn( 104s 104s tests/test_union.py::test_deserialize_without_discriminator 104s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:104: UserWarning: Attempting to deserialize "dict" (value: "{'f2': 'str1'}) that does not have a "__type" type specifier field into(dataclass: C12, field: f1).Deserialization may fail, or deserialization to wrong type may occur. 104s warnings.warn( 104s 104s tests/test_union.py::test_deserialize_without_discriminator 104s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:104: UserWarning: Attempting to deserialize "dict" (value: "{'f3': 'str2'}) that does not have a "__type" type specifier field into(dataclass: C12, field: f1).Deserialization may fail, or deserialization to wrong type may occur. 104s warnings.warn( 104s 104s tests/test_union.py::test_deserialize_without_discriminator 104s /usr/lib/python3/dist-packages/dataclasses_json/core.py:342: UserWarning: Failed to decode {'f3': 'str2'} Union dataclasses.Expected Union to include a matching dataclass and it didn't. 104s warnings.warn( 104s 104s tests/test_union.py::test_deserialize_with_mismatched_field_types 104s /usr/lib/python3/dist-packages/dataclasses_json/mm.py:104: UserWarning: Attempting to deserialize "dict" (value: "{'data': 'Hello world!'}) that does not have a "__type" type specifier field into(dataclass: C16, field: event).Deserialization may fail, or deserialization to wrong type may occur. 104s warnings.warn( 104s 104s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 104s ================= 323 passed, 5 skipped, 213 warnings in 3.33s ================= 104s pybuild-autopkgtest: error: pybuild --autopkgtest --test-pytest -i python{version} -p "3.14 3.13" returned exit code 13 104s make: *** [/tmp/clUo0lzILA/run:4: pybuild-autopkgtest] Error 25 104s pybuild-autopkgtest: error: /tmp/clUo0lzILA/run pybuild-autopkgtest returned exit code 2 105s autopkgtest [13:55:13]: test pybuild-autopkgtest: -----------------------] 105s autopkgtest [13:55:13]: test pybuild-autopkgtest: - - - - - - - - - - results - - - - - - - - - - 105s pybuild-autopkgtest FAIL non-zero exit status 25 106s autopkgtest [13:55:14]: @@@@@@@@@@@@@@@@@@@@ summary 106s pybuild-autopkgtest FAIL non-zero exit status 25