Llvm/lldb 11 in 20.09 vs unstable

Hi,

I use nix to jump between different llvm versions quickly. I notice that the package name between 20.09 an unstable are missaligned. I haven’t notice an issue that make this change intented so I am mention it here in case it was overlook.

In https://search.nixos.org/ you can see that

Regarding llvm* packages, between 20.09 and unstable versions are preserved

  • llvm points to 7.1.0
  • llvm_11 points to 11.0.0

But regarding lldb* packages, they are not.

  • In 20.09
    • lldb points to 7.1.0
    • lldb_11 points to 11.0.0
  • In unstable
    • lldb_7 points to 7.1.0
    • lldb points to 11.0.0

This not a big issue, but seems unexpected. Note that in unstable llvm_11 + lldb or llvm + lldb_7 should be used, whether in 20.09 is llvm_11 + lldb_11 or llvm + lldb.

I would reference the explicit major versions if you’re going to do something like switch between channels, default versions never give you the guarantee that they will be stable; in fact, that’s likely undesirable behavior.

Both channels have lldb_5 through lldb_11 defined.

Definitely. I do use pinned nixpkgs.

But since I needed to check llvm 11 I went to unstable and notice this change in the lldb package.

And, I guess, 21.03 would come from unstable which mean it will not have lldb_11 matching llvm_11 (with the _major suffix).

FYI: I just noticed this as well (and remembered this thread):
https://github.com/NixOS/nixpkgs/pull/116736