• Ephera@lemmy.mlOP
    link
    fedilink
    English
    arrow-up
    9
    ·
    3 days ago

    Just upgraded ten or so smaller projects with no compile errors whatsoever. And then one larger project (probably 20k lines of code or so), which just had a few calls to env::set_var() that needed to be wrapped in unsafe, as well as some uses of ref in pattern-matching, which were apparently not needed, so I’m actually glad to be rid of those.

    Very happy with that overall. I was already worried, they might introduce too many breaking changes with how long they were working on this edition, but those worries just evaporated.

      • Ephera@lemmy.mlOP
        link
        fedilink
        English
        arrow-up
        3
        ·
        2 days ago

        Ah, I was just wondering, if I should be upgrading all my libraries. It’s not like many users would be impacted, but still good to be aware of.

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

          In general, apps/bins should strive for the latest msrv and lastest dependencies

          Libraries should do the reverse and try for the lowest msrv and dependencies version (That actually work! Don’t put version = "1" when you need 1.4.2!)

    • BB_C@programming.dev
      link
      fedilink
      arrow-up
      2
      ·
      3 days ago

      Just upgraded

      Weird wording!
      Maybe it’s just me, but this may give the impression that it’s something that is strictly needed, or will provide any immediate improvement, which is not the case, unless you’re still actively working on these projects and plan to use/depend on features/behaviors required by the new edition.

      • Ephera@lemmy.mlOP
        link
        fedilink
        English
        arrow-up
        2
        ·
        3 days ago

        Yeah, fair enough. I was mainly curious, how much would break, as in how quickly I might expect the Rust ecosystem to adopt these new features. Well, and unless there’s a reason against it, I’d prefer having everything on the same edition, i.e. the newest edition.

        • BB_C@programming.dev
          link
          fedilink
          arrow-up
          1
          ·
          2 days ago

          I might expect the Rust ecosystem to adopt these new features.

          This again points to you maybe not understanding how editions work, or maybe I’m just reading it wrong again. But you “upgrading” has no effect on your dependencies, and vise versa (except indirectly if MSRV is a factor as another user mentioned).

          • Ephera@lemmy.mlOP
            link
            fedilink
            English
            arrow-up
            2
            ·
            2 days ago

            I’m just talking about things like async closures looking like they might be really useful in a frontend framework we use. And I’m wondering when that framework’s documentation will recommend their usage. Or if there’s fancy things they can do with the AsyncFn traits.

            I will have to try out, if I can just pass an async closure without that framework changing anything. That’s the kind of thing where I am still unclear, how it will affect things. But the basic premise of editions isn’t lost on me, and this isn’t my first edition switchover either.