I: pbuilder: network access will be disabled during build
I: Current time: Wed Feb 19 10:24:38 +14 2025
I: pbuilder-time-stamp: 1739910278
I: Building the build Environment
I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz]
I: copying local configuration
W: --override-config is not set; not updating apt.conf Read the manpage for details.
I: mounting /proc filesystem
I: mounting /sys filesystem
I: creating /{dev,run}/shm
I: mounting /dev/pts filesystem
I: redirecting /dev/ptmx to /dev/pts/ptmx
I: policy-rc.d already exists
I: using eatmydata during job
I: Copying source file
I: copying [ufo2ft_3.3.1-2.dsc]
I: copying [./ufo2ft_3.3.1.orig.tar.gz]
I: copying [./ufo2ft_3.3.1-2.debian.tar.xz]
I: Extracting source
dpkg-source: warning: cannot verify inline signature for ./ufo2ft_3.3.1-2.dsc: unsupported subcommand
dpkg-source: info: extracting ufo2ft in ufo2ft-3.3.1
dpkg-source: info: unpacking ufo2ft_3.3.1.orig.tar.gz
dpkg-source: info: unpacking ufo2ft_3.3.1-2.debian.tar.xz
dpkg-source: info: using patch list from debian/patches/series
dpkg-source: info: applying disable-pathops-test.patch
dpkg-source: info: applying Add-files-to-avoid-clean-target-failure.patch
I: using fakeroot in build.
I: Installing the build-deps
I: user script /srv/workspace/pbuilder/54219/tmp/hooks/D01_modify_environment starting
debug: Running on ionos12-i386.
I: Changing host+domainname to test build reproducibility
I: Adding a custom variable just for the fun of it...
I: Changing /bin/sh to bash
'/bin/sh' -> '/bin/bash'
lrwxrwxrwx 1 root root 9 Feb 18 20:24 /bin/sh -> /bin/bash
I: Setting pbuilder2's login shell to /bin/bash
I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other
I: user script /srv/workspace/pbuilder/54219/tmp/hooks/D01_modify_environment finished
I: user script /srv/workspace/pbuilder/54219/tmp/hooks/D02_print_environment starting
I: set
  BASH=/bin/sh
  BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath
  BASH_ALIASES=()
  BASH_ARGC=()
  BASH_ARGV=()
  BASH_CMDS=()
  BASH_LINENO=([0]="12" [1]="0")
  BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:.
  BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment")
  BASH_VERSINFO=([0]="5" [1]="2" [2]="37" [3]="1" [4]="release" [5]="i686-pc-linux-gnu")
  BASH_VERSION='5.2.37(1)-release'
  BUILDDIR=/build/reproducible-path
  BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other'
  BUILDUSERNAME=pbuilder2
  BUILD_ARCH=i386
  DEBIAN_FRONTEND=noninteractive
  DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=10 '
  DIRSTACK=()
  DISTRIBUTION=unstable
  EUID=0
  FUNCNAME=([0]="Echo" [1]="main")
  GROUPS=()
  HOME=/root
  HOSTNAME=i-capture-the-hostname
  HOSTTYPE=i686
  HOST_ARCH=i386
  IFS=' 	
  '
  INVOCATION_ID=b793bf9e2a834c768c35f8315a9d03c2
  LANG=C
  LANGUAGE=de_CH:de
  LC_ALL=C
  LD_LIBRARY_PATH=/usr/lib/libeatmydata
  LD_PRELOAD=libeatmydata.so
  MACHTYPE=i686-pc-linux-gnu
  MAIL=/var/mail/root
  OPTERR=1
  OPTIND=1
  OSTYPE=linux-gnu
  PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path
  PBCURRENTCOMMANDLINEOPERATION=build
  PBUILDER_OPERATION=build
  PBUILDER_PKGDATADIR=/usr/share/pbuilder
  PBUILDER_PKGLIBDIR=/usr/lib/pbuilder
  PBUILDER_SYSCONFDIR=/etc
  PIPESTATUS=([0]="0")
  POSIXLY_CORRECT=y
  PPID=54219
  PS4='+ '
  PWD=/
  SHELL=/bin/bash
  SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix
  SHLVL=3
  SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.o7fTMsBB/pbuilderrc_S4mZ --distribution unstable --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.o7fTMsBB/b2 --logfile b2/build.log ufo2ft_3.3.1-2.dsc'
  SUDO_GID=112
  SUDO_UID=107
  SUDO_USER=jenkins
  TERM=unknown
  TZ=/usr/share/zoneinfo/Etc/GMT-14
  UID=0
  USER=root
  _='I: set'
  http_proxy=http://46.16.76.132:3128
I: uname -a
  Linux i-capture-the-hostname 6.1.0-31-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.128-1 (2025-02-07) x86_64 GNU/Linux
I: ls -l /bin
  lrwxrwxrwx 1 root root 7 Nov 22 14:40 /bin -> usr/bin
I: user script /srv/workspace/pbuilder/54219/tmp/hooks/D02_print_environment finished
 -> Attempting to satisfy build-dependencies
 -> Creating pbuilder-satisfydepends-dummy package
Package: pbuilder-satisfydepends-dummy
Version: 0.invalid.0
Architecture: i386
Maintainer: Debian Pbuilder Team <pbuilder-maint@lists.alioth.debian.org>
Description: Dummy package to satisfy dependencies with aptitude - created by pbuilder
 This package was created automatically by pbuilder to satisfy the
 build-dependencies of the package being currently built.
Depends: debhelper-compat (= 13), dh-sequence-python3, python3-all, python3-setuptools, python3-setuptools-scm, python3-pytest, python3-fontmath, python3-fonttools (>= 4.50.0), python3-ufolib2 (>= 0.16.0), python3-defcon (>= 0.10.0), python3-syrupy, python3-compreffor (>= 0.5.5), python3-booleanoperations (>= 0.9.0), python3-cffsubr (>= 0.2.9)
dpkg-deb: building package 'pbuilder-satisfydepends-dummy' in '/tmp/satisfydepends-aptitude/pbuilder-satisfydepends-dummy.deb'.
Selecting previously unselected package pbuilder-satisfydepends-dummy.
(Reading database ... 19784 files and directories currently installed.)
Preparing to unpack .../pbuilder-satisfydepends-dummy.deb ...
Unpacking pbuilder-satisfydepends-dummy (0.invalid.0) ...
dpkg: pbuilder-satisfydepends-dummy: dependency problems, but configuring anyway as you requested:
 pbuilder-satisfydepends-dummy depends on debhelper-compat (= 13); however:
  Package debhelper-compat is not installed.
 pbuilder-satisfydepends-dummy depends on dh-sequence-python3; however:
  Package dh-sequence-python3 is not installed.
 pbuilder-satisfydepends-dummy depends on python3-all; however:
  Package python3-all is not installed.
 pbuilder-satisfydepends-dummy depends on python3-setuptools; however:
  Package python3-setuptools is not installed.
 pbuilder-satisfydepends-dummy depends on python3-setuptools-scm; however:
  Package python3-setuptools-scm is not installed.
 pbuilder-satisfydepends-dummy depends on python3-pytest; however:
  Package python3-pytest is not installed.
 pbuilder-satisfydepends-dummy depends on python3-fontmath; however:
  Package python3-fontmath is not installed.
 pbuilder-satisfydepends-dummy depends on python3-fonttools (>= 4.50.0); however:
  Package python3-fonttools is not installed.
 pbuilder-satisfydepends-dummy depends on python3-ufolib2 (>= 0.16.0); however:
  Package python3-ufolib2 is not installed.
 pbuilder-satisfydepends-dummy depends on python3-defcon (>= 0.10.0); however:
  Package python3-defcon is not installed.
 pbuilder-satisfydepends-dummy depends on python3-syrupy; however:
  Package python3-syrupy is not installed.
 pbuilder-satisfydepends-dummy depends on python3-compreffor (>= 0.5.5); however:
  Package python3-compreffor is not installed.
 pbuilder-satisfydepends-dummy depends on python3-booleanoperations (>= 0.9.0); however:
  Package python3-booleanoperations is not installed.
 pbuilder-satisfydepends-dummy depends on python3-cffsubr (>= 0.2.9); however:
  Package python3-cffsubr is not installed.

Setting up pbuilder-satisfydepends-dummy (0.invalid.0) ...
Reading package lists...
Building dependency tree...
Reading state information...
Initializing package states...
Writing extended state information...
Building tag database...
pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0)
pbuilder-satisfydepends-dummy is already installed at the requested version (0.invalid.0)
The following NEW packages will be installed:
  afdko-bin{a} autoconf{a} automake{a} autopoint{a} autotools-dev{a} bsdextrautils{a} debhelper{a} dh-autoreconf{a} dh-python{a} dh-strip-nondeterminism{a} dwz{a} file{a} gettext{a} gettext-base{a} groff-base{a} intltool-debian{a} libantlr4-runtime4.9{a} libarchive-zip-perl{a} libblas3{a} libcom-err2{a} libdebhelper-perl{a} libelf1t64{a} libexpat1{a} libffi8{a} libfile-stripnondeterminism-perl{a} libgcrypt20{a} libgfortran5{a} libgpg-error0{a} libgssapi-krb5-2{a} libicu72{a} libjs-jquery{a} libjs-sphinxdoc{a} libjs-underscore{a} libk5crypto3{a} libkeyutils1{a} libkrb5-3{a} libkrb5support0{a} liblapack3{a} liblbfgsb0{a} libmagic-mgc{a} libmagic1t64{a} libnsl2{a} libpipeline1{a} libpython3-stdlib{a} libpython3.12-minimal{a} libpython3.12-stdlib{a} libpython3.13-minimal{a} libpython3.13-stdlib{a} libreadline8t64{a} libtirpc-common{a} libtirpc3t64{a} libtool{a} libuchardet0{a} libunistring5{a} libxml2{a} libxslt1.1{a} m4{a} man-db{a} media-types{a} netbase{a} po-debconf{a} python3{a} python3-all{a} python3-attr{a} python3-autocommand{a} python3-booleanoperations{a} python3-brotli{a} python3-cffsubr{a} python3-compreffor{a} python3-decorator{a} python3-defcon{a} python3-fontmath{a} python3-fonttools{a} python3-fs{a} python3-inflect{a} python3-iniconfig{a} python3-jaraco.context{a} python3-jaraco.functools{a} python3-jaraco.text{a} python3-lxml{a} python3-lz4{a} python3-minimal{a} python3-more-itertools{a} python3-mpmath{a} python3-numpy{a} python3-numpy-dev{a} python3-packaging{a} python3-pkg-resources{a} python3-platformdirs{a} python3-pluggy{a} python3-pyclipper{a} python3-pytest{a} python3-pytz{a} python3-scipy{a} python3-setuptools{a} python3-setuptools-scm{a} python3-sympy{a} python3-syrupy{a} python3-typeguard{a} python3-typing-extensions{a} python3-tz{a} python3-ufolib2{a} python3-zipp{a} python3.12{a} python3.12-minimal{a} python3.13{a} python3.13-minimal{a} readline-common{a} sensible-utils{a} tzdata{a} unicode-data{a} 
The following packages are RECOMMENDED but will NOT be installed:
  ca-certificates curl isympy-common javascript-common krb5-locales libarchive-cpio-perl libgpg-error-l10n libltdl-dev libmail-sendmail-perl lynx python3-bs4 python3-cssselect python3-fontpens python3-html5lib python3-pil python3-pooch python3-pygments wget 
0 packages upgraded, 111 newly installed, 0 to remove and 0 not upgraded.
Need to get 87.1 MB of archives. After unpacking 425 MB will be used.
Writing extended state information...
Get: 1 http://deb.debian.org/debian unstable/main i386 libpython3.13-minimal i386 3.13.2-1 [859 kB]
Get: 2 http://deb.debian.org/debian unstable/main i386 libexpat1 i386 2.6.4-1 [107 kB]
Get: 3 http://deb.debian.org/debian unstable/main i386 python3.13-minimal i386 3.13.2-1 [2266 kB]
Get: 4 http://deb.debian.org/debian unstable/main i386 python3-minimal i386 3.13.1-2 [27.0 kB]
Get: 5 http://deb.debian.org/debian unstable/main i386 media-types all 11.0.0 [27.6 kB]
Get: 6 http://deb.debian.org/debian unstable/main i386 netbase all 6.4 [12.8 kB]
Get: 7 http://deb.debian.org/debian unstable/main i386 tzdata all 2025a-2 [259 kB]
Get: 8 http://deb.debian.org/debian unstable/main i386 libffi8 i386 3.4.7-1 [21.4 kB]
Get: 9 http://deb.debian.org/debian unstable/main i386 readline-common all 8.2-6 [69.4 kB]
Get: 10 http://deb.debian.org/debian unstable/main i386 libreadline8t64 i386 8.2-6 [173 kB]
Get: 11 http://deb.debian.org/debian unstable/main i386 libpython3.13-stdlib i386 3.13.2-1 [1985 kB]
Get: 12 http://deb.debian.org/debian unstable/main i386 python3.13 i386 3.13.2-1 [745 kB]
Get: 13 http://deb.debian.org/debian unstable/main i386 libpython3-stdlib i386 3.13.1-2 [9952 B]
Get: 14 http://deb.debian.org/debian unstable/main i386 python3 i386 3.13.1-2 [28.0 kB]
Get: 15 http://deb.debian.org/debian unstable/main i386 libpython3.12-minimal i386 3.12.9-1 [816 kB]
Get: 16 http://deb.debian.org/debian unstable/main i386 python3.12-minimal i386 3.12.9-1 [2238 kB]
Get: 17 http://deb.debian.org/debian unstable/main i386 sensible-utils all 0.0.24 [24.8 kB]
Get: 18 http://deb.debian.org/debian unstable/main i386 libmagic-mgc i386 1:5.45-3+b1 [314 kB]
Get: 19 http://deb.debian.org/debian unstable/main i386 libmagic1t64 i386 1:5.45-3+b1 [115 kB]
Get: 20 http://deb.debian.org/debian unstable/main i386 file i386 1:5.45-3+b1 [43.2 kB]
Get: 21 http://deb.debian.org/debian unstable/main i386 gettext-base i386 0.23.1-1 [245 kB]
Get: 22 http://deb.debian.org/debian unstable/main i386 libuchardet0 i386 0.0.8-1+b2 [69.2 kB]
Get: 23 http://deb.debian.org/debian unstable/main i386 groff-base i386 1.23.0-7 [1199 kB]
Get: 24 http://deb.debian.org/debian unstable/main i386 bsdextrautils i386 2.40.4-4 [96.4 kB]
Get: 25 http://deb.debian.org/debian unstable/main i386 libpipeline1 i386 1.5.8-1 [41.2 kB]
Get: 26 http://deb.debian.org/debian unstable/main i386 man-db i386 2.13.0-1 [1428 kB]
Get: 27 http://deb.debian.org/debian unstable/main i386 libantlr4-runtime4.9 i386 4.9+dfsg-3+b3 [382 kB]
Get: 28 http://deb.debian.org/debian unstable/main i386 libicu72 i386 72.1-6 [9582 kB]
Get: 29 http://deb.debian.org/debian unstable/main i386 libxml2 i386 2.12.7+dfsg+really2.9.14-0.2+b1 [734 kB]
Get: 30 http://deb.debian.org/debian unstable/main i386 afdko-bin i386 4.0.1+dfsg1-2 [1107 kB]
Get: 31 http://deb.debian.org/debian unstable/main i386 m4 i386 1.4.19-5 [301 kB]
Get: 32 http://deb.debian.org/debian unstable/main i386 autoconf all 2.72-3 [493 kB]
Get: 33 http://deb.debian.org/debian unstable/main i386 autotools-dev all 20220109.1 [51.6 kB]
Get: 34 http://deb.debian.org/debian unstable/main i386 automake all 1:1.17-3 [862 kB]
Get: 35 http://deb.debian.org/debian unstable/main i386 autopoint all 0.23.1-1 [770 kB]
Get: 36 http://deb.debian.org/debian unstable/main i386 libdebhelper-perl all 13.24.1 [90.9 kB]
Get: 37 http://deb.debian.org/debian unstable/main i386 libtool all 2.5.4-3 [539 kB]
Get: 38 http://deb.debian.org/debian unstable/main i386 dh-autoreconf all 20 [17.1 kB]
Get: 39 http://deb.debian.org/debian unstable/main i386 libarchive-zip-perl all 1.68-1 [104 kB]
Get: 40 http://deb.debian.org/debian unstable/main i386 libfile-stripnondeterminism-perl all 1.14.1-2 [19.7 kB]
Get: 41 http://deb.debian.org/debian unstable/main i386 dh-strip-nondeterminism all 1.14.1-2 [8620 B]
Get: 42 http://deb.debian.org/debian unstable/main i386 libelf1t64 i386 0.192-4 [195 kB]
Get: 43 http://deb.debian.org/debian unstable/main i386 dwz i386 0.15-1+b1 [116 kB]
Get: 44 http://deb.debian.org/debian unstable/main i386 libunistring5 i386 1.3-1 [458 kB]
Get: 45 http://deb.debian.org/debian unstable/main i386 gettext i386 0.23.1-1 [1714 kB]
Get: 46 http://deb.debian.org/debian unstable/main i386 intltool-debian all 0.35.0+20060710.6 [22.9 kB]
Get: 47 http://deb.debian.org/debian unstable/main i386 po-debconf all 1.0.21+nmu1 [248 kB]
Get: 48 http://deb.debian.org/debian unstable/main i386 debhelper all 13.24.1 [920 kB]
Get: 49 http://deb.debian.org/debian unstable/main i386 python3-autocommand all 2.2.2-3 [13.6 kB]
Get: 50 http://deb.debian.org/debian unstable/main i386 python3-more-itertools all 10.6.0-1 [65.3 kB]
Get: 51 http://deb.debian.org/debian unstable/main i386 python3-typing-extensions all 4.12.2-2 [73.0 kB]
Get: 52 http://deb.debian.org/debian unstable/main i386 python3-typeguard all 4.4.1-1 [37.0 kB]
Get: 53 http://deb.debian.org/debian unstable/main i386 python3-inflect all 7.3.1-2 [32.4 kB]
Get: 54 http://deb.debian.org/debian unstable/main i386 python3-jaraco.context all 6.0.0-1 [7984 B]
Get: 55 http://deb.debian.org/debian unstable/main i386 python3-jaraco.functools all 4.1.0-1 [12.0 kB]
Get: 56 http://deb.debian.org/debian unstable/main i386 python3-pkg-resources all 75.6.0-1 [222 kB]
Get: 57 http://deb.debian.org/debian unstable/main i386 python3-jaraco.text all 4.0.0-1 [11.4 kB]
Get: 58 http://deb.debian.org/debian unstable/main i386 python3-zipp all 3.21.0-1 [10.6 kB]
Get: 59 http://deb.debian.org/debian unstable/main i386 python3-setuptools all 75.6.0-1 [720 kB]
Get: 60 http://deb.debian.org/debian unstable/main i386 dh-python all 6.20250108 [113 kB]
Get: 61 http://deb.debian.org/debian unstable/main i386 libblas3 i386 3.12.1-2 [150 kB]
Get: 62 http://deb.debian.org/debian unstable/main i386 libcom-err2 i386 1.47.2-1 [24.3 kB]
Get: 63 http://deb.debian.org/debian unstable/main i386 libgpg-error0 i386 1.51-3 [87.3 kB]
Get: 64 http://deb.debian.org/debian unstable/main i386 libgcrypt20 i386 1.11.0-7 [799 kB]
Get: 65 http://deb.debian.org/debian unstable/main i386 libgfortran5 i386 14.2.0-17 [735 kB]
Get: 66 http://deb.debian.org/debian unstable/main i386 libkrb5support0 i386 1.21.3-4 [35.0 kB]
Get: 67 http://deb.debian.org/debian unstable/main i386 libk5crypto3 i386 1.21.3-4 [83.7 kB]
Get: 68 http://deb.debian.org/debian unstable/main i386 libkeyutils1 i386 1.6.3-4 [9600 B]
Get: 69 http://deb.debian.org/debian unstable/main i386 libkrb5-3 i386 1.21.3-4 [354 kB]
Get: 70 http://deb.debian.org/debian unstable/main i386 libgssapi-krb5-2 i386 1.21.3-4 [149 kB]
Get: 71 http://deb.debian.org/debian unstable/main i386 libjs-jquery all 3.6.1+dfsg+~3.5.14-1 [326 kB]
Get: 72 http://deb.debian.org/debian unstable/main i386 libjs-underscore all 1.13.4~dfsg+~1.11.4-3 [116 kB]
Get: 73 http://deb.debian.org/debian unstable/main i386 libjs-sphinxdoc all 8.1.3-4 [30.4 kB]
Get: 74 http://deb.debian.org/debian unstable/main i386 liblapack3 i386 3.12.1-2 [2198 kB]
Get: 75 http://deb.debian.org/debian unstable/main i386 liblbfgsb0 i386 3.0+dfsg.4-1+b2 [29.5 kB]
Get: 76 http://deb.debian.org/debian unstable/main i386 libtirpc-common all 1.3.4+ds-1.3 [10.9 kB]
Get: 77 http://deb.debian.org/debian unstable/main i386 libtirpc3t64 i386 1.3.4+ds-1.3+b1 [90.5 kB]
Get: 78 http://deb.debian.org/debian unstable/main i386 libnsl2 i386 1.3.0-3+b3 [42.7 kB]
Get: 79 http://deb.debian.org/debian unstable/main i386 libpython3.12-stdlib i386 3.12.9-1 [1972 kB]
Get: 80 http://deb.debian.org/debian unstable/main i386 libxslt1.1 i386 1.1.35-1.1+b1 [243 kB]
Get: 81 http://deb.debian.org/debian unstable/main i386 python3.12 i386 3.12.9-1 [681 kB]
Get: 82 http://deb.debian.org/debian unstable/main i386 python3-all i386 3.13.1-2 [1052 B]
Get: 83 http://deb.debian.org/debian unstable/main i386 python3-attr all 25.1.0-1 [68.7 kB]
Get: 84 http://deb.debian.org/debian unstable/main i386 python3-brotli i386 1.1.0-2+b6 [319 kB]
Get: 85 http://deb.debian.org/debian unstable/main i386 python3-pytz all 2025.1-3 [150 kB]
Get: 86 http://deb.debian.org/debian unstable/main i386 python3-tz all 2025.1-3 [4004 B]
Get: 87 http://deb.debian.org/debian unstable/main i386 python3-platformdirs all 4.3.6-1 [16.6 kB]
Get: 88 http://deb.debian.org/debian unstable/main i386 python3-fs all 2.4.16-6 [95.1 kB]
Get: 89 http://deb.debian.org/debian unstable/main i386 python3-lxml i386 5.3.1-1 [1587 kB]
Get: 90 http://deb.debian.org/debian unstable/main i386 python3-lz4 i386 4.4.0+dfsg-1 [25.5 kB]
Get: 91 http://deb.debian.org/debian unstable/main i386 python3-decorator all 5.1.1-5 [15.1 kB]
Get: 92 http://deb.debian.org/debian unstable/main i386 python3-numpy-dev i386 1:2.2.3+ds-1 [145 kB]
Get: 93 http://deb.debian.org/debian unstable/main i386 python3-numpy i386 1:2.2.3+ds-1 [7542 kB]
Get: 94 http://deb.debian.org/debian unstable/main i386 python3-scipy i386 1.14.1-4 [20.1 MB]
Get: 95 http://deb.debian.org/debian unstable/main i386 python3-mpmath all 1.3.0-1 [419 kB]
Get: 96 http://deb.debian.org/debian unstable/main i386 python3-sympy all 1.13.3-3 [4148 kB]
Get: 97 http://deb.debian.org/debian unstable/main i386 python3-ufolib2 all 0.17.0+dfsg1-1 [33.0 kB]
Get: 98 http://deb.debian.org/debian unstable/main i386 python3-defcon all 0.10.3-3 [189 kB]
Get: 99 http://deb.debian.org/debian unstable/main i386 unicode-data all 15.1.0-1 [8547 kB]
Get: 100 http://deb.debian.org/debian unstable/main i386 python3-fonttools i386 4.55.3-2 [1591 kB]
Get: 101 http://deb.debian.org/debian unstable/main i386 python3-pyclipper i386 1.3.0.post6-1+b1 [153 kB]
Get: 102 http://deb.debian.org/debian unstable/main i386 python3-booleanoperations all 0.9.0-3 [18.3 kB]
Get: 103 http://deb.debian.org/debian unstable/main i386 python3-cffsubr all 0.3.0-1 [9400 B]
Get: 104 http://deb.debian.org/debian unstable/main i386 python3-compreffor i386 0.5.6-1+b1 [76.6 kB]
Get: 105 http://deb.debian.org/debian unstable/main i386 python3-fontmath all 0.9.4-1 [25.9 kB]
Get: 106 http://deb.debian.org/debian unstable/main i386 python3-iniconfig all 1.1.1-2 [6396 B]
Get: 107 http://deb.debian.org/debian unstable/main i386 python3-packaging all 24.2-1 [55.3 kB]
Get: 108 http://deb.debian.org/debian unstable/main i386 python3-pluggy all 1.5.0-1 [26.9 kB]
Get: 109 http://deb.debian.org/debian unstable/main i386 python3-pytest all 8.3.4-1 [250 kB]
Get: 110 http://deb.debian.org/debian unstable/main i386 python3-setuptools-scm all 8.1.0-1 [40.5 kB]
Get: 111 http://deb.debian.org/debian unstable/main i386 python3-syrupy all 4.8.1-1 [54.2 kB]
Fetched 87.1 MB in 1s (86.0 MB/s)
Preconfiguring packages ...
Selecting previously unselected package libpython3.13-minimal:i386.
(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 ... 19784 files and directories currently installed.)
Preparing to unpack .../libpython3.13-minimal_3.13.2-1_i386.deb ...
Unpacking libpython3.13-minimal:i386 (3.13.2-1) ...
Selecting previously unselected package libexpat1:i386.
Preparing to unpack .../libexpat1_2.6.4-1_i386.deb ...
Unpacking libexpat1:i386 (2.6.4-1) ...
Selecting previously unselected package python3.13-minimal.
Preparing to unpack .../python3.13-minimal_3.13.2-1_i386.deb ...
Unpacking python3.13-minimal (3.13.2-1) ...
Setting up libpython3.13-minimal:i386 (3.13.2-1) ...
Setting up libexpat1:i386 (2.6.4-1) ...
Setting up python3.13-minimal (3.13.2-1) ...
Selecting previously unselected package python3-minimal.
(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 ... 20118 files and directories currently installed.)
Preparing to unpack .../0-python3-minimal_3.13.1-2_i386.deb ...
Unpacking python3-minimal (3.13.1-2) ...
Selecting previously unselected package media-types.
Preparing to unpack .../1-media-types_11.0.0_all.deb ...
Unpacking media-types (11.0.0) ...
Selecting previously unselected package netbase.
Preparing to unpack .../2-netbase_6.4_all.deb ...
Unpacking netbase (6.4) ...
Selecting previously unselected package tzdata.
Preparing to unpack .../3-tzdata_2025a-2_all.deb ...
Unpacking tzdata (2025a-2) ...
Selecting previously unselected package libffi8:i386.
Preparing to unpack .../4-libffi8_3.4.7-1_i386.deb ...
Unpacking libffi8:i386 (3.4.7-1) ...
Selecting previously unselected package readline-common.
Preparing to unpack .../5-readline-common_8.2-6_all.deb ...
Unpacking readline-common (8.2-6) ...
Selecting previously unselected package libreadline8t64:i386.
Preparing to unpack .../6-libreadline8t64_8.2-6_i386.deb ...
Adding 'diversion of /lib/i386-linux-gnu/libhistory.so.8 to /lib/i386-linux-gnu/libhistory.so.8.usr-is-merged by libreadline8t64'
Adding 'diversion of /lib/i386-linux-gnu/libhistory.so.8.2 to /lib/i386-linux-gnu/libhistory.so.8.2.usr-is-merged by libreadline8t64'
Adding 'diversion of /lib/i386-linux-gnu/libreadline.so.8 to /lib/i386-linux-gnu/libreadline.so.8.usr-is-merged by libreadline8t64'
Adding 'diversion of /lib/i386-linux-gnu/libreadline.so.8.2 to /lib/i386-linux-gnu/libreadline.so.8.2.usr-is-merged by libreadline8t64'
Unpacking libreadline8t64:i386 (8.2-6) ...
Selecting previously unselected package libpython3.13-stdlib:i386.
Preparing to unpack .../7-libpython3.13-stdlib_3.13.2-1_i386.deb ...
Unpacking libpython3.13-stdlib:i386 (3.13.2-1) ...
Selecting previously unselected package python3.13.
Preparing to unpack .../8-python3.13_3.13.2-1_i386.deb ...
Unpacking python3.13 (3.13.2-1) ...
Selecting previously unselected package libpython3-stdlib:i386.
Preparing to unpack .../9-libpython3-stdlib_3.13.1-2_i386.deb ...
Unpacking libpython3-stdlib:i386 (3.13.1-2) ...
Setting up python3-minimal (3.13.1-2) ...
Selecting previously unselected package python3.
(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 ... 21128 files and directories currently installed.)
Preparing to unpack .../00-python3_3.13.1-2_i386.deb ...
Unpacking python3 (3.13.1-2) ...
Selecting previously unselected package libpython3.12-minimal:i386.
Preparing to unpack .../01-libpython3.12-minimal_3.12.9-1_i386.deb ...
Unpacking libpython3.12-minimal:i386 (3.12.9-1) ...
Selecting previously unselected package python3.12-minimal.
Preparing to unpack .../02-python3.12-minimal_3.12.9-1_i386.deb ...
Unpacking python3.12-minimal (3.12.9-1) ...
Selecting previously unselected package sensible-utils.
Preparing to unpack .../03-sensible-utils_0.0.24_all.deb ...
Unpacking sensible-utils (0.0.24) ...
Selecting previously unselected package libmagic-mgc.
Preparing to unpack .../04-libmagic-mgc_1%3a5.45-3+b1_i386.deb ...
Unpacking libmagic-mgc (1:5.45-3+b1) ...
Selecting previously unselected package libmagic1t64:i386.
Preparing to unpack .../05-libmagic1t64_1%3a5.45-3+b1_i386.deb ...
Unpacking libmagic1t64:i386 (1:5.45-3+b1) ...
Selecting previously unselected package file.
Preparing to unpack .../06-file_1%3a5.45-3+b1_i386.deb ...
Unpacking file (1:5.45-3+b1) ...
Selecting previously unselected package gettext-base.
Preparing to unpack .../07-gettext-base_0.23.1-1_i386.deb ...
Unpacking gettext-base (0.23.1-1) ...
Selecting previously unselected package libuchardet0:i386.
Preparing to unpack .../08-libuchardet0_0.0.8-1+b2_i386.deb ...
Unpacking libuchardet0:i386 (0.0.8-1+b2) ...
Selecting previously unselected package groff-base.
Preparing to unpack .../09-groff-base_1.23.0-7_i386.deb ...
Unpacking groff-base (1.23.0-7) ...
Selecting previously unselected package bsdextrautils.
Preparing to unpack .../10-bsdextrautils_2.40.4-4_i386.deb ...
Unpacking bsdextrautils (2.40.4-4) ...
Selecting previously unselected package libpipeline1:i386.
Preparing to unpack .../11-libpipeline1_1.5.8-1_i386.deb ...
Unpacking libpipeline1:i386 (1.5.8-1) ...
Selecting previously unselected package man-db.
Preparing to unpack .../12-man-db_2.13.0-1_i386.deb ...
Unpacking man-db (2.13.0-1) ...
Selecting previously unselected package libantlr4-runtime4.9:i386.
Preparing to unpack .../13-libantlr4-runtime4.9_4.9+dfsg-3+b3_i386.deb ...
Unpacking libantlr4-runtime4.9:i386 (4.9+dfsg-3+b3) ...
Selecting previously unselected package libicu72:i386.
Preparing to unpack .../14-libicu72_72.1-6_i386.deb ...
Unpacking libicu72:i386 (72.1-6) ...
Selecting previously unselected package libxml2:i386.
Preparing to unpack .../15-libxml2_2.12.7+dfsg+really2.9.14-0.2+b1_i386.deb ...
Unpacking libxml2:i386 (2.12.7+dfsg+really2.9.14-0.2+b1) ...
Selecting previously unselected package afdko-bin.
Preparing to unpack .../16-afdko-bin_4.0.1+dfsg1-2_i386.deb ...
Unpacking afdko-bin (4.0.1+dfsg1-2) ...
Selecting previously unselected package m4.
Preparing to unpack .../17-m4_1.4.19-5_i386.deb ...
Unpacking m4 (1.4.19-5) ...
Selecting previously unselected package autoconf.
Preparing to unpack .../18-autoconf_2.72-3_all.deb ...
Unpacking autoconf (2.72-3) ...
Selecting previously unselected package autotools-dev.
Preparing to unpack .../19-autotools-dev_20220109.1_all.deb ...
Unpacking autotools-dev (20220109.1) ...
Selecting previously unselected package automake.
Preparing to unpack .../20-automake_1%3a1.17-3_all.deb ...
Unpacking automake (1:1.17-3) ...
Selecting previously unselected package autopoint.
Preparing to unpack .../21-autopoint_0.23.1-1_all.deb ...
Unpacking autopoint (0.23.1-1) ...
Selecting previously unselected package libdebhelper-perl.
Preparing to unpack .../22-libdebhelper-perl_13.24.1_all.deb ...
Unpacking libdebhelper-perl (13.24.1) ...
Selecting previously unselected package libtool.
Preparing to unpack .../23-libtool_2.5.4-3_all.deb ...
Unpacking libtool (2.5.4-3) ...
Selecting previously unselected package dh-autoreconf.
Preparing to unpack .../24-dh-autoreconf_20_all.deb ...
Unpacking dh-autoreconf (20) ...
Selecting previously unselected package libarchive-zip-perl.
Preparing to unpack .../25-libarchive-zip-perl_1.68-1_all.deb ...
Unpacking libarchive-zip-perl (1.68-1) ...
Selecting previously unselected package libfile-stripnondeterminism-perl.
Preparing to unpack .../26-libfile-stripnondeterminism-perl_1.14.1-2_all.deb ...
Unpacking libfile-stripnondeterminism-perl (1.14.1-2) ...
Selecting previously unselected package dh-strip-nondeterminism.
Preparing to unpack .../27-dh-strip-nondeterminism_1.14.1-2_all.deb ...
Unpacking dh-strip-nondeterminism (1.14.1-2) ...
Selecting previously unselected package libelf1t64:i386.
Preparing to unpack .../28-libelf1t64_0.192-4_i386.deb ...
Unpacking libelf1t64:i386 (0.192-4) ...
Selecting previously unselected package dwz.
Preparing to unpack .../29-dwz_0.15-1+b1_i386.deb ...
Unpacking dwz (0.15-1+b1) ...
Selecting previously unselected package libunistring5:i386.
Preparing to unpack .../30-libunistring5_1.3-1_i386.deb ...
Unpacking libunistring5:i386 (1.3-1) ...
Selecting previously unselected package gettext.
Preparing to unpack .../31-gettext_0.23.1-1_i386.deb ...
Unpacking gettext (0.23.1-1) ...
Selecting previously unselected package intltool-debian.
Preparing to unpack .../32-intltool-debian_0.35.0+20060710.6_all.deb ...
Unpacking intltool-debian (0.35.0+20060710.6) ...
Selecting previously unselected package po-debconf.
Preparing to unpack .../33-po-debconf_1.0.21+nmu1_all.deb ...
Unpacking po-debconf (1.0.21+nmu1) ...
Selecting previously unselected package debhelper.
Preparing to unpack .../34-debhelper_13.24.1_all.deb ...
Unpacking debhelper (13.24.1) ...
Selecting previously unselected package python3-autocommand.
Preparing to unpack .../35-python3-autocommand_2.2.2-3_all.deb ...
Unpacking python3-autocommand (2.2.2-3) ...
Selecting previously unselected package python3-more-itertools.
Preparing to unpack .../36-python3-more-itertools_10.6.0-1_all.deb ...
Unpacking python3-more-itertools (10.6.0-1) ...
Selecting previously unselected package python3-typing-extensions.
Preparing to unpack .../37-python3-typing-extensions_4.12.2-2_all.deb ...
Unpacking python3-typing-extensions (4.12.2-2) ...
Selecting previously unselected package python3-typeguard.
Preparing to unpack .../38-python3-typeguard_4.4.1-1_all.deb ...
Unpacking python3-typeguard (4.4.1-1) ...
Selecting previously unselected package python3-inflect.
Preparing to unpack .../39-python3-inflect_7.3.1-2_all.deb ...
Unpacking python3-inflect (7.3.1-2) ...
Selecting previously unselected package python3-jaraco.context.
Preparing to unpack .../40-python3-jaraco.context_6.0.0-1_all.deb ...
Unpacking python3-jaraco.context (6.0.0-1) ...
Selecting previously unselected package python3-jaraco.functools.
Preparing to unpack .../41-python3-jaraco.functools_4.1.0-1_all.deb ...
Unpacking python3-jaraco.functools (4.1.0-1) ...
Selecting previously unselected package python3-pkg-resources.
Preparing to unpack .../42-python3-pkg-resources_75.6.0-1_all.deb ...
Unpacking python3-pkg-resources (75.6.0-1) ...
Selecting previously unselected package python3-jaraco.text.
Preparing to unpack .../43-python3-jaraco.text_4.0.0-1_all.deb ...
Unpacking python3-jaraco.text (4.0.0-1) ...
Selecting previously unselected package python3-zipp.
Preparing to unpack .../44-python3-zipp_3.21.0-1_all.deb ...
Unpacking python3-zipp (3.21.0-1) ...
Selecting previously unselected package python3-setuptools.
Preparing to unpack .../45-python3-setuptools_75.6.0-1_all.deb ...
Unpacking python3-setuptools (75.6.0-1) ...
Selecting previously unselected package dh-python.
Preparing to unpack .../46-dh-python_6.20250108_all.deb ...
Unpacking dh-python (6.20250108) ...
Selecting previously unselected package libblas3:i386.
Preparing to unpack .../47-libblas3_3.12.1-2_i386.deb ...
Unpacking libblas3:i386 (3.12.1-2) ...
Selecting previously unselected package libcom-err2:i386.
Preparing to unpack .../48-libcom-err2_1.47.2-1_i386.deb ...
Unpacking libcom-err2:i386 (1.47.2-1) ...
Selecting previously unselected package libgpg-error0:i386.
Preparing to unpack .../49-libgpg-error0_1.51-3_i386.deb ...
Unpacking libgpg-error0:i386 (1.51-3) ...
Selecting previously unselected package libgcrypt20:i386.
Preparing to unpack .../50-libgcrypt20_1.11.0-7_i386.deb ...
Unpacking libgcrypt20:i386 (1.11.0-7) ...
Selecting previously unselected package libgfortran5:i386.
Preparing to unpack .../51-libgfortran5_14.2.0-17_i386.deb ...
Unpacking libgfortran5:i386 (14.2.0-17) ...
Selecting previously unselected package libkrb5support0:i386.
Preparing to unpack .../52-libkrb5support0_1.21.3-4_i386.deb ...
Unpacking libkrb5support0:i386 (1.21.3-4) ...
Selecting previously unselected package libk5crypto3:i386.
Preparing to unpack .../53-libk5crypto3_1.21.3-4_i386.deb ...
Unpacking libk5crypto3:i386 (1.21.3-4) ...
Selecting previously unselected package libkeyutils1:i386.
Preparing to unpack .../54-libkeyutils1_1.6.3-4_i386.deb ...
Unpacking libkeyutils1:i386 (1.6.3-4) ...
Selecting previously unselected package libkrb5-3:i386.
Preparing to unpack .../55-libkrb5-3_1.21.3-4_i386.deb ...
Unpacking libkrb5-3:i386 (1.21.3-4) ...
Selecting previously unselected package libgssapi-krb5-2:i386.
Preparing to unpack .../56-libgssapi-krb5-2_1.21.3-4_i386.deb ...
Unpacking libgssapi-krb5-2:i386 (1.21.3-4) ...
Selecting previously unselected package libjs-jquery.
Preparing to unpack .../57-libjs-jquery_3.6.1+dfsg+~3.5.14-1_all.deb ...
Unpacking libjs-jquery (3.6.1+dfsg+~3.5.14-1) ...
Selecting previously unselected package libjs-underscore.
Preparing to unpack .../58-libjs-underscore_1.13.4~dfsg+~1.11.4-3_all.deb ...
Unpacking libjs-underscore (1.13.4~dfsg+~1.11.4-3) ...
Selecting previously unselected package libjs-sphinxdoc.
Preparing to unpack .../59-libjs-sphinxdoc_8.1.3-4_all.deb ...
Unpacking libjs-sphinxdoc (8.1.3-4) ...
Selecting previously unselected package liblapack3:i386.
Preparing to unpack .../60-liblapack3_3.12.1-2_i386.deb ...
Unpacking liblapack3:i386 (3.12.1-2) ...
Selecting previously unselected package liblbfgsb0:i386.
Preparing to unpack .../61-liblbfgsb0_3.0+dfsg.4-1+b2_i386.deb ...
Unpacking liblbfgsb0:i386 (3.0+dfsg.4-1+b2) ...
Selecting previously unselected package libtirpc-common.
Preparing to unpack .../62-libtirpc-common_1.3.4+ds-1.3_all.deb ...
Unpacking libtirpc-common (1.3.4+ds-1.3) ...
Selecting previously unselected package libtirpc3t64:i386.
Preparing to unpack .../63-libtirpc3t64_1.3.4+ds-1.3+b1_i386.deb ...
Adding 'diversion of /lib/i386-linux-gnu/libtirpc.so.3 to /lib/i386-linux-gnu/libtirpc.so.3.usr-is-merged by libtirpc3t64'
Adding 'diversion of /lib/i386-linux-gnu/libtirpc.so.3.0.0 to /lib/i386-linux-gnu/libtirpc.so.3.0.0.usr-is-merged by libtirpc3t64'
Unpacking libtirpc3t64:i386 (1.3.4+ds-1.3+b1) ...
Selecting previously unselected package libnsl2:i386.
Preparing to unpack .../64-libnsl2_1.3.0-3+b3_i386.deb ...
Unpacking libnsl2:i386 (1.3.0-3+b3) ...
Selecting previously unselected package libpython3.12-stdlib:i386.
Preparing to unpack .../65-libpython3.12-stdlib_3.12.9-1_i386.deb ...
Unpacking libpython3.12-stdlib:i386 (3.12.9-1) ...
Selecting previously unselected package libxslt1.1:i386.
Preparing to unpack .../66-libxslt1.1_1.1.35-1.1+b1_i386.deb ...
Unpacking libxslt1.1:i386 (1.1.35-1.1+b1) ...
Selecting previously unselected package python3.12.
Preparing to unpack .../67-python3.12_3.12.9-1_i386.deb ...
Unpacking python3.12 (3.12.9-1) ...
Selecting previously unselected package python3-all.
Preparing to unpack .../68-python3-all_3.13.1-2_i386.deb ...
Unpacking python3-all (3.13.1-2) ...
Selecting previously unselected package python3-attr.
Preparing to unpack .../69-python3-attr_25.1.0-1_all.deb ...
Unpacking python3-attr (25.1.0-1) ...
Selecting previously unselected package python3-brotli.
Preparing to unpack .../70-python3-brotli_1.1.0-2+b6_i386.deb ...
Unpacking python3-brotli (1.1.0-2+b6) ...
Selecting previously unselected package python3-pytz.
Preparing to unpack .../71-python3-pytz_2025.1-3_all.deb ...
Unpacking python3-pytz (2025.1-3) ...
Selecting previously unselected package python3-tz.
Preparing to unpack .../72-python3-tz_2025.1-3_all.deb ...
Unpacking python3-tz (2025.1-3) ...
Selecting previously unselected package python3-platformdirs.
Preparing to unpack .../73-python3-platformdirs_4.3.6-1_all.deb ...
Unpacking python3-platformdirs (4.3.6-1) ...
Selecting previously unselected package python3-fs.
Preparing to unpack .../74-python3-fs_2.4.16-6_all.deb ...
Unpacking python3-fs (2.4.16-6) ...
Selecting previously unselected package python3-lxml:i386.
Preparing to unpack .../75-python3-lxml_5.3.1-1_i386.deb ...
Unpacking python3-lxml:i386 (5.3.1-1) ...
Selecting previously unselected package python3-lz4.
Preparing to unpack .../76-python3-lz4_4.4.0+dfsg-1_i386.deb ...
Unpacking python3-lz4 (4.4.0+dfsg-1) ...
Selecting previously unselected package python3-decorator.
Preparing to unpack .../77-python3-decorator_5.1.1-5_all.deb ...
Unpacking python3-decorator (5.1.1-5) ...
Selecting previously unselected package python3-numpy-dev:i386.
Preparing to unpack .../78-python3-numpy-dev_1%3a2.2.3+ds-1_i386.deb ...
Unpacking python3-numpy-dev:i386 (1:2.2.3+ds-1) ...
Selecting previously unselected package python3-numpy.
Preparing to unpack .../79-python3-numpy_1%3a2.2.3+ds-1_i386.deb ...
Unpacking python3-numpy (1:2.2.3+ds-1) ...
Selecting previously unselected package python3-scipy.
Preparing to unpack .../80-python3-scipy_1.14.1-4_i386.deb ...
Unpacking python3-scipy (1.14.1-4) ...
Selecting previously unselected package python3-mpmath.
Preparing to unpack .../81-python3-mpmath_1.3.0-1_all.deb ...
Unpacking python3-mpmath (1.3.0-1) ...
Selecting previously unselected package python3-sympy.
Preparing to unpack .../82-python3-sympy_1.13.3-3_all.deb ...
Unpacking python3-sympy (1.13.3-3) ...
Selecting previously unselected package python3-ufolib2.
Preparing to unpack .../83-python3-ufolib2_0.17.0+dfsg1-1_all.deb ...
Unpacking python3-ufolib2 (0.17.0+dfsg1-1) ...
Selecting previously unselected package python3-defcon.
Preparing to unpack .../84-python3-defcon_0.10.3-3_all.deb ...
Unpacking python3-defcon (0.10.3-3) ...
Selecting previously unselected package unicode-data.
Preparing to unpack .../85-unicode-data_15.1.0-1_all.deb ...
Unpacking unicode-data (15.1.0-1) ...
Selecting previously unselected package python3-fonttools.
Preparing to unpack .../86-python3-fonttools_4.55.3-2_i386.deb ...
Unpacking python3-fonttools (4.55.3-2) ...
Selecting previously unselected package python3-pyclipper.
Preparing to unpack .../87-python3-pyclipper_1.3.0.post6-1+b1_i386.deb ...
Unpacking python3-pyclipper (1.3.0.post6-1+b1) ...
Selecting previously unselected package python3-booleanoperations.
Preparing to unpack .../88-python3-booleanoperations_0.9.0-3_all.deb ...
Unpacking python3-booleanoperations (0.9.0-3) ...
Selecting previously unselected package python3-cffsubr.
Preparing to unpack .../89-python3-cffsubr_0.3.0-1_all.deb ...
Unpacking python3-cffsubr (0.3.0-1) ...
Selecting previously unselected package python3-compreffor.
Preparing to unpack .../90-python3-compreffor_0.5.6-1+b1_i386.deb ...
Unpacking python3-compreffor (0.5.6-1+b1) ...
Selecting previously unselected package python3-fontmath.
Preparing to unpack .../91-python3-fontmath_0.9.4-1_all.deb ...
Unpacking python3-fontmath (0.9.4-1) ...
Selecting previously unselected package python3-iniconfig.
Preparing to unpack .../92-python3-iniconfig_1.1.1-2_all.deb ...
Unpacking python3-iniconfig (1.1.1-2) ...
Selecting previously unselected package python3-packaging.
Preparing to unpack .../93-python3-packaging_24.2-1_all.deb ...
Unpacking python3-packaging (24.2-1) ...
Selecting previously unselected package python3-pluggy.
Preparing to unpack .../94-python3-pluggy_1.5.0-1_all.deb ...
Unpacking python3-pluggy (1.5.0-1) ...
Selecting previously unselected package python3-pytest.
Preparing to unpack .../95-python3-pytest_8.3.4-1_all.deb ...
Unpacking python3-pytest (8.3.4-1) ...
Selecting previously unselected package python3-setuptools-scm.
Preparing to unpack .../96-python3-setuptools-scm_8.1.0-1_all.deb ...
Unpacking python3-setuptools-scm (8.1.0-1) ...
Selecting previously unselected package python3-syrupy.
Preparing to unpack .../97-python3-syrupy_4.8.1-1_all.deb ...
Unpacking python3-syrupy (4.8.1-1) ...
Setting up media-types (11.0.0) ...
Setting up libpipeline1:i386 (1.5.8-1) ...
Setting up libkeyutils1:i386 (1.6.3-4) ...
Setting up libicu72:i386 (72.1-6) ...
Setting up bsdextrautils (2.40.4-4) ...
Setting up libgpg-error0:i386 (1.51-3) ...
Setting up libmagic-mgc (1:5.45-3+b1) ...
Setting up libantlr4-runtime4.9:i386 (4.9+dfsg-3+b3) ...
Setting up libarchive-zip-perl (1.68-1) ...
Setting up libtirpc-common (1.3.4+ds-1.3) ...
Setting up libdebhelper-perl (13.24.1) ...
Setting up libmagic1t64:i386 (1:5.45-3+b1) ...
Setting up libpython3.12-minimal:i386 (3.12.9-1) ...
Setting up gettext-base (0.23.1-1) ...
Setting up m4 (1.4.19-5) ...
Setting up libgcrypt20:i386 (1.11.0-7) ...
Setting up libcom-err2:i386 (1.47.2-1) ...
Setting up file (1:5.45-3+b1) ...
Setting up libelf1t64:i386 (0.192-4) ...
Setting up libkrb5support0:i386 (1.21.3-4) ...
Setting up tzdata (2025a-2) ...

