Date: Thu, 9 Jan 2025 15:25:47 +0000 From: Nuno Teixeira <eduardo@freebsd.org> To: Charlie Li <vishwin@freebsd.org> Cc: FreeBSD Mailing List <freebsd-ports@freebsd.org> Subject: Re: Python: Switch from distutils to pep517 Message-ID: <CAFDf7ULam4TRr%2BxOO0UPVJo17j6yXXDERW6TAyhztrpM625H3Q@mail.gmail.com> In-Reply-To: <97ad2d36-ed8d-47a5-ad74-b4b5ace3a14a@freebsd.org> References: <CAFDf7U%2BHVXu3=Mw3os4J-SpNL_aH2scc2LQ9h3nACoYN-ZeCMA@mail.gmail.com> <97ad2d36-ed8d-47a5-ad74-b4b5ace3a14a@freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--00000000000058aed6062b4798ab Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hello Charlie, Thanks for clarification and I'm looking for pep517 to get updated soon. What a commiter can do about this? Each python port that I come cross with in bugzilla that uses distutils, I check if pep517 is possible and then I try to convince maintainer to use that build instead. Some maintainers go for new build (sometimes adding pytest to it too) others prefers to wait until it is *really* deprecated. I don't know if a decision of a mass change will be made or not, but as committer, I'm thinking opening PRs for ports where pep517 do work. Maybe a master PR should exist to connect all indidual PRs. With an updated pep517 wiki this will be easier to execute. Thoughts? Thanks, Charlie Li <vishwin@freebsd.org> escreveu (quinta, 9/01/2025 =C3=A0(s) 05:4= 1): > Nuno Teixeira wrote: > > Hello all, > > > > How is the status of switching from deprecated distutils to pep517 buil= d? > > I remember some time ago to see some changes but it seems to stalled no= w. > > > Not stalled. Not every Python package in the wild has flipped to PEP-517 > yet. > > For people upgrading to pep517, are depends correct? > > > > BUILD_DEPENDS=3D \ > > ${PY_SETUPTOOLS} \ > > ${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR} > > > > Or ${PY_SETUPTOOLS} should be replaced with ? > > ${PYTHON_PKGNAMEPREFIX}setuptools>0:devel/py-setuptools@${PY_FLAVOR} > > > The latter. Originally I implemented ${PY_SETUPTOOLS} when > devel/py-setuptools58 was still viable for the remaining > USE_PYTHON=3Ddistutils cases, but both significant changes in later > devel/py-pyproject-hooks breaking setuptools 58 (and rendering > maintenance uneconomical) and continued maintenance of setup() direct > execution obviated that plan. Until I update devel/py-setuptools itself, > which will specify devel/py-wheel as both {BUILD,RUN}_DEPENDS, you will > need to also specify the latter in each setuptools PEP-517 consumer. > > I will update the documentation (mostly the wiki?) accordingly. > > -- > Charlie Li > ...nope, still don't have an exit line. > --=20 Nuno Teixeira FreeBSD UNIX: <eduardo@FreeBSD.org> Web: https://FreeBSD.org --00000000000058aed6062b4798ab Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr"><div><div><div><div><div><div><div><div><div>Hello Charlie= ,<br><br></div>Thanks for clarification and I'm looking for pep517 to g= et updated soon.<br><br></div>What a commiter can do about this?<br></div>E= ach python port that I come cross with in bugzilla that uses distutils, I c= heck if pep517 is possible and then I try to convince maintainer to use tha= t build instead.<br></div>Some maintainers go for new build (sometimes addi= ng pytest to it too) others prefers to wait until it is *really* deprecated= .<br><br></div>I don't know if a decision of a mass change will be made= or not, but as committer, I'm thinking opening PRs for ports where pep= 517 do work.<br></div>Maybe a master PR should exist to connect all indidua= l PRs.<br><br></div>With an updated pep517 wiki this will be easier to exec= ute.<br><br></div>Thoughts?<br><br></div>Thanks,<br></div><br><div class=3D= "gmail_quote gmail_quote_container"><div dir=3D"ltr" class=3D"gmail_attr">C= harlie Li <<a href=3D"mailto:vishwin@freebsd.org">vishwin@freebsd.org</a= >> escreveu (quinta, 9/01/2025 =C3=A0(s) 05:41):<br></div><blockquote cl= ass=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid= rgb(204,204,204);padding-left:1ex">Nuno Teixeira wrote:<br> > Hello all,<br> > <br> > How is the status of switching from deprecated distutils to pep517 bui= ld?<br> > I remember some time ago to see some changes but it seems to stalled n= ow.<br> > <br> Not stalled. Not every Python package in the wild has flipped to PEP-517 <b= r> yet.<br> > For people upgrading to pep517, are depends correct?<br> > <br> > BUILD_DEPENDS=3D \<br> > ${PY_SETUPTOOLS} \<br> > ${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR}<br> > <br> > Or ${PY_SETUPTOOLS} should be replaced with ?<br> > ${PYTHON_PKGNAMEPREFIX}setuptools>0:devel/py-setuptools@${PY_FLAVOR= }<br> > <br> The latter. Originally I implemented ${PY_SETUPTOOLS} when <br> devel/py-setuptools58 was still viable for the remaining <br> USE_PYTHON=3Ddistutils cases, but both significant changes in later <br> devel/py-pyproject-hooks breaking setuptools 58 (and rendering <br> maintenance uneconomical) and continued maintenance of setup() direct <br> execution obviated that plan. Until I update devel/py-setuptools itself, <b= r> which will specify devel/py-wheel as both {BUILD,RUN}_DEPENDS, you will <br= > need to also specify the latter in each setuptools PEP-517 consumer.<br> <br> I will update the documentation (mostly the wiki?) accordingly.<br> <br> -- <br> Charlie Li<br> ...nope, still don't have an exit line.<br> </blockquote></div><div><br clear=3D"all"></div><br><span class=3D"gmail_si= gnature_prefix">-- </span><br><div dir=3D"ltr" class=3D"gmail_signature"><d= iv dir=3D"ltr"><div><font color=3D"#888888">Nuno Teixeira</font></div><div>= <div><font color=3D"#888888"> FreeBSD UNIX:=C2=A0 <eduardo@FreeBSD.org>=C2=A0 =C2=A0Web:=C2=A0 <a h= ref=3D"https://FreeBSD.org" rel=3D"noreferrer" target=3D"_blank">https://Fr= eeBSD.org</a><br></font></div></div></div></div> --00000000000058aed6062b4798ab--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAFDf7ULam4TRr%2BxOO0UPVJo17j6yXXDERW6TAyhztrpM625H3Q>