Lemmy now has private instances, optional registration applications, optional email verification, and temporary bans! These are described in detail below.
Special thanks to @asonix for adding tokio-console and Jaeger + opentelemetry to our dev setups, so we can better identify performance bottlenecks.
What is Lemmy?
Lemmy is similar to sites like Reddit, Lobste.rs, or Hacker News: you subscribe to communities you’re interested in, post links and discussions, then vote and comment on them. Lemmy isn’t just a reddit alternative; its a network of interconnected communities ran by different people and organizations, all combining to create a single, personalized front page of your favorite news, articles, and memes.
Major Changes
Required email verification
Admins can turn this on, and new users will need to verify their emails. Current users will not have to do this.
Registration applications
Admins can now optionally make new users fill out an application to join your server. There is a new panel in their top bar where they can approve or deny pending applications.
This works in conjunction with the require_email field. If that is also turned on, the application will only be shown after their email has been verified. The user will receive an email when they have been accepted.
Closed / Private instances
The instance settings now includes a private instance option, which if turned on, will only let logged in users view your site. Private instances was one of our first issues, and it was a large effort, so its great to finally have this completed.
Temporary Bans
When banning users from your site or community, moderators can now optionally give a number of days for the ban to last.
Allow comment replies from blocked users
It used to be that if a user blocked you, you couldn’t respond to their public posts and comments. This is now fixed. They won’t see your content, but others can.
Upgrade notes
Follow the Docker or Ansible upgrade instructions here.
Support development
If you’d like to support development, and make sure that we will always be available to work full time on Lemmy, consider donating to support its development. We’ve spent hundreds of hours on Lemmy, and would like to be able to add more developers to our little open-source co-op as time goes on.
Changes
API
We’ve removed a list of banned users from GetSite
, added a few endpoints related to registration applications, made a few changes allowing temporary bans, site settings, made a few changes to the login response. These are non-destructive and current clients should work with this release.
- A full list of the API changes can be seen on this diff of lemmy-js-client: 0.14.0 -> 0.15.0 .
Config
There is a new rate limit for creating new comments in the config.hjson.
Lemmy Server
- Adding temporary bans. Fixes #1423 (#1999)
- Add console-subscriber (#2003)
- Opentelemetry (#1992)
- Use correct encoding when fetching non-UTF-8 site metadata (#2015)
- Adding a banned endpoint for admins. Removing it from GetSite. Fixes #1806
- Prevent panic on InboxRequestGuard
- Case-insensitive webfinger response. Fixes #1955 & #1986 (#2005)
- First pass at invite-only migration. (#1949)
- Upgrading pictrs. (#1996)
- Trying out an upgraded version of html5ever. #1964 (#1991)
- Adding min setup password length to the docs. Fixes #1989 (#1990)
- Test pleroma follow (#1988)
- Remove awc (#1979)
- Consolidate reqwest clients, use reqwest-middleware for tracing
- Don’t drop error context when adding a message to errors (#1958)
- Change lemmur repo links (#1977)
- added deps - git and ca-certificates (for federation to work) and changed adduser to useradd so that user can be added non-interactively (#1976)
- Allow comment replies from blocked users. Fixes #1793 (#1969)
- Fix retry infinite loops. Fixes #1964 (#1967)
- Add lotide activities to tests
- Allow single item for to, cc, and @context
- Adding a captcha rate limit. Fixes #1755 (#1941)
- Dont send email notifications for edited comments (fixes #1925)
- Fix API dupes query. #1878
- Fixing duped report view for admins. Fixes #1933 (#1945)
- Adding a GetComment endpoint. Fixes #1919 (#1944)
- Fix min title char count for post titles. Fixes #1854 (#1940)
- Adding MarkPostAsRead to API. Fixes #1784 (#1946)
- background-jobs 0.11 (#1943)
- Add tracing (#1942)
- Remove pointless community follower sort. (#1939)
- Use once_cell instead of lazy_static
- Adding unique constraint for activity ap_id. Fixes #1878 (#1935)
- Making public key required. Fixes #1934
- Change NodeInfo
links
to an array - Fixing fuzzy_search to escape like chars.
- Fix build error in #1914
- Fix login ilike bug. Fixes #1920
- Fix Smithereen webfinger, remove duplicate webfinger impl (fixes #1916)
- Dont announce comments, edited posts to Pleroma/Mastodon followers
- Community outbox should only contain activities sent by community (fixes #1916)
- Remove HTTP signature compatibility mode (its not necessary)
- Implement rate limits on comments
Lemmy UI
- Fixed an issue with post embeds not being pushed to a new line #544
- Adding as and lt languages, Updating translations.
- Temp bans (#524)
- Fix banner. Fixes #466 (#534)
- Making the modlog badge stand out more. Fixes #531 (#539)
- Add some fallback properties for display in older browsers (#535)
- Private instances (#523)
- Add nord theme. Fixes #520 (#527)
- Dont receive post room comments from blocked users. (#516)
- Using console.error for error logs. (#517)
- Fix issue with websocket buffer.
- Switching to websocket-ts. #247 (#515)
- Fix native language issue. (zh_Hant) (#513)
- Fix tippy on component mount. Fixes #509 (#511)
- Fix docker latest (#510)
- Enabling html tags in markdown. Fixes #498
- Fix comment scroll bug. Fixes #492
- Fixing error for null person_block. Fixes #491
- Trying to catch promise and json parse errors. #489 (#490)
Hi, I’m a dev from hexbear and it looks like my first UI changes (relating to post listings) were included in this release.
Here are the changes I made:
I’d love to hear any feedback or ideas anyone here may have.
I’m a fan of the new thumbnail behavior, thanks!
Awesome! I like a lot of the enhancements on hexbear and can’t wait for the mergening!
Is there anything specific from hexbear you’d like to see here? I’m mainly just going off of what I notice is different, but I could easily be missing things.
target="_blank"
=PThere are a lot of nice aesthetic changes
Clicking on a post and going “back” doesn’t involve any loading
Video embeds
Expanders on the left
Pinned post/comments
Site-flair
a lot of stuff really =]
lol that was actually a bit of an issue when I opened the PR. Apparently it has some accessibility issues so Dessalines is avoiding it. I’ll need to look more into how to use it while maintaining accessibility and work with Dessalines on that.
Huh, I’m not sure I even realized that.
Definitely on the list, I’ve done a bit of research into that but it’ll need some back end changes and idk Rust (yet). I’ll need to see when other hexbear devs get up to speed on contributing to lemmy.
Do you mean clicking the thumbnail expanding the embed or post body? I already brought that over for image posts. I can get that going to for self posts as well.
Right now hexbear only has pronoun flairs. We’ve actually been wanting to add user defined flairs too. I’ve put a bit of thought into a generic, instance and community customizable flair system, so that’s definitely on the list.
There’s actually already an option for instance admins to pick the default theme.
Yeah, I knew there was some kerfuffle, but I really hope we can come to a peaceful resolution.
This in combination with never opening in a new tab makes the site really clunky on bad internet =/
I meant for posts and comments
I was hoping it would be made into a generic feature where admins can set a white/blacklist regex in the config or something.
THANK you! Lemmy is feature rich but the UI is so confusing for new users. Super happy to see someone helping out with it :)
Let me know if there’s any specific confusing parts of the UI and I can take a look.
I like to use Lemmy though a browser on mobile, the interface is good (especially compared to reddit) but I think the buttons could be changed a bit to make it better.
I think it might improve the mobile UI to have all buttons at the bottom (sort of like in lemmur):
Buttons that I think would be useful at the bottom:
Now that there’s someone interested in UX on board, I might record some user tests. Would you be interested?
I wouldn’t know about organizing something like that, but I’m happy to go along.
What exactly is hexbear btw? Is it a fork of lemmy? Does it federate with lemmy?
It’s a fork of Lemmy made for the now defunct /r/ChapoTrapHouse community from Reddit. It does not federate with Lemmy.
Originally a fork of lemmy, it currently uses both a rewritten front and back end AFAIK. We’re looking to go back to being a proper fork, which is why we’re starting to contribute hexbear features to lemmy.
We don’t federate with lemmy right now because we forked before lemmy had federation, and adding federation to the rewrite would have been too much work. But once we get hexbear stuff into lemmy we’ll switch over and should be able to federate.
Are you going to wait until all hexbear features have been added to Lemmy before moving or do you think you will move over before that point? Any idea how long this will take?
Thanks for the contributions by the way!
I don’t think we have a fixed goal for moving yet, but it will definitely require some of our biggest changes like featured posts and pronouns*.
* Our plan there is to make a generic, customizable per instance flair system for lemmy that hexbear can then use as a pronoun system.
Thank you for the in depth reply! Hopefully that won’t take too long. I had no idea about hexbear nor chaptraphouse. You have quite a big community there!