1 |
On Tue, Feb 27, 2018 at 12:43 PM, Michael Orlitzky <mjo@g.o> wrote: |
2 |
> On 02/27/2018 12:05 PM, Ian Zimmerman wrote: |
3 |
>> |
4 |
>> When I read this, I realize I don't understand the difference between |
5 |
>> these two options. Or to be more accurate, I know that --deep means |
6 |
>> looking at dependencies beyond the first level; but isn't that just a |
7 |
>> superset of those found by --changed-deps? |
8 |
> |
9 |
> You're right about --deep. |
10 |
> |
11 |
> The --changed-deps flag, on the other hand, is a crutch for when |
12 |
> developers make in-place edits to ebuilds and don't make the necessary |
13 |
> revision bump. The revision bump is required, but sometimes people |
14 |
> forget or are just assholes and don't care that this is a huge hassle |
15 |
> for end users. When you use --changed-deps, portage scans the tree for |
16 |
> those sorts of mistakes, and rebuilds the packages that have been |
17 |
> changed in-place, without regard to where in the dependency graph they lie. |
18 |
> |
19 |
|
20 |
To be fair --changed-deps also forces builds that aren't really |
21 |
necessary. Not all dep changes necessarily require a revbump. |
22 |
However, you are right that these do get missed when they are |
23 |
necessary, and really devs should just default to revbumping except |
24 |
when they know it isn't needed. |
25 |
|
26 |
I'm willing to bet that 95% of the --changed-deps rebuilds aren't |
27 |
necessary. The problem is that when one is necessary it tends to |
28 |
result in problems that the average user is going to struggle to |
29 |
troubleshoot. I suspect most users would rather do a few more |
30 |
rebuilds than to have stuff break mysteriously and be forced to try to |
31 |
figure out what combination of package rebuilds is necessary to get it |
32 |
working, and most people probably would prefer extra builds to |
33 |
breakage even if it was easy to troubleshoot. |
34 |
|
35 |
-- |
36 |
Rich |