Current default time zone: 'Etc/UTC'
Local time is now:      Tue Feb 18 20:25:10 UTC 2025.
Universal Time is now:  Tue Feb 18 20:25:10 UTC 2025.
Run 'dpkg-reconfigure tzdata' if you wish to change it.

Setting up unicode-data (15.1.0-1) ...
Setting up autotools-dev (20220109.1) ...
Setting up libblas3:i386 (3.12.1-2) ...
update-alternatives: using /usr/lib/i386-linux-gnu/blas/libblas.so.3 to provide /usr/lib/i386-linux-gnu/libblas.so.3 (libblas.so.3-i386-linux-gnu) in auto mode
Setting up libunistring5:i386 (1.3-1) ...
Setting up python3-numpy-dev:i386 (1:2.2.3+ds-1) ...
Setting up autopoint (0.23.1-1) ...
Setting up libk5crypto3:i386 (1.21.3-4) ...
Setting up libgfortran5:i386 (14.2.0-17) ...
Setting up autoconf (2.72-3) ...
Setting up libffi8:i386 (3.4.7-1) ...
Setting up dwz (0.15-1+b1) ...
Setting up sensible-utils (0.0.24) ...
Setting up libuchardet0:i386 (0.0.8-1+b2) ...
Setting up netbase (6.4) ...
Setting up libkrb5-3:i386 (1.21.3-4) ...
Setting up libjs-jquery (3.6.1+dfsg+~3.5.14-1) ...
Setting up readline-common (8.2-6) ...
Setting up libxml2:i386 (2.12.7+dfsg+really2.9.14-0.2+b1) ...
Setting up libjs-underscore (1.13.4~dfsg+~1.11.4-3) ...
Setting up automake (1:1.17-3) ...
update-alternatives: using /usr/bin/automake-1.17 to provide /usr/bin/automake (automake) in auto mode
Setting up libfile-stripnondeterminism-perl (1.14.1-2) ...
Setting up python3.12-minimal (3.12.9-1) ...
Setting up liblapack3:i386 (3.12.1-2) ...
update-alternatives: using /usr/lib/i386-linux-gnu/lapack/liblapack.so.3 to provide /usr/lib/i386-linux-gnu/liblapack.so.3 (liblapack.so.3-i386-linux-gnu) in auto mode
Setting up gettext (0.23.1-1) ...
Setting up libtool (2.5.4-3) ...
Setting up intltool-debian (0.35.0+20060710.6) ...
Setting up dh-autoreconf (20) ...
Setting up libgssapi-krb5-2:i386 (1.21.3-4) ...
Setting up libjs-sphinxdoc (8.1.3-4) ...
Setting up libreadline8t64:i386 (8.2-6) ...
Setting up dh-strip-nondeterminism (1.14.1-2) ...
Setting up groff-base (1.23.0-7) ...
Setting up libxslt1.1:i386 (1.1.35-1.1+b1) ...
Setting up afdko-bin (4.0.1+dfsg1-2) ...
Setting up libpython3.13-stdlib:i386 (3.13.2-1) ...
Setting up libpython3-stdlib:i386 (3.13.1-2) ...
Setting up liblbfgsb0:i386 (3.0+dfsg.4-1+b2) ...
Setting up libtirpc3t64:i386 (1.3.4+ds-1.3+b1) ...
Setting up python3.13 (3.13.2-1) ...
Setting up po-debconf (1.0.21+nmu1) ...
Setting up python3 (3.13.1-2) ...
Setting up python3-zipp (3.21.0-1) ...
Setting up python3-autocommand (2.2.2-3) ...
Setting up man-db (2.13.0-1) ...
Not building database; man-db/auto-update is not 'true'.
Setting up python3-platformdirs (4.3.6-1) ...
Setting up python3-decorator (5.1.1-5) ...
Setting up python3-packaging (24.2-1) ...
Setting up python3-brotli (1.1.0-2+b6) ...
Setting up python3-typing-extensions (4.12.2-2) ...
Setting up python3-numpy (1:2.2.3+ds-1) ...
Setting up python3-pluggy (1.5.0-1) ...
Setting up python3-lxml:i386 (5.3.1-1) ...
Setting up libnsl2:i386 (1.3.0-3+b3) ...
Setting up python3-mpmath (1.3.0-1) ...
Setting up python3-pyclipper (1.3.0.post6-1+b1) ...
Setting up python3-more-itertools (10.6.0-1) ...
Setting up python3-iniconfig (1.1.1-2) ...
Setting up python3-sympy (1.13.3-3) ...
Setting up python3-attr (25.1.0-1) ...
Setting up python3-scipy (1.14.1-4) ...
Setting up python3-jaraco.functools (4.1.0-1) ...
Setting up libpython3.12-stdlib:i386 (3.12.9-1) ...
Setting up python3-jaraco.context (6.0.0-1) ...
Setting up python3-lz4 (4.4.0+dfsg-1) ...
Setting up python3-pytest (8.3.4-1) ...
Setting up python3-syrupy (4.8.1-1) ...
Setting up python3.12 (3.12.9-1) ...
Setting up python3-typeguard (4.4.1-1) ...
Setting up python3-all (3.13.1-2) ...
Setting up debhelper (13.24.1) ...
Setting up python3-pytz (2025.1-3) ...
Setting up python3-tz (2025.1-3) ...
Setting up python3-fs (2.4.16-6) ...
Setting up python3-inflect (7.3.1-2) ...
Setting up python3-jaraco.text (4.0.0-1) ...
Setting up python3-pkg-resources (75.6.0-1) ...
Setting up python3-setuptools (75.6.0-1) ...
Setting up python3-setuptools-scm (8.1.0-1) ...
Setting up dh-python (6.20250108) ...
Setting up python3-defcon (0.10.3-3) ...
Setting up python3-fonttools (4.55.3-2) ...
Setting up python3-ufolib2 (0.17.0+dfsg1-1) ...
Setting up python3-fontmath (0.9.4-1) ...
Setting up python3-cffsubr (0.3.0-1) ...
Setting up python3-booleanoperations (0.9.0-3) ...
Setting up python3-compreffor (0.5.6-1+b1) ...
Processing triggers for libc-bin (2.40-7) ...
Reading package lists...
Building dependency tree...
Reading state information...
Reading extended state information...
Initializing package states...
Writing extended state information...
Building tag database...
 -> Finished parsing the build-deps
Reading package lists...
Building dependency tree...
Reading state information...
fakeroot is already the newest version (1.37-1).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
I: Building the package
I: user script /srv/workspace/pbuilder/54219/tmp/hooks/A99_set_merged_usr starting
Not re-configuring usrmerge for unstable
I: user script /srv/workspace/pbuilder/54219/tmp/hooks/A99_set_merged_usr finished
hostname: Name or service not known
I: Running cd /build/reproducible-path/ufo2ft-3.3.1/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S  > ../ufo2ft_3.3.1-2_source.changes
dpkg-buildpackage: info: source package ufo2ft
dpkg-buildpackage: info: source version 3.3.1-2
dpkg-buildpackage: info: source distribution unstable
dpkg-buildpackage: info: source changed by Boyuan Yang <byang@debian.org>
 dpkg-source --before-build .
dpkg-buildpackage: info: host architecture i386
 debian/rules clean
dh clean --buildsystem=pybuild
   debian/rules override_dh_auto_clean
make[1]: Entering directory '/build/reproducible-path/ufo2ft-3.3.1'
dh_auto_clean
I: pybuild base:311: python3.12 setup.py clean 
/usr/lib/python3/dist-packages/setuptools/__init__.py:94: _DeprecatedInstaller: setuptools.installer and fetch_build_eggs are deprecated.
!!

        ********************************************************************************
        Requirements should be satisfied by a PEP 517 installer.
        If you are using pip, you can try `pip install --use-pep517`.
        ********************************************************************************

!!
  dist.fetch_build_eggs(dist.setup_requires)
/usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:261: UserWarning: Unknown distribution option: 'tests_require'
  warnings.warn(msg)
WARNING setuptools_scm.pyproject_reading toml section missing 'pyproject.toml does not contain a tool.setuptools_scm section'
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/setuptools_scm/_integration/pyproject_reading.py", line 36, in read_pyproject
    section = defn.get("tool", {})[tool_name]
              ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
KeyError: 'setuptools_scm'
running clean
removing '/build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build' (and everything under it)
'build/bdist.linux-i686' does not exist -- can't clean it
'build/scripts-3.12' does not exist -- can't clean it
I: pybuild base:311: python3.13 setup.py clean 
/usr/lib/python3/dist-packages/setuptools/__init__.py:94: _DeprecatedInstaller: setuptools.installer and fetch_build_eggs are deprecated.
!!

        ********************************************************************************
        Requirements should be satisfied by a PEP 517 installer.
        If you are using pip, you can try `pip install --use-pep517`.
        ********************************************************************************

!!
  dist.fetch_build_eggs(dist.setup_requires)
/usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:261: UserWarning: Unknown distribution option: 'tests_require'
  warnings.warn(msg)
WARNING setuptools_scm.pyproject_reading toml section missing 'pyproject.toml does not contain a tool.setuptools_scm section'
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/setuptools_scm/_integration/pyproject_reading.py", line 36, in read_pyproject
    section = defn.get("tool", {})[tool_name]
              ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
KeyError: 'setuptools_scm'
running clean
removing '/build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build' (and everything under it)
'build/bdist.linux-i686' does not exist -- can't clean it
'build/scripts-3.13' does not exist -- can't clean it
rm Lib/ufo2ft/_version.py
make[1]: Leaving directory '/build/reproducible-path/ufo2ft-3.3.1'
   dh_autoreconf_clean -O--buildsystem=pybuild
   dh_clean -O--buildsystem=pybuild
 debian/rules binary
dh binary --buildsystem=pybuild
   dh_update_autotools_config -O--buildsystem=pybuild
   dh_autoreconf -O--buildsystem=pybuild
   dh_auto_configure -O--buildsystem=pybuild
I: pybuild base:311: python3.12 setup.py config 
/usr/lib/python3/dist-packages/setuptools/__init__.py:94: _DeprecatedInstaller: setuptools.installer and fetch_build_eggs are deprecated.
!!

        ********************************************************************************
        Requirements should be satisfied by a PEP 517 installer.
        If you are using pip, you can try `pip install --use-pep517`.
        ********************************************************************************

!!
  dist.fetch_build_eggs(dist.setup_requires)
/usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:261: UserWarning: Unknown distribution option: 'tests_require'
  warnings.warn(msg)
WARNING setuptools_scm.pyproject_reading toml section missing 'pyproject.toml does not contain a tool.setuptools_scm section'
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/setuptools_scm/_integration/pyproject_reading.py", line 36, in read_pyproject
    section = defn.get("tool", {})[tool_name]
              ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
KeyError: 'setuptools_scm'
running config
I: pybuild base:311: python3.13 setup.py config 
/usr/lib/python3/dist-packages/setuptools/__init__.py:94: _DeprecatedInstaller: setuptools.installer and fetch_build_eggs are deprecated.
!!

        ********************************************************************************
        Requirements should be satisfied by a PEP 517 installer.
        If you are using pip, you can try `pip install --use-pep517`.
        ********************************************************************************

!!
  dist.fetch_build_eggs(dist.setup_requires)
/usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:261: UserWarning: Unknown distribution option: 'tests_require'
  warnings.warn(msg)
WARNING setuptools_scm.pyproject_reading toml section missing 'pyproject.toml does not contain a tool.setuptools_scm section'
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/setuptools_scm/_integration/pyproject_reading.py", line 36, in read_pyproject
    section = defn.get("tool", {})[tool_name]
              ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
KeyError: 'setuptools_scm'
running config
   dh_auto_build -O--buildsystem=pybuild
I: pybuild base:311: /usr/bin/python3.12 setup.py build 
/usr/lib/python3/dist-packages/setuptools/__init__.py:94: _DeprecatedInstaller: setuptools.installer and fetch_build_eggs are deprecated.
!!

        ********************************************************************************
        Requirements should be satisfied by a PEP 517 installer.
        If you are using pip, you can try `pip install --use-pep517`.
        ********************************************************************************

!!
  dist.fetch_build_eggs(dist.setup_requires)
/usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:261: UserWarning: Unknown distribution option: 'tests_require'
  warnings.warn(msg)
