public inbox for gentoo-dev@lists.gentoo.org
 help / color / mirror / Atom feed
From: Sam James <sam@gentoo.org>
To: gentoo-dev@lists.gentoo.org
Subject: Re: [gentoo-dev] special small-files USE flag without effect on dependencies: [ unicode ]
Date: Sat, 10 Feb 2024 00:04:59 +0000	[thread overview]
Message-ID: <87cyt5rxf5.fsf@gentoo.org> (raw)
In-Reply-To: <4a608d4e-a605-41a7-9d64-3ef4247f834b@gmail.com>

[-- Attachment #1: Type: text/plain, Size: 4034 bytes --]


Eli Schwartz <eschwartz93@gmail.com> writes:

> [[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 was going to make this point as well but I didn't want to go down that
route as I figured it'd come across like I'm questioning Michael, as
oppossed to trying to make a point about using an option simply because
it exists.

i.e. Disabling an option isn't always as simple as it sounds (see
below).

But I'm also not personally wanting to debate that PHP should remove it,
just saying that this sort of consideration should be made and it's part
of why a USE flag for everything is not always great.

We *HAVE* had real problems like this before, see also USE=threads
(check out commit bd4d42f83c774c36bf879a5b7ec89d373546743e).

> [...]
>> 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.


also whether the flag then gets tinderboxed, reverse dependencies having
to depend on the right flags, debugging user issues which may not be
obvious (especially if they surface in another application/interface)
because of it...

(It's also worth us having the discussion about whether a flag existing
means a tinderbox should try it, e.g. USE=debug which IMO isn't suitable
for this at all (see also its description) and the kernel stuff like for
secureboot.)

>
> 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.
>

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.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 377 bytes --]

  parent reply	other threads:[~2024-02-10  0:11 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-02-09 15:23 [gentoo-dev] special small-files USE flag without effect on dependencies: [ unicode ] Andrey Grozin
2024-02-09 15:43 ` Mike Gilbert
2024-02-09 15:54 ` Ionen Wolkens
2024-02-09 16:07   ` Michael Orlitzky
2024-02-09 16:57     ` Mike Gilbert
2024-02-09 17:17       ` Michael Orlitzky
2024-02-09 18:40         ` Mike Gilbert
2024-02-09 19:09         ` Eli Schwartz
2024-02-09 19:57           ` Michael Orlitzky
2024-02-09 21:04             ` Eli Schwartz
2024-02-09 21:25               ` Michael Orlitzky
2024-02-09 21:56                 ` Eli Schwartz
2024-02-09 22:56                   ` stefan11111
2024-02-10  0:03                     ` Matt Jolly
2024-02-10 11:48                     ` David Seifert
2024-02-10 17:26                       ` stefan11111
2024-02-11  0:58                         ` Eli Schwartz
2024-02-10 11:22                   ` orbea
2024-02-11  0:58                     ` Eli Schwartz
2024-02-10  0:04               ` Sam James [this message]
2024-02-11  0:42                 ` Eli Schwartz
2024-02-11  3:46                   ` Sam James
2024-02-11  3:56                     ` Eli Schwartz
2024-02-12  4:54                     ` Andrey Grozin
2024-02-10  0:00             ` Sam James
2024-02-09 23:52 ` Sam James

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87cyt5rxf5.fsf@gentoo.org \
    --to=sam@gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox