See review D39303 for patch and description. exp-run requested mostly to check for transient consumers. Also the place to bring up any runtime issues when pkg_resources is taken away so that further action can be taken.
Some new failure logs: https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-29_18h43m08s/logs/errors/py39-pylast-5.1.0_1.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-29_18h43m08s/logs/errors/py39-soxr-0.3.4.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-29_18h43m08s/logs/errors/libgusb-0.3.10_1.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-29_18h43m08s/logs/errors/py39-QtPy-2.3.1.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-29_18h43m08s/logs/errors/py39-find-libpython-0.3.0.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-29_18h43m08s/logs/errors/py39-flit-scm-1.7.0_1.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-29_18h43m08s/logs/errors/py39-jsonschema-4.17.3_1.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-29_18h43m08s/logs/errors/py39-platformdirs-2.6.2_1.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-29_18h43m08s/logs/errors/py39-prettytable-3.6.0_1.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-29_18h43m08s/logs/errors/py39-scikit-build-0.16.7.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-29_18h43m08s/logs/errors/opencolorio-2.1.3_1.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-29_18h43m08s/logs/errors/py39-formulaic-0.5.2.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-29_18h43m08s/logs/errors/py39-openTSNE-0.7.1.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-29_18h43m08s/logs/errors/py39-filelock-3.10.3.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-29_18h43m08s/logs/errors/py39-plumbum-1.8.1_1.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-29_18h43m08s/logs/errors/py39-sphinx-autodoc-typehints-1.22_1.log
A few more: https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-30_09h13m37s/logs/errors/py39-vunit-hdl-4.6.2.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-30_09h13m37s/logs/errors/mongodb42-4.2.24.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-30_09h13m37s/logs/errors/mongodb50-5.0.14_2.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-30_09h13m37s/logs/errors/criterion-2.4.1.13.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-30_09h13m37s/logs/errors/py39-cytoolz-0.12.1.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-30_09h13m37s/logs/errors/py39-pyproject-fmt-0.5.0_1.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-30_09h13m37s/logs/errors/py39-financedatabase-2.0.9.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-30_09h13m37s/logs/errors/py39-gemmi-0.6.0.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-30_09h13m37s/logs/errors/ikos-3.1_2.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-30_09h13m37s/logs/errors/gpodder-3.11.0.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-30_09h13m37s/logs/errors/py39-libdnet-1.13_4.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-30_09h13m37s/logs/errors/py39-qutip-4.7.1.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-30_09h13m37s/logs/errors/system-config-printer-1.5.12_2.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-30_09h13m37s/logs/errors/sssd-smb-1.16.5_8.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-30_09h13m37s/logs/errors/py39-dj40-django-auth-ldap-4.1.0_1.log https://pkg-status.freebsd.org/gohan05/data/131amd64-default-foo/2023-03-30_09h13m37s/logs/errors/py39-django-auth-ldap-4.1.0_1.log
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=9a80a6ee5e8ebf5c279b3d7a9e7e8b7dbabbaf0a commit 9a80a6ee5e8ebf5c279b3d7a9e7e8b7dbabbaf0a Author: Charlie Li <vishwin@FreeBSD.org> AuthorDate: 2023-07-18 00:16:21 +0000 Commit: Charlie Li <vishwin@FreeBSD.org> CommitDate: 2023-07-18 00:53:09 +0000 devel/py-setuptools: convert individual consumers to ${PY_SETUPTOOLS} Currently a no-op, but in the future outputs the correct setuptools port depending on whether USES_PYTHON=distutils is specified. With hat: python PR: 270510, 270358 archivers/py-blosc2/Makefile | 2 +- archivers/py-python-rpm-packaging/Makefile | 2 +- archivers/py-sozipfile/Makefile | 2 +- archivers/py-zopfli/Makefile | 2 +- astro/py-metpy/Makefile | 2 +- astro/py-spacetrack/Makefile | 2 +- audio/py-gtts/Makefile | 2 +- benchmarks/uica/Makefile | 2 +- biology/py-resdk/Makefile | 2 +- databases/py-aiomysql/Makefile | 2 +- databases/py-asyncmy/Makefile | 2 +- databases/py-fastparquet/Makefile | 2 +- databases/py-geoalchemy2/Makefile | 2 +- databases/py-mysqlclient/Makefile | 2 +- databases/py-psycopg-c/Makefile | 2 +- databases/py-psycopg-pool/Makefile | 2 +- databases/py-psycopg/Makefile | 2 +- databases/py-sqlalchemy20/Makefile | 2 +- databases/py-tiledb/Makefile | 2 +- databases/rrdtool/Makefile | 2 +- deskutils/py-send2trash/Makefile | 2 +- deskutils/recoll/Makefile | 2 +- deskutils/zim/Makefile | 2 +- devel/ipython/Makefile | 2 +- devel/libgusb/Makefile | 2 +- devel/mercurial/Makefile | 2 +- devel/nanopb/Makefile | 2 +- devel/py-QtPy/Makefile | 2 +- devel/py-aiosignal/Makefile | 2 +- devel/py-ansi/Makefile | 2 +- devel/py-anyio/Makefile | 2 +- devel/py-apptools/Makefile | 2 +- devel/py-aspectlib/Makefile | 2 +- devel/py-astroid/Makefile | 2 +- devel/py-attrs-strict/Makefile | 2 +- devel/py-autopage/Makefile | 2 +- devel/py-avro/Makefile | 2 +- devel/py-b2sdk/Makefile | 2 +- devel/py-backports.cached-property/Makefile | 2 +- devel/py-backports.entry-points-selectable/Makefile | 2 +- devel/py-blinker/Makefile | 2 +- devel/py-bytecode/Makefile | 2 +- devel/py-cachetools/Makefile | 2 +- devel/py-calver/Makefile | 2 +- devel/py-canonicaljson/Makefile | 2 +- devel/py-case/Makefile | 2 +- devel/py-cmd2/Makefile | 2 +- devel/py-configobj/Makefile | 2 +- devel/py-configupdater/Makefile | 2 +- devel/py-ctypesgen/Makefile | 2 +- devel/py-curtsies/Makefile | 2 +- devel/py-custodian/Makefile | 2 +- devel/py-cwcwidth/Makefile | 2 +- devel/py-cython-test-exception-raiser/Makefile | 2 +- devel/py-d2to1/Makefile | 2 +- devel/py-dask/Makefile | 2 +- devel/py-datasette/Makefile | 2 +- devel/py-ddtrace/Makefile | 2 +- devel/py-debugpy/Makefile | 2 +- devel/py-deepmerge/Makefile | 2 +- devel/py-distributed/Makefile | 2 +- devel/py-editdistance/Makefile | 2 +- devel/py-envier/Makefile | 2 +- devel/py-envisage/Makefile | 4 ++-- devel/py-epsilon/Makefile | 2 +- devel/py-ewah-bool-utils/Makefile | 2 +- devel/py-executing/Makefile | 2 +- devel/py-fasteners/Makefile | 2 +- devel/py-fixtures/Makefile | 2 +- devel/py-flake8-black/Makefile | 2 +- devel/py-flake8-bugbear/Makefile | 2 +- devel/py-flake8-comprehensions/Makefile | 2 +- devel/py-flake8_simplify/Makefile | 2 +- devel/py-google-crc32c/Makefile | 2 +- devel/py-hunter/Makefile | 2 +- devel/py-importlib-metadata/Makefile | 2 +- devel/py-inflect/Makefile | 2 +- devel/py-jaraco.classes/Makefile | 2 +- devel/py-jaraco.collections/Makefile | 2 +- devel/py-jaraco.context/Makefile | 2 +- devel/py-jaraco.env/Makefile | 2 +- devel/py-jaraco.functools/Makefile | 2 +- devel/py-jaraco.itertools/Makefile | 2 +- devel/py-jaraco.logging/Makefile | 2 +- devel/py-jaraco.text/Makefile | 2 +- devel/py-jaraco.timing/Makefile | 2 +- devel/py-jaraco.util/Makefile | 2 +- devel/py-jupyter-server-mathjax/Makefile | 2 +- devel/py-klepto/Makefile | 2 +- devel/py-libcst/Makefile | 2 +- devel/py-libtmux/Makefile | 2 +- devel/py-llfuse/Makefile | 2 +- devel/py-monkeytype/Makefile | 2 +- devel/py-moto/Makefile | 2 +- devel/py-msgpack/Makefile | 2 +- devel/py-mypy-protobuf/Makefile | 2 +- devel/py-mypy/Makefile | 2 +- devel/py-mystic/Makefile | 2 +- devel/py-opentelemetry-api/Makefile | 2 +- devel/py-opentelemetry-sdk/Makefile | 2 +- devel/py-parameterized/Makefile | 2 +- devel/py-parver/Makefile | 2 +- devel/py-path/Makefile | 2 +- devel/py-pathos/Makefile | 2 +- devel/py-pdoc/Makefile | 2 +- devel/py-pep621/Makefile | 2 +- devel/py-pint-pandas/Makefile | 2 +- devel/py-pint/Makefile | 2 +- devel/py-pip-requirements-parser/Makefile | 2 +- devel/py-pip-run/Makefile | 2 +- devel/py-pip-tools/Makefile | 4 ++-- devel/py-pipenv/Makefile | 4 ++-- devel/py-pluggy/Makefile | 2 +- devel/py-pooch/Makefile | 2 +- devel/py-pox/Makefile | 2 +- devel/py-ppft/Makefile | 2 +- devel/py-prance/Makefile | 2 +- devel/py-py-partiql-parser/Makefile | 2 +- devel/py-pyee/Makefile | 2 +- devel/py-pyface/Makefile | 2 +- devel/py-pyina/Makefile | 2 +- devel/py-pyls-black/Makefile | 2 +- devel/py-pyperf/Makefile | 2 +- devel/py-pyproject-metadata/Makefile | 2 +- devel/py-pyscaffold/Makefile | 2 +- devel/py-pytest-checkdocs/Makefile | 2 +- devel/py-pytest-enabler/Makefile | 2 +- devel/py-pytest-helpers-namespace/Makefile | 2 +- devel/py-pytest-html/Makefile | 2 +- devel/py-pytest-localserver/Makefile | 2 +- devel/py-pytest-mpl/Makefile | 2 +- devel/py-pytest-plus/Makefile | 2 +- devel/py-pytest-services/Makefile | 2 +- devel/py-pytest-subtests/Makefile | 2 +- devel/py-pytest-sugar/Makefile | 2 +- devel/py-pytest/Makefile | 2 +- devel/py-pythonfinder/Makefile | 2 +- devel/py-pytweening/Makefile | 2 +- devel/py-pytz-deprecation-shim/Makefile | 2 +- devel/py-pyvisa-py/Makefile | 2 +- devel/py-pyvisa/Makefile | 2 +- devel/py-pyyaml-include/Makefile | 2 +- devel/py-represent/Makefile | 2 +- devel/py-requirementslib/Makefile | 2 +- devel/py-resolvelib1/Makefile | 2 +- devel/py-retype/Makefile | 2 +- devel/py-rope/Makefile | 2 +- devel/py-rstr/Makefile | 2 +- devel/py-scikit-base/Makefile | 2 +- devel/py-semver/Makefile | 2 +- devel/py-setuptools-declarative-requirements/Makefile | 2 +- devel/py-setuptools-pkg/Makefile | 2 +- devel/py-setuptools-rust/Makefile | 4 ++-- devel/py-shtab/Makefile | 2 +- devel/py-simpleeval/Makefile | 2 +- devel/py-subprocess-tee/Makefile | 2 +- devel/py-tempora/Makefile | 2 +- devel/py-time-machine/Makefile | 2 +- devel/py-trove-classifiers/Makefile | 2 +- devel/py-twine/Makefile | 2 +- devel/py-txi2p-tahoe/Makefile | 2 +- devel/py-typeguard/Makefile | 2 +- devel/py-validate-pyproject/Makefile | 2 +- devel/py-versioneer/Makefile | 2 +- devel/py-versioningit/Makefile | 2 +- devel/py-vistir/Makefile | 2 +- devel/py-watermark/Makefile | 2 +- devel/py-yamllint/Makefile | 2 +- devel/py-zarr/Makefile | 2 +- devel/py-zipp/Makefile | 2 +- devel/pylint/Makefile | 2 +- devel/pytype/Makefile | 2 +- finance/py-technical/Makefile | 2 +- graphics/py-PyOpenGL-accelerate/Makefile | 2 +- graphics/py-fotokilof/Makefile | 2 +- graphics/py-pillow/Makefile | 2 +- graphics/py-pygeos/Makefile | 2 +- graphics/py-pyproj/Makefile | 2 +- graphics/py-rasterstats/Makefile | 2 +- graphics/py-traitsui/Makefile | 2 +- graphics/py-webcolors/Makefile | 2 +- math/e-antic/Makefile | 2 +- math/py-autograd/Makefile | 2 +- math/py-cvxopt/Makefile | 2 +- math/py-fsph/Makefile | 2 +- math/py-jacobi/Makefile | 2 +- math/py-jax/Makefile | 2 +- math/py-ml-dtypes/Makefile | 2 +- math/py-numba-stats/Makefile | 2 +- math/py-openTSNE/Makefile | 2 +- math/py-pandas/Makefile | 2 +- math/py-permutation/Makefile | 2 +- math/py-py-find-1st/Makefile | 2 +- math/py-pygsl/Makefile | 2 +- math/py-pytensor/Makefile | 2 +- math/py-resample/Makefile | 2 +- math/py-rpy2/Makefile | 2 +- math/py-scikit-fem/Makefile | 2 +- misc/libcomps/Makefile | 2 +- misc/py-crudini/Makefile | 2 +- misc/py-openai/Makefile | 2 +- misc/py-palettable/Makefile | 2 +- misc/py-spdx-tools/Makefile | 2 +- misc/py-tqdm/Makefile | 2 +- misc/py-wandb/Makefile | 2 +- multimedia/py-pymediainfo/Makefile | 2 +- multimedia/py-pysubs2/Makefile | 2 +- multimedia/streamlink/Makefile | 2 +- net-mgmt/crmsh/Makefile | 4 ++-- net-mgmt/net-snmp/Makefile | 4 ++-- net/onionprobe/Makefile | 2 +- net/py-matrix-synapse-ldap3/Makefile | 2 +- net/py-pyroute2.minimal/Makefile | 2 +- net/py-pyroute2/Makefile | 2 +- news/py-sabctools/Makefile | 2 +- print/py-freetype-py/Makefile | 2 +- print/py-python-ly/Makefile | 2 +- print/py-ufolib2/Makefile | 2 +- print/py-uharfbuzz/Makefile | 2 +- science/py-asdf-standard/Makefile | 2 +- science/py-asdf-transform-schemas/Makefile | 2 +- science/py-asdf-unit-schemas/Makefile | 2 +- science/py-asdf/Makefile | 2 +- science/py-pymatgen-analysis-alloys/Makefile | 2 +- science/py-segregation/Makefile | 2 +- science/py-signac/Makefile | 2 +- science/py-spaghetti/Makefile | 2 +- science/smoldyn/Makefile | 2 +- science/thermofun/Makefile | 2 +- security/gpgme/Makefile | 4 ++-- security/libpwquality/Makefile | 2 +- security/py-certomancer/Makefile | 2 +- security/py-httpx-auth/Makefile | 2 +- security/py-pyhanko-certvalidator/Makefile | 2 +- security/py-pyhanko/Makefile | 2 +- security/py-pyspnego/Makefile | 2 +- sysutils/datadog-integrations/Makefile | 2 +- sysutils/py-ansible-compat/Makefile | 2 +- sysutils/py-ansible-core/Makefile | 2 +- sysutils/py-ansible-lint/Makefile | 2 +- sysutils/py-distro/Makefile | 2 +- sysutils/py-hcloud/Makefile | 2 +- sysutils/py-liquidctl/Makefile | 2 +- sysutils/py-ploy/Makefile | 2 +- sysutils/py-ploy_ezjail/Makefile | 2 +- sysutils/py-psutil/Makefile | 2 +- sysutils/syslog-ng/Makefile | 2 +- textproc/codespell/Makefile | 2 +- textproc/py-asciinema/Makefile | 2 +- textproc/py-ini2toml/Makefile | 2 +- textproc/py-jq/Makefile | 2 +- textproc/py-linkify-it-py/Makefile | 2 +- textproc/py-markdown/Makefile | 2 +- textproc/py-markups/Makefile | 2 +- textproc/py-mistune/Makefile | 2 +- textproc/py-mistune2/Makefile | 2 +- textproc/py-nbsphinx/Makefile | 2 +- textproc/py-normality/Makefile | 2 +- textproc/py-ocrmypdf/Makefile | 2 +- textproc/py-openstep-plist/Makefile | 2 +- textproc/py-parse-type/Makefile | 2 +- textproc/py-parse/Makefile | 2 +- textproc/py-petl/Makefile | 2 +- textproc/py-pyaml/Makefile | 2 +- textproc/py-pygments/Makefile | 2 +- textproc/py-python-markdown-math/Makefile | 2 +- textproc/py-sphinx-autoapi/Makefile | 2 +- textproc/py-sphinxcontrib-towncrier/Makefile | 2 +- textproc/py-uc-micro-py/Makefile | 2 +- textproc/py-unicodeitplus/Makefile | 2 +- textproc/translate-toolkit/Makefile | 2 +- textproc/xml2rfc/Makefile | 2 +- www/onionbalance/Makefile | 2 +- www/py-aiohttp/Makefile | 2 +- www/py-aioquic/Makefile | 2 +- www/py-branca/Makefile | 2 +- www/py-cheroot/Makefile | 2 +- www/py-cherrypy/Makefile | 2 +- www/py-cssutils/Makefile | 2 +- www/py-dj41-django-cors-headers/Makefile | 2 +- www/py-dj41-django-rich/Makefile | 2 +- www/py-django-bleach/Makefile | 2 +- www/py-django-braces/Makefile | 2 +- www/py-django-cors-headers/Makefile | 2 +- www/py-django-crispy-forms/Makefile | 2 +- www/py-django-haystack/Makefile | 2 +- www/py-django-rich/Makefile | 2 +- www/py-feedgenerator/Makefile | 2 +- www/py-flask-migrate/Makefile | 2 +- www/py-flask-socketio/Makefile | 2 +- www/py-flask-wtf/Makefile | 2 +- www/py-flask/Makefile | 2 +- www/py-folium/Makefile | 2 +- www/py-hyperlink/Makefile | 2 +- www/py-lektor/Makefile | 2 +- www/py-pastedeploy/Makefile | 2 +- www/py-pyjwt/Makefile | 2 +- www/py-pylsqpack/Makefile | 2 +- www/py-scgi/Makefile | 2 +- www/py-tornado/Makefile | 2 +- www/py-waitress/Makefile | 2 +- www/py-werkzeug/Makefile | 2 +- www/py-woob/Makefile | 2 +- www/radicale/Makefile | 2 +- x11-fonts/py-afdko/Makefile | 2 +- x11-fonts/py-cffsubr/Makefile | 2 +- x11-fonts/py-glyphsLib/Makefile | 2 +- x11-fonts/py-opentype-sanitizer/Makefile | 2 +- x11-fonts/py-ufonormalizer/Makefile | 2 +- 309 files changed, 316 insertions(+), 316 deletions(-)
Quick glean from exp-run and some RUN_DEPENDS snooping reveal that setuptools_scm, hatch-vcs et al specify setuptools in RUN_DEPENDS. Technically correct per upstream package metadata, but causes environment pollution with our build processes. Still need to check for any pkg_resources consumers but I doubt any exist anymore. For documentation purposes (will add to wiki later): RUN_DEPENDS should never contain ${PY_SETUPTOOLS} unless the port in question is a leaf port (ie no further consumers). Those ports that specify setuptools as a runtime dependency in the Python package metadata should have their consumers specify them instead. The ${PY_SETUPTOOLS} dependency line returned is only correct for the port it is used in. As different setuptools versions cannot exist concurrently in the same environment (chroot, jail, Python virtual environment, etc), it is essential to prevent environment pollution via RUN_DEPENDS, especially when multiple ports in a dependency chain differ between USE_PYTHON=pep517 and USE_PYTHON=distutils.
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=d3af6c1c0caa1585dc88e07c6981f5ce1b817ec8 commit d3af6c1c0caa1585dc88e07c6981f5ce1b817ec8 Author: Charlie Li <vishwin@FreeBSD.org> AuthorDate: 2024-02-21 06:07:35 +0000 Commit: Charlie Li <vishwin@FreeBSD.org> CommitDate: 2024-02-21 06:07:35 +0000 www/py-yarl: add ${PY_SETUPTOOLS} to BUILD_DEPENDS devel/py-wheel is not a PEP-517 build backend; add the real one. Once the linked PR is committed, this build will fail. With hat: python PR: 270510 www/py-yarl/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=e37109f1766e97f8aecf23417ef83167a43831ed commit e37109f1766e97f8aecf23417ef83167a43831ed Author: Charlie Li <vishwin@FreeBSD.org> AuthorDate: 2024-02-29 14:40:22 +0000 Commit: Charlie Li <vishwin@FreeBSD.org> CommitDate: 2024-02-29 14:40:22 +0000 math/py-matplotlib: add ${PY_SETUPTOOLS} to BUILD_DEPENDS No PEP-517 build backend was specified, so add the correct one (setuptools). Build only succeeds because setuptools is brought in by other dependencies transiently, which will fail after the linked PR is committed. With hat: python PR: 270510 math/py-matplotlib/Makefile | 1 + 1 file changed, 1 insertion(+)
Which packages still have this issue that need to be updated? Is it the large list in that "no-op" commit? Maybe if we have a list of these, more of us can tackle them one by one until we can close this out.
(In reply to Henrich Hartzer from comment #7) I also have some bandwidth to help work on the churn in parallel, if needed. I am waiting on newer ansible releases, which depend on setuptools>=66.1.0, so I'd like to help get this bug and related bugs resolved. What work is still pending that can be tackled by multiple people concurrently?
What is the current status of this PR? Shall we ask for a more exp-run?
(In reply to Antoine Brodin from comment #1) This PR block the update of setuptools and import of python3.12, would you have a another exp-run ? Thank you !
Some new failure logs: https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/astrometry-0.95.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/py311-pyradio-0.9.3.7.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/py311-torchaudio-2.2.1.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/py311-dnaio-1.2.0.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/mongodb44-4.4.29.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/mongodb50-5.0.26_3.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/mongodb60-6.0.15_3.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/mongodb70-7.0.11.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/py311-snowddl-0.25.2.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/py311-cytoolz-0.12.3.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/py311-nbclassic-1.1.0.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/py311-preshed-4.0.0.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/py311-qt5-pyqt-5.15.10_1.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/py311-qt6-pyqt-6.7.0.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/py311-qutip-4.7.3.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/py311-financedatabase-2.2.2.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/opencolorio-2.3.2_1.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/py311-ManimPango-0.5.0.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/py311-CyLP-0.92.2_1.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/py311-POT-0.9.3.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/py311-hmmlearn-0.3.0.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/py311-or-tools-9.5_9.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/pytorch-2.3.1_1.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/tvm-0.16.0.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/gpodder-3.11.4_1.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/mythtv-34.0_2,1.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/freeipa-client-4.11.0_1.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/py311-libdnet-1.13_5.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/system-config-printer-1.5.12_3.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/chemicalfun-0.1.8_2.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/psi4-1.9.1_2.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/py311-meshio-5.3.5.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/py311-spglib-2.4.0.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/py311-trx-python-0.2.9.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/sssd2-2.9.4_5.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/py311-pandoc-plantuml-filter-0.1.5.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/chrome-gnome-shell-10.1_2.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/varnish-libvmod-maxminddb-1.0.2_3.log https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/py311-wpgtk-6.6.1.log
It seems like most of new these failures just need BUILD_DEPENDS+=${PY_SETUPTOOLS} in the right place. I've started working on the first 20, including py311-POT-0.9.3. If someone else could take the second half of the list, that would helpful, but if nobody speaks up, I'll keep going with testing the rest. We really need to get this done. Planning on just a lump commit so as not to overly pollute this PR and needlessly spam the many CC'd parties. Since these are not all leaves, there will likely be another round of failures and I'd be happy to help with that.
(In reply to Jason E. Hale from comment #12) Yes, you are right. Would you commit the fix ? I shall test from the last one.
(In reply to Wen Heping from comment #13) I'd be more than happy to commit it. I don't see how simply adding ${PY_SETUPTOOLS} as a build dependency could possibly break our current state and don't think PORTREVISION bumps are really necessary at this time, but I just was to make sure these new failures build before proceeding.
Some failures in this list could not reproduce on my poudriere, such as: science/py-trx-python www/varnish-libvmod-maxminddb x11-themes/wpgtk ...
(In reply to Wen Heping from comment #15) This is because you didn't rebuilt all the dependencies without setuptools
(In reply to Wen Heping from comment #15) Could you please look into astro/wcslib (your port)? I don't think this is directly related to this PR, but this port is still failing and there are consumers of this in this PR. ====> Running Q/A tests (stage-qa) Warning:'bin/tofits' is not stripped consider trying INSTALL_TARGET=install-strip or using ${STRIP_CMD} Warning: 'bin/sundazel' is not stripped consider trying INSTALL_TARGET=install-strip or using ${STRIP_CMD} Warning: 'bin/fitshdr' is not stripped consider trying INSTALL_TARGET=install-strip or using ${STRIP_CMD} Warning: 'lib/libwcs.so.8.3' is not stripped consider trying INSTALL_TARGET=install-strip or using ${STRIP_CMD} ====> Checking for pkg-plist issues (check-plist) ===> Parsing plist ===> Checking for items in STAGEDIR missing from pkg-plist Error: Orphaned: %%PORTDOCS%%%%DOCSDIR%%/html/clipboard.js Error: Orphaned: %%PORTDOCS%%%%DOCSDIR%%/html/cookie.js Error: Orphaned: %%PORTDOCS%%%%DOCSDIR%%/html/doxygen_crawl.html ===> Checking for items in pkg-plist which are not in STAGEDIR ===> Error: Plist issues found. *** Error code 1
(In reply to Antoine Brodin from comment #16) Now I see, I shall create a new jail for this PR.
(In reply to Jason E. Hale from comment #17) Done.
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=14a73ac2f1ba7b3926015479cf6cb833cedf0a08 commit 14a73ac2f1ba7b3926015479cf6cb833cedf0a08 Author: Wen Heping <wen@FreeBSD.org> AuthorDate: 2024-06-24 22:14:43 +0000 Commit: Wen Heping <wen@FreeBSD.org> CommitDate: 2024-06-24 22:17:01 +0000 science/py-trx-python: Fix build with removing setuptools from RUN_D PR: 270510 Approved by: portmgr(blanket, fix build) science/py-trx-python/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=514bee4667e4cca1da2a9c3907b469f45889aade commit 514bee4667e4cca1da2a9c3907b469f45889aade Author: Wen Heping <wen@FreeBSD.org> AuthorDate: 2024-06-24 12:12:28 +0000 Commit: Wen Heping <wen@FreeBSD.org> CommitDate: 2024-06-24 22:17:01 +0000 x11-themes/wpgtk: Fix build with removing setuptools from RUN_D PR: 270510 Approved by: portmgr@(blanket, fix build) x11-themes/wpgtk/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=30d40aca850f00d7fb12ec6e32ff36963d170ba8 commit 30d40aca850f00d7fb12ec6e32ff36963d170ba8 Author: Wen Heping <wen@FreeBSD.org> AuthorDate: 2024-06-24 22:09:23 +0000 Commit: Wen Heping <wen@FreeBSD.org> CommitDate: 2024-06-24 22:17:01 +0000 science/py-spglib: Fix build with removing setuptools from RUN_D PR: 270510 Approved by: portmgr@(blanket, fix build) science/py-spglib/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
The misc/tvm failure looks unrelated and was likely broken by the recent update to devel/dmlc-core [1] which brought in [2]. CC'ing maintainer (yuri@) for this issue and because many of his ports are involved here. [1] https://cgit.freebsd.org/ports/commit/?id=266c6f20e597be0b02372e82c5ddc803efcc11a5 [2] https://github.com/dmlc/dmlc-core/commit/3031e4a61a98f49f07a42cfdec6242340fb2fd8c
(In reply to commit-hook from comment #22) Thanks for fixing these, Wen, but could the rest just be one or two commits? There are 19 people CC'd here being spammed by Bugzilla and the commit-hook pollutes discussion in the web interface (which I tried to convey in comment #12). I realize this comment isn't helping on that front, either. I'm currently up to net/py-libdnet and I'll have more time over the next few days to investigate potential fallout of dependencies of non-leaf ports.
(In reply to Jason E. Hale from comment #23) Note that maintainer marks misc/tvm as BROKEN in [1]. [1] https://cgit.freebsd.org/ports/commit/?id=74660b7b817eef1517ccb6d8741ab386db3a6375
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=4ef9d00bb341c69bb9de853708bef26089c089af commit 4ef9d00bb341c69bb9de853708bef26089c089af Author: Wen Heping <wen@FreeBSD.org> AuthorDate: 2024-06-25 11:32:37 +0000 Commit: Wen Heping <wen@FreeBSD.org> CommitDate: 2024-06-25 13:28:26 +0000 misc/pytorch: Fix build with removing setuptools from RUN_D PR: 270510 Approved by: portmgr(blanket, fix build) misc/pytorch/Makefile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=340a8027ea98cc11e5ae5c1306609c21fa33657e commit 340a8027ea98cc11e5ae5c1306609c21fa33657e Author: Wen Heping <wen@FreeBSD.org> AuthorDate: 2024-06-25 13:26:15 +0000 Commit: Wen Heping <wen@FreeBSD.org> CommitDate: 2024-06-25 13:28:26 +0000 devel/py-qutip: Fix build with removing setuptools from RUN_D PR: 270510 Approved by: portmgr(blanket, fix build) devel/py-qutip/Makefile | 1 + 1 file changed, 1 insertion(+)
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=ea687ef493d8b40b130cc002ceef96734d5aae40 commit ea687ef493d8b40b130cc002ceef96734d5aae40 Author: Wen Heping <wen@FreeBSD.org> AuthorDate: 2024-06-25 11:38:32 +0000 Commit: Wen Heping <wen@FreeBSD.org> CommitDate: 2024-06-25 13:28:26 +0000 science/py-meshio: Fix build with removing setuptools from RUN_D PR: 270510 Approved by: portmgr(blanket, fix build) science/py-meshio/Makefile | 1 + 1 file changed, 1 insertion(+)
I should have fixes for the rest of these committed later today. Still checking the consumers of non-leaf ports and have ~250 ports left in the build queue. Should be done by the time I get back home from work.
(In reply to Jason E. Hale from comment #29) Make sure to check runtimes, more importantly. Checking that they build is one thing but unfortunately runtime verification here is trickier than compiled software.
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=ad593a9d4d7957012965264a91f21667488ca1b2 commit ad593a9d4d7957012965264a91f21667488ca1b2 Author: Jason E. Hale <jhale@FreeBSD.org> AuthorDate: 2024-06-29 04:56:45 +0000 Commit: Jason E. Hale <jhale@FreeBSD.org> CommitDate: 2024-06-29 05:02:34 +0000 */*: Add ${PY_SETUPTOOLS} to BUILD_DEPENDS Fix build when setuptools is removed from RUN_DEPENDS in Mk/Uses/python.mk. PR: 270510 Approved by: portmgr (blanket) astro/astrometry/Makefile | 3 ++- audio/py-pyradio/Makefile | 3 ++- audio/py-torchaudio/Makefile | 3 ++- audio/qjackcapture/Makefile | 3 ++- biology/py-dnaio/Makefile | 3 ++- biology/py-macs3/Makefile | 3 ++- databases/mongodb44/Makefile | 3 ++- databases/mongodb50/Makefile | 3 ++- databases/mongodb60/Makefile | 3 ++- databases/mongodb70/Makefile | 3 ++- databases/py-snowddl/Makefile | 1 + deskutils/calibre/Makefile | 1 + devel/py-cytoolz/Makefile | 3 ++- devel/py-nbclassic/Makefile | 3 ++- devel/py-preshed/Makefile | 1 + devel/py-qt5-pyqt/Makefile | 3 ++- devel/py-qt5-qscintilla2/Makefile | 1 + devel/py-qt6-pyqt/Makefile | 5 +++-- devel/py-qt6-qscintilla2/Makefile | 1 + finance/py-financedatabase/Makefile | 3 ++- graphics/opencolorio/Makefile | 3 ++- graphics/py-ManimPango/Makefile | 3 ++- graphics/py-python-poppler-qt5/Makefile | 3 ++- graphics/py-qt6-3d/Makefile | 2 ++ graphics/qgis-ltr/Makefile | 1 + graphics/qgis/Makefile | 1 + math/py-CyLP/Makefile | 1 + math/py-POT/Makefile | 2 +- math/py-hmmlearn/Makefile | 1 + math/py-or-tools/Makefile | 1 + misc/pytorch/Makefile | 1 + multimedia/gpodder/Makefile | 3 ++- multimedia/mythtv/Makefile | 3 ++- net/freeipa-client/Makefile | 3 ++- net/py-libdnet/Makefile | 1 + net/py-qt5-networkauth/Makefile | 3 ++- net/py-qt6-networkauth/Makefile | 2 ++ print/system-config-printer/Makefile | 3 ++- science/chemicalfun/Makefile | 1 + science/psi4/Makefile | 1 + science/py-HofstadterTools/Makefile | 3 ++- science/scidavis/Makefile | 7 ++++--- security/sssd2/Makefile | 3 ++- textproc/py-pandoc-plantuml-filter/Makefile | 3 ++- www/chrome-gnome-shell/Makefile | 3 ++- www/py-qt5-webengine/Makefile | 4 +++- www/py-qt6-webengine/Makefile | 2 ++ www/varnish-libvmod-maxminddb/Makefile | 3 ++- x11-toolkits/py-qt6-chart/Makefile | 2 ++ x11-toolkits/py-qt6-datavis3d/Makefile | 2 ++ 50 files changed, 89 insertions(+), 34 deletions(-)
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=a9f9245a7b9f2ee2d379d50e74f9a9a78b22c58e commit a9f9245a7b9f2ee2d379d50e74f9a9a78b22c58e Author: Jason E. Hale <jhale@FreeBSD.org> AuthorDate: 2024-06-29 04:52:25 +0000 Commit: Jason E. Hale <jhale@FreeBSD.org> CommitDate: 2024-06-29 05:02:07 +0000 x11-toolkits/py-qt5-chart: Fix pkg-plist Add ${PY_SETUPTOOLS} to BUILD_DEPENDS for when it is removed as a global RUN_DEPENDS. [1] PR: 270510 [1] x11-toolkits/py-qt5-chart/Makefile | 5 ++++- x11-toolkits/py-qt5-chart/pkg-plist | 3 +++ 2 files changed, 7 insertions(+), 1 deletion(-)
(In reply to commit-hook from comment #31) Should another exp-run be asked for ?
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=2a421bc5e2385557a624e00439956724ed76d541 commit 2a421bc5e2385557a624e00439956724ed76d541 Author: Po-Chuan Hsieh <sunpoet@FreeBSD.org> AuthorDate: 2024-07-03 04:36:38 +0000 Commit: Po-Chuan Hsieh <sunpoet@FreeBSD.org> CommitDate: 2024-07-03 04:36:38 +0000 devel/py-nbclassic: Revert ad593a9d4d7957012965264a91f21667488ca1b2 The correct fix is adding py-setuptools as missing RUN_DEPENDS to py-jupyter-packaging. PR: 270510 Reference: https://pkg-status.freebsd.org/gohan04/data/140amd64-default-foo/2024-06-23_06h42m00s/logs/errors/py311-nbclassic-1.1.0.log devel/py-nbclassic/Makefile | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-)
Exp-run seems fine
Now exp-run looks fine, would you commit this patch ? Thank you !
All USE_PYTHON=distutils consumers need PORTREVISION bumps. Also drafting a CHANGES entry. Both will be in phab.
(In reply to Charlie Li from comment #37) How's the progress? Many ports is waiting for it.
CHANGES entry has been drafted, any reviews for wording and logic are appreciated.
(In reply to Charlie Li from comment #39) Nice !
Get on with it! [1] For those who don't understand [1], please see [2] and [3]. [1] https://www.youtube.com/watch?v=sXE8LdXzeHM [2] https://docs.python.org/3/faq/general.html#why-is-it-called-python [3] https://docs.python.org/3/faq/general.html#do-i-have-to-like-monty-python-s-flying-circus
(In reply to Charlie Li from comment #39) Any progress ? wen