We have a test instance of Lemmy 0.18.2 running with our patches on top ready for testing:

https://test.hexbear.net

Lemmy has been seeing a lot of activity recently, so this release brings with it a lot of changes (some of which we are hoping are going to fix some of the jank y'all have probably been experiencing). You can see the full list of changes here: https://github.com/LemmyNet/lemmy/releases. This is also the release that removes websockets!

Disclaimer: Anything you post will be nuked after we're done testing, nothing is being saved from the test instance.

If you encounter a bug please let us know what happened, how we can reproduce it, and your OS & browser in the comments below. The more detail, the more likely we can fix things!

  • GaveUp [she/her]
    ·
    1 year ago

    I'm curious, what's the motivation behind removing websockets? I looked at the PR and don't get it

    • makotech222 [he/him]
      ·
      1 year ago

      they take up a lot of computer resources to maintain, which ends up slowing the site down significantly once we hit > 1000 users at a time. They also cause a bunch of other random bugs that you might run into, like the 'Report Created' popup

      • GaveUp [she/her]
        ·
        1 year ago

        True I forgot this is run on a tiny resource constrained box. Bless the devs for making this site work this well

        Do you know if that was a motivation behind Lemmy choosing Rust? Knowing that its purpose is for small owned instances that probably don't have a big budget for infra?

        • makotech222 [he/him]
          ·
          edit-2
          1 year ago

          i think its just the lemmy dev's favorite language or something. probably not any technical reason.

          Also, our server is pretty beefy, esp compared to most other lemmy instances

        • PorkrollPosadist [he/him, they/them]
          ·
          edit-2
          1 year ago

          Like Mako said, it was probably just preference, but it was also a good choice IMO. A lot of web platforms are programmed in interpreted languages like PHP, Ruby and Javascript (on the server side, via Node.js). Rust is a compiled systems programming language. As a result, the Lemmy back-end runs as native machine code, with no need for a virtual machine or interpreter. It runs faster, and it scales better.

          This makes development more complicated, but I think the pay-off is worth it. It is also worth noting that Rust was originally developed by Mozilla for use in the Firefox browser, and had a vibrant selection of libraries for web development from the very early days. It is particularly suited for web-facing applications thanks to unique features like the "borrow checker," which prohibits entire categories of memory access and concurrency errors which are typically exploited by malicious inputs. It still doesn't prevent you from shooting your own foot off though.

          Based on anecdotal experience, Lemmy is at least an order of magnitude more efficient than Mastodon, which is programmed in Ruby.