Announcement

Collapse
No announcement yet.

Fedora Rawhide Begins Offering Packaged Rust Applications

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #11
    Originally posted by rene View Post
    Rust stuff is a total pain to package {...}
    The modern tendency of new "hipster" language and (pseudo-) frameworks to rely on a whole swarm of diverses micro-modules (and in some circumstances downloaded in-the-flight) is problematic in my opinion, too.
    (The ur-example being half of Node.JS programs falling down because some guy decided to pull the plug on his code to align strings).

    Originally posted by johnp117 View Post
    Not that I have anything against it, that's pretty much how the Rust ecosystem works, because std is kept minimal on purpose.
    But in the long term, that 's going to be problematic.
    At some point, you'll need to have some sort of standard library (or at least a couple of mainstream libraries used by most of the players).

    This helps making reproductible builds, makes the life of the distro packagers easiers, etc.

    Luckily, it seems that the Rust community is aware of the problem, and might evolve in that direction over the next few years.

    But until then, Rust is more an experimental environment that something that will be relied upon by a big number of large-scale projects.

    Comment


    • #12
      Originally posted by Alliancemd View Post
      fd and ripgrep are the fastest applications in their area.

      Another pretty fast application is the GPU-accelerated terminal "Alacritty": https://github.com/jwilm/alacritty
      What does one gain by running a terminal session with GPU acceleration? I am not catching it.

      Comment


      • #13
        Originally posted by DrYak View Post
        The modern tendency of new "hipster" language and (pseudo-) frameworks to rely on a whole swarm of diverses micro-modules (and in some circumstances downloaded in-the-flight) is problematic in my opinion, too.
        There's nothing wrong with having your libraries conveniently segregated into smaller modules, rather than having to pull in an entire monolithic library that contains a lot of functions that your program doesn't need. The monolithic approach is dead because it's bad practice. Results in code that is very stiff and inflexible.

        (The ur-example being half of Node.JS programs falling down because some guy decided to pull the plug on his code to align strings).
        This cannot happen with Cargo because the Crates.io mirror is immutable. Even if you yank a crate from the repository, you cannot stop existing software from continuing to pull that crate from the mirror. Problem solved. You seriously think the Rust team did not account for that when they created Cargo?

        At some point, you'll need to have some sort of standard library (or at least a couple of mainstream libraries used by most of the players).
        Rust's standard library is already incredibly extensive and well-rounded. It does everything a standard library needs to do. We do not need a repeat of Python and Go, where they ship a standard library with a large number of poor quality libraries that have to be supported indefinitely, where everyone ignores the standard library and chooses superior third party libraries anyway. No, please keep web servers and client crates out of the standard library. They don't belong.

        This helps making reproductible builds, makes the life of the distro packagers easiers, etc.
        The Cargo.lock file facilitates reproducible builds. What did you think that file was doing? It ensures that downstream users of your program will always download the exact same archives that you used to build the project with. Each dependency includes the URL to the archive and a hash sum to verify that the downloaded archive is identical to upstream.

        Luckily, it seems that the Rust community is aware of the problem, and might evolve in that direction over the next few years.

        But until then, Rust is more an experimental environment that something that will be relied upon by a big number of large-scale projects.
        The Rust team is already much further along than you think. We are shipping production-grade solutions today, not tomorrow.

        Comment

        Working...
        X