On 05-07-2023 01:25, Maxwell G wrote:
On Wed Jul 5, 2023 at 00:50 +0200, Sandro wrote:
On 05-07-2023 00:06, Maxwell G wrote:
On Tue Jul 4, 2023 at 23:45 +0200, Sandro wrote:
<snip>
I see one of my packages, python-fvs, in the list of failed builds. I'm
also one of the maintainers of Bottles, which requires python-fvs.
Bottles itself is mostly Python code. I would have expected Bottles to
be rebuild as well. With python-fvs failing, Bottles should fail to install.
But bottles never received the 'Rebuilt for Python 3.12' commit. Most
interestingly, neither did python-fvs. But it is on the list of failed
builds.
AFAIK, the rebuild scripts only rebuild packages whose dependencies are
available. python-fvs depends on python3-orjson which fails to build
with Python 3.12. Its tests segfault. I opened [1] upstream. bottles
then depends on python3-fvs so that wasn't rebuilt either.
So, python-fvs fails to build solely because python-orjson is not
available. And that is determined before the package is even build.
Smart! ;)
Albeit, it's a bit misleading, since the package wasn't really build. I
was interested to learn why python-fvs failed to build. That's why I
went looking for the build.
Yeah. Technically, it does fail to build from source (if you tried to
build it, it would fail at the dnf builddep stage). It's a bit
counterintuitive, but it makes more sense that wasting koji resources to
rebuild something that you know will fail.
I agree. It would have failed. And it makes no sense wasting resources.
Not sure how the list Tomáš sent was created. But it might be worth
differentiating: 1. Fails to build 2. Not build due to dependency
failing to build
But what about Bottles? It was never built in f39-python either and
python-fvs is not a build requirement for Bottles, only a runtime
requirement. Does that also exclude it from being build in the side-tag?
Ah, I was not entirely correct. Looking more closely, bottles doesn't
depend on python(abi) at runtime (i.e. it doesn't install any files into
%{python3_sitelib} and/or %{python3_sitearch}) or link to libpython, so
it isn't part of the rebuild to begin with. It just depends on
/usr/bin/python3. That package does some kooky mason stuff instead of
using standard Python packaging tools, and it isn't tied to a specific
python version. It will FTI once the side tag is merged if python-orjson
and python-fvs aren't built, though.
That's what I thought. Bottles will eventually go FTI. Although, I
wouldn't be surprised if something broke under the hood. But that's more
likely to surface when running Bottles.
Sorry, if all that is obvious to experienced packagers. It's the first
time for me that I'm going through a mass rebuild as a package maintainer.
Nah, Python mass rebuilds are a pretty special event :).
Tomáš and Miro gave a good talk about the process at Nest if you're
curious: https://www.youtube.com/watch?v=0ODrMrYnDYs
Thanks for taking the time to explain and for the link Maxwell. I
appreciate it.
-- Sandro
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue