How Rye Works: The Shims

Поделиться
HTML-код
  • Опубликовано: 20 окт 2024

Комментарии • 15

  • @iskuchekov
    @iskuchekov 7 месяцев назад +6

    Came here to listen to the keyboard sounds ^^

  • @pietraderdetective8953
    @pietraderdetective8953 6 месяцев назад

    I have started using Rye since a couple days ago..the 1st day was rough coz I hadn't understand how to use it for my workflow (plenty of folders & projects scattered everywhere).
    Now I'm lovin it and a opportunity to tidy up my folders/projects structure..I can't imagine not using it!
    Also I like Rye approach compared to Cargo which is a bit too strict IMO.
    Amazing tool you've built here, appreciate it very much!

  • @fzy81
    @fzy81 7 месяцев назад

    Interesting. My first thought was that the shims work a bit like BusyBox. But I didn't know Cargo also did something similar under the hood, and it's the first time I hear about Volta too. Great video :)

  • @squid1623
    @squid1623 5 месяцев назад +1

    what keyboard do you use?

  • @mpricejones
    @mpricejones 7 месяцев назад

    In a couple of places you seem to have empty match blocks (ie, no branches at all) eg. line 321 visible at 8:44. I've been writing Rust for a couple of years and I don't think I've come across that. Is there a name for that approach? What purpose does it solve? To be warned if the function called starts to return something of interest?
    I've not used Python very activity for a while but rye seems like a blessing. Much respect for creating it and I'm glad you've found some help in maintaining it and moving it forwards.

    • @ArminRonacher
      @ArminRonacher  7 месяцев назад

      Rust for complex reasons has a special type called ‘!’ which indicate that a function does not return (eg: calls exit or exec). Unfortunately for complex reasons that type cannot compose (eg: you can’t have Result) today. Matching in this way is a workaround that works today.

    • @mpricejones
      @mpricejones 7 месяцев назад

      @@ArminRonacherThank you for the quick rely. I appreciate the explanation. I will try to dig into it a bit more.

  •  7 месяцев назад

    With all due respect, the question always comes to my mind: we use Ruff, a Rust-written Python linter, and Rye, also written in Rust, for Python version management. So, why do we still use Python? Should we just switch to Rust directly? :)

    • @ArminRonacher
      @ArminRonacher  7 месяцев назад +3

      The use of Rust in the Python ecosystem is not much different to the use of C/C++ or other tools that came before it. Most Python developers don't question the use of those languages much. I think the reason Rust is seen different is that unlike C and C++, Rust appears much more user friendly for Python developers. Python has its uses, Rust has its uses. I don't think many of the uses of Python fit perfectly into Rust.

    •  7 месяцев назад

      @@ArminRonacherThank you Armin. Not super satisfied but it has a point.

  • @meowsqueak
    @meowsqueak 5 месяцев назад

    So it’s pyenv but written in Rust?

    • @ArminRonacher
      @ArminRonacher  5 месяцев назад

      The only similarity between rye and pyenv is that a shim is involved to locate Python. They have quite a different feature set, vastly different behavior and are running different versions of python

  • @MohammedSikirulahi
    @MohammedSikirulahi 7 месяцев назад

    hI! what font are you using in your IDE