So let me be very clear: if you as a maintainer feel that you control who or what can use your code, YOU ARE WRONG.

  • Rentlar@lemmy.ca
    link
    fedilink
    arrow-up
    2
    ·
    23 days ago

    Holy moly that is a man page of a roast. Linus has gotten extremely good at making himself clear while maintaining his temper just enough.

    His argument is applicable to much of FLOSS: your code and contributions you have say over, but you can’t complain about how people used your FLOSS code endpoints downstream. In exchange, any changes you make are the accessors’ responsibility to keep up with.

    • RavuAlHemio@lemmy.world
      link
      fedilink
      arrow-up
      2
      ·
      23 days ago

      Yeah… I kinda wish he had provided it before all those devs quit, though.

      Of course, he might have kept silent as a test to see if the project can remain healthy without his active stewardship, which makes sense for such a large and important project. I’m sure he’s unimpressed by the result.

  • magic_lobster_party@fedia.io
    link
    fedilink
    arrow-up
    1
    ·
    23 days ago

    Not a follower of kernel development, but I agree with Linus. The latest drama is just full of unprofessional toxicity (from both sides).

    Linus had said for years that he wants to see Rust in some form in the kernel. You might not like it, but sometimes you just have to disagree and commit.

  • deur@feddit.nl
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    23 days ago

    What the fuck is with the person in the email chain implying not all drivers can be written in Rust? Rust does literally everything C can, nothing stopping you from using unsafe properly to achieve that.

      • barsoap@lemm.ee
        link
        fedilink
        arrow-up
        1
        ·
        edit-2
        23 days ago

        Begone, vile creature, use call/cc if you’re into that kind of stuff. What you’re doing might be consensual but it sure ain’t safe or sane. Unless you’re implementing call/cc, then I forgive you, and extend my condolences.

      • barsoap@lemm.ee
        link
        fedilink
        arrow-up
        2
        ·
        edit-2
        22 days ago

        That’s a performance optimisation which llvm is likely to do for you anyways, jump tables aren’t exactly rocket science. Gazing into my crystal ball, might have to turn your enum variant Foo(u8) with possible values 0…15 into Foo0 through Foo15 (or maybe better Foo(EnumWith16Variants)) so that the compiler doesn’t have to evaluate code to figure out that it doesn’t need to NOP the rest of the jump range out, or bail out of generating a jump table, whatever it would do.