On 08/12/2017 09:50 AM, Michael Orlitzky wrote:
> Q. But what about the rebuilds?
> 
>   For most packages, the rebuilds simply don't matter. Unless you're
>   the maintainer of libreoffice, firefox, chromium, etc. -- just do the
>   revision and forget about the (quick) rebuilds.

I really wish people would stop trotting out this false argument. Not
everyone has the latest and greatest hardware. Rebuilds have a real cost
to end users and as such we should use them wisely.

>   We tell everyone to use --changed-use and --newuse if they want
>   things to work, so they were probably going to rebuild anyway.

Who tells everyone to use these flags and where? I never use these flags
day-to-day, only if I need that specific functionality for that reason

> Q. But what if I maintain firefox, and I need to change  IUSE?
> 
>   If the IUSE change isn't important, just make the new revision in a
>   branch and wait to commit it later when there are more changes
>   piled up. If it is important (like if its default value changes
>   RDEPEND), then it would have required a revision anyway.

Please stop trying to force workflows on people. Using that same logic,
I can make the IUSE change in-place and it would be propagated in the
next version bump.

> Q. But I work on a team, and we can't all work in different branches.
> 
>   If you work on a massive package and if you're collaborating with
>   others regularly, you can commit the new ebuild masked. This is
>   annoying, but is an extremely rare combination of circumstances.

Again, let's not try and tell teams which workflow works best for them.

> == tl;dr ==
> 
> We would be better off with respect to IUSE changes and revisions if we
> deleted the --changed-use and --newuse flags right now, and just
> required developers to revbump when changing IUSE.
> 
> Package managers get simpler, documentation gets simpler, the user
> interface gets simpler, and behavior becomes more uniform and predictable.
> 
> Please let me know what you think.

I disagree with this change because your proposed benefits don't hold up:

>   * We can delete all of the PM code for --changed-use and --newuse and
>     friends.

As pointed out by Brian, we still need at least --changed-use even if
IUSE changes in-place are banned.

>   * The documentation becomes much simpler: revbump if IUSE changes.

We should base our policies around the cost / benefit of said policy,
not how many or few words we need to write in the devmanual about it.

>   * Users can omit --newuse and --changed-use from their lives.

They already can.

>   * All package managers now handle IUSE changes properly.

If you want to see consistent behaviour in how package manages handle
IUSE, I suggest sending patches for PMS. I don't see any problem in
portage/paludis/pkgcore handling things differently. That is the point
of having different package managers, after all.

>   * emerge runs a bit faster.

Why will it run faster?

Reply via email to