Re: Python 3.4 merged into Rawhide

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 05/27/2014 04:14 PM, Bohuslav Kabrda wrote:
> Hi all,
> the f21-python side tag, containing Python 3.4, has been merged into Rawhide.

Awesome, thanks for the hard work.

> We managed to rebuild 216 packages out of 452 that BR: python3-devel and 7 that BR: python3 - these were the packages (or dependencies of packages) that failed to build in my local mockchain build for some reason (either problem in the upstream source code, problem in specfile or dependency cycle). There are still few packages that failed to rebuild and weren't fixed yet:
> - dnf and hawkey (I was told by Ales that he'll handle this once Python 3.4 is merged to rawhide; we also had rhbz#1098109 blocking us, but that's been fixed today)
> - iPython and few depending packages (this needed a rebase to work properly with Python 3.4 - the new version hit Rawhide just recently, a simple rebuild should do)
> - python-django15
> I'll keep working on these packages with their maintainers to get them building and working fine.
> All the other packages built fine for me locally, so the mass rebuild should get the job done for these.

No, you cannot rely on the mass rebuild here. The reason is that the
mass rebuild goes from a-z, in the alphabetical order and _not_ in the
dependency order.

Furthermore, even if the alphabetical order would normally work when you
are doing manual rebuilds (you'd rebuild a; wait for it to appear in the
buildroots; rebuild b; wait for it to appear in the buildroots; rebuild
c ...), the mass rebuild doesn't include any newly-rebuilt packages in
its buildroot, so you really cannot use it to rebuild any dependency chains.

This means that anything that directly or indirectly BuildRequires an
unrebuilt python3 library is going to fail in the mass rebuild.

Let me give an example.

python3-pytz was one of the packages that didn't get rebuilt. In the
rawhide tree, this is required by:

python3-babel-0:1.3-3.fc21.noarch
python3-celery-0:3.1.9-1.fc21.noarch
python3-icalendar-0:3.6.2-2.fc21.noarch
python3-matplotlib-0:1.3.1-4.fc21.x86_64
python3-nikola-0:6.4.0-1.fc21.noarch
python3-pandas-0:0.12.0-5.fc21.x86_64
python3-taskw-0:0.8.1-2.fc21.noarch

... which are all libraries. If we try to install any of the packages
from above (either locally or to install in koji for building other
packages), they'd fail to install because python3-pytz cannot be
installed. Same goes for any packages that depend on anything from the
list above; they cannot be installed because they depend on an unrebuilt
python3-pytz.

In order to rebuild those, first we'd have to rebuild python3-pytz, then
one of the libraries in the list above, until we reach to the top of the
iceberg. And this has to be done in the dependency order; rawhide a-z
mass rebuild does NOT help here.

Or to put it another way, leaving deep dependency trees unrebuilt would
undermine the the mass rebuild because a huge number of other packages
that have (indirect) build dependencies on the unrebuilt packages are
going to fail.

-- 
Hope this helps,
Kalev

P.S. My personal agenda here is that I'm handling the GNOME 3.13.2
builds this week and a number of those have python3 dependencies. I'll
need build roots to function again and not have python3-related broken
deps to be able to go on with building the GNOME updates.
-- 
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct





[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]
  Powered by Linux