• DessalinesOPA
    link
    fedilink
    arrow-up
    8
    ·
    4 years ago

    Lots of stuff this last week, as you can tell the DB changes got merged, so Lemmy is really fast now.

    While @nutomic@lemmy.ml was working on some back-end re-organizing to reduce our compile times, I finished a lot of outstanding front end tickets, including:

    • You can now remove your avatars.
    • Adding code contributors to the sidebar.
    • Added selecting for quoting comments.
    • Some redirects to login / sign up page when not logged in.
    • Blocking a page refresh when forms are filled. (We already had route change blocking).
    • Cake days added. Thanks to @Filip785@lemmy.ml
    • Fixed prev / next not showing correctly.
  • nutomicMA
    link
    fedilink
    arrow-up
    5
    ·
    edit-2
    4 years ago

    This week I was mainly working on reorganizing the backend, and splitting it into different cargo workspaces. I mainly did that with the goal of speeding up compilation time, but unfortunately that wasnt successful, its exactly as slow as before (3m 40s for a clean build on my Ryzen 5 2600). The reason is that Diesel, our library for interacting with the database is completely dominating compilation time. There is one thing we could do to, but it would require another database rework.

    For visualization, the long bar in the graph below is Diesel, and Lemmy itself can only be compiled once that is finished (which takes around 95s for me).

    Other than that, we approved new rules for the Lemmy Council, which are much clearer and easier to understand (PR for it is here).

      • nutomicMA
        link
        fedilink
        arrow-up
        2
        ·
        4 years ago

        There are a many use cases where the time for a clean build matters:

        • a new contributor compiles the project for the first time
        • continuous integration often builds everything from scratch
        • docker builds dont have good dependency caching

        Besides, I can sometimes see Diesel being rebuilt in incremental builds for no reason at all, and it sucks waiting almost two minutes for that.

    • nutomicMA
      link
      fedilink
      arrow-up
      2
      ·
      4 years ago

      Actually I wanted to write a bit more about the workspaces, but forgot while taking the screenshot. Besides faster compilation, the workspaces are also useful for splitting a project into smaller units that are easier to manage. This means someone can now work on the database without affecting someone who works in the activitypub code (as long as the public interface doesnt change). It also gets much easier to see how the code should be split up, for example I noticed that it doesnt make sense encoding and decoding jwt tokens in the database, so I moved it out of there.

    • DessalinesOPA
      link
      fedilink
      arrow-up
      1
      ·
      4 years ago

      That’s a thing from old reddit that I’m not a fan of… none of the mobile clients this front-end is based off of, do that anymore. This is mainly taking front end ideas from boost and slide, some really slick reddit apps for android.

      The user should always go first. I might even re-arrange the front page to move votes from that old-school left bar, to below the post title, but that’ll come later.

  • Alex1138
    link
    fedilink
    arrow-up
    1
    ·
    4 years ago

    I would like the notification icon a bit more visible, it’s waaay off to the right and it’d be nice if it were a bit more apparent

  • dynamicHatEcosystem
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    4 years ago

    How do I mod a community?

    I haven’t been able to find anything in the docs and it’s not self evident to me

    e: I guess I’m asking, can I delete other peoples posts? I see both sides; it would be good to enforce community rules, don’t want to be like reddit

    • DessalinesOPA
      link
      fedilink
      arrow-up
      1
      ·
      4 years ago

      Mod actions are done on comments / posts. For any communities you mod, click the 3 dot menu on the right, and mod actions will appear.