On Friday 2019-02-08 15:03, Martin Wilck wrote:
On Fri, 2019-02-08 at 14:25 +0100, Jan Engelhardt wrote:
On Friday 2019-02-08 13:22, Martin Wilck wrote:
I'm aware that, in principle, /bin/sh is supposed to be the Bourne shell on Unix systems. But as a matter of fact, on current openSUSE, it is not.
But it could be. In fact, it can be. `zypper dup` yesterday with an update block of 120 packages yielded only 7 scriptlet problems when sh is dash.
For me the question is, what's the benefit?
Off the top of my head and not very scientifically measured, ./configure for kopano.spec completes 15% faster with pbosh.
No one needs to write sh-compatible code. The code just needs to be annotated that it requires a certain interpreter. Since script files already have a #! line most of the time, that's taken care of.
... unless that line reads '#! /bin/sh'.
Debian is one distro where dash is prominently featured in one capacity or another, so upstream software already has to deal with the situation. Which leaves us with SUSE-specific software, and from a glance at e.g. github.com/openSUSE/sysconfig, they all quite consistently declare bash. I would argue that, in fact, people rather write #!/bin/bash these days just because it's in more or less every howto, and no newbie wants to have to deal the significant changes that a POSIX sh would bring.
Since I literally get to see every new line of spec code due to factory-review, many specfiles have already gotten their treatment (if one was even needed). The upside is that specfiles don't need a lot of work because everyone tries to keep them short anyway and reuse macros due to the volume of it all.
What rules do you follow in this review work?
* Does it build? No => back to the drawing board (reject) * https://en.opensuse.org/openSUSE:Creating_a_changes_file_(RPM) fulfilled? No => give up, complain (comment), or let someone else have the honor to reject it * https://en.opensuse.org/openSUSE:Package_description_guidelines fulfilled? No => complain or outright make an independent SR to the develprj/DP for evaluation and debate * https://en.opensuse.org/openSUSE:Packaging_guidelines#Licensing https://en.opensuse.org/openSUSE:Packaging_guidelines#Legal (only sometimes and only cursory, since there's a dedicated legal department and robots doing that already) metadata mismatch => reject * https://en.opensuse.org/openSUSE:Trademark_guidelines failure to abide => SR to DP (the bots don't catch it ATM) * https://en.opensuse.org/openSUSE:Packaging_guidelines and https://en.opensuse.org/openSUSE:Specfile_guidelines nonconformance => SR to DP, so I get the credit for fixing it * Anything else appears worth fixing => SR to DP
Do you require POSIX compliance?
No.
Or compliance with dash's features, which is not the same?
No.
Do other reviewers follow the same rules as you do?
Reviewers may forget some points sometimes letting bad stuff pass through, but they be forgiven for the guidelines are so plentiful and humans have a certain MTBF. So... yes, they follow the "rules". Do they follow the same algorithm? I suspect not everyone will jump in and proactively fix a submission for the submitter, because that constitutes a development not a review activity. -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org