WARNING setuptools_scm.pyproject_reading toml section missing 'pyproject.toml does not contain a tool.setuptools_scm section'
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/setuptools_scm/_integration/pyproject_reading.py", line 36, in read_pyproject
    section = defn.get("tool", {})[tool_name]
              ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
KeyError: 'setuptools_scm'
running build
running build_py
creating /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/instantiator.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/infoCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/_version.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/maxContextCalc.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/preProcessor.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/__init__.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/instructionCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/featureCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/constants.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/outlineCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/postProcessor.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/fontInfoData.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/util.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/errors.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft
creating /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/dottedCircle.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/flattenComponents.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/skipExportGlyphs.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/decomposeTransformedComponents.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/propagateAnchors.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/sortContours.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/__init__.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/__main__.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/decomposeComponents.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/reverseContourDirection.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/removeOverlaps.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/explodeColorLayerGlyphs.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/cubicToQuadratic.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/dottedCircleFilter.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/base.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/transformations.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters
creating /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureWriters
copying Lib/ufo2ft/featureWriters/kernFeatureWriter.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureWriters
copying Lib/ufo2ft/featureWriters/markFeatureWriter.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureWriters
copying Lib/ufo2ft/featureWriters/gdefFeatureWriter.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureWriters
copying Lib/ufo2ft/featureWriters/ast.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureWriters
copying Lib/ufo2ft/featureWriters/__init__.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureWriters
copying Lib/ufo2ft/featureWriters/__main__.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureWriters
copying Lib/ufo2ft/featureWriters/baseFeatureWriter.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureWriters
copying Lib/ufo2ft/featureWriters/kernFeatureWriter2.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureWriters
copying Lib/ufo2ft/featureWriters/cursFeatureWriter.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureWriters
creating /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/_compilers
copying Lib/ufo2ft/_compilers/variableCFF2sCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/_compilers
copying Lib/ufo2ft/_compilers/variableTTFsCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/_compilers
copying Lib/ufo2ft/_compilers/interpolatableOTFCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/_compilers
copying Lib/ufo2ft/_compilers/ttfCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/_compilers
copying Lib/ufo2ft/_compilers/otfCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/_compilers
copying Lib/ufo2ft/_compilers/__init__.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/_compilers
copying Lib/ufo2ft/_compilers/interpolatableTTFCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/_compilers
copying Lib/ufo2ft/_compilers/baseCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/_compilers
running egg_info
creating Lib/ufo2ft.egg-info
writing Lib/ufo2ft.egg-info/PKG-INFO
writing dependency_links to Lib/ufo2ft.egg-info/dependency_links.txt
writing requirements to Lib/ufo2ft.egg-info/requires.txt
writing top-level names to Lib/ufo2ft.egg-info/top_level.txt
writing manifest file 'Lib/ufo2ft.egg-info/SOURCES.txt'
reading manifest file 'Lib/ufo2ft.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
adding license file 'LICENSE'
writing manifest file 'Lib/ufo2ft.egg-info/SOURCES.txt'
I: pybuild base:311: /usr/bin/python3 setup.py build 
/usr/lib/python3/dist-packages/setuptools/__init__.py:94: _DeprecatedInstaller: setuptools.installer and fetch_build_eggs are deprecated.
!!

        ********************************************************************************
        Requirements should be satisfied by a PEP 517 installer.
        If you are using pip, you can try `pip install --use-pep517`.
        ********************************************************************************

!!
  dist.fetch_build_eggs(dist.setup_requires)
/usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:261: UserWarning: Unknown distribution option: 'tests_require'
  warnings.warn(msg)
WARNING setuptools_scm.pyproject_reading toml section missing 'pyproject.toml does not contain a tool.setuptools_scm section'
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/setuptools_scm/_integration/pyproject_reading.py", line 36, in read_pyproject
    section = defn.get("tool", {})[tool_name]
              ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
KeyError: 'setuptools_scm'
running build
running build_py
creating /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/instantiator.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/infoCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/_version.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/maxContextCalc.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/preProcessor.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/__init__.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/instructionCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/featureCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/constants.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/outlineCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/postProcessor.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/fontInfoData.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/util.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft
copying Lib/ufo2ft/errors.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft
creating /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/dottedCircle.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/flattenComponents.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/skipExportGlyphs.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/decomposeTransformedComponents.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/propagateAnchors.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/sortContours.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/__init__.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/__main__.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/decomposeComponents.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/reverseContourDirection.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/removeOverlaps.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/explodeColorLayerGlyphs.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/cubicToQuadratic.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/dottedCircleFilter.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/base.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters
copying Lib/ufo2ft/filters/transformations.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters
creating /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureWriters
copying Lib/ufo2ft/featureWriters/kernFeatureWriter.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureWriters
copying Lib/ufo2ft/featureWriters/markFeatureWriter.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureWriters
copying Lib/ufo2ft/featureWriters/gdefFeatureWriter.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureWriters
copying Lib/ufo2ft/featureWriters/ast.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureWriters
copying Lib/ufo2ft/featureWriters/__init__.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureWriters
copying Lib/ufo2ft/featureWriters/__main__.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureWriters
copying Lib/ufo2ft/featureWriters/baseFeatureWriter.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureWriters
copying Lib/ufo2ft/featureWriters/kernFeatureWriter2.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureWriters
copying Lib/ufo2ft/featureWriters/cursFeatureWriter.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureWriters
creating /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/_compilers
copying Lib/ufo2ft/_compilers/variableCFF2sCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/_compilers
copying Lib/ufo2ft/_compilers/variableTTFsCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/_compilers
copying Lib/ufo2ft/_compilers/interpolatableOTFCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/_compilers
copying Lib/ufo2ft/_compilers/ttfCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/_compilers
copying Lib/ufo2ft/_compilers/otfCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/_compilers
copying Lib/ufo2ft/_compilers/__init__.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/_compilers
copying Lib/ufo2ft/_compilers/interpolatableTTFCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/_compilers
copying Lib/ufo2ft/_compilers/baseCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/_compilers
running egg_info
writing Lib/ufo2ft.egg-info/PKG-INFO
writing dependency_links to Lib/ufo2ft.egg-info/dependency_links.txt
writing requirements to Lib/ufo2ft.egg-info/requires.txt
writing top-level names to Lib/ufo2ft.egg-info/top_level.txt
reading manifest file 'Lib/ufo2ft.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
adding license file 'LICENSE'
writing manifest file 'Lib/ufo2ft.egg-info/SOURCES.txt'
   debian/rules override_dh_auto_test
make[1]: Entering directory '/build/reproducible-path/ufo2ft-3.3.1'
# For experimental build, allow failures
dh_auto_test
I: pybuild base:311: cd /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build; python3.12 -m pytest tests
============================= test session starts ==============================
platform linux -- Python 3.12.9, pytest-8.3.4, pluggy-1.5.0
rootdir: /build/reproducible-path/ufo2ft-3.3.1
configfile: setup.cfg
plugins: syrupy-4.8.1, typeguard-4.4.1
collected 1140 items

tests/featureCompiler_test.py ................                           [  1%]
tests/featureWriters/cursFeatureWriter_test.py .........                 [  2%]
tests/featureWriters/featureWriters_test.py ........                     [  2%]
tests/featureWriters/gdefFeatureWriter_test.py ..........                [  3%]
tests/featureWriters/kernFeatureWriter2_test.py ........................ [  5%]
....F.....                                                               [  6%]
tests/featureWriters/kernFeatureWriter_test.py ......................... [  8%]
......F.....                                                             [ 10%]
tests/featureWriters/markFeatureWriter_test.py ......................... [ 12%]
............                                                             [ 13%]
tests/featureWriters/variableFeatureWriter_test.py ..                    [ 13%]
tests/filters/decomposeComponents_test.py ......                         [ 13%]
tests/filters/decomposeTransformedComponents_test.py ...                 [ 14%]
tests/filters/dottedCircle_test.py ...                                   [ 14%]
tests/filters/explodeColorLayerGlyphs_test.py .                          [ 14%]
tests/filters/flattenComponents_test.py ........                         [ 15%]
tests/filters/propagateAnchors_test.py ...............                   [ 16%]
tests/filters/sortContours_test.py ....                                  [ 16%]
tests/filters/transformations_test.py ...............................    [ 19%]
tests/fontInfoData_test.py ................                              [ 21%]
tests/infoCompiler_test.py .......                                       [ 21%]
tests/instantiator_test.py ...........................                   [ 24%]
tests/instructionCompiler_test.py ...................................... [ 27%]
.........                                                                [ 28%]
tests/integration_test.py ......s.s.............FFFFFFF...FF.....FF..... [ 32%]
..............FF.                                                        [ 33%]
tests/outlineCompiler_test.py .......................................... [ 37%]
........................................................................ [ 43%]
........................                                                 [ 45%]
tests/preProcessor_test.py ....s......s..............                    [ 48%]
tests/util_test.py .                                                     [ 48%]
tests/featureCompiler_test.py ................                           [ 49%]
tests/featureWriters/cursFeatureWriter_test.py .........                 [ 50%]
tests/featureWriters/featureWriters_test.py ........                     [ 51%]
tests/featureWriters/gdefFeatureWriter_test.py ..........                [ 51%]
tests/featureWriters/kernFeatureWriter2_test.py ........................ [ 54%]
....F.....                                                               [ 54%]
tests/featureWriters/kernFeatureWriter_test.py ......................... [ 57%]
......F.....                                                             [ 58%]
tests/featureWriters/markFeatureWriter_test.py ......................... [ 60%]
............                                                             [ 61%]
tests/featureWriters/variableFeatureWriter_test.py ..                    [ 61%]
tests/filters/decomposeComponents_test.py ......                         [ 62%]
tests/filters/decomposeTransformedComponents_test.py ...                 [ 62%]
tests/filters/dottedCircle_test.py ...                                   [ 62%]
tests/filters/explodeColorLayerGlyphs_test.py .                          [ 62%]
tests/filters/flattenComponents_test.py ........                         [ 63%]
tests/filters/propagateAnchors_test.py ...............                   [ 64%]
tests/filters/sortContours_test.py ....                                  [ 65%]
tests/filters/transformations_test.py ...............................    [ 67%]
tests/fontInfoData_test.py ................                              [ 69%]
tests/infoCompiler_test.py .......                                       [ 69%]
tests/instantiator_test.py ...........................                   [ 72%]
tests/instructionCompiler_test.py ...................................... [ 75%]
.........                                                                [ 76%]
tests/integration_test.py ......s.s.............FFFFFFF...FF.....FF..... [ 80%]
..............FF.                                                        [ 81%]
tests/outlineCompiler_test.py .......................................... [ 85%]
........................................................................ [ 91%]
........................                                                 [ 93%]
tests/preProcessor_test.py ....s......s..............                    [ 96%]
tests/util_test.py .                                                     [ 96%]
tests/featureWriters/ast_test.py .                                       [ 96%]
tests/featureWriters/markFeatureWriter_test.py .........                 [ 97%]
tests/filters/filters_test.py ...................                        [ 98%]
tests/filters/transformations_test.py .                                  [ 98%]
tests/fontInfoData_test.py ..                                            [ 99%]
tests/instantiator_test.py ....                                          [ 99%]
tests/instructionCompiler_test.py ....                                   [ 99%]
tests/util_test.py ..                                                    [100%]

=================================== FAILURES ===================================
_________________________ test_kern_zyyy_zinh[defcon] __________________________

snapshot = '''
lookup kern_dflt {
    lookupflag IgnoreMarks;
    pos uni0300 uni0300 0;
    pos uni0310 uni0310 1;
    pos uni03...a;
    language dflt;
    lookup kern_dflt;
    
    script dupl;
    language dflt;
    lookup kern_dflt;
} dist;

'''
FontClass = <class 'defcon.objects.font.Font'>

    def test_kern_zyyy_zinh(snapshot, FontClass):
        """Test that a sampling of glyphs with a common or inherited script, but a
        disjoint set of explicit script extensions end up in the correct lookups."""
        glyphs = {}
        for i in range(0, 0x110000, 0x10):
            script = unicodeScript(i)
            script_extension = unicodeScriptExtensions(i)
            if script not in script_extension:
                assert script in DFLT_SCRIPTS
                name = f"uni{i:04X}"
                glyphs[name] = i
        kerning = {(glyph, glyph): i for i, glyph in enumerate(glyphs)}
        ufo = makeUFO(FontClass, glyphs, None, kerning)
        newFeatures = KernFeatureWriterTest.writeFeatures(ufo)
    
>       assert newFeatures.asFea() == snapshot
E       AssertionError: assert [+ received] == [- snapshot]
E           '''
E             ...
E               lookupflag IgnoreMarks;
E         -     pos uni0300 uni0300 0;
E         -     pos uni0310 uni0310 1;
E         -     pos uni0320 uni0320 2;
E         -     pos uni0330 uni0330 3;...
E         
E         ...Full output truncated (85 lines hidden), use '-vv' to show

tests/featureWriters/kernFeatureWriter2_test.py:985: AssertionError
_________________________ test_kern_zyyy_zinh[defcon] __________________________

FontClass = <class 'defcon.objects.font.Font'>

    def test_kern_zyyy_zinh(FontClass):
        """Test that a sampling of glyphs with a common or inherited script, but a
        disjoint set of explicit script extensions end up in the correct lookups."""
        glyphs = {}
        for i in range(0, 0x110000, 0x10):
            script = unicodeScript(i)
            script_extension = unicodeScriptExtensions(i)
            if script not in script_extension:
                assert script in DFLT_SCRIPTS
                name = f"uni{i:04X}"
                glyphs[name] = i
        kerning = {(glyph, glyph): i for i, glyph in enumerate(glyphs)}
        ufo = makeUFO(FontClass, glyphs, None, kerning)
        newFeatures = KernFeatureWriterTest.writeFeatures(ufo)
    
>       assert dedent(str(newFeatures)) == dedent(
            """\
            lookup kern_Deva {
                lookupflag IgnoreMarks;
                pos uni1CD0 uni1CD0 7;
                pos uni1CE0 uni1CE0 8;
                pos uni1CF0 uni1CF0 9;
                pos uni20F0 uni20F0 11;
                pos uniA830 uniA830 34;
            } kern_Deva;
    
            lookup kern_Dupl {
                lookupflag IgnoreMarks;
                pos uni1BCA0 uni1BCA0 42;
            } kern_Dupl;
    
            lookup kern_Grek {
                lookupflag IgnoreMarks;
                pos uni0300 uni0300 0;
                pos uni1DC0 uni1DC0 10;
            } kern_Grek;
    
            lookup kern_Hani_Hrkt {
                lookupflag IgnoreMarks;
                pos uni1D360 uni1D360 43;
                pos uni1D370 uni1D370 44;
                pos uni1F250 uni1F250 45;
                pos uni2FF0 uni2FF0 13;
                pos uni3010 uni3010 14;
                pos uni3030 uni3030 15;
                pos uni30A0 uni30A0 16;
                pos uni3190 uni3190 17;
                pos uni31C0 uni31C0 18;
                pos uni31D0 uni31D0 19;
                pos uni31E0 uni31E0 20;
                pos uni3220 uni3220 21;
                pos uni3230 uni3230 22;
                pos uni3240 uni3240 23;
                pos uni3280 uni3280 24;
                pos uni3290 uni3290 25;
                pos uni32A0 uni32A0 26;
                pos uni32B0 uni32B0 27;
                pos uni32C0 uni32C0 28;
                pos uni3360 uni3360 29;
                pos uni3370 uni3370 30;
                pos uni33E0 uni33E0 31;
                pos uni33F0 uni33F0 32;
                pos uniA700 uniA700 33;
                pos uniFF70 uniFF70 35;
            } kern_Hani_Hrkt;
    
            lookup kern_Default {
                lookupflag IgnoreMarks;
                pos uni0310 uni0310 1;
                pos uni0320 uni0320 2;
                pos uni0330 uni0330 3;
                pos uni0640 uni0640 4;
                pos uni0650 uni0650 5;
                pos uni0670 uni0670 6;
                pos uni10100 uni10100 36;
                pos uni10110 uni10110 37;
                pos uni10120 uni10120 38;
                pos uni10130 uni10130 39;
                pos uni102E0 uni102E0 40;
                pos uni102F0 uni102F0 41;
                pos uni2E30 uni2E30 12;
            } kern_Default;
    
            feature kern {
                script DFLT;
                language dflt;
                lookup kern_Default;
                lookup kern_Grek;
                lookup kern_Hani_Hrkt;
    
                script grek;
                language dflt;
                lookup kern_Default;
                lookup kern_Grek;
    
                script hani;
                language dflt;
                lookup kern_Default;
                lookup kern_Hani_Hrkt;
    
                script kana;
                language dflt;
                lookup kern_Default;
                lookup kern_Hani_Hrkt;
            } kern;
    
            feature dist {
                script dev2;
                language dflt;
                lookup kern_Default;
                lookup kern_Deva;
    
                script deva;
                language dflt;
                lookup kern_Default;
                lookup kern_Deva;
    
                script dupl;
                language dflt;
                lookup kern_Default;
                lookup kern_Dupl;
            } dist;
            """
        )
E       AssertionError: assert 'lookup kern_...l;\n} dist;\n' == 'lookup kern_...l;\n} dist;\n'
E         
E         Skipping 61 identical leading characters in diff, use -v to show
E         - 0 uni1CD0 7;
E         ?           ^
E         + 0 uni1CD0 3;
E         ?           ^
E         -     pos uni1CE0 uni1CE0 8;...
E         
E         ...Full output truncated (218 lines hidden), use '-vv' to show

tests/featureWriters/kernFeatureWriter_test.py:1805: AssertionError
_____________ IntegrationTest.test_compileVariableTTF[defcon-None] _____________

self = <tests.integration_test.IntegrationTest object at 0xf3692a50>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf3112990>
useProductionNames = None

    def test_compileVariableTTF(self, designspace, useProductionNames):
        varfont = compileVariableTTF(designspace, useProductionNames=useProductionNames)
>       expectTTX(
            varfont,
            "TestVariableFont-TTF{}.ttx".format(
                "-useProductionNames" if useProductionNames else ""
            ),
        )

tests/integration_test.py:232: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf3112570>
expectedTTX = 'TestVariableFont-TTF.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-TTF.ttx
+++ <generated>
@@ -257,9 +257,6 @@
   </glyf>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
_____________ IntegrationTest.test_compileVariableTTF[defcon-True] _____________

self = <tests.integration_test.IntegrationTest object at 0xf3692fd8>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf3112fc0>
useProductionNames = True

    def test_compileVariableTTF(self, designspace, useProductionNames):
        varfont = compileVariableTTF(designspace, useProductionNames=useProductionNames)
>       expectTTX(
            varfont,
            "TestVariableFont-TTF{}.ttx".format(
                "-useProductionNames" if useProductionNames else ""
            ),
        )

tests/integration_test.py:232: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf31d0990>
expectedTTX = 'TestVariableFont-TTF-useProductionNames.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-TTF-useProductionNames.ttx
+++ <generated>
@@ -257,9 +257,6 @@
   </glyf>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
____________ IntegrationTest.test_compileVariableTTF[defcon-False] _____________

self = <tests.integration_test.IntegrationTest object at 0xf36ac348>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2f0f8a0>
useProductionNames = False

    def test_compileVariableTTF(self, designspace, useProductionNames):
        varfont = compileVariableTTF(designspace, useProductionNames=useProductionNames)
>       expectTTX(
            varfont,
            "TestVariableFont-TTF{}.ttx".format(
                "-useProductionNames" if useProductionNames else ""
            ),
        )

tests/integration_test.py:232: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf31b9a38>
expectedTTX = 'TestVariableFont-TTF.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-TTF.ttx
+++ <generated>
@@ -257,9 +257,6 @@
   </glyf>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
____________ IntegrationTest.test_compileVariableCFF2[defcon-None] _____________

self = <tests.integration_test.IntegrationTest object at 0xf36ac3c0>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf31126a8>
useProductionNames = None

    def test_compileVariableCFF2(self, designspace, useProductionNames):
        varfont = compileVariableCFF2(
            designspace, useProductionNames=useProductionNames
        )
>       expectTTX(
            varfont,
            "TestVariableFont-CFF2{}.ttx".format(
                "-useProductionNames" if useProductionNames else ""
            ),
        )

tests/integration_test.py:243: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf31d08d0>
expectedTTX = 'TestVariableFont-CFF2.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-CFF2.ttx
+++ <generated>
@@ -138,9 +138,6 @@
   </cmap>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
____________ IntegrationTest.test_compileVariableCFF2[defcon-True] _____________

self = <tests.integration_test.IntegrationTest object at 0xf36ac0c0>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf311a540>
useProductionNames = True

    def test_compileVariableCFF2(self, designspace, useProductionNames):
        varfont = compileVariableCFF2(
            designspace, useProductionNames=useProductionNames
        )
>       expectTTX(
            varfont,
            "TestVariableFont-CFF2{}.ttx".format(
                "-useProductionNames" if useProductionNames else ""
            ),
        )

tests/integration_test.py:243: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf31d0ed0>
expectedTTX = 'TestVariableFont-CFF2-useProductionNames.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-CFF2-useProductionNames.ttx
+++ <generated>
@@ -138,9 +138,6 @@
   </cmap>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
____________ IntegrationTest.test_compileVariableCFF2[defcon-False] ____________

self = <tests.integration_test.IntegrationTest object at 0xf36ac078>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2ebf6f0>
useProductionNames = False

    def test_compileVariableCFF2(self, designspace, useProductionNames):
        varfont = compileVariableCFF2(
            designspace, useProductionNames=useProductionNames
        )
>       expectTTX(
            varfont,
            "TestVariableFont-CFF2{}.ttx".format(
                "-useProductionNames" if useProductionNames else ""
            ),
        )

tests/integration_test.py:243: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2ebf5b8>
expectedTTX = 'TestVariableFont-CFF2.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-CFF2.ttx
+++ <generated>
@@ -138,9 +138,6 @@
   </cmap>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
________ IntegrationTest.test_compileVariableCFF2_subroutinized[defcon] ________

self = <tests.integration_test.IntegrationTest object at 0xf36ac468>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf31d0ff0>

    def test_compileVariableCFF2_subroutinized(self, designspace):
        varfont = compileVariableCFF2(designspace, optimizeCFF=2)
>       expectTTX(varfont, "TestVariableFont-CFF2-cffsubr.ttx")

tests/integration_test.py:252: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf311d318>
expectedTTX = 'TestVariableFont-CFF2-cffsubr.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-CFF2-cffsubr.ttx
+++ <generated>
@@ -138,9 +138,6 @@
   </cmap>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
_ IntegrationTest.test_drop_glyph_names_variable[defcon-VariableTTF-options0-TestVariableFont-TTF-post3.ttx] _

self = <tests.integration_test.IntegrationTest object at 0xf36acb58>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf31c89c0>
output_format = 'VariableTTF', options = {}
expected_ttx = 'TestVariableFont-TTF-post3.ttx'

    @pytest.mark.parametrize(
        "output_format, options, expected_ttx",
        [
            ("VariableTTF", {}, "TestVariableFont-TTF-post3.ttx"),
            ("VariableCFF2", {}, "TestVariableFont-CFF2-post3.ttx"),
        ],
    )
    def test_drop_glyph_names_variable(
        self, designspace, output_format, options, expected_ttx
    ):
        # set keepGlyphNames in the default UFO.lib where postProcessor finds it
        designspace.findDefault().font.lib[KEEP_GLYPH_NAMES] = False
        compile_func = globals()[f"compile{output_format}"]
        ttf = compile_func(designspace, **options)
>       expectTTX(ttf, expected_ttx)

tests/integration_test.py:303: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf31cf270>
expectedTTX = 'TestVariableFont-TTF-post3.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-TTF-post3.ttx
+++ <generated>
@@ -257,9 +257,6 @@
   </glyf>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
_ IntegrationTest.test_drop_glyph_names_variable[defcon-VariableCFF2-options1-TestVariableFont-CFF2-post3.ttx] _

self = <tests.integration_test.IntegrationTest object at 0xf36acb88>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf31d0660>
output_format = 'VariableCFF2', options = {}
expected_ttx = 'TestVariableFont-CFF2-post3.ttx'

    @pytest.mark.parametrize(
        "output_format, options, expected_ttx",
        [
            ("VariableTTF", {}, "TestVariableFont-TTF-post3.ttx"),
            ("VariableCFF2", {}, "TestVariableFont-CFF2-post3.ttx"),
        ],
    )
    def test_drop_glyph_names_variable(
        self, designspace, output_format, options, expected_ttx
    ):
        # set keepGlyphNames in the default UFO.lib where postProcessor finds it
        designspace.findDefault().font.lib[KEEP_GLYPH_NAMES] = False
        compile_func = globals()[f"compile{output_format}"]
        ttf = compile_func(designspace, **options)
>       expectTTX(ttf, expected_ttx)

tests/integration_test.py:303: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2ea2f18>
expectedTTX = 'TestVariableFont-CFF2-post3.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-CFF2-post3.ttx
+++ <generated>
@@ -138,9 +138,6 @@
   </cmap>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
_______________ IntegrationTest.test_compileVariableTTFs[defcon] _______________

self = <tests.integration_test.IntegrationTest object at 0xf36911b0>
designspace_v5 = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2ebf078>

    def test_compileVariableTTFs(self, designspace_v5):
        fonts = compileVariableTTFs(designspace_v5)
    
        # NOTE: Test dumps were generated like this:
        # for k, font in fonts.items():
        #     font.recalcTimestamp = False
        #     font["head"].created, font["head"].modified = 3570196637, 3601822698
        #     font["head"].checkSumAdjustment = 0x12345678
        #     font.saveXML(f"tests/data/DSv5/{k}-TTF.ttx")
    
        assert set(fonts.keys()) == {
            "MutatorSansVariable_Weight_Width",
            "MutatorSansVariable_Weight",
            "MutatorSansVariable_Width",
            "MutatorSerifVariable_Width",
        }
        # The STAT table is set to [SRIF=0, wght=[300, 700], wdth=[50, 200]] + S1 + S2
>       expectTTX(
            fonts["MutatorSansVariable_Weight_Width"],
            "DSv5/MutatorSansVariable_Weight_Width-TTF.ttx",
        )

tests/integration_test.py:397: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2ea3528>
expectedTTX = 'DSv5/MutatorSansVariable_Weight_Width-TTF.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- DSv5/MutatorSansVariable_Weight_Width-TTF.ttx
+++ <generated>
@@ -251,99 +251,6 @@
   </glyf>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
-    <namerecord nameID="257" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Width
-    </namerecord>
-    <namerecord nameID="258" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Light Condensed
-    </namerecord>
-    <namerecord nameID="259" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansLightCondensed
-    </namerecord>
-    <namerecord nameID="260" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Bold Condensed
-    </namerecord>
-    <namerecord nameID="261" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansBoldCondensed
-    </namerecord>
-    <namerecord nameID="262" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Light Extended
-    </namerecord>
-    <namerecord nameID="263" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansLightExtended
-    </namerecord>
-    <namerecord nameID="264" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Bold Extended
-    </namerecord>
-    <namerecord nameID="265" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansBoldExtended
-    </namerecord>
-    <namerecord nameID="266" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Medium
-    </namerecord>
-    <namerecord nameID="267" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansMedium
-    </namerecord>
-    <namerecord nameID="268" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansMedium
-    </namerecord>
-    <namerecord nameID="269" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Bold
-    </namerecord>
-    <namerecord nameID="270" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansBold
-    </namerecord>
-    <namerecord nameID="271" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Medium Extended
-    </namerecord>
-    <namerecord nameID="272" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansMediumExtended
-    </namerecord>
-    <namerecord nameID="273" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansLightCondensed
-    </namerecord>
-    <namerecord nameID="274" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Regular
-    </namerecord>
-    <namerecord nameID="275" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      serif
-    </namerecord>
-    <namerecord nameID="276" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans
-    </namerecord>
-    <namerecord nameID="277" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      weight
-    </namerecord>
-    <namerecord nameID="278" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Light
-    </namerecord>
-    <namerecord nameID="279" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Medium
-    </namerecord>
-    <namerecord nameID="280" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Bold
-    </namerecord>
-    <namerecord nameID="281" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      width
-    </namerecord>
-    <namerecord nameID="282" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Condensed
-    </namerecord>
-    <namerecord nameID="283" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Normal
-    </namerecord>
-    <namerecord nameID="284" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Extended
-    </namerecord>
-    <namerecord nameID="285" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      S1
-    </namerecord>
-    <namerecord nameID="286" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      S2
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       New Font
     </namerecord>
@@ -417,42 +324,39 @@
       MutatorMathTest-SansLightCondensed
     </namerecord>
     <namerecord nameID="274" platformID="3" platEncID="1" langID="0x409">
-      Regular
+      serif
     </namerecord>
     <namerecord nameID="275" platformID="3" platEncID="1" langID="0x409">
-      serif
+      Sans
     </namerecord>
     <namerecord nameID="276" platformID="3" platEncID="1" langID="0x409">
-      Sans
+      weight
     </namerecord>
     <namerecord nameID="277" platformID="3" platEncID="1" langID="0x409">
-      weight
+      Light
     </namerecord>
     <namerecord nameID="278" platformID="3" platEncID="1" langID="0x409">
-      Light
+      Medium
     </namerecord>
     <namerecord nameID="279" platformID="3" platEncID="1" langID="0x409">
-      Medium
+      Bold
     </namerecord>
     <namerecord nameID="280" platformID="3" platEncID="1" langID="0x409">
-      Bold
+      width
     </namerecord>
     <namerecord nameID="281" platformID="3" platEncID="1" langID="0x409">
-      width
+      Condensed
     </namerecord>
     <namerecord nameID="282" platformID="3" platEncID="1" langID="0x409">
-      Condensed
+      Normal
     </namerecord>
     <namerecord nameID="283" platformID="3" platEncID="1" langID="0x409">
-      Normal
+      Extended
     </namerecord>
     <namerecord nameID="284" platformID="3" platEncID="1" langID="0x409">
-      Extended
+      S1
     </namerecord>
     <namerecord nameID="285" platformID="3" platEncID="1" langID="0x409">
-      S1
-    </namerecord>
-    <namerecord nameID="286" platformID="3" platEncID="1" langID="0x409">
       S2
     </namerecord>
   </name>
@@ -635,17 +539,17 @@
     <DesignAxisRecord>
       <Axis index="0">
         <AxisTag value="SRIF"/>
-        <AxisNameID value="275"/>  <!-- serif -->
+        <AxisNameID value="274"/>  <!-- serif -->
         <AxisOrdering value="0"/>
       </Axis>
       <Axis index="1">
         <AxisTag value="wght"/>
-        <AxisNameID value="277"/>  <!-- weight -->
+        <AxisNameID value="276"/>  <!-- weight -->
         <AxisOrdering value="1"/>
       </Axis>
       <Axis index="2">
         <AxisTag value="wdth"/>
-        <AxisNameID value="281"/>  <!-- width -->
+        <AxisNameID value="280"/>  <!-- width -->
         <AxisOrdering value="2"/>
       </Axis>
     </DesignAxisRecord>
@@ -654,7 +558,7 @@
       <AxisValue index="0" Format="4">
         <!-- AxisCount=3 -->
         <Flags value="0"/>
-        <ValueNameID value="285"/>  <!-- S1 -->
+        <ValueNameID value="284"/>  <!-- S1 -->
         <AxisValueRecord index="0">
           <AxisIndex value="0"/>
           <Value value="0.0"/>
@@ -671,7 +575,7 @@
       <AxisValue index="1" Format="4">
         <!-- AxisCount=3 -->
         <Flags value="0"/>
-        <ValueNameID value="286"/>  <!-- S2 -->
+        <ValueNameID value="285"/>  <!-- S2 -->
         <AxisValueRecord index="0">
           <AxisIndex value="0"/>
           <Value value="0.0"/>
@@ -688,13 +592,13 @@
       <AxisValue index="2" Format="1">
         <AxisIndex value="0"/>
         <Flags value="0"/>
-        <ValueNameID value="276"/>  <!-- Sans -->
+        <ValueNameID value="275"/>  <!-- Sans -->
         <Value value="0.0"/>
       </AxisValue>
       <AxisValue index="3" Format="2">
         <AxisIndex value="1"/>
         <Flags value="0"/>
-        <ValueNameID value="278"/>  <!-- Light -->
+        <ValueNameID value="277"/>  <!-- Light -->
         <NominalValue value="300.0"/>
         <RangeMinValue value="300.0"/>
         <RangeMaxValue value="400.0"/>
@@ -702,7 +606,7 @@
       <AxisValue index="4" Format="2">
         <AxisIndex value="1"/>
         <Flags value="0"/>
-        <ValueNameID value="279"/>  <!-- Medium -->
+        <ValueNameID value="278"/>  <!-- Medium -->
         <NominalValue value="500.0"/>
         <RangeMinValue value="400.0"/>
         <RangeMaxValue value="600.0"/>
@@ -710,7 +614,7 @@
       <AxisValue index="5" Format="2">
         <AxisIndex value="1"/>
         <Flags value="0"/>
-        <ValueNameID value="280"/>  <!-- Bold -->
+        <ValueNameID value="279"/>  <!-- Bold -->
         <NominalValue value="700.0"/>
         <RangeMinValue value="600.0"/>
         <RangeMaxValue value="700.0"/>
@@ -718,7 +622,7 @@
       <AxisValue index="6" Format="2">
         <AxisIndex value="2"/>
         <Flags value="0"/>
-        <ValueNameID value="282"/>  <!-- Condensed -->
+        <ValueNameID value="281"/>  <!-- Condensed -->
         <NominalValue value="50.0"/>
         <RangeMinValue value="50.0"/>
         <RangeMaxValue value="75.0"/>
@@ -726,7 +630,7 @@
       <AxisValue index="7" Format="2">
         <AxisIndex value="2"/>
         <Flags value="2"/>  <!-- ElidableAxisValueName -->
-        <ValueNameID value="283"/>  <!-- Normal -->
+        <ValueNameID value="282"/>  <!-- Normal -->
         <NominalValue value="100.0"/>
         <RangeMinValue value="75.0"/>
         <RangeMaxValue value="125.0"/>
@@ -734,13 +638,13 @@
       <AxisValue index="8" Format="2">
         <AxisIndex value="2"/>
         <Flags value="0"/>
-        <ValueNameID value="284"/>  <!-- Extended -->
+        <ValueNameID value="283"/>  <!-- Extended -->
         <NominalValue value="200.0"/>
         <RangeMinValue value="125.0"/>
         <RangeMaxValue value="200.0"/>
       </AxisValue>
     </AxisValueArray>
-    <ElidedFallbackNameID value="274"/>  <!-- Regular -->
+    <ElidedFallbackNameID value="2"/>  <!-- Regular -->
   </STAT>
 
   <avar>
______________ IntegrationTest.test_compileVariableCFF2s[defcon] _______________

self = <tests.integration_test.IntegrationTest object at 0xf3691210>
designspace_v5 = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2eacb10>

    def test_compileVariableCFF2s(self, designspace_v5):
        fonts = compileVariableCFF2s(designspace_v5)
    
        # NOTE: Test dumps were generated like this:
        # for k, font in fonts.items():
        #     font.recalcTimestamp = False
        #     font["head"].created, font["head"].modified = 3570196637, 3601822698
        #     font["head"].checkSumAdjustment = 0x12345678
        #     font.saveXML(f"tests/data/DSv5/{k}-CFF2.ttx")
    
        assert set(fonts.keys()) == {
            "MutatorSansVariable_Weight_Width",
            "MutatorSansVariable_Weight",
            "MutatorSansVariable_Width",
            "MutatorSerifVariable_Width",
        }
        # The STAT table is set to [SRIF=0, wght=[300, 700], wdth=[50, 200]] + S1 + S2
>       expectTTX(
            fonts["MutatorSansVariable_Weight_Width"],
            "DSv5/MutatorSansVariable_Weight_Width-CFF2.ttx",
        )

tests/integration_test.py:434: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2ea3e40>
expectedTTX = 'DSv5/MutatorSansVariable_Weight_Width-CFF2.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- DSv5/MutatorSansVariable_Weight_Width-CFF2.ttx
+++ <generated>
@@ -128,99 +128,6 @@
   </cmap>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
-    <namerecord nameID="257" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Width
-    </namerecord>
-    <namerecord nameID="258" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Light Condensed
-    </namerecord>
-    <namerecord nameID="259" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansLightCondensed
-    </namerecord>
-    <namerecord nameID="260" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Bold Condensed
-    </namerecord>
-    <namerecord nameID="261" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansBoldCondensed
-    </namerecord>
-    <namerecord nameID="262" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Light Extended
-    </namerecord>
-    <namerecord nameID="263" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansLightExtended
-    </namerecord>
-    <namerecord nameID="264" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Bold Extended
-    </namerecord>
-    <namerecord nameID="265" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansBoldExtended
-    </namerecord>
-    <namerecord nameID="266" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Medium
-    </namerecord>
-    <namerecord nameID="267" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansMedium
-    </namerecord>
-    <namerecord nameID="268" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansMedium
-    </namerecord>
-    <namerecord nameID="269" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Bold
-    </namerecord>
-    <namerecord nameID="270" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansBold
-    </namerecord>
-    <namerecord nameID="271" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Medium Extended
-    </namerecord>
-    <namerecord nameID="272" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansMediumExtended
-    </namerecord>
-    <namerecord nameID="273" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansLightCondensed
-    </namerecord>
-    <namerecord nameID="274" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Regular
-    </namerecord>
-    <namerecord nameID="275" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      serif
-    </namerecord>
-    <namerecord nameID="276" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans
-    </namerecord>
-    <namerecord nameID="277" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      weight
-    </namerecord>
-    <namerecord nameID="278" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Light
-    </namerecord>
-    <namerecord nameID="279" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Medium
-    </namerecord>
-    <namerecord nameID="280" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Bold
-    </namerecord>
-    <namerecord nameID="281" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      width
-    </namerecord>
-    <namerecord nameID="282" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Condensed
-    </namerecord>
-    <namerecord nameID="283" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Normal
-    </namerecord>
-    <namerecord nameID="284" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Extended
-    </namerecord>
-    <namerecord nameID="285" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      S1
-    </namerecord>
-    <namerecord nameID="286" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      S2
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       New Font
     </namerecord>
@@ -294,42 +201,39 @@
       MutatorMathTest-SansLightCondensed
     </namerecord>
     <namerecord nameID="274" platformID="3" platEncID="1" langID="0x409">
-      Regular
+      serif
     </namerecord>
     <namerecord nameID="275" platformID="3" platEncID="1" langID="0x409">
-      serif
+      Sans
     </namerecord>
     <namerecord nameID="276" platformID="3" platEncID="1" langID="0x409">
-      Sans
+      weight
     </namerecord>
     <namerecord nameID="277" platformID="3" platEncID="1" langID="0x409">
-      weight
+      Light
     </namerecord>
     <namerecord nameID="278" platformID="3" platEncID="1" langID="0x409">
-      Light
+      Medium
     </namerecord>
     <namerecord nameID="279" platformID="3" platEncID="1" langID="0x409">
-      Medium
+      Bold
     </namerecord>
     <namerecord nameID="280" platformID="3" platEncID="1" langID="0x409">
-      Bold
+      width
     </namerecord>
     <namerecord nameID="281" platformID="3" platEncID="1" langID="0x409">
-      width
+      Condensed
     </namerecord>
     <namerecord nameID="282" platformID="3" platEncID="1" langID="0x409">
-      Condensed
+      Normal
     </namerecord>
     <namerecord nameID="283" platformID="3" platEncID="1" langID="0x409">
-      Normal
+      Extended
     </namerecord>
     <namerecord nameID="284" platformID="3" platEncID="1" langID="0x409">
-      Extended
+      S1
     </namerecord>
     <namerecord nameID="285" platformID="3" platEncID="1" langID="0x409">
-      S1
-    </namerecord>
-    <namerecord nameID="286" platformID="3" platEncID="1" langID="0x409">
       S2
     </namerecord>
   </name>
@@ -692,17 +596,17 @@
     <DesignAxisRecord>
       <Axis index="0">
         <AxisTag value="SRIF"/>
-        <AxisNameID value="275"/>  <!-- serif -->
+        <AxisNameID value="274"/>  <!-- serif -->
         <AxisOrdering value="0"/>
       </Axis>
       <Axis index="1">
         <AxisTag value="wght"/>
-        <AxisNameID value="277"/>  <!-- weight -->
+        <AxisNameID value="276"/>  <!-- weight -->
         <AxisOrdering value="1"/>
       </Axis>
       <Axis index="2">
         <AxisTag value="wdth"/>
-        <AxisNameID value="281"/>  <!-- width -->
+        <AxisNameID value="280"/>  <!-- width -->
         <AxisOrdering value="2"/>
       </Axis>
     </DesignAxisRecord>
@@ -711,7 +615,7 @@
       <AxisValue index="0" Format="4">
         <!-- AxisCount=3 -->
         <Flags value="0"/>
-        <ValueNameID value="285"/>  <!-- S1 -->
+        <ValueNameID value="284"/>  <!-- S1 -->
         <AxisValueRecord index="0">
           <AxisIndex value="0"/>
           <Value value="0.0"/>
@@ -728,7 +632,7 @@
       <AxisValue index="1" Format="4">
         <!-- AxisCount=3 -->
         <Flags value="0"/>
-        <ValueNameID value="286"/>  <!-- S2 -->
+        <ValueNameID value="285"/>  <!-- S2 -->
         <AxisValueRecord index="0">
           <AxisIndex value="0"/>
           <Value value="0.0"/>
@@ -745,13 +649,13 @@
       <AxisValue index="2" Format="1">
         <AxisIndex value="0"/>
         <Flags value="0"/>
-        <ValueNameID value="276"/>  <!-- Sans -->
+        <ValueNameID value="275"/>  <!-- Sans -->
         <Value value="0.0"/>
       </AxisValue>
       <AxisValue index="3" Format="2">
         <AxisIndex value="1"/>
         <Flags value="0"/>
-        <ValueNameID value="278"/>  <!-- Light -->
+        <ValueNameID value="277"/>  <!-- Light -->
         <NominalValue value="300.0"/>
         <RangeMinValue value="300.0"/>
         <RangeMaxValue value="400.0"/>
@@ -759,7 +663,7 @@
       <AxisValue index="4" Format="2">
         <AxisIndex value="1"/>
         <Flags value="0"/>
-        <ValueNameID value="279"/>  <!-- Medium -->
+        <ValueNameID value="278"/>  <!-- Medium -->
         <NominalValue value="500.0"/>
         <RangeMinValue value="400.0"/>
         <RangeMaxValue value="600.0"/>
@@ -767,7 +671,7 @@
       <AxisValue index="5" Format="2">
         <AxisIndex value="1"/>
         <Flags value="0"/>
-        <ValueNameID value="280"/>  <!-- Bold -->
+        <ValueNameID value="279"/>  <!-- Bold -->
         <NominalValue value="700.0"/>
         <RangeMinValue value="600.0"/>
         <RangeMaxValue value="700.0"/>
@@ -775,7 +679,7 @@
       <AxisValue index="6" Format="2">
         <AxisIndex value="2"/>
         <Flags value="0"/>
-        <ValueNameID value="282"/>  <!-- Condensed -->
+        <ValueNameID value="281"/>  <!-- Condensed -->
         <NominalValue value="50.0"/>
         <RangeMinValue value="50.0"/>
         <RangeMaxValue value="75.0"/>
@@ -783,7 +687,7 @@
       <AxisValue index="7" Format="2">
         <AxisIndex value="2"/>
         <Flags value="2"/>  <!-- ElidableAxisValueName -->
-        <ValueNameID value="283"/>  <!-- Normal -->
+        <ValueNameID value="282"/>  <!-- Normal -->
         <NominalValue value="100.0"/>
         <RangeMinValue value="75.0"/>
         <RangeMaxValue value="125.0"/>
@@ -791,13 +695,13 @@
       <AxisValue index="8" Format="2">
         <AxisIndex value="2"/>
         <Flags value="0"/>
-        <ValueNameID value="284"/>  <!-- Extended -->
+        <ValueNameID value="283"/>  <!-- Extended -->
         <NominalValue value="200.0"/>
         <RangeMinValue value="125.0"/>
         <RangeMaxValue value="200.0"/>
       </AxisValue>
     </AxisValueArray>
-    <ElidedFallbackNameID value="274"/>  <!-- Regular -->
+    <ElidedFallbackNameID value="2"/>  <!-- Regular -->
   </STAT>
 
   <avar>
_____ IntegrationTest.test_apply_varfont_info[defcon-compileVariableTTFs] ______

self = <tests.integration_test.IntegrationTest object at 0xf32248a0>
FontClass = <class 'defcon.objects.font.Font'>
compileMethod = <function compileVariableTTFs at 0xf3824ca8>

    @pytest.mark.parametrize(
        "compileMethod", [compileVariableTTFs, compileVariableCFF2s]
    )
    def test_apply_varfont_info(self, FontClass, compileMethod):
        designspace = DesignSpaceDocument.fromfile(getpath("TestVarFont.designspace"))
        designspace.loadSourceFonts(FontClass)
    
        fonts = compileMethod(designspace)
        assert len(fonts) == 2
    
>       expectTTX(fonts["MyFontVF1"], "TestVarFont-MyFontVF1.ttx", ["head", "name"])

tests/integration_test.py:602: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2fb9378>
expectedTTX = 'TestVarFont-MyFontVF1.ttx', tables = ['head', 'name']

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVarFont-MyFontVF1.ttx
+++ <generated>
@@ -23,9 +23,6 @@
   </head>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       TestVarFont
     </namerecord>
_____ IntegrationTest.test_apply_varfont_info[defcon-compileVariableCFF2s] _____

self = <tests.integration_test.IntegrationTest object at 0xf3224828>
FontClass = <class 'defcon.objects.font.Font'>
compileMethod = <function compileVariableCFF2s at 0xf3824f28>

    @pytest.mark.parametrize(
        "compileMethod", [compileVariableTTFs, compileVariableCFF2s]
    )
    def test_apply_varfont_info(self, FontClass, compileMethod):
        designspace = DesignSpaceDocument.fromfile(getpath("TestVarFont.designspace"))
        designspace.loadSourceFonts(FontClass)
    
        fonts = compileMethod(designspace)
        assert len(fonts) == 2
    
>       expectTTX(fonts["MyFontVF1"], "TestVarFont-MyFontVF1.ttx", ["head", "name"])

tests/integration_test.py:602: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2fc21f8>
expectedTTX = 'TestVarFont-MyFontVF1.ttx', tables = ['head', 'name']

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVarFont-MyFontVF1.ttx
+++ <generated>
@@ -23,9 +23,6 @@
   </head>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       TestVarFont
     </namerecord>
_________________________ test_kern_zyyy_zinh[ufoLib2] _________________________

snapshot = '''
lookup kern_dflt {
    lookupflag IgnoreMarks;
    pos uni0300 uni0300 0;
    pos uni0310 uni0310 1;
    pos uni03...a;
    language dflt;
    lookup kern_dflt;
    
    script dupl;
    language dflt;
    lookup kern_dflt;
} dist;

