Build fails at configure phase as following. ---------------------------------------------------------------------- =======================<phase: configure >============================ ===> py38-atpublic-3.0 depends on package: py38-setuptools>0 - found ===> py38-atpublic-3.0 depends on file: /usr/local/bin/python3.8 - found ===> Configuring for py38-atpublic-3.0 Traceback (most recent call last): File "<string>", line 1, in <module> FileNotFoundError: [Errno 2] No such file or directory: 'setup.py' *** Error code 1 Stop. make: stopped in /usr/ports/devel/py-atpublic ---------------------------------------------------------------------- Full build log: https://people.freebsd.org/~yasu/poudriere/data/logs/bulk/130amd64-default/2022-01-17_20h26m44s/logs/py38-atpublic-3.0.log Conditions are: Host: 13.0-RELEASE-p6 amd64 Poudriere: 3.3.7 Jail: 13.0-RELEASE-p6 amd64 Ports Tree: ports ca43d5d0b0ed of main
According to the commit logs of upstream repository, the project switched from traditional setup.py to pyproject.toml before the release of 3.0. ---------------------------------------------------------------------- commit f02a9afd3ae9980f98e35fa401481216156b1ac9 Author: Barry Warsaw <barry@python.org> AuthorDate: Tue Jan 11 02:01:38 2022 +0000 Commit: Barry Warsaw <barry@python.org> CommitDate: Tue Jan 11 02:01:38 2022 +0000 Convert to pyproject.toml and use PDM as the package manager ---------------------------------------------------------------------- Our python framework doesn't support the latter. So we need to either (1) Go back to 2.3, which is the last version that uses setup.py. (2) Change this port so it uses PDM (devel/py-pdm) to build and install.
Created attachment 231100 [details] Patch file Fix build by going back to 2.3. With 3.0 upstream switched from setup.py to pyproject.toml. Unfortunately our python framework doesn't support the latter. So fix build by going back to 2.3 that is the last version to use setup.py.
Created attachment 231115 [details] Updated patch file Don't bump PORTEPOCH. After the update to 3.0, build of this port always fails and nobody succeeds to install and upgrade. So PORTEPOCH need not to be bumped in this case.
Created attachment 231148 [details] Updated patch file Switch to DISTVERSION.
A commit in branch main references this bug: URL: https://cgit.FreeBSD.org/ports/commit/?id=9d8c3018ff4c2e2d91c9c23af79aac8d5fc6174b commit 9d8c3018ff4c2e2d91c9c23af79aac8d5fc6174b Author: Jose Alonso Cardenas Marquez <acm@FreeBSD.org> AuthorDate: 2022-01-19 15:06:24 +0000 Commit: Jose Alonso Cardenas Marquez <acm@FreeBSD.org> CommitDate: 2022-01-19 15:06:24 +0000 devel/py-atpublic: Fix build - Latest version of py-atpublic removed support for setup.py. I am adding setup stuff for fix current problem PR: 261270 Reported by: yasu devel/py-atpublic/Makefile | 5 +- devel/py-atpublic/files/setup.cfg (new) | 76 ++++++++++++ devel/py-atpublic/files/setup.py (new) | 55 +++++++++ devel/py-atpublic/files/setup_helpers.py (new) | 153 +++++++++++++++++++++++++ 4 files changed, 288 insertions(+), 1 deletion(-)
hi, I have added another way to fix this problem. It should works right now. Thanks for your PR. Please close this PR if it is working for you
Hm.. import public does not work now?... $ python3 Python 3.8.12 (default, Oct 14 2021, 05:08:21) [Clang 11.0.1 (git@github.com:llvm/llvm-project.git llvmorg-11.0.1-0-g43ff75f2c on freebsd13 Type "help", "copyright", "credits" or "license" for more information. >>> import public Traceback (most recent call last): File "<stdin>", line 1, in <module> ModuleNotFoundError: No module named 'public'
(In reply to Andrey Pevnev from comment #7) Try with my latest changes https://cgit.freebsd.org/ports/commit/?id=8c652251cd49dc718024d698d84c13badb7687f5
(In reply to Jose Alonso Cardenas Marquez from comment #8) That seems to have fixed it, thank you sir!