Dependency aware package build order #78

Closed
opened 2021-12-14 19:34:58 +01:00 by Eris420 · 5 comments

Currently it appears that there's no real handling of the order packages are built in. The impetus for this request is that currently there are updates available for many python packages that have been built with python 3.10, but the actual python 3.10 package is not yet available, so updating now would cause many python packages to break. It would be great if there was some sort of dependency awareness built in, so python 3.10 itself would be available before all the other packages that require it.

Currently it appears that there's no real handling of the order packages are built in. The impetus for this request is that currently there are updates available for many python packages that have been built with python 3.10, but the actual python 3.10 package is not yet available, so updating now would cause many python packages to break. It would be great if there was some sort of dependency awareness built in, so python 3.10 itself would be available before all the other packages that require it.

Maybe when a number of packages need to be rebuilt at once for the same reason, hold the packages from the repo until all of the queued builds complete? Probably not the smartest solution, but it seems like it could help.

Maybe when a number of packages need to be rebuilt at once for the same reason, hold the packages from the repo until all of the queued builds complete? Probably not the smartest solution, but it seems like it could help.

omg, please! I've had to start using the main arch repos again because python packages are just all broken.

omg, please! I've had to start using the main arch repos again because python packages are just all broken.
Owner

I agree that this needs to be solved.

Maybe when a number of packages need to be rebuilt at once for the same reason, hold the packages from the repo until all of the queued builds complete? Probably not the smartest solution, but it seems like it could help.

That is probably the only solution which would not involve dependency resolving, which is not easily implemented. Maybe if there is something in libalmp that I could use, but I have to look that up.

The drawback here is that the whole repo would appear frozen for (in case of a rebuild in that magnitude we just saw) couple of days to a week.

I agree that this needs to be solved. > Maybe when a number of packages need to be rebuilt at once for the same reason, hold the packages from the repo until all of the queued builds complete? Probably not the smartest solution, but it seems like it could help. That is probably the only solution which would not involve dependency resolving, which is not easily implemented. Maybe if there is something in *libalmp* that I could use, but I have to look that up. The drawback here is that the whole repo would appear frozen for (in case of a rebuild in that magnitude we just saw) couple of days to a week.
anonfunc added the
enhancement
label 2021-12-15 10:35:05 +01:00
anonfunc changed title from [enhancement] Dependency aware package build order to Dependency aware package build order 2021-12-31 12:14:52 +01:00
Owner

I forget to mention it here, but I implemented @burrhole 's suggestion in e0e76af757 a while back.

I would like a more sophisticated build-ordering at some point, but this prevents most of the problems for now, with the aforementioned drawback.

I forget to mention it here, but I implemented @burrhole 's suggestion in https://git.harting.dev/ALHP/ALHP.GO/commit/e0e76af757b6d21eb0ad89fa56036474b07f5d43 a while back. I would like a more sophisticated build-ordering at some point, but this prevents most of the problems for now, with the aforementioned drawback.
Owner

This is solved by building in batches.

This is solved by building in batches.
Sign in to join this conversation.
No description provided.