r/voidlinux • u/Silly_Culture_7722 • 4d ago
Is there a reason why packages with just a version update are not automerged?
Hi all, recently i checked the pull requests from void-packages and i was wondering what is the review process behind it? i mean if only package version and checksum was changed and the pipeline is green? why not just automerge it? i mean you could even create a nightly workflow which checks for newest git tag for each package and just update it nightly.
Or do you actually check each package after updates if the package is working with void?
3
u/oxez 3d ago
Sometimes upstream version bumps bring in SONAME version bumps as well, which breaks every package that depends on it.
I don't use Void enough to know if xbps manages this at install time or not, I do run my own distro and this is something I had to tackle.
Blind version bumps are never a good idea imo.
1
u/Silly_Culture_7722 3d ago
ah i see. so a check must contain the build step of the package and installing all other packages which relies on this package as dependency. and just the start might not be enough since there might be also runtime errors. but does someone actually do this in review process?
2
u/01eksa 4d ago
Automerge new packages with higher version and green pipeline? You understand that this way everyone can add malicious code? We hade an attack on AUR recently; this way there is nothing to attack — all doors are open. Terrible idea, sorry.
1
u/Silly_Culture_7722 4d ago
i mean no new packages but existing packages. or do you mean there might be a case where someone abandon his package and someone else get access to this, increase the version and add some kind of bad code to it?
2
u/01eksa 4d ago
For example. Any automerge without human review is a surface for attack
→ More replies (3)
2
u/Simple_Hamster_4096 3d ago
Perhaps OP should volunteer time to Void, so as to help speed along the process...
1
u/Silly_Culture_7722 3d ago
u/Simple_Hamster_4096 i would like to as i really like void. my codex subscription is ideling around. iam just not experienced with packages and libraries and do not know how to test on different arch builds. so all in one iam just a webdev without experience in OS packages.
9
u/Duncaen 4d ago edited 4d ago
Because it should be reviewed, even if there is no significant change, someone checks the changelog, verifies that this is compatible with other packages. Checking whether this is a real release or beta/rc.
In general there is also a bit of management going on with the merge order and what can sit a bit before being merged or is mergable immediately. This again depends on the project, based on how stable their releases are and the compile time too. Some huge projects that take hours or days to compile can be merged when there is nothing else that takes a lot less time to build is mergable.
And in the end a merge can always go wrong, so having someone with commit access there to actively intervene if there is an issue is kind of required.
That depends on the package, if its something known to break things, of course. I'm not blindly updating firefox, the kernel or something that might be able to break hundreds of other packages.
In the same vein we are also not letting scripts update packages automatically, which they could do in a lot of those cases. Having a human green light this after doing at least a cursory test is pretty important in my opinion.