Hello *,
pkgcheck complains about each new version of dev-lisp/sbcl:
UseFlagWithoutDeps: version 2.4.1: special small-files USE flag without effect on dependencies: [ unicode ]
The USE flag "unicode" in the sbcl ebuild has nothing to do with
installing / not installing any files, small or otherwise. It determins whether the produced lisp will support unicode internally:
sbcl_feature "$(usep unicode)" ":sb-unicode"
Usually this is desirable, so, in USE we have +unicode. Is there a way to silence these warnings?
Hello *,
pkgcheck complains about each new version of dev-lisp/sbcl:
UseFlagWithoutDeps: version 2.4.1: special small-files USE flag without effect on dependencies: [ unicode ]
The USE flag "unicode" in the sbcl ebuild has nothing to do with
installing / not installing any files, small or otherwise. It determins whether the produced lisp will support unicode internally:
sbcl_feature "$(usep unicode)" ":sb-unicode"
Usually this is desirable, so, in USE we have +unicode. Is there a way to silence these warnings?
On Fri, 2024-02-09 at 10:54 -0500, Ionen Wolkens wrote:
Is there even any reason to ever disable unicode support? Point is that
why have USE for it? Or does it introduce additional dependencies?
Being able to disable things like this is one of the few reasons why
people choose Gentoo.
On Fri, 2024-02-09 at 11:57 -0500, Mike Gilbert wrote:
Based on this pkgcheck issue, this originates from a decision from by Gentoo QA team.
https://github.com/pkgcore/pkgcheck/issues/414#issuecomment-1213057268
Thanks for the dig. I agree with the reasoning for things like USE=bash-completion and USE=vim-syntax, where the added complexity of a
flag is not justified to avoid installing small files. In those cases,
the additional files simply don't do anything if you don't (for
example) use vim.
USE=unicode and USE=ipv6 are different beasts. In many cases they
directly and immediately change the behavior of the package.
On 2/9/24 4:25 PM, Michael Orlitzky wrote:
This is the part where you try to convince me that the things I want
are stupid. OK. I don't care. I want it off. Leave me alone :)
As evidenced by the removal of libressl and eudev, this logic is
fallacious and wrong and not the way Gentoo is developed.
Gentoo does indeed discuss the things that people want, and try to
determine whether they are useful to users, whether they are a placebo,
and whether they are maintainable or have an adverse effect either on
users or on the effort to maintain a consistent tree.
So circling back around to the start of the thread:
pkgcheck complains about each new version of dev-lisp/sbcl:
It is the allegation of the QA team that the option is a lie, it
contains no purpose or value and doesn't contribute to use choice, and pkgcheck is reporting the QA team's allegation.
If you wish to convince the QA team otherwise, be my guest... but I
would personally encourage you to come up with a better argument than
"the option makes me feel better about myself, I don't care what you
have to say, just leave my options alone goshdarnit; I have the right
to
be stupid".
Because I don't think you're likely to convince anyone like that.
Sorry.
Hello *,
pkgcheck complains about each new version of dev-lisp/sbcl:
UseFlagWithoutDeps: version 2.4.1: special small-files USE flag
without effect on dependencies: [ unicode ]
The USE flag "unicode" in the sbcl ebuild has nothing to do with
installing / not installing any files, small or otherwise. It
determins whether the produced lisp will support unicode internally:
sbcl_feature "$(usep unicode)" ":sb-unicode"
Usually this is desirable, so, in USE we have +unicode.
Is there a way to silence these warnings?
Both removals definitely not still being contested and debated.
Maybe support as much choice as possible, and not act like you know what users want better that the users themselves.
On Fri, 2024-02-09 at 14:09 -0500, Eli Schwartz wrote:
Asking out of genuine ignorance: what kind of direct behavioral changes
occur as a result of setting or unsetting USE=ipv6.
One example I know off the top of my head is dev-lang/php where
USE=ipv6 isn't entirely about ipv6 connectivity (although it does do
that). It also augments some of the user-facing PHP language functions
with ipv6 support. Having them enabled is not a big deal, and PHP is a programming language so you may say that it's atypical, but... for a
package that gets a new CVE every week and sits on the public web, I'd
just rather have it off?
Unicode support is similar in my mind. Adding "unicode support" to a
package might be easy (at the cost of some extra memory), but dealing
with the consequences of unicode is harder. Maybe I don't want to worry
about homoglyphs and bidirectional text when I'm validating a hostname?
Life is just simpler without it, if you know you don't need it. Things
also tend to be more space and memory efficient with features compiled
out; not to mention that the compile times themselves are improved.
You're still pulling in "extra dependencies," in a sense, even if
they're in the same tarball.
[[PGP Signed Part:Undecided]]
On 2/9/24 2:57 PM, Michael Orlitzky wrote:
One example I know off the top of my head is dev-lang/php where
USE=ipv6 isn't entirely about ipv6 connectivity (although it does do
that). It also augments some of the user-facing PHP language functions
with ipv6 support. Having them enabled is not a big deal, and PHP is a
programming language so you may say that it's atypical, but... for a
package that gets a new CVE every week and sits on the public web, I'd
just rather have it off?
Counterpoint: some PHP program out there is probably vulnerable because
it tried to validate an ipv6 address and could not distinguish between
"it's okay" and "idk if it's okay, the function you called does not
exist" (because php is really that terrible of a language).
[...]
I really don't want to fall into a trap where I make up reasons why
other people might want to do things and everyone says my reasons are
stupid. Everyone is going to have different reasons, and we have a lot
of users who are our users because they're edge cases.
It's not unfathomably stupid to build a package without ipv6 or unicode
support (whatever that means), and there are no small files to worry
about, so I don't think they deserve the special negative treatment.
Maintainability matters too. So does user experience in the other
direction: too many USE flags will lead users to confusion if they don't understand what all those flags do, and accidentally choose the wrong
answer.
That's not necessarily a reason to remove choice, so much as it is a
reason to... carefully document what that choice actually gets you.
$ equery -N uses sbcl | grep unicode
+ + unicode : Add support for Unicode
This is... vague. Good to know that it is enabled by default, but...
what? What does it do? There is no description in metadata.xml, either.
I think it is fair and reasonable for people to ask people's reasons are
for doing something when it is not actually obvious what the point is.
And when a USE flag selects or deselects dependencies, it is very easy
to know, what exactly "the point" is.
Often, USE flags have an obvious point even without selecting or
deselecting dependencies -- usually because their maintainers took care
in describing it in metadata.xml.
On 2/9/24 4:25 PM, Michael Orlitzky wrote:
This is the part where you try to convince me that the things I want
are stupid. OK. I don't care. I want it off. Leave me alone :)
As evidenced by the removal of libressl and eudev, this logic is
fallacious and wrong and not the way Gentoo is developed.
Gentoo does indeed discuss the things that people want, and try to
determine whether they are useful to users, whether they are a
placebo, and whether they are maintainable or have an adverse effect
either on users or on the effort to maintain a consistent tree.
So circling back around to the start of the thread:
pkgcheck complains about each new version of dev-lisp/sbcl:
It is the allegation of the QA team that the option is a lie, it
contains no purpose or value and doesn't contribute to use choice, and pkgcheck is reporting the QA team's allegation.
If you wish to convince the QA team otherwise, be my guest... but I
would personally encourage you to come up with a better argument than
"the option makes me feel better about myself, I don't care what you
have to say, just leave my options alone goshdarnit; I have the right
to be stupid".
Because I don't think you're likely to convince anyone like that.
Sorry.
Are users like you going to maintain and fix these obscure bugs too? I
don't recall seeing you sending in many fixes or patches, yet you seem
to be demanding that we go out of our way to accommodate you.
[[PGP Signed Part:Undecided]]
On 2/9/24 7:04 PM, Sam James wrote:
Eli Schwartz <eschwartz93@gmail.com> writes:
Often, USE flags have an obvious point even without selecting or
deselecting dependencies -- usually because their maintainers took care
in describing it in metadata.xml.
To pick up on this point: yes, if one concludes the USE flag has merit
and the global description is either poor or has some reason to be
considered spurious in the case of the package, you should consider
documenting it to avoid this question.
Adding a suppression like https://github.com/pkgcore/pkgcheck/issues/478
proposes should really be accompanied by such an improvement anyway for
the benefit of users.
I'd like to request in the event that this pkgcheck ticket is
implemented, that including a description in metadata.xml which provides additional package specific information (or, programmatically, "is
non-empty and un-equal to the global description") is made mandatory for
the purposes of silencing this warning... :)
In cases where this USE flag is appropriate, you can silence this
warning by adding a description to this USE flag in metadata.xml file
and thus making it a local USE flag instead of global one.
parona ended up messaging me and pointing out that https://pkgcore.github.io/pkgcheck/man/pkgcheck.html#useflagwithoutdeps already says...Thank you very much! Done. The problem solved.
In cases where this USE flag is appropriate, you can silence this
warning by adding a description to this USE flag in metadata.xml file
and thus making it a local USE flag instead of global one.
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 399 |
Nodes: | 16 (2 / 14) |
Uptime: | 101:47:05 |
Calls: | 8,363 |
Calls today: | 2 |
Files: | 13,165 |
Messages: | 5,898,006 |