1 |
On Mon, 2021-11-08 at 12:18 +0100, Michał Górny wrote: |
2 |
> Hi, |
3 |
> |
4 |
> A few years back I've slotted LLVM and Clang to make the life with |
5 |
> revdeps easier. Long story short, every major LLVM release (which |
6 |
> happens twice a year) breaks API and it takes some time for revdeps to |
7 |
> adjust. Slotting made it possible to install multiple versions |
8 |
> simultaneously, and therefore let "faster" packages use newer LLVM |
9 |
> without being blocked by "slower" packages on the user's system. |
10 |
> |
11 |
> Unfortunately, this ended up pretty bothersome to maintain. Besides |
12 |
> making ebuilds quite complex (and prone to mistakes), I'm hearing more |
13 |
> and more reports of programs being broken through getting multiple LLVM |
14 |
> versions in the link chain. |
15 |
> |
16 |
> This is not something that can be easily solved. In other words, it's |
17 |
> a mess and I don't think we're really getting anywhere. For this |
18 |
> reason, I'm considering dropping slotting and going back to permitting |
19 |
> only a single version of LLVM and Clang being installed. |
20 |
> |
21 |
> This would have two major implications: |
22 |
> |
23 |
> 1. If you installed any package that requires older LLVM, it'd block all |
24 |
> other packages from updating. If you hit two packages that do not have |
25 |
> a common supported LLVM version, you won't be able to install them |
26 |
> at all. |
27 |
> |
28 |
> On the plus side, this will motivate developers to actually start fixing |
29 |
> these packages rather than letting them rot until I start removing old |
30 |
> LLVM versions. |
31 |
> |
32 |
> 2. We will no longer support having multiple clang versions installed. |
33 |
> While it was convenient for testing stuff, it's not really a killer |
34 |
> feature though. |
35 |
> |
36 |
> The only real alternative I see is actively limiting supported LLVM |
37 |
> versions in packages to ensure that all libraries in the depgraph end up |
38 |
> using the same LLVM version. However, I don't think it's really worth |
39 |
> the effort. |
40 |
> |
41 |
> I don't have a ready unslotting plan yet. |
42 |
> |
43 |
> WDYT? |
44 |
> |
45 |
|
46 |
I've got the message and slotted LLVM and Clang are going to stay for |
47 |
the time being. |
48 |
|
49 |
-- |
50 |
Best regards, |
51 |
Michał Górny |