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