'''
FontClass = <function FontClass.<locals>.ctor at 0xf2e9de88>

    def test_kern_zyyy_zinh(snapshot, FontClass):
        """Test that a sampling of glyphs with a common or inherited script, but a
        disjoint set of explicit script extensions end up in the correct lookups."""
        glyphs = {}
        for i in range(0, 0x110000, 0x10):
            script = unicodeScript(i)
            script_extension = unicodeScriptExtensions(i)
            if script not in script_extension:
                assert script in DFLT_SCRIPTS
                name = f"uni{i:04X}"
                glyphs[name] = i
        kerning = {(glyph, glyph): i for i, glyph in enumerate(glyphs)}
        ufo = makeUFO(FontClass, glyphs, None, kerning)
        newFeatures = KernFeatureWriterTest.writeFeatures(ufo)
    
>       assert newFeatures.asFea() == snapshot
E       AssertionError: assert [+ received] == [- snapshot]
E           '''
E             ...
E               lookupflag IgnoreMarks;
E         -     pos uni0300 uni0300 0;
E         -     pos uni0310 uni0310 1;
E         -     pos uni0320 uni0320 2;
E         -     pos uni0330 uni0330 3;...
E         
E         ...Full output truncated (85 lines hidden), use '-vv' to show

tests/featureWriters/kernFeatureWriter2_test.py:985: AssertionError
_________________________ test_kern_zyyy_zinh[ufoLib2] _________________________

FontClass = <function FontClass.<locals>.ctor at 0xf2e9de88>

    def test_kern_zyyy_zinh(FontClass):
        """Test that a sampling of glyphs with a common or inherited script, but a
        disjoint set of explicit script extensions end up in the correct lookups."""
        glyphs = {}
        for i in range(0, 0x110000, 0x10):
            script = unicodeScript(i)
            script_extension = unicodeScriptExtensions(i)
            if script not in script_extension:
                assert script in DFLT_SCRIPTS
                name = f"uni{i:04X}"
                glyphs[name] = i
        kerning = {(glyph, glyph): i for i, glyph in enumerate(glyphs)}
        ufo = makeUFO(FontClass, glyphs, None, kerning)
        newFeatures = KernFeatureWriterTest.writeFeatures(ufo)
    
>       assert dedent(str(newFeatures)) == dedent(
            """\
            lookup kern_Deva {
                lookupflag IgnoreMarks;
                pos uni1CD0 uni1CD0 7;
                pos uni1CE0 uni1CE0 8;
                pos uni1CF0 uni1CF0 9;
                pos uni20F0 uni20F0 11;
                pos uniA830 uniA830 34;
            } kern_Deva;
    
            lookup kern_Dupl {
                lookupflag IgnoreMarks;
                pos uni1BCA0 uni1BCA0 42;
            } kern_Dupl;
    
            lookup kern_Grek {
                lookupflag IgnoreMarks;
                pos uni0300 uni0300 0;
                pos uni1DC0 uni1DC0 10;
            } kern_Grek;
    
            lookup kern_Hani_Hrkt {
                lookupflag IgnoreMarks;
                pos uni1D360 uni1D360 43;
                pos uni1D370 uni1D370 44;
                pos uni1F250 uni1F250 45;
                pos uni2FF0 uni2FF0 13;
                pos uni3010 uni3010 14;
                pos uni3030 uni3030 15;
                pos uni30A0 uni30A0 16;
                pos uni3190 uni3190 17;
                pos uni31C0 uni31C0 18;
                pos uni31D0 uni31D0 19;
                pos uni31E0 uni31E0 20;
                pos uni3220 uni3220 21;
                pos uni3230 uni3230 22;
                pos uni3240 uni3240 23;
                pos uni3280 uni3280 24;
                pos uni3290 uni3290 25;
                pos uni32A0 uni32A0 26;
                pos uni32B0 uni32B0 27;
                pos uni32C0 uni32C0 28;
                pos uni3360 uni3360 29;
                pos uni3370 uni3370 30;
                pos uni33E0 uni33E0 31;
                pos uni33F0 uni33F0 32;
                pos uniA700 uniA700 33;
                pos uniFF70 uniFF70 35;
            } kern_Hani_Hrkt;
    
            lookup kern_Default {
                lookupflag IgnoreMarks;
                pos uni0310 uni0310 1;
                pos uni0320 uni0320 2;
                pos uni0330 uni0330 3;
                pos uni0640 uni0640 4;
                pos uni0650 uni0650 5;
                pos uni0670 uni0670 6;
                pos uni10100 uni10100 36;
                pos uni10110 uni10110 37;
                pos uni10120 uni10120 38;
                pos uni10130 uni10130 39;
                pos uni102E0 uni102E0 40;
                pos uni102F0 uni102F0 41;
                pos uni2E30 uni2E30 12;
            } kern_Default;
    
            feature kern {
                script DFLT;
                language dflt;
                lookup kern_Default;
                lookup kern_Grek;
                lookup kern_Hani_Hrkt;
    
                script grek;
                language dflt;
                lookup kern_Default;
                lookup kern_Grek;
    
                script hani;
                language dflt;
                lookup kern_Default;
                lookup kern_Hani_Hrkt;
    
                script kana;
                language dflt;
                lookup kern_Default;
                lookup kern_Hani_Hrkt;
            } kern;
    
            feature dist {
                script dev2;
                language dflt;
                lookup kern_Default;
                lookup kern_Deva;
    
                script deva;
                language dflt;
                lookup kern_Default;
                lookup kern_Deva;
    
                script dupl;
                language dflt;
                lookup kern_Default;
                lookup kern_Dupl;
            } dist;
            """
        )
E       AssertionError: assert 'lookup kern_...l;\n} dist;\n' == 'lookup kern_...l;\n} dist;\n'
E         
E         Skipping 61 identical leading characters in diff, use -v to show
E         - 0 uni1CD0 7;
E         ?           ^
E         + 0 uni1CD0 3;
E         ?           ^
E         -     pos uni1CE0 uni1CE0 8;...
E         
E         ...Full output truncated (218 lines hidden), use '-vv' to show

tests/featureWriters/kernFeatureWriter_test.py:1805: AssertionError
____________ IntegrationTest.test_compileVariableTTF[ufoLib2-None] _____________

self = <tests.integration_test.IntegrationTest object at 0xf36ac2a0>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2fad840>
useProductionNames = None

    def test_compileVariableTTF(self, designspace, useProductionNames):
        varfont = compileVariableTTF(designspace, useProductionNames=useProductionNames)
>       expectTTX(
            varfont,
            "TestVariableFont-TTF{}.ttx".format(
                "-useProductionNames" if useProductionNames else ""
            ),
        )

tests/integration_test.py:232: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2eea0d8>
expectedTTX = 'TestVariableFont-TTF.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-TTF.ttx
+++ <generated>
@@ -257,9 +257,6 @@
   </glyf>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
____________ IntegrationTest.test_compileVariableTTF[ufoLib2-True] _____________

self = <tests.integration_test.IntegrationTest object at 0xf36ac2e8>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2fb9948>
useProductionNames = True

    def test_compileVariableTTF(self, designspace, useProductionNames):
        varfont = compileVariableTTF(designspace, useProductionNames=useProductionNames)
>       expectTTX(
            varfont,
            "TestVariableFont-TTF{}.ttx".format(
                "-useProductionNames" if useProductionNames else ""
            ),
        )

tests/integration_test.py:232: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2eb9ac8>
expectedTTX = 'TestVariableFont-TTF-useProductionNames.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-TTF-useProductionNames.ttx
+++ <generated>
@@ -257,9 +257,6 @@
   </glyf>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
____________ IntegrationTest.test_compileVariableTTF[ufoLib2-False] ____________

self = <tests.integration_test.IntegrationTest object at 0xf36929f0>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2fc2a98>
useProductionNames = False

    def test_compileVariableTTF(self, designspace, useProductionNames):
        varfont = compileVariableTTF(designspace, useProductionNames=useProductionNames)
>       expectTTX(
            varfont,
            "TestVariableFont-TTF{}.ttx".format(
                "-useProductionNames" if useProductionNames else ""
            ),
        )

tests/integration_test.py:232: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2fc2ee8>
expectedTTX = 'TestVariableFont-TTF.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-TTF.ttx
+++ <generated>
@@ -257,9 +257,6 @@
   </glyf>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
____________ IntegrationTest.test_compileVariableCFF2[ufoLib2-None] ____________

self = <tests.integration_test.IntegrationTest object at 0xf36ac168>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf311a5d0>
useProductionNames = None

    def test_compileVariableCFF2(self, designspace, useProductionNames):
        varfont = compileVariableCFF2(
            designspace, useProductionNames=useProductionNames
        )
>       expectTTX(
            varfont,
            "TestVariableFont-CFF2{}.ttx".format(
                "-useProductionNames" if useProductionNames else ""
            ),
        )

tests/integration_test.py:243: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2f98810>
expectedTTX = 'TestVariableFont-CFF2.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-CFF2.ttx
+++ <generated>
@@ -138,9 +138,6 @@
   </cmap>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
____________ IntegrationTest.test_compileVariableCFF2[ufoLib2-True] ____________

self = <tests.integration_test.IntegrationTest object at 0xf36ac1b0>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2fc8df8>
useProductionNames = True

    def test_compileVariableCFF2(self, designspace, useProductionNames):
        varfont = compileVariableCFF2(
            designspace, useProductionNames=useProductionNames
        )
>       expectTTX(
            varfont,
            "TestVariableFont-CFF2{}.ttx".format(
                "-useProductionNames" if useProductionNames else ""
            ),
        )

tests/integration_test.py:243: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2f0f588>
expectedTTX = 'TestVariableFont-CFF2-useProductionNames.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-CFF2-useProductionNames.ttx
+++ <generated>
@@ -138,9 +138,6 @@
   </cmap>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
___________ IntegrationTest.test_compileVariableCFF2[ufoLib2-False] ____________

self = <tests.integration_test.IntegrationTest object at 0xf36ac1f8>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2f0fcf0>
useProductionNames = False

    def test_compileVariableCFF2(self, designspace, useProductionNames):
        varfont = compileVariableCFF2(
            designspace, useProductionNames=useProductionNames
        )
>       expectTTX(
            varfont,
            "TestVariableFont-CFF2{}.ttx".format(
                "-useProductionNames" if useProductionNames else ""
            ),
        )

tests/integration_test.py:243: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf3112a20>
expectedTTX = 'TestVariableFont-CFF2.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-CFF2.ttx
+++ <generated>
@@ -138,9 +138,6 @@
   </cmap>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
_______ IntegrationTest.test_compileVariableCFF2_subroutinized[ufoLib2] ________

self = <tests.integration_test.IntegrationTest object at 0xf36ac570>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2ff11c8>

    def test_compileVariableCFF2_subroutinized(self, designspace):
        varfont = compileVariableCFF2(designspace, optimizeCFF=2)
>       expectTTX(varfont, "TestVariableFont-CFF2-cffsubr.ttx")

tests/integration_test.py:252: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2ff1e88>
expectedTTX = 'TestVariableFont-CFF2-cffsubr.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-CFF2-cffsubr.ttx
+++ <generated>
@@ -138,9 +138,6 @@
   </cmap>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
_ IntegrationTest.test_drop_glyph_names_variable[ufoLib2-VariableTTF-options0-TestVariableFont-TTF-post3.ttx] _

self = <tests.integration_test.IntegrationTest object at 0xf36acc18>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2fc89d8>
output_format = 'VariableTTF', options = {}
expected_ttx = 'TestVariableFont-TTF-post3.ttx'

    @pytest.mark.parametrize(
        "output_format, options, expected_ttx",
        [
            ("VariableTTF", {}, "TestVariableFont-TTF-post3.ttx"),
            ("VariableCFF2", {}, "TestVariableFont-CFF2-post3.ttx"),
        ],
    )
    def test_drop_glyph_names_variable(
        self, designspace, output_format, options, expected_ttx
    ):
        # set keepGlyphNames in the default UFO.lib where postProcessor finds it
        designspace.findDefault().font.lib[KEEP_GLYPH_NAMES] = False
        compile_func = globals()[f"compile{output_format}"]
        ttf = compile_func(designspace, **options)
>       expectTTX(ttf, expected_ttx)

tests/integration_test.py:303: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2f0ff48>
expectedTTX = 'TestVariableFont-TTF-post3.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-TTF-post3.ttx
+++ <generated>
@@ -257,9 +257,6 @@
   </glyf>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
_ IntegrationTest.test_drop_glyph_names_variable[ufoLib2-VariableCFF2-options1-TestVariableFont-CFF2-post3.ttx] _

self = <tests.integration_test.IntegrationTest object at 0xf36acc60>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2f10b58>
output_format = 'VariableCFF2', options = {}
expected_ttx = 'TestVariableFont-CFF2-post3.ttx'

    @pytest.mark.parametrize(
        "output_format, options, expected_ttx",
        [
            ("VariableTTF", {}, "TestVariableFont-TTF-post3.ttx"),
            ("VariableCFF2", {}, "TestVariableFont-CFF2-post3.ttx"),
        ],
    )
    def test_drop_glyph_names_variable(
        self, designspace, output_format, options, expected_ttx
    ):
        # set keepGlyphNames in the default UFO.lib where postProcessor finds it
        designspace.findDefault().font.lib[KEEP_GLYPH_NAMES] = False
        compile_func = globals()[f"compile{output_format}"]
        ttf = compile_func(designspace, **options)
>       expectTTX(ttf, expected_ttx)

tests/integration_test.py:303: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2f35930>
expectedTTX = 'TestVariableFont-CFF2-post3.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-CFF2-post3.ttx
+++ <generated>
@@ -138,9 +138,6 @@
   </cmap>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
______________ IntegrationTest.test_compileVariableTTFs[ufoLib2] _______________

self = <tests.integration_test.IntegrationTest object at 0xf3691288>
designspace_v5 = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2f950a8>

    def test_compileVariableTTFs(self, designspace_v5):
        fonts = compileVariableTTFs(designspace_v5)
    
        # NOTE: Test dumps were generated like this:
        # for k, font in fonts.items():
        #     font.recalcTimestamp = False
        #     font["head"].created, font["head"].modified = 3570196637, 3601822698
        #     font["head"].checkSumAdjustment = 0x12345678
        #     font.saveXML(f"tests/data/DSv5/{k}-TTF.ttx")
    
        assert set(fonts.keys()) == {
            "MutatorSansVariable_Weight_Width",
            "MutatorSansVariable_Weight",
            "MutatorSansVariable_Width",
            "MutatorSerifVariable_Width",
        }
        # The STAT table is set to [SRIF=0, wght=[300, 700], wdth=[50, 200]] + S1 + S2
>       expectTTX(
            fonts["MutatorSansVariable_Weight_Width"],
            "DSv5/MutatorSansVariable_Weight_Width-TTF.ttx",
        )

tests/integration_test.py:397: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2fc8c00>
expectedTTX = 'DSv5/MutatorSansVariable_Weight_Width-TTF.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- DSv5/MutatorSansVariable_Weight_Width-TTF.ttx
+++ <generated>
@@ -251,99 +251,6 @@
   </glyf>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
-    <namerecord nameID="257" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Width
-    </namerecord>
-    <namerecord nameID="258" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Light Condensed
-    </namerecord>
-    <namerecord nameID="259" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansLightCondensed
-    </namerecord>
-    <namerecord nameID="260" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Bold Condensed
-    </namerecord>
-    <namerecord nameID="261" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansBoldCondensed
-    </namerecord>
-    <namerecord nameID="262" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Light Extended
-    </namerecord>
-    <namerecord nameID="263" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansLightExtended
-    </namerecord>
-    <namerecord nameID="264" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Bold Extended
-    </namerecord>
-    <namerecord nameID="265" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansBoldExtended
-    </namerecord>
-    <namerecord nameID="266" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Medium
-    </namerecord>
-    <namerecord nameID="267" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansMedium
-    </namerecord>
-    <namerecord nameID="268" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansMedium
-    </namerecord>
-    <namerecord nameID="269" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Bold
-    </namerecord>
-    <namerecord nameID="270" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansBold
-    </namerecord>
-    <namerecord nameID="271" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Medium Extended
-    </namerecord>
-    <namerecord nameID="272" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansMediumExtended
-    </namerecord>
-    <namerecord nameID="273" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansLightCondensed
-    </namerecord>
-    <namerecord nameID="274" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Regular
-    </namerecord>
-    <namerecord nameID="275" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      serif
-    </namerecord>
-    <namerecord nameID="276" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans
-    </namerecord>
-    <namerecord nameID="277" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      weight
-    </namerecord>
-    <namerecord nameID="278" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Light
-    </namerecord>
-    <namerecord nameID="279" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Medium
-    </namerecord>
-    <namerecord nameID="280" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Bold
-    </namerecord>
-    <namerecord nameID="281" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      width
-    </namerecord>
-    <namerecord nameID="282" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Condensed
-    </namerecord>
-    <namerecord nameID="283" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Normal
-    </namerecord>
-    <namerecord nameID="284" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Extended
-    </namerecord>
-    <namerecord nameID="285" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      S1
-    </namerecord>
-    <namerecord nameID="286" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      S2
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       New Font
     </namerecord>
@@ -417,42 +324,39 @@
       MutatorMathTest-SansLightCondensed
     </namerecord>
     <namerecord nameID="274" platformID="3" platEncID="1" langID="0x409">
-      Regular
+      serif
     </namerecord>
     <namerecord nameID="275" platformID="3" platEncID="1" langID="0x409">
-      serif
+      Sans
     </namerecord>
     <namerecord nameID="276" platformID="3" platEncID="1" langID="0x409">
-      Sans
+      weight
     </namerecord>
     <namerecord nameID="277" platformID="3" platEncID="1" langID="0x409">
-      weight
+      Light
     </namerecord>
     <namerecord nameID="278" platformID="3" platEncID="1" langID="0x409">
-      Light
+      Medium
     </namerecord>
     <namerecord nameID="279" platformID="3" platEncID="1" langID="0x409">
-      Medium
+      Bold
     </namerecord>
     <namerecord nameID="280" platformID="3" platEncID="1" langID="0x409">
-      Bold
+      width
     </namerecord>
     <namerecord nameID="281" platformID="3" platEncID="1" langID="0x409">
-      width
+      Condensed
     </namerecord>
     <namerecord nameID="282" platformID="3" platEncID="1" langID="0x409">
-      Condensed
+      Normal
     </namerecord>
     <namerecord nameID="283" platformID="3" platEncID="1" langID="0x409">
-      Normal
+      Extended
     </namerecord>
     <namerecord nameID="284" platformID="3" platEncID="1" langID="0x409">
-      Extended
+      S1
     </namerecord>
     <namerecord nameID="285" platformID="3" platEncID="1" langID="0x409">
-      S1
-    </namerecord>
-    <namerecord nameID="286" platformID="3" platEncID="1" langID="0x409">
       S2
     </namerecord>
   </name>
@@ -635,17 +539,17 @@
     <DesignAxisRecord>
       <Axis index="0">
         <AxisTag value="SRIF"/>
-        <AxisNameID value="275"/>  <!-- serif -->
+        <AxisNameID value="274"/>  <!-- serif -->
         <AxisOrdering value="0"/>
       </Axis>
       <Axis index="1">
         <AxisTag value="wght"/>
-        <AxisNameID value="277"/>  <!-- weight -->
+        <AxisNameID value="276"/>  <!-- weight -->
         <AxisOrdering value="1"/>
       </Axis>
       <Axis index="2">
         <AxisTag value="wdth"/>
-        <AxisNameID value="281"/>  <!-- width -->
+        <AxisNameID value="280"/>  <!-- width -->
         <AxisOrdering value="2"/>
       </Axis>
     </DesignAxisRecord>
@@ -654,7 +558,7 @@
       <AxisValue index="0" Format="4">
         <!-- AxisCount=3 -->
         <Flags value="0"/>
-        <ValueNameID value="285"/>  <!-- S1 -->
+        <ValueNameID value="284"/>  <!-- S1 -->
         <AxisValueRecord index="0">
           <AxisIndex value="0"/>
           <Value value="0.0"/>
@@ -671,7 +575,7 @@
       <AxisValue index="1" Format="4">
         <!-- AxisCount=3 -->
         <Flags value="0"/>
-        <ValueNameID value="286"/>  <!-- S2 -->
+        <ValueNameID value="285"/>  <!-- S2 -->
         <AxisValueRecord index="0">
           <AxisIndex value="0"/>
           <Value value="0.0"/>
@@ -688,13 +592,13 @@
       <AxisValue index="2" Format="1">
         <AxisIndex value="0"/>
         <Flags value="0"/>
-        <ValueNameID value="276"/>  <!-- Sans -->
+        <ValueNameID value="275"/>  <!-- Sans -->
         <Value value="0.0"/>
       </AxisValue>
       <AxisValue index="3" Format="2">
         <AxisIndex value="1"/>
         <Flags value="0"/>
-        <ValueNameID value="278"/>  <!-- Light -->
+        <ValueNameID value="277"/>  <!-- Light -->
         <NominalValue value="300.0"/>
         <RangeMinValue value="300.0"/>
         <RangeMaxValue value="400.0"/>
@@ -702,7 +606,7 @@
       <AxisValue index="4" Format="2">
         <AxisIndex value="1"/>
         <Flags value="0"/>
-        <ValueNameID value="279"/>  <!-- Medium -->
+        <ValueNameID value="278"/>  <!-- Medium -->
         <NominalValue value="500.0"/>
         <RangeMinValue value="400.0"/>
         <RangeMaxValue value="600.0"/>
@@ -710,7 +614,7 @@
       <AxisValue index="5" Format="2">
         <AxisIndex value="1"/>
         <Flags value="0"/>
-        <ValueNameID value="280"/>  <!-- Bold -->
+        <ValueNameID value="279"/>  <!-- Bold -->
         <NominalValue value="700.0"/>
         <RangeMinValue value="600.0"/>
         <RangeMaxValue value="700.0"/>
@@ -718,7 +622,7 @@
       <AxisValue index="6" Format="2">
         <AxisIndex value="2"/>
         <Flags value="0"/>
-        <ValueNameID value="282"/>  <!-- Condensed -->
+        <ValueNameID value="281"/>  <!-- Condensed -->
         <NominalValue value="50.0"/>
         <RangeMinValue value="50.0"/>
         <RangeMaxValue value="75.0"/>
@@ -726,7 +630,7 @@
       <AxisValue index="7" Format="2">
         <AxisIndex value="2"/>
         <Flags value="2"/>  <!-- ElidableAxisValueName -->
-        <ValueNameID value="283"/>  <!-- Normal -->
+        <ValueNameID value="282"/>  <!-- Normal -->
         <NominalValue value="100.0"/>
         <RangeMinValue value="75.0"/>
         <RangeMaxValue value="125.0"/>
@@ -734,13 +638,13 @@
       <AxisValue index="8" Format="2">
         <AxisIndex value="2"/>
         <Flags value="0"/>
-        <ValueNameID value="284"/>  <!-- Extended -->
+        <ValueNameID value="283"/>  <!-- Extended -->
         <NominalValue value="200.0"/>
         <RangeMinValue value="125.0"/>
         <RangeMaxValue value="200.0"/>
       </AxisValue>
     </AxisValueArray>
-    <ElidedFallbackNameID value="274"/>  <!-- Regular -->
+    <ElidedFallbackNameID value="2"/>  <!-- Regular -->
   </STAT>
 
   <avar>
______________ IntegrationTest.test_compileVariableCFF2s[ufoLib2] ______________

self = <tests.integration_test.IntegrationTest object at 0xf36913d8>
designspace_v5 = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2ef42d0>

    def test_compileVariableCFF2s(self, designspace_v5):
        fonts = compileVariableCFF2s(designspace_v5)
    
        # NOTE: Test dumps were generated like this:
        # for k, font in fonts.items():
        #     font.recalcTimestamp = False
        #     font["head"].created, font["head"].modified = 3570196637, 3601822698
        #     font["head"].checkSumAdjustment = 0x12345678
        #     font.saveXML(f"tests/data/DSv5/{k}-CFF2.ttx")
    
        assert set(fonts.keys()) == {
            "MutatorSansVariable_Weight_Width",
            "MutatorSansVariable_Weight",
            "MutatorSansVariable_Width",
            "MutatorSerifVariable_Width",
        }
        # The STAT table is set to [SRIF=0, wght=[300, 700], wdth=[50, 200]] + S1 + S2
>       expectTTX(
            fonts["MutatorSansVariable_Weight_Width"],
            "DSv5/MutatorSansVariable_Weight_Width-CFF2.ttx",
        )

tests/integration_test.py:434: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2ef5570>
expectedTTX = 'DSv5/MutatorSansVariable_Weight_Width-CFF2.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- DSv5/MutatorSansVariable_Weight_Width-CFF2.ttx
+++ <generated>
@@ -128,99 +128,6 @@
   </cmap>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
-    <namerecord nameID="257" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Width
-    </namerecord>
-    <namerecord nameID="258" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Light Condensed
-    </namerecord>
-    <namerecord nameID="259" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansLightCondensed
-    </namerecord>
-    <namerecord nameID="260" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Bold Condensed
-    </namerecord>
-    <namerecord nameID="261" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansBoldCondensed
-    </namerecord>
-    <namerecord nameID="262" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Light Extended
-    </namerecord>
-    <namerecord nameID="263" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansLightExtended
-    </namerecord>
-    <namerecord nameID="264" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Bold Extended
-    </namerecord>
-    <namerecord nameID="265" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansBoldExtended
-    </namerecord>
-    <namerecord nameID="266" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Medium
-    </namerecord>
-    <namerecord nameID="267" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansMedium
-    </namerecord>
-    <namerecord nameID="268" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansMedium
-    </namerecord>
-    <namerecord nameID="269" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Bold
-    </namerecord>
-    <namerecord nameID="270" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansBold
-    </namerecord>
-    <namerecord nameID="271" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Medium Extended
-    </namerecord>
-    <namerecord nameID="272" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansMediumExtended
-    </namerecord>
-    <namerecord nameID="273" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansLightCondensed
-    </namerecord>
-    <namerecord nameID="274" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Regular
-    </namerecord>
-    <namerecord nameID="275" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      serif
-    </namerecord>
-    <namerecord nameID="276" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans
-    </namerecord>
-    <namerecord nameID="277" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      weight
-    </namerecord>
-    <namerecord nameID="278" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Light
-    </namerecord>
-    <namerecord nameID="279" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Medium
-    </namerecord>
-    <namerecord nameID="280" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Bold
-    </namerecord>
-    <namerecord nameID="281" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      width
-    </namerecord>
-    <namerecord nameID="282" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Condensed
-    </namerecord>
-    <namerecord nameID="283" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Normal
-    </namerecord>
-    <namerecord nameID="284" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Extended
-    </namerecord>
-    <namerecord nameID="285" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      S1
-    </namerecord>
-    <namerecord nameID="286" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      S2
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       New Font
     </namerecord>
@@ -294,42 +201,39 @@
       MutatorMathTest-SansLightCondensed
     </namerecord>
     <namerecord nameID="274" platformID="3" platEncID="1" langID="0x409">
-      Regular
+      serif
     </namerecord>
     <namerecord nameID="275" platformID="3" platEncID="1" langID="0x409">
-      serif
+      Sans
     </namerecord>
     <namerecord nameID="276" platformID="3" platEncID="1" langID="0x409">
-      Sans
+      weight
     </namerecord>
     <namerecord nameID="277" platformID="3" platEncID="1" langID="0x409">
-      weight
+      Light
     </namerecord>
     <namerecord nameID="278" platformID="3" platEncID="1" langID="0x409">
-      Light
+      Medium
     </namerecord>
     <namerecord nameID="279" platformID="3" platEncID="1" langID="0x409">
-      Medium
+      Bold
     </namerecord>
     <namerecord nameID="280" platformID="3" platEncID="1" langID="0x409">
-      Bold
+      width
     </namerecord>
     <namerecord nameID="281" platformID="3" platEncID="1" langID="0x409">
-      width
+      Condensed
     </namerecord>
     <namerecord nameID="282" platformID="3" platEncID="1" langID="0x409">
-      Condensed
+      Normal
     </namerecord>
     <namerecord nameID="283" platformID="3" platEncID="1" langID="0x409">
-      Normal
+      Extended
     </namerecord>
     <namerecord nameID="284" platformID="3" platEncID="1" langID="0x409">
-      Extended
+      S1
     </namerecord>
     <namerecord nameID="285" platformID="3" platEncID="1" langID="0x409">
-      S1
-    </namerecord>
-    <namerecord nameID="286" platformID="3" platEncID="1" langID="0x409">
       S2
     </namerecord>
   </name>
@@ -692,17 +596,17 @@
     <DesignAxisRecord>
       <Axis index="0">
         <AxisTag value="SRIF"/>
-        <AxisNameID value="275"/>  <!-- serif -->
+        <AxisNameID value="274"/>  <!-- serif -->
         <AxisOrdering value="0"/>
       </Axis>
       <Axis index="1">
         <AxisTag value="wght"/>
-        <AxisNameID value="277"/>  <!-- weight -->
+        <AxisNameID value="276"/>  <!-- weight -->
         <AxisOrdering value="1"/>
       </Axis>
       <Axis index="2">
         <AxisTag value="wdth"/>
-        <AxisNameID value="281"/>  <!-- width -->
+        <AxisNameID value="280"/>  <!-- width -->
         <AxisOrdering value="2"/>
       </Axis>
     </DesignAxisRecord>
@@ -711,7 +615,7 @@
       <AxisValue index="0" Format="4">
         <!-- AxisCount=3 -->
         <Flags value="0"/>
-        <ValueNameID value="285"/>  <!-- S1 -->
+        <ValueNameID value="284"/>  <!-- S1 -->
         <AxisValueRecord index="0">
           <AxisIndex value="0"/>
           <Value value="0.0"/>
@@ -728,7 +632,7 @@
       <AxisValue index="1" Format="4">
         <!-- AxisCount=3 -->
         <Flags value="0"/>
-        <ValueNameID value="286"/>  <!-- S2 -->
+        <ValueNameID value="285"/>  <!-- S2 -->
         <AxisValueRecord index="0">
           <AxisIndex value="0"/>
           <Value value="0.0"/>
@@ -745,13 +649,13 @@
       <AxisValue index="2" Format="1">
         <AxisIndex value="0"/>
         <Flags value="0"/>
-        <ValueNameID value="276"/>  <!-- Sans -->
+        <ValueNameID value="275"/>  <!-- Sans -->
         <Value value="0.0"/>
       </AxisValue>
       <AxisValue index="3" Format="2">
         <AxisIndex value="1"/>
         <Flags value="0"/>
-        <ValueNameID value="278"/>  <!-- Light -->
+        <ValueNameID value="277"/>  <!-- Light -->
         <NominalValue value="300.0"/>
         <RangeMinValue value="300.0"/>
         <RangeMaxValue value="400.0"/>
@@ -759,7 +663,7 @@
       <AxisValue index="4" Format="2">
         <AxisIndex value="1"/>
         <Flags value="0"/>
-        <ValueNameID value="279"/>  <!-- Medium -->
+        <ValueNameID value="278"/>  <!-- Medium -->
         <NominalValue value="500.0"/>
         <RangeMinValue value="400.0"/>
         <RangeMaxValue value="600.0"/>
@@ -767,7 +671,7 @@
       <AxisValue index="5" Format="2">
         <AxisIndex value="1"/>
         <Flags value="0"/>
-        <ValueNameID value="280"/>  <!-- Bold -->
+        <ValueNameID value="279"/>  <!-- Bold -->
         <NominalValue value="700.0"/>
         <RangeMinValue value="600.0"/>
         <RangeMaxValue value="700.0"/>
@@ -775,7 +679,7 @@
       <AxisValue index="6" Format="2">
         <AxisIndex value="2"/>
         <Flags value="0"/>
-        <ValueNameID value="282"/>  <!-- Condensed -->
+        <ValueNameID value="281"/>  <!-- Condensed -->
         <NominalValue value="50.0"/>
         <RangeMinValue value="50.0"/>
         <RangeMaxValue value="75.0"/>
@@ -783,7 +687,7 @@
       <AxisValue index="7" Format="2">
         <AxisIndex value="2"/>
         <Flags value="2"/>  <!-- ElidableAxisValueName -->
-        <ValueNameID value="283"/>  <!-- Normal -->
+        <ValueNameID value="282"/>  <!-- Normal -->
         <NominalValue value="100.0"/>
         <RangeMinValue value="75.0"/>
         <RangeMaxValue value="125.0"/>
@@ -791,13 +695,13 @@
       <AxisValue index="8" Format="2">
         <AxisIndex value="2"/>
         <Flags value="0"/>
-        <ValueNameID value="284"/>  <!-- Extended -->
+        <ValueNameID value="283"/>  <!-- Extended -->
         <NominalValue value="200.0"/>
         <RangeMinValue value="125.0"/>
         <RangeMaxValue value="200.0"/>
       </AxisValue>
     </AxisValueArray>
-    <ElidedFallbackNameID value="274"/>  <!-- Regular -->
+    <ElidedFallbackNameID value="2"/>  <!-- Regular -->
   </STAT>
 
   <avar>
_____ IntegrationTest.test_apply_varfont_info[ufoLib2-compileVariableTTFs] _____

self = <tests.integration_test.IntegrationTest object at 0xf3224900>
FontClass = <function FontClass.<locals>.ctor at 0xf2e9de88>
compileMethod = <function compileVariableTTFs at 0xf3824ca8>

    @pytest.mark.parametrize(
        "compileMethod", [compileVariableTTFs, compileVariableCFF2s]
    )
    def test_apply_varfont_info(self, FontClass, compileMethod):
        designspace = DesignSpaceDocument.fromfile(getpath("TestVarFont.designspace"))
        designspace.loadSourceFonts(FontClass)
    
        fonts = compileMethod(designspace)
        assert len(fonts) == 2
    
>       expectTTX(fonts["MyFontVF1"], "TestVarFont-MyFontVF1.ttx", ["head", "name"])

tests/integration_test.py:602: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2fb92d0>
expectedTTX = 'TestVarFont-MyFontVF1.ttx', tables = ['head', 'name']

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVarFont-MyFontVF1.ttx
+++ <generated>
@@ -23,9 +23,6 @@
   </head>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       TestVarFont
     </namerecord>
____ IntegrationTest.test_apply_varfont_info[ufoLib2-compileVariableCFF2s] _____

self = <tests.integration_test.IntegrationTest object at 0xf3224948>
FontClass = <function FontClass.<locals>.ctor at 0xf2e9de88>
compileMethod = <function compileVariableCFF2s at 0xf3824f28>

    @pytest.mark.parametrize(
        "compileMethod", [compileVariableTTFs, compileVariableCFF2s]
    )
    def test_apply_varfont_info(self, FontClass, compileMethod):
        designspace = DesignSpaceDocument.fromfile(getpath("TestVarFont.designspace"))
        designspace.loadSourceFonts(FontClass)
    
        fonts = compileMethod(designspace)
        assert len(fonts) == 2
    
>       expectTTX(fonts["MyFontVF1"], "TestVarFont-MyFontVF1.ttx", ["head", "name"])

tests/integration_test.py:602: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2f106a8>
expectedTTX = 'TestVarFont-MyFontVF1.ttx', tables = ['head', 'name']

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVarFont-MyFontVF1.ttx
+++ <generated>
@@ -23,9 +23,6 @@
   </head>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       TestVarFont
     </namerecord>
