Bug 272620 - dns/py-dnspython: cannot build on i386 anymore, prerequisite for KDE
Summary: dns/py-dnspython: cannot build on i386 anymore, prerequisite for KDE
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Muhammad Moinur Rahman
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-07-20 12:58 UTC by Martin Birgmeier
Modified: 2023-08-10 08:26 UTC (History)
2 users (show)

See Also:
bugzilla: maintainer-feedback? (bofh)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Birgmeier 2023-07-20 12:58:51 UTC
Scenario:
- FreeBSD 12.4 latest
- ports latest
- Upgrading ports using portmaster

Result:
- On i386, py-dnspython cannot be built anymore because it has a new dependency py-poetry which ultimately requires py-maturin for which i386 is an excluded architecture.
- This ultimately means that KDE cannot be upgraded anymore because it requires samba, and that requires py-dnspython.

Expected result:
- It should be possible to upgrade the KDE ports on i386.

-- Martin
Comment 1 John Hein 2023-07-20 16:54:57 UTC
net/samba413 & net/samba416 depend on dns/py-dnspython by default as well.  If you turn off certain options, that dependency goes away, but you lose features as well.

The dependency chain (now that dnspython uses devel/py-poetry to build) is:

dns/py-dnspython >> devel/py-poetry >> devel/py-jsonschema >> devel/py-jsonschema-specifications >> devel/py-referencing >> devel/py-rpds-py >> devel/py-maturin

I have not checked to see if we could revert the change to use py-poetry temporarily.

devel/py-maturin has:

NOT_FOR_ARCHS=          armv6 armv7 i386 mips powerpc

It has had that since it was added to the ports tree (Nov 2020).  Presumably the architecture restriction is still accurate now.  If so, given how long this has had this restriction, it may not be likely to be resolved soon.  

Perhaps the title could be changed to reflect that this is a wider scope than just i386.

devel/py-maturin maintainer (kai@) CC'd for comment on the status of alternate architectures for maturin.  I think maturin has gotten support for some of these architectures, but there's also OS dependencies.  For example, ppc 32 bit was added last year (https://github.com/PyO3/maturin/pull/1026), but that might just be for linux - more work may be needed for freebsd.  This may be related: https://github.com/PyO3/maturin/issues/1002 (zig support needed).

It's likely that more projects will grow a dependency on py-poetry, so this may become a wider problem as that sort of change occurs in the ports tree.  At a glance, it does not seem easy to cut that dependency chain as a workaround.

Perhaps there could be a replacement of the dependency on py-rpds-py which would remove the maturin  / rust dependency.
Comment 2 Martin Birgmeier 2023-08-05 06:30:12 UTC
Fixed by commit 402358477e65aec282d4191d4788b79b2a3a3128.

-- Martin
Comment 3 commit-hook freebsd_committer freebsd_triage 2023-08-10 08:26:10 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=f74de16438cc844916b8227bddac10d8a989b19b

commit f74de16438cc844916b8227bddac10d8a989b19b
Author:     Kai Knoblich <kai@FreeBSD.org>
AuthorDate: 2023-08-10 08:23:02 +0000
Commit:     Kai Knoblich <kai@FreeBSD.org>
CommitDate: 2023-08-10 08:23:02 +0000

    devel/py-maturin: Update to 1.2.0

    * Switch to PEP517 build framework and remove workarounds for distutils
      which are no longer required.

    * Remove restriction for 32-bit architectures as the generation of
      32-bit Python wheels is now possible for FreeBSD. [1]

    Changelogs since 0.13.2:

    https://github.com/PyO3/maturin/blob/v1.2.0/Changelog.md

    PR:             272570, 272620 [1]
    Reported by:    Miroslav Lachman, John Hein [1]
    MFH:            No (feature release and breaking changes)

 devel/py-maturin/Makefile                          | 505 ++++++-----
 devel/py-maturin/distinfo                          | 932 ++++++++++-----------
 ...l => patch-cargo-crates_xwin-0.2.14_Cargo.toml} |   6 +-
 3 files changed, 702 insertions(+), 741 deletions(-)