1 |
On Wed, Sep 16, 2015 at 3:31 PM, Michał Górny <mgorny@g.o> wrote: |
2 |
> |
3 |
> As for virtuals and eclasses, I don't really understand why anyone |
4 |
> thinks they are special in any regard. In both cases, we're talking |
5 |
> about regular dependency change in metadata, and we need to understand |
6 |
> the consequences. And they're going to be the same whether we change |
7 |
> dep A to B, A to virtual, and whether we change it directly or via |
8 |
> eclass. |
9 |
|
10 |
Sure, but a developer KNOWS when their RDEPENDS change when they're |
11 |
modifying it directly in an ebuild. If they inherit an eclass and it |
12 |
sets an RDEPEND and the eclass changes, then it effectively changes |
13 |
the dependency for every ebuild that inherits it even though there |
14 |
weren't any commits to any of those ebuilds. |
15 |
|
16 |
So, we need to think about what kinds of changes we allow to eclasses. |
17 |
This also applies to virtuals, but those don't have the same kind of |
18 |
indirect impact to packages that RDEPEND on them any more than changes |
19 |
in any other RDEPEND of an RDEPEND. |
20 |
|
21 |
> 2. Dependency changes that don't need to apply immediately don't need |
22 |
> revbump. For example, if foo.eclass raises minimal required version of |
23 |
> a dependency but all packages built so far will work with the old one. |
24 |
> |
25 |
|
26 |
Are we talking about a build dependency or a run-time dependency? I |
27 |
don't get why we'd increase the minimal required version of a run-time |
28 |
dependency if everything built so far still works with the old |
29 |
version. |
30 |
|
31 |
Also, assuming that there is a case where this actually happens, does |
32 |
this have any impact on running --depclean or any other obscure |
33 |
blocker issues because the version in VDB is no longer in the tree? |
34 |
|
35 |
When the policy is just a simple "always revbump when you change |
36 |
RDEPEND, whether you're an ebuild, an eclass, or a virtual" then I can |
37 |
see how it is painful, but I can also see how it is fairly |
38 |
bulletproof. |
39 |
|
40 |
-- |
41 |
Rich |