=============================== warnings summary ===============================
.pybuild/cpython3_3.12_ufo2ft/build/tests/filters/dottedCircle_test.py::test_empty_font_deprecated[defcon]
  /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/dottedCircleFilter.py:8: UserWarning: The dottedCircleFilter module is deprecated, please import dottedCircle instead.
    warnings.warn(

.pybuild/cpython3_3.12_ufo2ft/build/tests/integration_test.py::IntegrationTest::test_optimizeCFF_none[defcon-cff2]
.pybuild/cpython3_3.12_ufo2ft/build/tests/integration_test.py::IntegrationTest::test_optimizeCFF_specialize[defcon-cff2]
.pybuild/cpython3_3.12_ufo2ft/build/tests/integration_test.py::IntegrationTest::test_optimizeCFF_none[ufoLib2-cff2]
.pybuild/cpython3_3.12_ufo2ft/build/tests/integration_test.py::IntegrationTest::test_optimizeCFF_specialize[ufoLib2-cff2]
  /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/postProcessor.py:333: UserWarning: 'convertCFFtoCFF2' is deprecated; Use fontTools.cffLib.CFFToCFF2.convertCFFToCFF2 instead.
    convertCFFtoCFF2(otf)

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
--------------------------- snapshot report summary ----------------------------
1 snapshot failed. 40 snapshots passed.
=========================== short test summary info ============================
SKIPPED [2] tests/integration_test.py:137: skia-pathops is unavailable in debian yet
SKIPPED [2] tests/integration_test.py:146: skia-pathops is unavailable in debian yet
SKIPPED [2] tests/preProcessor_test.py:94: skia-pathops is unavailable in debian yet
SKIPPED [2] tests/preProcessor_test.py:214: skia-pathops is unavailable in debian yet
FAILED tests/featureWriters/kernFeatureWriter2_test.py::test_kern_zyyy_zinh[defcon]
FAILED tests/featureWriters/kernFeatureWriter_test.py::test_kern_zyyy_zinh[defcon]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableTTF[defcon-None]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableTTF[defcon-True]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableTTF[defcon-False]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableCFF2[defcon-None]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableCFF2[defcon-True]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableCFF2[defcon-False]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableCFF2_subroutinized[defcon]
FAILED tests/integration_test.py::IntegrationTest::test_drop_glyph_names_variable[defcon-VariableTTF-options0-TestVariableFont-TTF-post3.ttx]
FAILED tests/integration_test.py::IntegrationTest::test_drop_glyph_names_variable[defcon-VariableCFF2-options1-TestVariableFont-CFF2-post3.ttx]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableTTFs[defcon]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableCFF2s[defcon]
FAILED tests/integration_test.py::IntegrationTest::test_apply_varfont_info[defcon-compileVariableTTFs]
FAILED tests/integration_test.py::IntegrationTest::test_apply_varfont_info[defcon-compileVariableCFF2s]
FAILED tests/featureWriters/kernFeatureWriter2_test.py::test_kern_zyyy_zinh[ufoLib2]
FAILED tests/featureWriters/kernFeatureWriter_test.py::test_kern_zyyy_zinh[ufoLib2]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableTTF[ufoLib2-None]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableTTF[ufoLib2-True]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableTTF[ufoLib2-False]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableCFF2[ufoLib2-None]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableCFF2[ufoLib2-True]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableCFF2[ufoLib2-False]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableCFF2_subroutinized[ufoLib2]
FAILED tests/integration_test.py::IntegrationTest::test_drop_glyph_names_variable[ufoLib2-VariableTTF-options0-TestVariableFont-TTF-post3.ttx]
FAILED tests/integration_test.py::IntegrationTest::test_drop_glyph_names_variable[ufoLib2-VariableCFF2-options1-TestVariableFont-CFF2-post3.ttx]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableTTFs[ufoLib2]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableCFF2s[ufoLib2]
FAILED tests/integration_test.py::IntegrationTest::test_apply_varfont_info[ufoLib2-compileVariableTTFs]
FAILED tests/integration_test.py::IntegrationTest::test_apply_varfont_info[ufoLib2-compileVariableCFF2s]
=========== 30 failed, 1102 passed, 8 skipped, 5 warnings in 50.93s ============
E: pybuild pybuild:389: test: plugin distutils failed with: exit code=1: cd /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build; python3.12 -m pytest tests
I: pybuild base:311: cd /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build; python3.13 -m pytest tests
============================= test session starts ==============================
platform linux -- Python 3.13.2, pytest-8.3.4, pluggy-1.5.0
rootdir: /build/reproducible-path/ufo2ft-3.3.1
configfile: setup.cfg
plugins: syrupy-4.8.1, typeguard-4.4.1
collected 1140 items

tests/featureCompiler_test.py ................                           [  1%]
tests/featureWriters/cursFeatureWriter_test.py .........                 [  2%]
tests/featureWriters/featureWriters_test.py ........                     [  2%]
tests/featureWriters/gdefFeatureWriter_test.py ..........                [  3%]
tests/featureWriters/kernFeatureWriter2_test.py ........................ [  5%]
....F.....                                                               [  6%]
tests/featureWriters/kernFeatureWriter_test.py ......................... [  8%]
......F.....                                                             [ 10%]
tests/featureWriters/markFeatureWriter_test.py ......................... [ 12%]
............                                                             [ 13%]
tests/featureWriters/variableFeatureWriter_test.py ..                    [ 13%]
tests/filters/decomposeComponents_test.py ......                         [ 13%]
tests/filters/decomposeTransformedComponents_test.py ...                 [ 14%]
tests/filters/dottedCircle_test.py ...                                   [ 14%]
tests/filters/explodeColorLayerGlyphs_test.py .                          [ 14%]
tests/filters/flattenComponents_test.py ........                         [ 15%]
tests/filters/propagateAnchors_test.py ...............                   [ 16%]
tests/filters/sortContours_test.py ....                                  [ 16%]
tests/filters/transformations_test.py ...............................    [ 19%]
tests/fontInfoData_test.py ................                              [ 21%]
tests/infoCompiler_test.py .......                                       [ 21%]
tests/instantiator_test.py ...........................                   [ 24%]
tests/instructionCompiler_test.py ...................................... [ 27%]
.........                                                                [ 28%]
tests/integration_test.py ......s.s.............FFFFFFF...FF.....FF..... [ 32%]
..............FF.                                                        [ 33%]
tests/outlineCompiler_test.py .......................................... [ 37%]
........................................................................ [ 43%]
........................                                                 [ 45%]
tests/preProcessor_test.py ....s......s..............                    [ 48%]
tests/util_test.py .                                                     [ 48%]
tests/featureCompiler_test.py ................                           [ 49%]
tests/featureWriters/cursFeatureWriter_test.py .........                 [ 50%]
tests/featureWriters/featureWriters_test.py ........                     [ 51%]
tests/featureWriters/gdefFeatureWriter_test.py ..........                [ 51%]
tests/featureWriters/kernFeatureWriter2_test.py ........................ [ 54%]
....F.....                                                               [ 54%]
tests/featureWriters/kernFeatureWriter_test.py ......................... [ 57%]
......F.....                                                             [ 58%]
tests/featureWriters/markFeatureWriter_test.py ......................... [ 60%]
............                                                             [ 61%]
tests/featureWriters/variableFeatureWriter_test.py ..                    [ 61%]
tests/filters/decomposeComponents_test.py ......                         [ 62%]
tests/filters/decomposeTransformedComponents_test.py ...                 [ 62%]
tests/filters/dottedCircle_test.py ...                                   [ 62%]
tests/filters/explodeColorLayerGlyphs_test.py .                          [ 62%]
tests/filters/flattenComponents_test.py ........                         [ 63%]
tests/filters/propagateAnchors_test.py ...............                   [ 64%]
tests/filters/sortContours_test.py ....                                  [ 65%]
tests/filters/transformations_test.py ...............................    [ 67%]
tests/fontInfoData_test.py ................                              [ 69%]
tests/infoCompiler_test.py .......                                       [ 69%]
tests/instantiator_test.py ...........................                   [ 72%]
tests/instructionCompiler_test.py ...................................... [ 75%]
.........                                                                [ 76%]
tests/integration_test.py ......s.s.............FFFFFFF...FF.....FF..... [ 80%]
..............FF.                                                        [ 81%]
tests/outlineCompiler_test.py .......................................... [ 85%]
........................................................................ [ 91%]
........................                                                 [ 93%]
tests/preProcessor_test.py ....s......s..............                    [ 96%]
tests/util_test.py .                                                     [ 96%]
tests/featureWriters/ast_test.py .                                       [ 96%]
tests/featureWriters/markFeatureWriter_test.py .........                 [ 97%]
tests/filters/filters_test.py ...................                        [ 98%]
tests/filters/transformations_test.py .                                  [ 98%]
tests/fontInfoData_test.py ..                                            [ 99%]
tests/instantiator_test.py ....                                          [ 99%]
tests/instructionCompiler_test.py ....                                   [ 99%]
tests/util_test.py ..                                                    [100%]

=================================== FAILURES ===================================
_________________________ test_kern_zyyy_zinh[defcon] __________________________

snapshot = '''
lookup kern_dflt {
    lookupflag IgnoreMarks;
    pos uni0300 uni0300 0;
    pos uni0310 uni0310 1;
    pos uni03...a;
    language dflt;
    lookup kern_dflt;
    
    script dupl;
    language dflt;
    lookup kern_dflt;
} dist;

'''
FontClass = <class 'defcon.objects.font.Font'>

    def test_kern_zyyy_zinh(snapshot, FontClass):
        """Test that a sampling of glyphs with a common or inherited script, but a
        disjoint set of explicit script extensions end up in the correct lookups."""
        glyphs = {}
        for i in range(0, 0x110000, 0x10):
            script = unicodeScript(i)
            script_extension = unicodeScriptExtensions(i)
            if script not in script_extension:
                assert script in DFLT_SCRIPTS
                name = f"uni{i:04X}"
                glyphs[name] = i
        kerning = {(glyph, glyph): i for i, glyph in enumerate(glyphs)}
        ufo = makeUFO(FontClass, glyphs, None, kerning)
        newFeatures = KernFeatureWriterTest.writeFeatures(ufo)
    
>       assert newFeatures.asFea() == snapshot
E       AssertionError: assert [+ received] == [- snapshot]
E           '''
E             ...
E               lookupflag IgnoreMarks;
E         -     pos uni0300 uni0300 0;
E         -     pos uni0310 uni0310 1;
E         -     pos uni0320 uni0320 2;
E         -     pos uni0330 uni0330 3;...
E         
E         ...Full output truncated (85 lines hidden), use '-vv' to show

tests/featureWriters/kernFeatureWriter2_test.py:985: AssertionError
_________________________ test_kern_zyyy_zinh[defcon] __________________________

FontClass = <class 'defcon.objects.font.Font'>

    def test_kern_zyyy_zinh(FontClass):
        """Test that a sampling of glyphs with a common or inherited script, but a
        disjoint set of explicit script extensions end up in the correct lookups."""
        glyphs = {}
        for i in range(0, 0x110000, 0x10):
            script = unicodeScript(i)
            script_extension = unicodeScriptExtensions(i)
            if script not in script_extension:
                assert script in DFLT_SCRIPTS
                name = f"uni{i:04X}"
                glyphs[name] = i
        kerning = {(glyph, glyph): i for i, glyph in enumerate(glyphs)}
        ufo = makeUFO(FontClass, glyphs, None, kerning)
        newFeatures = KernFeatureWriterTest.writeFeatures(ufo)
    
>       assert dedent(str(newFeatures)) == dedent(
            """\
            lookup kern_Deva {
                lookupflag IgnoreMarks;
                pos uni1CD0 uni1CD0 7;
                pos uni1CE0 uni1CE0 8;
                pos uni1CF0 uni1CF0 9;
                pos uni20F0 uni20F0 11;
                pos uniA830 uniA830 34;
            } kern_Deva;
    
            lookup kern_Dupl {
                lookupflag IgnoreMarks;
                pos uni1BCA0 uni1BCA0 42;
            } kern_Dupl;
    
            lookup kern_Grek {
                lookupflag IgnoreMarks;
                pos uni0300 uni0300 0;
                pos uni1DC0 uni1DC0 10;
            } kern_Grek;
    
            lookup kern_Hani_Hrkt {
                lookupflag IgnoreMarks;
                pos uni1D360 uni1D360 43;
                pos uni1D370 uni1D370 44;
                pos uni1F250 uni1F250 45;
                pos uni2FF0 uni2FF0 13;
                pos uni3010 uni3010 14;
                pos uni3030 uni3030 15;
                pos uni30A0 uni30A0 16;
                pos uni3190 uni3190 17;
                pos uni31C0 uni31C0 18;
                pos uni31D0 uni31D0 19;
                pos uni31E0 uni31E0 20;
                pos uni3220 uni3220 21;
                pos uni3230 uni3230 22;
                pos uni3240 uni3240 23;
                pos uni3280 uni3280 24;
                pos uni3290 uni3290 25;
                pos uni32A0 uni32A0 26;
                pos uni32B0 uni32B0 27;
                pos uni32C0 uni32C0 28;
                pos uni3360 uni3360 29;
                pos uni3370 uni3370 30;
                pos uni33E0 uni33E0 31;
                pos uni33F0 uni33F0 32;
                pos uniA700 uniA700 33;
                pos uniFF70 uniFF70 35;
            } kern_Hani_Hrkt;
    
            lookup kern_Default {
                lookupflag IgnoreMarks;
                pos uni0310 uni0310 1;
                pos uni0320 uni0320 2;
                pos uni0330 uni0330 3;
                pos uni0640 uni0640 4;
                pos uni0650 uni0650 5;
                pos uni0670 uni0670 6;
                pos uni10100 uni10100 36;
                pos uni10110 uni10110 37;
                pos uni10120 uni10120 38;
                pos uni10130 uni10130 39;
                pos uni102E0 uni102E0 40;
                pos uni102F0 uni102F0 41;
                pos uni2E30 uni2E30 12;
            } kern_Default;
    
            feature kern {
                script DFLT;
                language dflt;
                lookup kern_Default;
                lookup kern_Grek;
                lookup kern_Hani_Hrkt;
    
                script grek;
                language dflt;
                lookup kern_Default;
                lookup kern_Grek;
    
                script hani;
                language dflt;
                lookup kern_Default;
                lookup kern_Hani_Hrkt;
    
                script kana;
                language dflt;
                lookup kern_Default;
                lookup kern_Hani_Hrkt;
            } kern;
    
            feature dist {
                script dev2;
                language dflt;
                lookup kern_Default;
                lookup kern_Deva;
    
                script deva;
                language dflt;
                lookup kern_Default;
                lookup kern_Deva;
    
                script dupl;
                language dflt;
                lookup kern_Default;
                lookup kern_Dupl;
            } dist;
            """
        )
E       AssertionError: assert 'lookup kern_...l;\n} dist;\n' == 'lookup kern_...l;\n} dist;\n'
E         
E         Skipping 61 identical leading characters in diff, use -v to show
E         - 0 uni1CD0 7;
E         ?           ^
E         + 0 uni1CD0 3;
E         ?           ^
E         -     pos uni1CE0 uni1CE0 8;...
E         
E         ...Full output truncated (218 lines hidden), use '-vv' to show

tests/featureWriters/kernFeatureWriter_test.py:1805: AssertionError
_____________ IntegrationTest.test_compileVariableTTF[defcon-None] _____________

self = <tests.integration_test.IntegrationTest object at 0xf34356c0>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2dc06c0>
useProductionNames = None

    def test_compileVariableTTF(self, designspace, useProductionNames):
        varfont = compileVariableTTF(designspace, useProductionNames=useProductionNames)
>       expectTTX(
            varfont,
            "TestVariableFont-TTF{}.ttx".format(
                "-useProductionNames" if useProductionNames else ""
            ),
        )

tests/integration_test.py:232: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2d2e510>
expectedTTX = 'TestVariableFont-TTF.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-TTF.ttx
+++ <generated>
@@ -257,9 +257,6 @@
   </glyf>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
_____________ IntegrationTest.test_compileVariableTTF[defcon-True] _____________

self = <tests.integration_test.IntegrationTest object at 0xf3435170>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2da5990>
useProductionNames = True

    def test_compileVariableTTF(self, designspace, useProductionNames):
        varfont = compileVariableTTF(designspace, useProductionNames=useProductionNames)
>       expectTTX(
            varfont,
            "TestVariableFont-TTF{}.ttx".format(
                "-useProductionNames" if useProductionNames else ""
            ),
        )

tests/integration_test.py:232: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2d0d648>
expectedTTX = 'TestVariableFont-TTF-useProductionNames.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-TTF-useProductionNames.ttx
+++ <generated>
@@ -257,9 +257,6 @@
   </glyf>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
____________ IntegrationTest.test_compileVariableTTF[defcon-False] _____________

self = <tests.integration_test.IntegrationTest object at 0xf34357d8>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2dcf378>
useProductionNames = False

    def test_compileVariableTTF(self, designspace, useProductionNames):
        varfont = compileVariableTTF(designspace, useProductionNames=useProductionNames)
>       expectTTX(
            varfont,
            "TestVariableFont-TTF{}.ttx".format(
                "-useProductionNames" if useProductionNames else ""
            ),
        )

tests/integration_test.py:232: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2d97d30>
expectedTTX = 'TestVariableFont-TTF.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-TTF.ttx
+++ <generated>
@@ -257,9 +257,6 @@
   </glyf>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
____________ IntegrationTest.test_compileVariableCFF2[defcon-None] _____________

self = <tests.integration_test.IntegrationTest object at 0xf3435620>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2eb5828>
useProductionNames = None

    def test_compileVariableCFF2(self, designspace, useProductionNames):
        varfont = compileVariableCFF2(
            designspace, useProductionNames=useProductionNames
        )
>       expectTTX(
            varfont,
            "TestVariableFont-CFF2{}.ttx".format(
                "-useProductionNames" if useProductionNames else ""
            ),
        )

tests/integration_test.py:243: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2d781d0>
expectedTTX = 'TestVariableFont-CFF2.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-CFF2.ttx
+++ <generated>
@@ -138,9 +138,6 @@
   </cmap>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
____________ IntegrationTest.test_compileVariableCFF2[defcon-True] _____________

self = <tests.integration_test.IntegrationTest object at 0xf31f3f58>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2e1baf8>
useProductionNames = True

    def test_compileVariableCFF2(self, designspace, useProductionNames):
        varfont = compileVariableCFF2(
            designspace, useProductionNames=useProductionNames
        )
>       expectTTX(
            varfont,
            "TestVariableFont-CFF2{}.ttx".format(
                "-useProductionNames" if useProductionNames else ""
            ),
        )

tests/integration_test.py:243: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2d78fa0>
expectedTTX = 'TestVariableFont-CFF2-useProductionNames.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-CFF2-useProductionNames.ttx
+++ <generated>
@@ -138,9 +138,6 @@
   </cmap>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
____________ IntegrationTest.test_compileVariableCFF2[defcon-False] ____________

self = <tests.integration_test.IntegrationTest object at 0xf31f3c38>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2e5f828>
useProductionNames = False

    def test_compileVariableCFF2(self, designspace, useProductionNames):
        varfont = compileVariableCFF2(
            designspace, useProductionNames=useProductionNames
        )
>       expectTTX(
            varfont,
            "TestVariableFont-CFF2{}.ttx".format(
                "-useProductionNames" if useProductionNames else ""
            ),
        )

tests/integration_test.py:243: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2e6d168>
expectedTTX = 'TestVariableFont-CFF2.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-CFF2.ttx
+++ <generated>
@@ -138,9 +138,6 @@
   </cmap>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
________ IntegrationTest.test_compileVariableCFF2_subroutinized[defcon] ________

self = <tests.integration_test.IntegrationTest object at 0xf31f3f30>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2e3f918>

    def test_compileVariableCFF2_subroutinized(self, designspace):
        varfont = compileVariableCFF2(designspace, optimizeCFF=2)
>       expectTTX(varfont, "TestVariableFont-CFF2-cffsubr.ttx")

tests/integration_test.py:252: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2d97d98>
expectedTTX = 'TestVariableFont-CFF2-cffsubr.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-CFF2-cffsubr.ttx
+++ <generated>
@@ -138,9 +138,6 @@
   </cmap>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
_ IntegrationTest.test_drop_glyph_names_variable[defcon-VariableTTF-options0-TestVariableFont-TTF-post3.ttx] _

self = <tests.integration_test.IntegrationTest object at 0xf31f3440>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2df5dc8>
output_format = 'VariableTTF', options = {}
expected_ttx = 'TestVariableFont-TTF-post3.ttx'

    @pytest.mark.parametrize(
        "output_format, options, expected_ttx",
        [
            ("VariableTTF", {}, "TestVariableFont-TTF-post3.ttx"),
            ("VariableCFF2", {}, "TestVariableFont-CFF2-post3.ttx"),
        ],
    )
    def test_drop_glyph_names_variable(
        self, designspace, output_format, options, expected_ttx
    ):
        # set keepGlyphNames in the default UFO.lib where postProcessor finds it
        designspace.findDefault().font.lib[KEEP_GLYPH_NAMES] = False
        compile_func = globals()[f"compile{output_format}"]
        ttf = compile_func(designspace, **options)
>       expectTTX(ttf, expected_ttx)

tests/integration_test.py:303: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2d0d1d0>
expectedTTX = 'TestVariableFont-TTF-post3.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-TTF-post3.ttx
+++ <generated>
@@ -257,9 +257,6 @@
   </glyf>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
_ IntegrationTest.test_drop_glyph_names_variable[defcon-VariableCFF2-options1-TestVariableFont-CFF2-post3.ttx] _

self = <tests.integration_test.IntegrationTest object at 0xf31f3cd8>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2dc0b70>
output_format = 'VariableCFF2', options = {}
expected_ttx = 'TestVariableFont-CFF2-post3.ttx'

    @pytest.mark.parametrize(
        "output_format, options, expected_ttx",
        [
            ("VariableTTF", {}, "TestVariableFont-TTF-post3.ttx"),
            ("VariableCFF2", {}, "TestVariableFont-CFF2-post3.ttx"),
        ],
    )
    def test_drop_glyph_names_variable(
        self, designspace, output_format, options, expected_ttx
    ):
        # set keepGlyphNames in the default UFO.lib where postProcessor finds it
        designspace.findDefault().font.lib[KEEP_GLYPH_NAMES] = False
        compile_func = globals()[f"compile{output_format}"]
        ttf = compile_func(designspace, **options)
>       expectTTX(ttf, expected_ttx)

tests/integration_test.py:303: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2e161d0>
expectedTTX = 'TestVariableFont-CFF2-post3.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-CFF2-post3.ttx
+++ <generated>
@@ -138,9 +138,6 @@
   </cmap>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
_______________ IntegrationTest.test_compileVariableTTFs[defcon] _______________

self = <tests.integration_test.IntegrationTest object at 0xf30a3418>
designspace_v5 = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2e1bd50>

    def test_compileVariableTTFs(self, designspace_v5):
        fonts = compileVariableTTFs(designspace_v5)
    
        # NOTE: Test dumps were generated like this:
        # for k, font in fonts.items():
        #     font.recalcTimestamp = False
        #     font["head"].created, font["head"].modified = 3570196637, 3601822698
        #     font["head"].checkSumAdjustment = 0x12345678
        #     font.saveXML(f"tests/data/DSv5/{k}-TTF.ttx")
    
        assert set(fonts.keys()) == {
            "MutatorSansVariable_Weight_Width",
            "MutatorSansVariable_Weight",
            "MutatorSansVariable_Width",
            "MutatorSerifVariable_Width",
        }
        # The STAT table is set to [SRIF=0, wght=[300, 700], wdth=[50, 200]] + S1 + S2
>       expectTTX(
            fonts["MutatorSansVariable_Weight_Width"],
            "DSv5/MutatorSansVariable_Weight_Width-TTF.ttx",
        )

tests/integration_test.py:397: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2eb4578>
expectedTTX = 'DSv5/MutatorSansVariable_Weight_Width-TTF.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- DSv5/MutatorSansVariable_Weight_Width-TTF.ttx
+++ <generated>
@@ -251,99 +251,6 @@
   </glyf>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
-    <namerecord nameID="257" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Width
-    </namerecord>
-    <namerecord nameID="258" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Light Condensed
-    </namerecord>
-    <namerecord nameID="259" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansLightCondensed
-    </namerecord>
-    <namerecord nameID="260" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Bold Condensed
-    </namerecord>
-    <namerecord nameID="261" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansBoldCondensed
-    </namerecord>
-    <namerecord nameID="262" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Light Extended
-    </namerecord>
-    <namerecord nameID="263" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansLightExtended
-    </namerecord>
-    <namerecord nameID="264" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Bold Extended
-    </namerecord>
-    <namerecord nameID="265" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansBoldExtended
-    </namerecord>
-    <namerecord nameID="266" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Medium
-    </namerecord>
-    <namerecord nameID="267" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansMedium
-    </namerecord>
-    <namerecord nameID="268" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansMedium
-    </namerecord>
-    <namerecord nameID="269" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Bold
-    </namerecord>
-    <namerecord nameID="270" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansBold
-    </namerecord>
-    <namerecord nameID="271" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Medium Extended
-    </namerecord>
-    <namerecord nameID="272" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansMediumExtended
-    </namerecord>
-    <namerecord nameID="273" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansLightCondensed
-    </namerecord>
-    <namerecord nameID="274" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Regular
-    </namerecord>
-    <namerecord nameID="275" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      serif
-    </namerecord>
-    <namerecord nameID="276" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans
-    </namerecord>
-    <namerecord nameID="277" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      weight
-    </namerecord>
-    <namerecord nameID="278" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Light
-    </namerecord>
-    <namerecord nameID="279" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Medium
-    </namerecord>
-    <namerecord nameID="280" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Bold
-    </namerecord>
-    <namerecord nameID="281" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      width
-    </namerecord>
-    <namerecord nameID="282" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Condensed
-    </namerecord>
-    <namerecord nameID="283" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Normal
-    </namerecord>
-    <namerecord nameID="284" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Extended
-    </namerecord>
-    <namerecord nameID="285" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      S1
-    </namerecord>
-    <namerecord nameID="286" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      S2
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       New Font
     </namerecord>
@@ -417,42 +324,39 @@
       MutatorMathTest-SansLightCondensed
     </namerecord>
     <namerecord nameID="274" platformID="3" platEncID="1" langID="0x409">
-      Regular
+      serif
     </namerecord>
     <namerecord nameID="275" platformID="3" platEncID="1" langID="0x409">
-      serif
+      Sans
     </namerecord>
     <namerecord nameID="276" platformID="3" platEncID="1" langID="0x409">
-      Sans
+      weight
     </namerecord>
     <namerecord nameID="277" platformID="3" platEncID="1" langID="0x409">
-      weight
+      Light
     </namerecord>
     <namerecord nameID="278" platformID="3" platEncID="1" langID="0x409">
-      Light
+      Medium
     </namerecord>
     <namerecord nameID="279" platformID="3" platEncID="1" langID="0x409">
-      Medium
+      Bold
     </namerecord>
     <namerecord nameID="280" platformID="3" platEncID="1" langID="0x409">
-      Bold
+      width
     </namerecord>
     <namerecord nameID="281" platformID="3" platEncID="1" langID="0x409">
-      width
+      Condensed
     </namerecord>
     <namerecord nameID="282" platformID="3" platEncID="1" langID="0x409">
-      Condensed
+      Normal
     </namerecord>
     <namerecord nameID="283" platformID="3" platEncID="1" langID="0x409">
-      Normal
+      Extended
     </namerecord>
     <namerecord nameID="284" platformID="3" platEncID="1" langID="0x409">
-      Extended
+      S1
     </namerecord>
     <namerecord nameID="285" platformID="3" platEncID="1" langID="0x409">
-      S1
-    </namerecord>
-    <namerecord nameID="286" platformID="3" platEncID="1" langID="0x409">
       S2
     </namerecord>
   </name>
@@ -635,17 +539,17 @@
     <DesignAxisRecord>
       <Axis index="0">
         <AxisTag value="SRIF"/>
-        <AxisNameID value="275"/>  <!-- serif -->
+        <AxisNameID value="274"/>  <!-- serif -->
         <AxisOrdering value="0"/>
       </Axis>
       <Axis index="1">
         <AxisTag value="wght"/>
-        <AxisNameID value="277"/>  <!-- weight -->
+        <AxisNameID value="276"/>  <!-- weight -->
         <AxisOrdering value="1"/>
       </Axis>
       <Axis index="2">
         <AxisTag value="wdth"/>
-        <AxisNameID value="281"/>  <!-- width -->
+        <AxisNameID value="280"/>  <!-- width -->
         <AxisOrdering value="2"/>
       </Axis>
     </DesignAxisRecord>
@@ -654,7 +558,7 @@
       <AxisValue index="0" Format="4">
         <!-- AxisCount=3 -->
         <Flags value="0"/>
-        <ValueNameID value="285"/>  <!-- S1 -->
+        <ValueNameID value="284"/>  <!-- S1 -->
         <AxisValueRecord index="0">
           <AxisIndex value="0"/>
           <Value value="0.0"/>
@@ -671,7 +575,7 @@
       <AxisValue index="1" Format="4">
         <!-- AxisCount=3 -->
         <Flags value="0"/>
-        <ValueNameID value="286"/>  <!-- S2 -->
+        <ValueNameID value="285"/>  <!-- S2 -->
         <AxisValueRecord index="0">
           <AxisIndex value="0"/>
           <Value value="0.0"/>
@@ -688,13 +592,13 @@
       <AxisValue index="2" Format="1">
         <AxisIndex value="0"/>
         <Flags value="0"/>
-        <ValueNameID value="276"/>  <!-- Sans -->
+        <ValueNameID value="275"/>  <!-- Sans -->
         <Value value="0.0"/>
       </AxisValue>
       <AxisValue index="3" Format="2">
         <AxisIndex value="1"/>
         <Flags value="0"/>
-        <ValueNameID value="278"/>  <!-- Light -->
+        <ValueNameID value="277"/>  <!-- Light -->
         <NominalValue value="300.0"/>
         <RangeMinValue value="300.0"/>
         <RangeMaxValue value="400.0"/>
@@ -702,7 +606,7 @@
       <AxisValue index="4" Format="2">
         <AxisIndex value="1"/>
         <Flags value="0"/>
-        <ValueNameID value="279"/>  <!-- Medium -->
+        <ValueNameID value="278"/>  <!-- Medium -->
         <NominalValue value="500.0"/>
         <RangeMinValue value="400.0"/>
         <RangeMaxValue value="600.0"/>
@@ -710,7 +614,7 @@
       <AxisValue index="5" Format="2">
         <AxisIndex value="1"/>
         <Flags value="0"/>
-        <ValueNameID value="280"/>  <!-- Bold -->
+        <ValueNameID value="279"/>  <!-- Bold -->
         <NominalValue value="700.0"/>
         <RangeMinValue value="600.0"/>
         <RangeMaxValue value="700.0"/>
@@ -718,7 +622,7 @@
       <AxisValue index="6" Format="2">
         <AxisIndex value="2"/>
         <Flags value="0"/>
-        <ValueNameID value="282"/>  <!-- Condensed -->
+        <ValueNameID value="281"/>  <!-- Condensed -->
         <NominalValue value="50.0"/>
         <RangeMinValue value="50.0"/>
         <RangeMaxValue value="75.0"/>
@@ -726,7 +630,7 @@
       <AxisValue index="7" Format="2">
         <AxisIndex value="2"/>
         <Flags value="2"/>  <!-- ElidableAxisValueName -->
-        <ValueNameID value="283"/>  <!-- Normal -->
+        <ValueNameID value="282"/>  <!-- Normal -->
         <NominalValue value="100.0"/>
         <RangeMinValue value="75.0"/>
         <RangeMaxValue value="125.0"/>
@@ -734,13 +638,13 @@
       <AxisValue index="8" Format="2">
         <AxisIndex value="2"/>
         <Flags value="0"/>
-        <ValueNameID value="284"/>  <!-- Extended -->
+        <ValueNameID value="283"/>  <!-- Extended -->
         <NominalValue value="200.0"/>
         <RangeMinValue value="125.0"/>
         <RangeMaxValue value="200.0"/>
       </AxisValue>
     </AxisValueArray>
-    <ElidedFallbackNameID value="274"/>  <!-- Regular -->
+    <ElidedFallbackNameID value="2"/>  <!-- Regular -->
   </STAT>
 
   <avar>
______________ IntegrationTest.test_compileVariableCFF2s[defcon] _______________

self = <tests.integration_test.IntegrationTest object at 0xf30a31c0>
designspace_v5 = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2df5918>

    def test_compileVariableCFF2s(self, designspace_v5):
        fonts = compileVariableCFF2s(designspace_v5)
    
        # NOTE: Test dumps were generated like this:
        # for k, font in fonts.items():
        #     font.recalcTimestamp = False
        #     font["head"].created, font["head"].modified = 3570196637, 3601822698
        #     font["head"].checkSumAdjustment = 0x12345678
        #     font.saveXML(f"tests/data/DSv5/{k}-CFF2.ttx")
    
        assert set(fonts.keys()) == {
            "MutatorSansVariable_Weight_Width",
            "MutatorSansVariable_Weight",
            "MutatorSansVariable_Width",
            "MutatorSerifVariable_Width",
        }
        # The STAT table is set to [SRIF=0, wght=[300, 700], wdth=[50, 200]] + S1 + S2
>       expectTTX(
            fonts["MutatorSansVariable_Weight_Width"],
            "DSv5/MutatorSansVariable_Weight_Width-CFF2.ttx",
        )

tests/integration_test.py:434: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2c77d98>
expectedTTX = 'DSv5/MutatorSansVariable_Weight_Width-CFF2.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- DSv5/MutatorSansVariable_Weight_Width-CFF2.ttx
+++ <generated>
@@ -128,99 +128,6 @@
   </cmap>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
-    <namerecord nameID="257" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Width
-    </namerecord>
-    <namerecord nameID="258" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Light Condensed
-    </namerecord>
-    <namerecord nameID="259" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansLightCondensed
-    </namerecord>
-    <namerecord nameID="260" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Bold Condensed
-    </namerecord>
-    <namerecord nameID="261" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansBoldCondensed
-    </namerecord>
-    <namerecord nameID="262" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Light Extended
-    </namerecord>
-    <namerecord nameID="263" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansLightExtended
-    </namerecord>
-    <namerecord nameID="264" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Bold Extended
-    </namerecord>
-    <namerecord nameID="265" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansBoldExtended
-    </namerecord>
-    <namerecord nameID="266" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Medium
-    </namerecord>
-    <namerecord nameID="267" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansMedium
-    </namerecord>
-    <namerecord nameID="268" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansMedium
-    </namerecord>
-    <namerecord nameID="269" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Bold
-    </namerecord>
-    <namerecord nameID="270" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansBold
-    </namerecord>
-    <namerecord nameID="271" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Medium Extended
-    </namerecord>
-    <namerecord nameID="272" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansMediumExtended
-    </namerecord>
-    <namerecord nameID="273" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansLightCondensed
-    </namerecord>
-    <namerecord nameID="274" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Regular
-    </namerecord>
-    <namerecord nameID="275" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      serif
-    </namerecord>
-    <namerecord nameID="276" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans
-    </namerecord>
-    <namerecord nameID="277" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      weight
-    </namerecord>
-    <namerecord nameID="278" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Light
-    </namerecord>
-    <namerecord nameID="279" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Medium
-    </namerecord>
-    <namerecord nameID="280" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Bold
-    </namerecord>
-    <namerecord nameID="281" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      width
-    </namerecord>
-    <namerecord nameID="282" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Condensed
-    </namerecord>
-    <namerecord nameID="283" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Normal
-    </namerecord>
-    <namerecord nameID="284" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Extended
-    </namerecord>
-    <namerecord nameID="285" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      S1
-    </namerecord>
-    <namerecord nameID="286" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      S2
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       New Font
     </namerecord>
@@ -294,42 +201,39 @@
       MutatorMathTest-SansLightCondensed
     </namerecord>
     <namerecord nameID="274" platformID="3" platEncID="1" langID="0x409">
-      Regular
+      serif
     </namerecord>
     <namerecord nameID="275" platformID="3" platEncID="1" langID="0x409">
-      serif
+      Sans
     </namerecord>
     <namerecord nameID="276" platformID="3" platEncID="1" langID="0x409">
-      Sans
+      weight
     </namerecord>
     <namerecord nameID="277" platformID="3" platEncID="1" langID="0x409">
-      weight
+      Light
     </namerecord>
     <namerecord nameID="278" platformID="3" platEncID="1" langID="0x409">
-      Light
+      Medium
     </namerecord>
     <namerecord nameID="279" platformID="3" platEncID="1" langID="0x409">
-      Medium
+      Bold
     </namerecord>
     <namerecord nameID="280" platformID="3" platEncID="1" langID="0x409">
-      Bold
+      width
     </namerecord>
     <namerecord nameID="281" platformID="3" platEncID="1" langID="0x409">
-      width
+      Condensed
     </namerecord>
     <namerecord nameID="282" platformID="3" platEncID="1" langID="0x409">
-      Condensed
+      Normal
     </namerecord>
     <namerecord nameID="283" platformID="3" platEncID="1" langID="0x409">
-      Normal
+      Extended
     </namerecord>
     <namerecord nameID="284" platformID="3" platEncID="1" langID="0x409">
-      Extended
+      S1
     </namerecord>
     <namerecord nameID="285" platformID="3" platEncID="1" langID="0x409">
-      S1
-    </namerecord>
-    <namerecord nameID="286" platformID="3" platEncID="1" langID="0x409">
       S2
     </namerecord>
   </name>
@@ -692,17 +596,17 @@
     <DesignAxisRecord>
       <Axis index="0">
         <AxisTag value="SRIF"/>
-        <AxisNameID value="275"/>  <!-- serif -->
+        <AxisNameID value="274"/>  <!-- serif -->
         <AxisOrdering value="0"/>
       </Axis>
       <Axis index="1">
         <AxisTag value="wght"/>
-        <AxisNameID value="277"/>  <!-- weight -->
+        <AxisNameID value="276"/>  <!-- weight -->
         <AxisOrdering value="1"/>
       </Axis>
       <Axis index="2">
         <AxisTag value="wdth"/>
-        <AxisNameID value="281"/>  <!-- width -->
+        <AxisNameID value="280"/>  <!-- width -->
         <AxisOrdering value="2"/>
       </Axis>
     </DesignAxisRecord>
@@ -711,7 +615,7 @@
       <AxisValue index="0" Format="4">
         <!-- AxisCount=3 -->
         <Flags value="0"/>
-        <ValueNameID value="285"/>  <!-- S1 -->
+        <ValueNameID value="284"/>  <!-- S1 -->
         <AxisValueRecord index="0">
           <AxisIndex value="0"/>
           <Value value="0.0"/>
@@ -728,7 +632,7 @@
       <AxisValue index="1" Format="4">
         <!-- AxisCount=3 -->
         <Flags value="0"/>
-        <ValueNameID value="286"/>  <!-- S2 -->
+        <ValueNameID value="285"/>  <!-- S2 -->
         <AxisValueRecord index="0">
           <AxisIndex value="0"/>
           <Value value="0.0"/>
@@ -745,13 +649,13 @@
       <AxisValue index="2" Format="1">
         <AxisIndex value="0"/>
         <Flags value="0"/>
-        <ValueNameID value="276"/>  <!-- Sans -->
+        <ValueNameID value="275"/>  <!-- Sans -->
         <Value value="0.0"/>
       </AxisValue>
       <AxisValue index="3" Format="2">
         <AxisIndex value="1"/>
         <Flags value="0"/>
-        <ValueNameID value="278"/>  <!-- Light -->
+        <ValueNameID value="277"/>  <!-- Light -->
         <NominalValue value="300.0"/>
         <RangeMinValue value="300.0"/>
         <RangeMaxValue value="400.0"/>
@@ -759,7 +663,7 @@
       <AxisValue index="4" Format="2">
         <AxisIndex value="1"/>
         <Flags value="0"/>
-        <ValueNameID value="279"/>  <!-- Medium -->
+        <ValueNameID value="278"/>  <!-- Medium -->
         <NominalValue value="500.0"/>
         <RangeMinValue value="400.0"/>
         <RangeMaxValue value="600.0"/>
@@ -767,7 +671,7 @@
       <AxisValue index="5" Format="2">
         <AxisIndex value="1"/>
         <Flags value="0"/>
-        <ValueNameID value="280"/>  <!-- Bold -->
+        <ValueNameID value="279"/>  <!-- Bold -->
         <NominalValue value="700.0"/>
         <RangeMinValue value="600.0"/>
         <RangeMaxValue value="700.0"/>
@@ -775,7 +679,7 @@
       <AxisValue index="6" Format="2">
         <AxisIndex value="2"/>
         <Flags value="0"/>
-        <ValueNameID value="282"/>  <!-- Condensed -->
+        <ValueNameID value="281"/>  <!-- Condensed -->
         <NominalValue value="50.0"/>
         <RangeMinValue value="50.0"/>
         <RangeMaxValue value="75.0"/>
@@ -783,7 +687,7 @@
       <AxisValue index="7" Format="2">
         <AxisIndex value="2"/>
         <Flags value="2"/>  <!-- ElidableAxisValueName -->
-        <ValueNameID value="283"/>  <!-- Normal -->
+        <ValueNameID value="282"/>  <!-- Normal -->
         <NominalValue value="100.0"/>
         <RangeMinValue value="75.0"/>
         <RangeMaxValue value="125.0"/>
@@ -791,13 +695,13 @@
       <AxisValue index="8" Format="2">
         <AxisIndex value="2"/>
         <Flags value="0"/>
-        <ValueNameID value="284"/>  <!-- Extended -->
+        <ValueNameID value="283"/>  <!-- Extended -->
         <NominalValue value="200.0"/>
         <RangeMinValue value="125.0"/>
         <RangeMaxValue value="200.0"/>
       </AxisValue>
     </AxisValueArray>
-    <ElidedFallbackNameID value="274"/>  <!-- Regular -->
+    <ElidedFallbackNameID value="2"/>  <!-- Regular -->
   </STAT>
 
   <avar>
_____ IntegrationTest.test_apply_varfont_info[defcon-compileVariableTTFs] ______

self = <tests.integration_test.IntegrationTest object at 0xf33d7198>
FontClass = <class 'defcon.objects.font.Font'>
compileMethod = <function compileVariableTTFs at 0xf366d898>

    @pytest.mark.parametrize(
        "compileMethod", [compileVariableTTFs, compileVariableCFF2s]
    )
    def test_apply_varfont_info(self, FontClass, compileMethod):
        designspace = DesignSpaceDocument.fromfile(getpath("TestVarFont.designspace"))
        designspace.loadSourceFonts(FontClass)
    
        fonts = compileMethod(designspace)
        assert len(fonts) == 2
    
>       expectTTX(fonts["MyFontVF1"], "TestVarFont-MyFontVF1.ttx", ["head", "name"])

tests/integration_test.py:602: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2eb4b90>
expectedTTX = 'TestVarFont-MyFontVF1.ttx', tables = ['head', 'name']

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVarFont-MyFontVF1.ttx
+++ <generated>
@@ -23,9 +23,6 @@
   </head>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       TestVarFont
     </namerecord>
_____ IntegrationTest.test_apply_varfont_info[defcon-compileVariableCFF2s] _____

self = <tests.integration_test.IntegrationTest object at 0xf33d7df0>
FontClass = <class 'defcon.objects.font.Font'>
compileMethod = <function compileVariableCFF2s at 0xf366dc08>

    @pytest.mark.parametrize(
        "compileMethod", [compileVariableTTFs, compileVariableCFF2s]
    )
    def test_apply_varfont_info(self, FontClass, compileMethod):
        designspace = DesignSpaceDocument.fromfile(getpath("TestVarFont.designspace"))
        designspace.loadSourceFonts(FontClass)
    
        fonts = compileMethod(designspace)
        assert len(fonts) == 2
    
>       expectTTX(fonts["MyFontVF1"], "TestVarFont-MyFontVF1.ttx", ["head", "name"])

tests/integration_test.py:602: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2eb4920>
expectedTTX = 'TestVarFont-MyFontVF1.ttx', tables = ['head', 'name']

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVarFont-MyFontVF1.ttx
+++ <generated>
@@ -23,9 +23,6 @@
   </head>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       TestVarFont
     </namerecord>
_________________________ test_kern_zyyy_zinh[ufoLib2] _________________________

snapshot = '''
lookup kern_dflt {
    lookupflag IgnoreMarks;
    pos uni0300 uni0300 0;
    pos uni0310 uni0310 1;
    pos uni03...a;
    language dflt;
    lookup kern_dflt;
    
    script dupl;
    language dflt;
    lookup kern_dflt;
} dist;

'''
FontClass = <function FontClass.<locals>.ctor at 0xf30a0d48>

    def test_kern_zyyy_zinh(snapshot, FontClass):
        """Test that a sampling of glyphs with a common or inherited script, but a
        disjoint set of explicit script extensions end up in the correct lookups."""
        glyphs = {}
        for i in range(0, 0x110000, 0x10):
            script = unicodeScript(i)
            script_extension = unicodeScriptExtensions(i)
            if script not in script_extension:
                assert script in DFLT_SCRIPTS
                name = f"uni{i:04X}"
                glyphs[name] = i
        kerning = {(glyph, glyph): i for i, glyph in enumerate(glyphs)}
        ufo = makeUFO(FontClass, glyphs, None, kerning)
        newFeatures = KernFeatureWriterTest.writeFeatures(ufo)
    
>       assert newFeatures.asFea() == snapshot
E       AssertionError: assert [+ received] == [- snapshot]
E           '''
E             ...
E               lookupflag IgnoreMarks;
E         -     pos uni0300 uni0300 0;
E         -     pos uni0310 uni0310 1;
E         -     pos uni0320 uni0320 2;
E         -     pos uni0330 uni0330 3;...
E         
E         ...Full output truncated (85 lines hidden), use '-vv' to show

tests/featureWriters/kernFeatureWriter2_test.py:985: AssertionError
_________________________ test_kern_zyyy_zinh[ufoLib2] _________________________

FontClass = <function FontClass.<locals>.ctor at 0xf30a0d48>

    def test_kern_zyyy_zinh(FontClass):
        """Test that a sampling of glyphs with a common or inherited script, but a
        disjoint set of explicit script extensions end up in the correct lookups."""
        glyphs = {}
        for i in range(0, 0x110000, 0x10):
            script = unicodeScript(i)
            script_extension = unicodeScriptExtensions(i)
            if script not in script_extension:
                assert script in DFLT_SCRIPTS
                name = f"uni{i:04X}"
                glyphs[name] = i
        kerning = {(glyph, glyph): i for i, glyph in enumerate(glyphs)}
        ufo = makeUFO(FontClass, glyphs, None, kerning)
        newFeatures = KernFeatureWriterTest.writeFeatures(ufo)
    
>       assert dedent(str(newFeatures)) == dedent(
            """\
            lookup kern_Deva {
                lookupflag IgnoreMarks;
                pos uni1CD0 uni1CD0 7;
                pos uni1CE0 uni1CE0 8;
                pos uni1CF0 uni1CF0 9;
                pos uni20F0 uni20F0 11;
                pos uniA830 uniA830 34;
            } kern_Deva;
    
            lookup kern_Dupl {
                lookupflag IgnoreMarks;
                pos uni1BCA0 uni1BCA0 42;
            } kern_Dupl;
    
            lookup kern_Grek {
                lookupflag IgnoreMarks;
                pos uni0300 uni0300 0;
                pos uni1DC0 uni1DC0 10;
            } kern_Grek;
    
            lookup kern_Hani_Hrkt {
                lookupflag IgnoreMarks;
                pos uni1D360 uni1D360 43;
                pos uni1D370 uni1D370 44;
                pos uni1F250 uni1F250 45;
                pos uni2FF0 uni2FF0 13;
                pos uni3010 uni3010 14;
                pos uni3030 uni3030 15;
                pos uni30A0 uni30A0 16;
                pos uni3190 uni3190 17;
                pos uni31C0 uni31C0 18;
                pos uni31D0 uni31D0 19;
                pos uni31E0 uni31E0 20;
                pos uni3220 uni3220 21;
                pos uni3230 uni3230 22;
                pos uni3240 uni3240 23;
                pos uni3280 uni3280 24;
                pos uni3290 uni3290 25;
                pos uni32A0 uni32A0 26;
                pos uni32B0 uni32B0 27;
                pos uni32C0 uni32C0 28;
                pos uni3360 uni3360 29;
                pos uni3370 uni3370 30;
                pos uni33E0 uni33E0 31;
                pos uni33F0 uni33F0 32;
                pos uniA700 uniA700 33;
                pos uniFF70 uniFF70 35;
            } kern_Hani_Hrkt;
    
            lookup kern_Default {
                lookupflag IgnoreMarks;
                pos uni0310 uni0310 1;
                pos uni0320 uni0320 2;
                pos uni0330 uni0330 3;
                pos uni0640 uni0640 4;
                pos uni0650 uni0650 5;
                pos uni0670 uni0670 6;
                pos uni10100 uni10100 36;
                pos uni10110 uni10110 37;
                pos uni10120 uni10120 38;
                pos uni10130 uni10130 39;
                pos uni102E0 uni102E0 40;
                pos uni102F0 uni102F0 41;
                pos uni2E30 uni2E30 12;
            } kern_Default;
    
            feature kern {
                script DFLT;
                language dflt;
                lookup kern_Default;
                lookup kern_Grek;
                lookup kern_Hani_Hrkt;
    
                script grek;
                language dflt;
                lookup kern_Default;
                lookup kern_Grek;
    
                script hani;
                language dflt;
                lookup kern_Default;
                lookup kern_Hani_Hrkt;
    
                script kana;
                language dflt;
                lookup kern_Default;
                lookup kern_Hani_Hrkt;
            } kern;
    
            feature dist {
                script dev2;
                language dflt;
                lookup kern_Default;
                lookup kern_Deva;
    
                script deva;
                language dflt;
                lookup kern_Default;
                lookup kern_Deva;
    
                script dupl;
                language dflt;
                lookup kern_Default;
                lookup kern_Dupl;
            } dist;
            """
        )
E       AssertionError: assert 'lookup kern_...l;\n} dist;\n' == 'lookup kern_...l;\n} dist;\n'
E         
E         Skipping 61 identical leading characters in diff, use -v to show
E         - 0 uni1CD0 7;
E         ?           ^
E         + 0 uni1CD0 3;
E         ?           ^
E         -     pos uni1CE0 uni1CE0 8;...
E         
E         ...Full output truncated (218 lines hidden), use '-vv' to show

tests/featureWriters/kernFeatureWriter_test.py:1805: AssertionError
____________ IntegrationTest.test_compileVariableTTF[ufoLib2-None] _____________

self = <tests.integration_test.IntegrationTest object at 0xf3435f30>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2e403f0>
useProductionNames = None

    def test_compileVariableTTF(self, designspace, useProductionNames):
        varfont = compileVariableTTF(designspace, useProductionNames=useProductionNames)
>       expectTTX(
            varfont,
            "TestVariableFont-TTF{}.ttx".format(
                "-useProductionNames" if useProductionNames else ""
            ),
        )

tests/integration_test.py:232: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2e6d988>
expectedTTX = 'TestVariableFont-TTF.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-TTF.ttx
+++ <generated>
@@ -257,9 +257,6 @@
   </glyf>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
____________ IntegrationTest.test_compileVariableTTF[ufoLib2-True] _____________

self = <tests.integration_test.IntegrationTest object at 0xf3435648>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2e38030>
useProductionNames = True

    def test_compileVariableTTF(self, designspace, useProductionNames):
        varfont = compileVariableTTF(designspace, useProductionNames=useProductionNames)
>       expectTTX(
            varfont,
            "TestVariableFont-TTF{}.ttx".format(
                "-useProductionNames" if useProductionNames else ""
            ),
        )

tests/integration_test.py:232: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2e6dcc8>
expectedTTX = 'TestVariableFont-TTF-useProductionNames.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-TTF-useProductionNames.ttx
+++ <generated>
@@ -257,9 +257,6 @@
   </glyf>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
____________ IntegrationTest.test_compileVariableTTF[ufoLib2-False] ____________

self = <tests.integration_test.IntegrationTest object at 0xf34355f8>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2cde3f0>
useProductionNames = False

    def test_compileVariableTTF(self, designspace, useProductionNames):
        varfont = compileVariableTTF(designspace, useProductionNames=useProductionNames)
>       expectTTX(
            varfont,
            "TestVariableFont-TTF{}.ttx".format(
                "-useProductionNames" if useProductionNames else ""
            ),
        )

tests/integration_test.py:232: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2d0de00>
expectedTTX = 'TestVariableFont-TTF.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-TTF.ttx
+++ <generated>
@@ -257,9 +257,6 @@
   </glyf>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
____________ IntegrationTest.test_compileVariableCFF2[ufoLib2-None] ____________

self = <tests.integration_test.IntegrationTest object at 0xf31f3ee0>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2d046c0>
useProductionNames = None

    def test_compileVariableCFF2(self, designspace, useProductionNames):
        varfont = compileVariableCFF2(
            designspace, useProductionNames=useProductionNames
        )
>       expectTTX(
            varfont,
            "TestVariableFont-CFF2{}.ttx".format(
                "-useProductionNames" if useProductionNames else ""
            ),
        )

tests/integration_test.py:243: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2d976b0>
expectedTTX = 'TestVariableFont-CFF2.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-CFF2.ttx
+++ <generated>
@@ -138,9 +138,6 @@
   </cmap>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
____________ IntegrationTest.test_compileVariableCFF2[ufoLib2-True] ____________

self = <tests.integration_test.IntegrationTest object at 0xf31f3fd0>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2d04f30>
useProductionNames = True

    def test_compileVariableCFF2(self, designspace, useProductionNames):
        varfont = compileVariableCFF2(
            designspace, useProductionNames=useProductionNames
        )
>       expectTTX(
            varfont,
            "TestVariableFont-CFF2{}.ttx".format(
                "-useProductionNames" if useProductionNames else ""
            ),
        )

tests/integration_test.py:243: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2e16030>
expectedTTX = 'TestVariableFont-CFF2-useProductionNames.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-CFF2-useProductionNames.ttx
+++ <generated>
@@ -138,9 +138,6 @@
   </cmap>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
___________ IntegrationTest.test_compileVariableCFF2[ufoLib2-False] ____________

self = <tests.integration_test.IntegrationTest object at 0xf31f3210>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2cbaf30>
useProductionNames = False

    def test_compileVariableCFF2(self, designspace, useProductionNames):
        varfont = compileVariableCFF2(
            designspace, useProductionNames=useProductionNames
        )
>       expectTTX(
            varfont,
            "TestVariableFont-CFF2{}.ttx".format(
                "-useProductionNames" if useProductionNames else ""
            ),
        )

tests/integration_test.py:243: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2e16b28>
expectedTTX = 'TestVariableFont-CFF2.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-CFF2.ttx
+++ <generated>
@@ -138,9 +138,6 @@
   </cmap>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
_______ IntegrationTest.test_compileVariableCFF2_subroutinized[ufoLib2] ________

self = <tests.integration_test.IntegrationTest object at 0xf31f3490>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2d04cd8>

    def test_compileVariableCFF2_subroutinized(self, designspace):
        varfont = compileVariableCFF2(designspace, optimizeCFF=2)
>       expectTTX(varfont, "TestVariableFont-CFF2-cffsubr.ttx")

tests/integration_test.py:252: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2e16308>
expectedTTX = 'TestVariableFont-CFF2-cffsubr.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-CFF2-cffsubr.ttx
+++ <generated>
@@ -138,9 +138,6 @@
   </cmap>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
_ IntegrationTest.test_drop_glyph_names_variable[ufoLib2-VariableTTF-options0-TestVariableFont-TTF-post3.ttx] _

self = <tests.integration_test.IntegrationTest object at 0xf31f3be8>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2e400a8>
output_format = 'VariableTTF', options = {}
expected_ttx = 'TestVariableFont-TTF-post3.ttx'

    @pytest.mark.parametrize(
        "output_format, options, expected_ttx",
        [
            ("VariableTTF", {}, "TestVariableFont-TTF-post3.ttx"),
            ("VariableCFF2", {}, "TestVariableFont-CFF2-post3.ttx"),
        ],
    )
    def test_drop_glyph_names_variable(
        self, designspace, output_format, options, expected_ttx
    ):
        # set keepGlyphNames in the default UFO.lib where postProcessor finds it
        designspace.findDefault().font.lib[KEEP_GLYPH_NAMES] = False
        compile_func = globals()[f"compile{output_format}"]
        ttf = compile_func(designspace, **options)
>       expectTTX(ttf, expected_ttx)

tests/integration_test.py:303: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2d975e0>
expectedTTX = 'TestVariableFont-TTF-post3.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-TTF-post3.ttx
+++ <generated>
@@ -257,9 +257,6 @@
   </glyf>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
_ IntegrationTest.test_drop_glyph_names_variable[ufoLib2-VariableCFF2-options1-TestVariableFont-CFF2-post3.ttx] _

self = <tests.integration_test.IntegrationTest object at 0xf31f3030>
designspace = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2cde210>
output_format = 'VariableCFF2', options = {}
expected_ttx = 'TestVariableFont-CFF2-post3.ttx'

    @pytest.mark.parametrize(
        "output_format, options, expected_ttx",
        [
            ("VariableTTF", {}, "TestVariableFont-TTF-post3.ttx"),
            ("VariableCFF2", {}, "TestVariableFont-CFF2-post3.ttx"),
        ],
    )
    def test_drop_glyph_names_variable(
        self, designspace, output_format, options, expected_ttx
    ):
        # set keepGlyphNames in the default UFO.lib where postProcessor finds it
        designspace.findDefault().font.lib[KEEP_GLYPH_NAMES] = False
        compile_func = globals()[f"compile{output_format}"]
        ttf = compile_func(designspace, **options)
>       expectTTX(ttf, expected_ttx)

tests/integration_test.py:303: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2d0d850>
expectedTTX = 'TestVariableFont-CFF2-post3.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVariableFont-CFF2-post3.ttx
+++ <generated>
@@ -138,9 +138,6 @@
   </cmap>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       Layer Font
     </namerecord>
______________ IntegrationTest.test_compileVariableTTFs[ufoLib2] _______________

self = <tests.integration_test.IntegrationTest object at 0xf30a30d0>
designspace_v5 = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2e38b70>

    def test_compileVariableTTFs(self, designspace_v5):
        fonts = compileVariableTTFs(designspace_v5)
    
        # NOTE: Test dumps were generated like this:
        # for k, font in fonts.items():
        #     font.recalcTimestamp = False
        #     font["head"].created, font["head"].modified = 3570196637, 3601822698
        #     font["head"].checkSumAdjustment = 0x12345678
        #     font.saveXML(f"tests/data/DSv5/{k}-TTF.ttx")
    
        assert set(fonts.keys()) == {
            "MutatorSansVariable_Weight_Width",
            "MutatorSansVariable_Weight",
            "MutatorSansVariable_Width",
            "MutatorSerifVariable_Width",
        }
        # The STAT table is set to [SRIF=0, wght=[300, 700], wdth=[50, 200]] + S1 + S2
>       expectTTX(
            fonts["MutatorSansVariable_Weight_Width"],
            "DSv5/MutatorSansVariable_Weight_Width-TTF.ttx",
        )

tests/integration_test.py:397: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2e168b8>
expectedTTX = 'DSv5/MutatorSansVariable_Weight_Width-TTF.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- DSv5/MutatorSansVariable_Weight_Width-TTF.ttx
+++ <generated>
@@ -251,99 +251,6 @@
   </glyf>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
-    <namerecord nameID="257" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Width
-    </namerecord>
-    <namerecord nameID="258" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Light Condensed
-    </namerecord>
-    <namerecord nameID="259" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansLightCondensed
-    </namerecord>
-    <namerecord nameID="260" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Bold Condensed
-    </namerecord>
-    <namerecord nameID="261" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansBoldCondensed
-    </namerecord>
-    <namerecord nameID="262" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Light Extended
-    </namerecord>
-    <namerecord nameID="263" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansLightExtended
-    </namerecord>
-    <namerecord nameID="264" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Bold Extended
-    </namerecord>
-    <namerecord nameID="265" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansBoldExtended
-    </namerecord>
-    <namerecord nameID="266" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Medium
-    </namerecord>
-    <namerecord nameID="267" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansMedium
-    </namerecord>
-    <namerecord nameID="268" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansMedium
-    </namerecord>
-    <namerecord nameID="269" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Bold
-    </namerecord>
-    <namerecord nameID="270" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansBold
-    </namerecord>
-    <namerecord nameID="271" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Medium Extended
-    </namerecord>
-    <namerecord nameID="272" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansMediumExtended
-    </namerecord>
-    <namerecord nameID="273" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansLightCondensed
-    </namerecord>
-    <namerecord nameID="274" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Regular
-    </namerecord>
-    <namerecord nameID="275" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      serif
-    </namerecord>
-    <namerecord nameID="276" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans
-    </namerecord>
-    <namerecord nameID="277" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      weight
-    </namerecord>
-    <namerecord nameID="278" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Light
-    </namerecord>
-    <namerecord nameID="279" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Medium
-    </namerecord>
-    <namerecord nameID="280" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Bold
-    </namerecord>
-    <namerecord nameID="281" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      width
-    </namerecord>
-    <namerecord nameID="282" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Condensed
-    </namerecord>
-    <namerecord nameID="283" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Normal
-    </namerecord>
-    <namerecord nameID="284" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Extended
-    </namerecord>
-    <namerecord nameID="285" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      S1
-    </namerecord>
-    <namerecord nameID="286" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      S2
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       New Font
     </namerecord>
@@ -417,42 +324,39 @@
       MutatorMathTest-SansLightCondensed
     </namerecord>
     <namerecord nameID="274" platformID="3" platEncID="1" langID="0x409">
-      Regular
+      serif
     </namerecord>
     <namerecord nameID="275" platformID="3" platEncID="1" langID="0x409">
-      serif
+      Sans
     </namerecord>
     <namerecord nameID="276" platformID="3" platEncID="1" langID="0x409">
-      Sans
+      weight
     </namerecord>
     <namerecord nameID="277" platformID="3" platEncID="1" langID="0x409">
-      weight
+      Light
     </namerecord>
     <namerecord nameID="278" platformID="3" platEncID="1" langID="0x409">
-      Light
+      Medium
     </namerecord>
     <namerecord nameID="279" platformID="3" platEncID="1" langID="0x409">
-      Medium
+      Bold
     </namerecord>
     <namerecord nameID="280" platformID="3" platEncID="1" langID="0x409">
-      Bold
+      width
     </namerecord>
     <namerecord nameID="281" platformID="3" platEncID="1" langID="0x409">
-      width
+      Condensed
     </namerecord>
     <namerecord nameID="282" platformID="3" platEncID="1" langID="0x409">
-      Condensed
+      Normal
     </namerecord>
     <namerecord nameID="283" platformID="3" platEncID="1" langID="0x409">
-      Normal
+      Extended
     </namerecord>
     <namerecord nameID="284" platformID="3" platEncID="1" langID="0x409">
-      Extended
+      S1
     </namerecord>
     <namerecord nameID="285" platformID="3" platEncID="1" langID="0x409">
-      S1
-    </namerecord>
-    <namerecord nameID="286" platformID="3" platEncID="1" langID="0x409">
       S2
     </namerecord>
   </name>
@@ -635,17 +539,17 @@
     <DesignAxisRecord>
       <Axis index="0">
         <AxisTag value="SRIF"/>
-        <AxisNameID value="275"/>  <!-- serif -->
+        <AxisNameID value="274"/>  <!-- serif -->
         <AxisOrdering value="0"/>
       </Axis>
       <Axis index="1">
         <AxisTag value="wght"/>
-        <AxisNameID value="277"/>  <!-- weight -->
+        <AxisNameID value="276"/>  <!-- weight -->
         <AxisOrdering value="1"/>
       </Axis>
       <Axis index="2">
         <AxisTag value="wdth"/>
-        <AxisNameID value="281"/>  <!-- width -->
+        <AxisNameID value="280"/>  <!-- width -->
         <AxisOrdering value="2"/>
       </Axis>
     </DesignAxisRecord>
@@ -654,7 +558,7 @@
       <AxisValue index="0" Format="4">
         <!-- AxisCount=3 -->
         <Flags value="0"/>
-        <ValueNameID value="285"/>  <!-- S1 -->
+        <ValueNameID value="284"/>  <!-- S1 -->
         <AxisValueRecord index="0">
           <AxisIndex value="0"/>
           <Value value="0.0"/>
@@ -671,7 +575,7 @@
       <AxisValue index="1" Format="4">
         <!-- AxisCount=3 -->
         <Flags value="0"/>
-        <ValueNameID value="286"/>  <!-- S2 -->
+        <ValueNameID value="285"/>  <!-- S2 -->
         <AxisValueRecord index="0">
           <AxisIndex value="0"/>
           <Value value="0.0"/>
@@ -688,13 +592,13 @@
       <AxisValue index="2" Format="1">
         <AxisIndex value="0"/>
         <Flags value="0"/>
-        <ValueNameID value="276"/>  <!-- Sans -->
+        <ValueNameID value="275"/>  <!-- Sans -->
         <Value value="0.0"/>
       </AxisValue>
       <AxisValue index="3" Format="2">
         <AxisIndex value="1"/>
         <Flags value="0"/>
-        <ValueNameID value="278"/>  <!-- Light -->
+        <ValueNameID value="277"/>  <!-- Light -->
         <NominalValue value="300.0"/>
         <RangeMinValue value="300.0"/>
         <RangeMaxValue value="400.0"/>
@@ -702,7 +606,7 @@
       <AxisValue index="4" Format="2">
         <AxisIndex value="1"/>
         <Flags value="0"/>
-        <ValueNameID value="279"/>  <!-- Medium -->
+        <ValueNameID value="278"/>  <!-- Medium -->
         <NominalValue value="500.0"/>
         <RangeMinValue value="400.0"/>
         <RangeMaxValue value="600.0"/>
@@ -710,7 +614,7 @@
       <AxisValue index="5" Format="2">
         <AxisIndex value="1"/>
         <Flags value="0"/>
-        <ValueNameID value="280"/>  <!-- Bold -->
+        <ValueNameID value="279"/>  <!-- Bold -->
         <NominalValue value="700.0"/>
         <RangeMinValue value="600.0"/>
         <RangeMaxValue value="700.0"/>
@@ -718,7 +622,7 @@
       <AxisValue index="6" Format="2">
         <AxisIndex value="2"/>
         <Flags value="0"/>
-        <ValueNameID value="282"/>  <!-- Condensed -->
+        <ValueNameID value="281"/>  <!-- Condensed -->
         <NominalValue value="50.0"/>
         <RangeMinValue value="50.0"/>
         <RangeMaxValue value="75.0"/>
@@ -726,7 +630,7 @@
       <AxisValue index="7" Format="2">
         <AxisIndex value="2"/>
         <Flags value="2"/>  <!-- ElidableAxisValueName -->
-        <ValueNameID value="283"/>  <!-- Normal -->
+        <ValueNameID value="282"/>  <!-- Normal -->
         <NominalValue value="100.0"/>
         <RangeMinValue value="75.0"/>
         <RangeMaxValue value="125.0"/>
@@ -734,13 +638,13 @@
       <AxisValue index="8" Format="2">
         <AxisIndex value="2"/>
         <Flags value="0"/>
-        <ValueNameID value="284"/>  <!-- Extended -->
+        <ValueNameID value="283"/>  <!-- Extended -->
         <NominalValue value="200.0"/>
         <RangeMinValue value="125.0"/>
         <RangeMaxValue value="200.0"/>
       </AxisValue>
     </AxisValueArray>
-    <ElidedFallbackNameID value="274"/>  <!-- Regular -->
+    <ElidedFallbackNameID value="2"/>  <!-- Regular -->
   </STAT>
 
   <avar>
______________ IntegrationTest.test_compileVariableCFF2s[ufoLib2] ______________

self = <tests.integration_test.IntegrationTest object at 0xf31f9788>
designspace_v5 = <fontTools.designspaceLib.DesignSpaceDocument object at 0xf2cdb3f0>

    def test_compileVariableCFF2s(self, designspace_v5):
        fonts = compileVariableCFF2s(designspace_v5)
    
        # NOTE: Test dumps were generated like this:
        # for k, font in fonts.items():
        #     font.recalcTimestamp = False
        #     font["head"].created, font["head"].modified = 3570196637, 3601822698
        #     font["head"].checkSumAdjustment = 0x12345678
        #     font.saveXML(f"tests/data/DSv5/{k}-CFF2.ttx")
    
        assert set(fonts.keys()) == {
            "MutatorSansVariable_Weight_Width",
            "MutatorSansVariable_Weight",
            "MutatorSansVariable_Width",
            "MutatorSerifVariable_Width",
        }
        # The STAT table is set to [SRIF=0, wght=[300, 700], wdth=[50, 200]] + S1 + S2
>       expectTTX(
            fonts["MutatorSansVariable_Weight_Width"],
            "DSv5/MutatorSansVariable_Weight_Width-CFF2.ttx",
        )

tests/integration_test.py:434: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2e6da58>
expectedTTX = 'DSv5/MutatorSansVariable_Weight_Width-CFF2.ttx', tables = None

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- DSv5/MutatorSansVariable_Weight_Width-CFF2.ttx
+++ <generated>
@@ -128,99 +128,6 @@
   </cmap>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
-    <namerecord nameID="257" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Width
-    </namerecord>
-    <namerecord nameID="258" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Light Condensed
-    </namerecord>
-    <namerecord nameID="259" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansLightCondensed
-    </namerecord>
-    <namerecord nameID="260" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Bold Condensed
-    </namerecord>
-    <namerecord nameID="261" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansBoldCondensed
-    </namerecord>
-    <namerecord nameID="262" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Light Extended
-    </namerecord>
-    <namerecord nameID="263" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansLightExtended
-    </namerecord>
-    <namerecord nameID="264" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Bold Extended
-    </namerecord>
-    <namerecord nameID="265" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansBoldExtended
-    </namerecord>
-    <namerecord nameID="266" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Medium
-    </namerecord>
-    <namerecord nameID="267" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansMedium
-    </namerecord>
-    <namerecord nameID="268" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansMedium
-    </namerecord>
-    <namerecord nameID="269" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Bold
-    </namerecord>
-    <namerecord nameID="270" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansBold
-    </namerecord>
-    <namerecord nameID="271" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans Medium Extended
-    </namerecord>
-    <namerecord nameID="272" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansMediumExtended
-    </namerecord>
-    <namerecord nameID="273" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      MutatorMathTest-SansLightCondensed
-    </namerecord>
-    <namerecord nameID="274" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Regular
-    </namerecord>
-    <namerecord nameID="275" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      serif
-    </namerecord>
-    <namerecord nameID="276" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Sans
-    </namerecord>
-    <namerecord nameID="277" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      weight
-    </namerecord>
-    <namerecord nameID="278" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Light
-    </namerecord>
-    <namerecord nameID="279" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Medium
-    </namerecord>
-    <namerecord nameID="280" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Bold
-    </namerecord>
-    <namerecord nameID="281" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      width
-    </namerecord>
-    <namerecord nameID="282" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Condensed
-    </namerecord>
-    <namerecord nameID="283" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Normal
-    </namerecord>
-    <namerecord nameID="284" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Extended
-    </namerecord>
-    <namerecord nameID="285" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      S1
-    </namerecord>
-    <namerecord nameID="286" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      S2
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       New Font
     </namerecord>
@@ -294,42 +201,39 @@
       MutatorMathTest-SansLightCondensed
     </namerecord>
     <namerecord nameID="274" platformID="3" platEncID="1" langID="0x409">
-      Regular
+      serif
     </namerecord>
     <namerecord nameID="275" platformID="3" platEncID="1" langID="0x409">
-      serif
+      Sans
     </namerecord>
     <namerecord nameID="276" platformID="3" platEncID="1" langID="0x409">
-      Sans
+      weight
     </namerecord>
     <namerecord nameID="277" platformID="3" platEncID="1" langID="0x409">
-      weight
+      Light
     </namerecord>
     <namerecord nameID="278" platformID="3" platEncID="1" langID="0x409">
-      Light
+      Medium
     </namerecord>
     <namerecord nameID="279" platformID="3" platEncID="1" langID="0x409">
-      Medium
+      Bold
     </namerecord>
     <namerecord nameID="280" platformID="3" platEncID="1" langID="0x409">
-      Bold
+      width
     </namerecord>
     <namerecord nameID="281" platformID="3" platEncID="1" langID="0x409">
-      width
+      Condensed
     </namerecord>
     <namerecord nameID="282" platformID="3" platEncID="1" langID="0x409">
-      Condensed
+      Normal
     </namerecord>
     <namerecord nameID="283" platformID="3" platEncID="1" langID="0x409">
-      Normal
+      Extended
     </namerecord>
     <namerecord nameID="284" platformID="3" platEncID="1" langID="0x409">
-      Extended
+      S1
     </namerecord>
     <namerecord nameID="285" platformID="3" platEncID="1" langID="0x409">
-      S1
-    </namerecord>
-    <namerecord nameID="286" platformID="3" platEncID="1" langID="0x409">
       S2
     </namerecord>
   </name>
@@ -692,17 +596,17 @@
     <DesignAxisRecord>
       <Axis index="0">
         <AxisTag value="SRIF"/>
-        <AxisNameID value="275"/>  <!-- serif -->
+        <AxisNameID value="274"/>  <!-- serif -->
         <AxisOrdering value="0"/>
       </Axis>
       <Axis index="1">
         <AxisTag value="wght"/>
-        <AxisNameID value="277"/>  <!-- weight -->
+        <AxisNameID value="276"/>  <!-- weight -->
         <AxisOrdering value="1"/>
       </Axis>
       <Axis index="2">
         <AxisTag value="wdth"/>
-        <AxisNameID value="281"/>  <!-- width -->
+        <AxisNameID value="280"/>  <!-- width -->
         <AxisOrdering value="2"/>
       </Axis>
     </DesignAxisRecord>
@@ -711,7 +615,7 @@
       <AxisValue index="0" Format="4">
         <!-- AxisCount=3 -->
         <Flags value="0"/>
-        <ValueNameID value="285"/>  <!-- S1 -->
+        <ValueNameID value="284"/>  <!-- S1 -->
         <AxisValueRecord index="0">
           <AxisIndex value="0"/>
           <Value value="0.0"/>
@@ -728,7 +632,7 @@
       <AxisValue index="1" Format="4">
         <!-- AxisCount=3 -->
         <Flags value="0"/>
-        <ValueNameID value="286"/>  <!-- S2 -->
+        <ValueNameID value="285"/>  <!-- S2 -->
         <AxisValueRecord index="0">
           <AxisIndex value="0"/>
           <Value value="0.0"/>
@@ -745,13 +649,13 @@
       <AxisValue index="2" Format="1">
         <AxisIndex value="0"/>
         <Flags value="0"/>
-        <ValueNameID value="276"/>  <!-- Sans -->
+        <ValueNameID value="275"/>  <!-- Sans -->
         <Value value="0.0"/>
       </AxisValue>
       <AxisValue index="3" Format="2">
         <AxisIndex value="1"/>
         <Flags value="0"/>
-        <ValueNameID value="278"/>  <!-- Light -->
+        <ValueNameID value="277"/>  <!-- Light -->
         <NominalValue value="300.0"/>
         <RangeMinValue value="300.0"/>
         <RangeMaxValue value="400.0"/>
@@ -759,7 +663,7 @@
       <AxisValue index="4" Format="2">
         <AxisIndex value="1"/>
         <Flags value="0"/>
-        <ValueNameID value="279"/>  <!-- Medium -->
+        <ValueNameID value="278"/>  <!-- Medium -->
         <NominalValue value="500.0"/>
         <RangeMinValue value="400.0"/>
         <RangeMaxValue value="600.0"/>
@@ -767,7 +671,7 @@
       <AxisValue index="5" Format="2">
         <AxisIndex value="1"/>
         <Flags value="0"/>
-        <ValueNameID value="280"/>  <!-- Bold -->
+        <ValueNameID value="279"/>  <!-- Bold -->
         <NominalValue value="700.0"/>
         <RangeMinValue value="600.0"/>
         <RangeMaxValue value="700.0"/>
@@ -775,7 +679,7 @@
       <AxisValue index="6" Format="2">
         <AxisIndex value="2"/>
         <Flags value="0"/>
-        <ValueNameID value="282"/>  <!-- Condensed -->
+        <ValueNameID value="281"/>  <!-- Condensed -->
         <NominalValue value="50.0"/>
         <RangeMinValue value="50.0"/>
         <RangeMaxValue value="75.0"/>
@@ -783,7 +687,7 @@
       <AxisValue index="7" Format="2">
         <AxisIndex value="2"/>
         <Flags value="2"/>  <!-- ElidableAxisValueName -->
-        <ValueNameID value="283"/>  <!-- Normal -->
+        <ValueNameID value="282"/>  <!-- Normal -->
         <NominalValue value="100.0"/>
         <RangeMinValue value="75.0"/>
         <RangeMaxValue value="125.0"/>
@@ -791,13 +695,13 @@
       <AxisValue index="8" Format="2">
         <AxisIndex value="2"/>
         <Flags value="0"/>
-        <ValueNameID value="284"/>  <!-- Extended -->
+        <ValueNameID value="283"/>  <!-- Extended -->
         <NominalValue value="200.0"/>
         <RangeMinValue value="125.0"/>
         <RangeMaxValue value="200.0"/>
       </AxisValue>
     </AxisValueArray>
-    <ElidedFallbackNameID value="274"/>  <!-- Regular -->
+    <ElidedFallbackNameID value="2"/>  <!-- Regular -->
   </STAT>
 
   <avar>
_____ IntegrationTest.test_apply_varfont_info[ufoLib2-compileVariableTTFs] _____

self = <tests.integration_test.IntegrationTest object at 0xf33d78f0>
FontClass = <function FontClass.<locals>.ctor at 0xf30a0d48>
compileMethod = <function compileVariableTTFs at 0xf366d898>

    @pytest.mark.parametrize(
        "compileMethod", [compileVariableTTFs, compileVariableCFF2s]
    )
    def test_apply_varfont_info(self, FontClass, compileMethod):
        designspace = DesignSpaceDocument.fromfile(getpath("TestVarFont.designspace"))
        designspace.loadSourceFonts(FontClass)
    
        fonts = compileMethod(designspace)
        assert len(fonts) == 2
    
>       expectTTX(fonts["MyFontVF1"], "TestVarFont-MyFontVF1.ttx", ["head", "name"])

tests/integration_test.py:602: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2c77578>
expectedTTX = 'TestVarFont-MyFontVF1.ttx', tables = ['head', 'name']

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVarFont-MyFontVF1.ttx
+++ <generated>
@@ -23,9 +23,6 @@
   </head>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       TestVarFont
     </namerecord>
____ IntegrationTest.test_apply_varfont_info[ufoLib2-compileVariableCFF2s] _____

self = <tests.integration_test.IntegrationTest object at 0xf33d7210>
FontClass = <function FontClass.<locals>.ctor at 0xf30a0d48>
compileMethod = <function compileVariableCFF2s at 0xf366dc08>

    @pytest.mark.parametrize(
        "compileMethod", [compileVariableTTFs, compileVariableCFF2s]
    )
    def test_apply_varfont_info(self, FontClass, compileMethod):
        designspace = DesignSpaceDocument.fromfile(getpath("TestVarFont.designspace"))
        designspace.loadSourceFonts(FontClass)
    
        fonts = compileMethod(designspace)
        assert len(fonts) == 2
    
>       expectTTX(fonts["MyFontVF1"], "TestVarFont-MyFontVF1.ttx", ["head", "name"])

tests/integration_test.py:602: 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 

font = <fontTools.ttLib.ttFont.TTFont object at 0xf2eb47e8>
expectedTTX = 'TestVarFont-MyFontVF1.ttx', tables = ['head', 'name']

    def expectTTX(font, expectedTTX, tables=None):
        with open(getpath(expectedTTX), encoding="utf-8") as f:
            expected = readLines(f)
        font.recalcTimestamp = False
        font["head"].created, font["head"].modified = 3570196637, 3601822698
        font["head"].checkSumAdjustment = 0x12345678
        f = io.StringIO()
        font.saveXML(f, tables=tables)
    
        actual = readLines(f)
        if actual != expected:
            for line in difflib.unified_diff(
                expected, actual, fromfile=expectedTTX, tofile="<generated>"
            ):
                sys.stderr.write(line)
>           pytest.fail("TTX output is different from expected")
E           Failed: TTX output is different from expected

tests/integration_test.py:73: Failed
----------------------------- Captured stderr call -----------------------------
--- TestVarFont-MyFontVF1.ttx
+++ <generated>
@@ -23,9 +23,6 @@
   </head>
 
   <name>
-    <namerecord nameID="256" platformID="1" platEncID="0" langID="0x0" unicode="True">
-      Weight
-    </namerecord>
     <namerecord nameID="1" platformID="3" platEncID="1" langID="0x409">
       TestVarFont
     </namerecord>
=============================== warnings summary ===============================
.pybuild/cpython3_3.13_ufo2ft/build/tests/filters/dottedCircle_test.py::test_empty_font_deprecated[defcon]
  /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/dottedCircleFilter.py:8: UserWarning: The dottedCircleFilter module is deprecated, please import dottedCircle instead.
    warnings.warn(

.pybuild/cpython3_3.13_ufo2ft/build/tests/integration_test.py::IntegrationTest::test_optimizeCFF_none[defcon-cff2]
.pybuild/cpython3_3.13_ufo2ft/build/tests/integration_test.py::IntegrationTest::test_optimizeCFF_specialize[defcon-cff2]
.pybuild/cpython3_3.13_ufo2ft/build/tests/integration_test.py::IntegrationTest::test_optimizeCFF_none[ufoLib2-cff2]
.pybuild/cpython3_3.13_ufo2ft/build/tests/integration_test.py::IntegrationTest::test_optimizeCFF_specialize[ufoLib2-cff2]
  /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/postProcessor.py:333: UserWarning: 'convertCFFtoCFF2' is deprecated; Use fontTools.cffLib.CFFToCFF2.convertCFFToCFF2 instead.
    convertCFFtoCFF2(otf)

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
--------------------------- snapshot report summary ----------------------------
1 snapshot failed. 40 snapshots passed.
=========================== short test summary info ============================
SKIPPED [2] tests/integration_test.py:137: skia-pathops is unavailable in debian yet
SKIPPED [2] tests/integration_test.py:146: skia-pathops is unavailable in debian yet
SKIPPED [2] tests/preProcessor_test.py:94: skia-pathops is unavailable in debian yet
SKIPPED [2] tests/preProcessor_test.py:214: skia-pathops is unavailable in debian yet
FAILED tests/featureWriters/kernFeatureWriter2_test.py::test_kern_zyyy_zinh[defcon]
FAILED tests/featureWriters/kernFeatureWriter_test.py::test_kern_zyyy_zinh[defcon]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableTTF[defcon-None]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableTTF[defcon-True]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableTTF[defcon-False]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableCFF2[defcon-None]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableCFF2[defcon-True]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableCFF2[defcon-False]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableCFF2_subroutinized[defcon]
FAILED tests/integration_test.py::IntegrationTest::test_drop_glyph_names_variable[defcon-VariableTTF-options0-TestVariableFont-TTF-post3.ttx]
FAILED tests/integration_test.py::IntegrationTest::test_drop_glyph_names_variable[defcon-VariableCFF2-options1-TestVariableFont-CFF2-post3.ttx]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableTTFs[defcon]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableCFF2s[defcon]
FAILED tests/integration_test.py::IntegrationTest::test_apply_varfont_info[defcon-compileVariableTTFs]
FAILED tests/integration_test.py::IntegrationTest::test_apply_varfont_info[defcon-compileVariableCFF2s]
FAILED tests/featureWriters/kernFeatureWriter2_test.py::test_kern_zyyy_zinh[ufoLib2]
FAILED tests/featureWriters/kernFeatureWriter_test.py::test_kern_zyyy_zinh[ufoLib2]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableTTF[ufoLib2-None]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableTTF[ufoLib2-True]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableTTF[ufoLib2-False]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableCFF2[ufoLib2-None]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableCFF2[ufoLib2-True]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableCFF2[ufoLib2-False]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableCFF2_subroutinized[ufoLib2]
FAILED tests/integration_test.py::IntegrationTest::test_drop_glyph_names_variable[ufoLib2-VariableTTF-options0-TestVariableFont-TTF-post3.ttx]
FAILED tests/integration_test.py::IntegrationTest::test_drop_glyph_names_variable[ufoLib2-VariableCFF2-options1-TestVariableFont-CFF2-post3.ttx]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableTTFs[ufoLib2]
FAILED tests/integration_test.py::IntegrationTest::test_compileVariableCFF2s[ufoLib2]
FAILED tests/integration_test.py::IntegrationTest::test_apply_varfont_info[ufoLib2-compileVariableTTFs]
FAILED tests/integration_test.py::IntegrationTest::test_apply_varfont_info[ufoLib2-compileVariableCFF2s]
=========== 30 failed, 1102 passed, 8 skipped, 5 warnings in 44.00s ============
E: pybuild pybuild:389: test: plugin distutils failed with: exit code=1: cd /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build; python3.13 -m pytest tests
dh_auto_test: error: pybuild --test --test-pytest -i python{version} -p "3.12 3.13" returned exit code 13
make[1]: [debian/rules:15: override_dh_auto_test] Error 25 (ignored)
make[1]: Leaving directory '/build/reproducible-path/ufo2ft-3.3.1'
   create-stamp debian/debhelper-build-stamp
   dh_testroot -O--buildsystem=pybuild
   dh_prep -O--buildsystem=pybuild
   dh_auto_install --destdir=debian/python3-ufo2ft/ -O--buildsystem=pybuild
I: pybuild base:311: /usr/bin/python3.12 setup.py install --root /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft 
/usr/lib/python3/dist-packages/setuptools/__init__.py:94: _DeprecatedInstaller: setuptools.installer and fetch_build_eggs are deprecated.
!!

        ********************************************************************************
        Requirements should be satisfied by a PEP 517 installer.
        If you are using pip, you can try `pip install --use-pep517`.
        ********************************************************************************

!!
  dist.fetch_build_eggs(dist.setup_requires)
/usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:261: UserWarning: Unknown distribution option: 'tests_require'
  warnings.warn(msg)
WARNING setuptools_scm.pyproject_reading toml section missing 'pyproject.toml does not contain a tool.setuptools_scm section'
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/setuptools_scm/_integration/pyproject_reading.py", line 36, in read_pyproject
    section = defn.get("tool", {})[tool_name]
              ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
KeyError: 'setuptools_scm'
running install
/usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated.
!!

        ********************************************************************************
        Please avoid running ``setup.py`` directly.
        Instead, use pypa/build, pypa/installer or other
        standards-based tools.

        See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.
        ********************************************************************************

!!
  self.initialize_options()
running build
running build_py
copying Lib/ufo2ft/_version.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft
running egg_info
writing Lib/ufo2ft.egg-info/PKG-INFO
writing dependency_links to Lib/ufo2ft.egg-info/dependency_links.txt
writing requirements to Lib/ufo2ft.egg-info/requires.txt
writing top-level names to Lib/ufo2ft.egg-info/top_level.txt
reading manifest file 'Lib/ufo2ft.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
adding license file 'LICENSE'
writing manifest file 'Lib/ufo2ft.egg-info/SOURCES.txt'
running install_lib
creating /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages
creating /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/instantiator.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft
creating /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/dottedCircle.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/flattenComponents.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/skipExportGlyphs.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/decomposeTransformedComponents.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/propagateAnchors.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/sortContours.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/__init__.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/__main__.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/decomposeComponents.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/reverseContourDirection.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/removeOverlaps.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/explodeColorLayerGlyphs.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/cubicToQuadratic.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/dottedCircleFilter.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/base.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters
creating /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/__pycache__/decomposeTransformedComponents.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/__pycache__/flattenComponents.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/__pycache__/sortContours.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/__pycache__/reverseContourDirection.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/__pycache__/decomposeComponents.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/__pycache__/__init__.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/__pycache__/dottedCircle.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/__pycache__/skipExportGlyphs.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/__pycache__/transformations.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/__pycache__/propagateAnchors.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/__pycache__/base.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/__pycache__/removeOverlaps.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/__pycache__/dottedCircleFilter.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/__pycache__/explodeColorLayerGlyphs.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/__pycache__/cubicToQuadratic.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/filters/transformations.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/infoCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/_version.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft
creating /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureWriters/kernFeatureWriter.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureWriters/markFeatureWriter.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureWriters/gdefFeatureWriter.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureWriters/ast.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureWriters/__init__.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureWriters/__main__.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureWriters/baseFeatureWriter.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters
creating /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureWriters/__pycache__/markFeatureWriter.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureWriters/__pycache__/cursFeatureWriter.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureWriters/__pycache__/ast.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureWriters/__pycache__/__init__.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureWriters/__pycache__/kernFeatureWriter.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureWriters/__pycache__/baseFeatureWriter.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureWriters/__pycache__/kernFeatureWriter2.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureWriters/__pycache__/gdefFeatureWriter.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureWriters/kernFeatureWriter2.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureWriters/cursFeatureWriter.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/maxContextCalc.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft
creating /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/_compilers
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/_compilers/variableCFF2sCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/_compilers
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/_compilers/variableTTFsCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/_compilers
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/_compilers/interpolatableOTFCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/_compilers
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/_compilers/ttfCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/_compilers
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/_compilers/otfCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/_compilers
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/_compilers/__init__.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/_compilers
creating /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/_compilers/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/_compilers/__pycache__/interpolatableTTFCompiler.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/_compilers/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/_compilers/__pycache__/interpolatableOTFCompiler.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/_compilers/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/_compilers/__pycache__/__init__.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/_compilers/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/_compilers/__pycache__/variableTTFsCompiler.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/_compilers/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/_compilers/__pycache__/variableCFF2sCompiler.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/_compilers/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/_compilers/__pycache__/otfCompiler.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/_compilers/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/_compilers/__pycache__/baseCompiler.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/_compilers/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/_compilers/__pycache__/ttfCompiler.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/_compilers/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/_compilers/interpolatableTTFCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/_compilers
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/_compilers/baseCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/_compilers
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/preProcessor.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/__init__.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/instructionCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/featureCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/constants.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/outlineCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/postProcessor.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft
creating /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/__pycache__/infoCompiler.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/__pycache__/_version.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/__pycache__/util.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/__pycache__/postProcessor.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/__pycache__/featureCompiler.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/__pycache__/errors.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/__pycache__/outlineCompiler.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/__pycache__/instructionCompiler.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/__pycache__/__init__.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/__pycache__/constants.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/__pycache__/fontInfoData.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/__pycache__/instantiator.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/__pycache__/preProcessor.cpython-312.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/fontInfoData.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/util.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.12_ufo2ft/build/ufo2ft/errors.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/instantiator.py to instantiator.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/dottedCircle.py to dottedCircle.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/flattenComponents.py to flattenComponents.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/skipExportGlyphs.py to skipExportGlyphs.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/decomposeTransformedComponents.py to decomposeTransformedComponents.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/propagateAnchors.py to propagateAnchors.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/sortContours.py to sortContours.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/__init__.py to __init__.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/__main__.py to __main__.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/decomposeComponents.py to decomposeComponents.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/reverseContourDirection.py to reverseContourDirection.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/removeOverlaps.py to removeOverlaps.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/explodeColorLayerGlyphs.py to explodeColorLayerGlyphs.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/cubicToQuadratic.py to cubicToQuadratic.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/dottedCircleFilter.py to dottedCircleFilter.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/base.py to base.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/filters/transformations.py to transformations.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/infoCompiler.py to infoCompiler.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/_version.py to _version.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters/kernFeatureWriter.py to kernFeatureWriter.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters/markFeatureWriter.py to markFeatureWriter.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters/gdefFeatureWriter.py to gdefFeatureWriter.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters/ast.py to ast.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters/__init__.py to __init__.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters/__main__.py to __main__.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters/baseFeatureWriter.py to baseFeatureWriter.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters/kernFeatureWriter2.py to kernFeatureWriter2.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureWriters/cursFeatureWriter.py to cursFeatureWriter.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/maxContextCalc.py to maxContextCalc.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/_compilers/variableCFF2sCompiler.py to variableCFF2sCompiler.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/_compilers/variableTTFsCompiler.py to variableTTFsCompiler.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/_compilers/interpolatableOTFCompiler.py to interpolatableOTFCompiler.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/_compilers/ttfCompiler.py to ttfCompiler.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/_compilers/otfCompiler.py to otfCompiler.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/_compilers/__init__.py to __init__.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/_compilers/interpolatableTTFCompiler.py to interpolatableTTFCompiler.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/_compilers/baseCompiler.py to baseCompiler.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/preProcessor.py to preProcessor.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/__init__.py to __init__.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/instructionCompiler.py to instructionCompiler.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/featureCompiler.py to featureCompiler.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/constants.py to constants.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/outlineCompiler.py to outlineCompiler.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/postProcessor.py to postProcessor.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/fontInfoData.py to fontInfoData.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/util.py to util.cpython-312.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft/errors.py to errors.cpython-312.pyc
running install_egg_info
Copying Lib/ufo2ft.egg-info to /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.12/dist-packages/ufo2ft-3.3.1.egg-info
Skipping SOURCES.txt
running install_scripts
I: pybuild base:311: /usr/bin/python3 setup.py install --root /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft 
/usr/lib/python3/dist-packages/setuptools/__init__.py:94: _DeprecatedInstaller: setuptools.installer and fetch_build_eggs are deprecated.
!!

        ********************************************************************************
        Requirements should be satisfied by a PEP 517 installer.
        If you are using pip, you can try `pip install --use-pep517`.
        ********************************************************************************

!!
  dist.fetch_build_eggs(dist.setup_requires)
/usr/lib/python3/dist-packages/setuptools/_distutils/dist.py:261: UserWarning: Unknown distribution option: 'tests_require'
  warnings.warn(msg)
WARNING setuptools_scm.pyproject_reading toml section missing 'pyproject.toml does not contain a tool.setuptools_scm section'
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/setuptools_scm/_integration/pyproject_reading.py", line 36, in read_pyproject
    section = defn.get("tool", {})[tool_name]
              ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
KeyError: 'setuptools_scm'
running install
/usr/lib/python3/dist-packages/setuptools/_distutils/cmd.py:66: SetuptoolsDeprecationWarning: setup.py install is deprecated.
!!

        ********************************************************************************
        Please avoid running ``setup.py`` directly.
        Instead, use pypa/build, pypa/installer or other
        standards-based tools.

        See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.
        ********************************************************************************

!!
  self.initialize_options()
running build
running build_py
copying Lib/ufo2ft/_version.py -> /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft
running egg_info
writing Lib/ufo2ft.egg-info/PKG-INFO
writing dependency_links to Lib/ufo2ft.egg-info/dependency_links.txt
writing requirements to Lib/ufo2ft.egg-info/requires.txt
writing top-level names to Lib/ufo2ft.egg-info/top_level.txt
reading manifest file 'Lib/ufo2ft.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
adding license file 'LICENSE'
writing manifest file 'Lib/ufo2ft.egg-info/SOURCES.txt'
running install_lib
creating /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages
creating /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/instantiator.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft
creating /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/dottedCircle.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/flattenComponents.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/skipExportGlyphs.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/decomposeTransformedComponents.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/propagateAnchors.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/sortContours.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/__init__.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/__main__.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/decomposeComponents.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/reverseContourDirection.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/removeOverlaps.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/explodeColorLayerGlyphs.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/cubicToQuadratic.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/dottedCircleFilter.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/base.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters
creating /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/__pycache__/dottedCircle.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/__pycache__/dottedCircleFilter.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/__pycache__/transformations.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/__pycache__/decomposeComponents.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/__pycache__/propagateAnchors.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/__pycache__/base.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/__pycache__/skipExportGlyphs.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/__pycache__/removeOverlaps.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/__pycache__/reverseContourDirection.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/__pycache__/flattenComponents.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/__pycache__/cubicToQuadratic.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/__pycache__/explodeColorLayerGlyphs.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/__pycache__/decomposeTransformedComponents.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/__pycache__/__init__.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/__pycache__/sortContours.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/filters/transformations.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/infoCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/_version.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft
creating /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureWriters/kernFeatureWriter.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureWriters/markFeatureWriter.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureWriters/gdefFeatureWriter.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureWriters/ast.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureWriters/__init__.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureWriters/__main__.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureWriters/baseFeatureWriter.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters
creating /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureWriters/__pycache__/cursFeatureWriter.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureWriters/__pycache__/kernFeatureWriter2.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureWriters/__pycache__/markFeatureWriter.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureWriters/__pycache__/ast.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureWriters/__pycache__/kernFeatureWriter.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureWriters/__pycache__/gdefFeatureWriter.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureWriters/__pycache__/baseFeatureWriter.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureWriters/__pycache__/__init__.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureWriters/kernFeatureWriter2.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureWriters/cursFeatureWriter.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/maxContextCalc.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft
creating /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/_compilers
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/_compilers/variableCFF2sCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/_compilers
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/_compilers/variableTTFsCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/_compilers
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/_compilers/interpolatableOTFCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/_compilers
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/_compilers/ttfCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/_compilers
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/_compilers/otfCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/_compilers
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/_compilers/__init__.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/_compilers
creating /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/_compilers/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/_compilers/__pycache__/ttfCompiler.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/_compilers/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/_compilers/__pycache__/otfCompiler.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/_compilers/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/_compilers/__pycache__/variableTTFsCompiler.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/_compilers/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/_compilers/__pycache__/interpolatableOTFCompiler.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/_compilers/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/_compilers/__pycache__/variableCFF2sCompiler.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/_compilers/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/_compilers/__pycache__/interpolatableTTFCompiler.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/_compilers/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/_compilers/__pycache__/baseCompiler.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/_compilers/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/_compilers/__pycache__/__init__.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/_compilers/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/_compilers/interpolatableTTFCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/_compilers
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/_compilers/baseCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/_compilers
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/preProcessor.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/__init__.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/instructionCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/featureCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/constants.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/outlineCompiler.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/postProcessor.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft
creating /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/__pycache__/constants.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/__pycache__/util.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/__pycache__/preProcessor.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/__pycache__/postProcessor.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/__pycache__/infoCompiler.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/__pycache__/instantiator.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/__pycache__/fontInfoData.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/__pycache__/_version.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/__pycache__/instructionCompiler.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/__pycache__/outlineCompiler.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/__pycache__/errors.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/__pycache__/featureCompiler.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/__pycache__/__init__.cpython-313.pyc -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/__pycache__
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/fontInfoData.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/util.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft
copying /build/reproducible-path/ufo2ft-3.3.1/.pybuild/cpython3_3.13_ufo2ft/build/ufo2ft/errors.py -> /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/instantiator.py to instantiator.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/dottedCircle.py to dottedCircle.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/flattenComponents.py to flattenComponents.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/skipExportGlyphs.py to skipExportGlyphs.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/decomposeTransformedComponents.py to decomposeTransformedComponents.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/propagateAnchors.py to propagateAnchors.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/sortContours.py to sortContours.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/__init__.py to __init__.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/__main__.py to __main__.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/decomposeComponents.py to decomposeComponents.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/reverseContourDirection.py to reverseContourDirection.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/removeOverlaps.py to removeOverlaps.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/explodeColorLayerGlyphs.py to explodeColorLayerGlyphs.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/cubicToQuadratic.py to cubicToQuadratic.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/dottedCircleFilter.py to dottedCircleFilter.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/base.py to base.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/filters/transformations.py to transformations.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/infoCompiler.py to infoCompiler.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/_version.py to _version.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters/kernFeatureWriter.py to kernFeatureWriter.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters/markFeatureWriter.py to markFeatureWriter.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters/gdefFeatureWriter.py to gdefFeatureWriter.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters/ast.py to ast.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters/__init__.py to __init__.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters/__main__.py to __main__.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters/baseFeatureWriter.py to baseFeatureWriter.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters/kernFeatureWriter2.py to kernFeatureWriter2.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureWriters/cursFeatureWriter.py to cursFeatureWriter.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/maxContextCalc.py to maxContextCalc.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/_compilers/variableCFF2sCompiler.py to variableCFF2sCompiler.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/_compilers/variableTTFsCompiler.py to variableTTFsCompiler.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/_compilers/interpolatableOTFCompiler.py to interpolatableOTFCompiler.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/_compilers/ttfCompiler.py to ttfCompiler.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/_compilers/otfCompiler.py to otfCompiler.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/_compilers/__init__.py to __init__.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/_compilers/interpolatableTTFCompiler.py to interpolatableTTFCompiler.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/_compilers/baseCompiler.py to baseCompiler.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/preProcessor.py to preProcessor.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/__init__.py to __init__.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/instructionCompiler.py to instructionCompiler.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/featureCompiler.py to featureCompiler.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/constants.py to constants.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/outlineCompiler.py to outlineCompiler.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/postProcessor.py to postProcessor.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/fontInfoData.py to fontInfoData.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/util.py to util.cpython-313.pyc
byte-compiling /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft/errors.py to errors.cpython-313.pyc
running install_egg_info
Copying Lib/ufo2ft.egg-info to /build/reproducible-path/ufo2ft-3.3.1/debian/python3-ufo2ft/usr/lib/python3.13/dist-packages/ufo2ft-3.3.1.egg-info
Skipping SOURCES.txt
running install_scripts
   dh_installdocs -O--buildsystem=pybuild
   dh_installchangelogs -O--buildsystem=pybuild
   dh_python3 -O--buildsystem=pybuild
   dh_installsystemduser -O--buildsystem=pybuild
   dh_perl -O--buildsystem=pybuild
   dh_link -O--buildsystem=pybuild
   dh_strip_nondeterminism -O--buildsystem=pybuild
   dh_compress -O--buildsystem=pybuild
   dh_fixperms -O--buildsystem=pybuild
   dh_missing -O--buildsystem=pybuild
   dh_installdeb -O--buildsystem=pybuild
   dh_gencontrol -O--buildsystem=pybuild
   dh_md5sums -O--buildsystem=pybuild
   dh_builddeb -O--buildsystem=pybuild
dpkg-deb: building package 'python3-ufo2ft' in '../python3-ufo2ft_3.3.1-2_all.deb'.
 dpkg-genbuildinfo --build=binary -O../ufo2ft_3.3.1-2_i386.buildinfo
 dpkg-genchanges --build=binary -O../ufo2ft_3.3.1-2_i386.changes
dpkg-genchanges: info: binary-only upload (no source code included)
 dpkg-source --after-build .
dpkg-buildpackage: info: binary-only upload (no source included)
dpkg-genchanges: info: not including original source code in upload
I: copying local configuration
I: user script /srv/workspace/pbuilder/54219/tmp/hooks/B01_cleanup starting
I: user script /srv/workspace/pbuilder/54219/tmp/hooks/B01_cleanup finished
I: unmounting dev/ptmx filesystem
I: unmounting dev/pts filesystem
I: unmounting dev/shm filesystem
I: unmounting proc filesystem
I: unmounting sys filesystem
I: cleaning the build env 
I: removing directory /srv/workspace/pbuilder/54219 and its subdirectories
I: Current time: Wed Feb 19 10:28:16 +14 2025
I: pbuilder-time-stamp: 1739910496