118
Lemmy v0.18.3 Release (join-lemmy.org)
submitted 9 months ago by [email protected] to c/[email protected]

What is Lemmy?

Lemmy is a self-hosted social link aggregation and discussion platform. It is completely free and open, and not controlled by any company. This means that there is no advertising, tracking, or secret algorithms. Content is organized into communities, so it is easy to subscribe to topics that you are interested in, and ignore others. Voting is used to bring the most interesting items to the top.

Major Changes

This version brings major optimizations to the database queries, which significantly reduces CPU usage. There is also a change to the way federation activities are stored, which reduces database size by around 80%. Special thanks to @phiresky for their work on DB optimizations.

The federation code now includes a check for dead instances which is used when sending activities. This helps to reduce the amount of outgoing POST requests, and also reduce server load.

In terms of security, Lemmy now performs HTML sanitization on all messages which are submitted through the API or received via federation. Together with the tightened content-security-policy from 0.18.2, cross-site scripting attacks are now much more difficult.

Other than that, there are numerous bug fixes and minor enhancements.

Support development

@dessalines and @nutomic are working full-time on Lemmy to integrate community contributions, fix bugs, optimize performance and much more. This work is funded exclusively through donations.

If you like using Lemmy, and want to make sure that we will always be available to work full time building it, consider donating to support its development. No one likes recurring donations, but they’ve proven to be the only way that open-source software like Lemmy can stay independent and alive.

Upgrade instructions

Follow the upgrade instructions for ansible or docker. There are no config or API changes with this release.

This upgrade takes ~5 minutes for the database migrations to complete.

You may need to run sudo chown 1000:1000 lemmy.hjson if you have any permissions errors.

If you need help with the upgrade, you can ask in our support forum or on the Matrix Chat.

top 50 comments
sorted by: hot top controversial new old
[-] [email protected] 29 points 9 months ago* (last edited 9 months ago)

Update on lemmy finances (not including cryptocurrencies)

patreon: $1,591/month

liberapay: $374.22 per week (about 1609 per month)

open collective: $2082 (29/6/2023 -> 29/7/2023)

Assuming 63K active users , the per user monetization of 0.08 dollar per user (Reddit's revenue per monthly user is roughly $1.19).

Estimated developer salary for the two main developers is about 2600$, estimated median salary for developer in the US is about 10K a month.

For comparison firefish made about 1424$ ((29/6/2023 -> 29/7/2023) with an active users count of 11868 (or 8146 if you don't count calckey, which i think is important because they added a pop up asking for donation, but i don't know if that is after the name change) so that gives a per user monetization of 0.11 dollar per user ( or 0.17 not counting calckey).

Corrections are welcomed.

[-] [email protected] 3 points 9 months ago

Thanks for the insight!

[-] phiresky 16 points 9 months ago* (last edited 9 months ago)

I want to clarify that most/ a lot of the DB work of this release actually came from others e.g. nutomic, RocketDerp, Sh4d, sunarus ;)

[-] [email protected] 7 points 9 months ago

Thank you all for your work!

[-] [email protected] 13 points 9 months ago* (last edited 9 months ago)

well my Lemmy backups did exceed 10MB, but the 0.18.3 database optimizations brought me under 10MB again lol

11M Jul 28 22:35 bak-lemmy-2023-07-28_22.35.52.zip
8.8M Jul 28 22:39 bak-lemmy-2023-07-28_22.38.59.zip

(hosting an instance with communities but no users doesn't need much hardware at all btw)

[-] [email protected] 5 points 9 months ago

Willing to share any numbers? How many communities and how many resources?

[-] [email protected] 8 points 9 months ago* (last edited 9 months ago)

there's not a lot on there

https://lemmy.mods4ever.com/communities

10 communities, few hundreds of subs, maybe like 30 posts

unzipped storage usage:

# du -h --max-depth=2 . | sort -h
8.0K    ./volumes/lemmy-ui
9.5M    ./volumes/pictrs
76M     ./volumes/postgres
85M     .
85M     ./volumes
[-] [email protected] 11 points 9 months ago

🙏 Thank you Devs.

Kind People, please donate .

[-] [email protected] 11 points 9 months ago

80% reduction is crazy! Good job!

[-] [email protected] 10 points 9 months ago

80% is wizard like, great work, thanks [email protected]!

[-] [email protected] 20 points 9 months ago

That particular improvement is actually mine. Lemmy was storing a lot of federation data which was completely unused so I removed it. However the 80% improvement is actually overstated, because not all data was migrated to the new table. So the db will grow a bit bigger over time, but still much smaller than before.

Phiresky made a lot of other sql optimizations which make Lemmy snappier and reduce CPU usage on the server. We don't have any benchmarks in that regard, but server load on lemmy.ml has gone down a lot since upgrading.

[-] [email protected] 6 points 9 months ago

Thanks for the clarification! Your stewardship along with everyone collaborating in work and donations makes for a wonderful project. Really demonstrates the power of people working together to provide spaces outside of the control of corporate interests that are destroying other platforms.

[-] [email protected] 0 points 9 months ago

Do we need to run a full vacuum after upgrade? And for that matter, is the data not used truncated during upgrade?

[-] [email protected] 7 points 9 months ago
[-] [email protected] 11 points 9 months ago

It was actually easy because a lot of data was stored which was never used at all.

[-] [email protected] 10 points 9 months ago

Shhh let me compliment youuuu

[-] [email protected] 8 points 9 months ago

I was saving that data, you never know when it might come in handy.

[-] [email protected] 1 points 9 months ago

Do we have a datahoarder forum here yet? Need to bring back forum names as hashtags

[-] [email protected] 4 points 9 months ago

Hi there! Looks like you linked to a Lemmy community using a URL instead of its name, which doesn't work well for people on different instances. Try fixing it like this: [email protected]

[-] [email protected] 5 points 9 months ago

I think they know what they're doing, bot

[-] [email protected] 5 points 9 months ago

It's just that the text is copied directly from join-lemmy.org, which requires actual links.

[-] [email protected] 3 points 9 months ago

you're all amazing! thank you and keep up the good work!

[-] [email protected] 2 points 9 months ago* (last edited 9 months ago)

Heads-up that a new issue on GitHub reporting this problem upgrading from 0.18.2 to 0.18.3:

thread 'main' panicked at 'Couldn't run DB Migrations: Failed to run 2023-07-08-101154_fix_soft_delete_aggregates with: syntax error at or near "trigger"', crates/db_schema/src/utils.rs:221:25 note: run with 'RUST_BACKTRACE=1' environment variable to display a backtrace

https://github.com/LemmyNet/lemmy/issues/3756

If you use "Lemmy from scratch" install,

you may be on an older PostgreSQL that Ubuntu distro provides, not the same as the Docker install method.

[-] [email protected] 1 points 9 months ago

Yes, I had to upgrade from Postgres 13 to get this working. I’m not sure if there’s a minimum Postgres version specified anywhere in the docs, I took a quick look but couldn’t find it.

For anyone else running Debian like me, you can add the official Postgres repo and use the pg_upgrade script to migrate to the new version.

[-] [email protected] 1 points 9 months ago

I’m not sure if there’s a minimum Postgres version specified anywhere in the docs, I took a quick look but couldn’t find it.

I do not find it in the "From Scratch Install" documentation. I will work to revise those documents this weekend to warn people that 0.18.3 and later is incompatible. Thank you again for sharing.

[-] [email protected] 2 points 9 months ago

Thank you for the continuing work! Just one bug report: when I click to load lemmy (either .world or .ml) from my homepage of various links, I'm logged out. If I refresh the page though, I'm logged in!

[-] [email protected] 5 points 9 months ago

You might have to clear your browser cache, we saw that issue a few times with lemmy-ui 0.18.0

[-] [email protected] 1 points 9 months ago

Thank you, I just did. The problem remains.

[-] [email protected] 5 points 9 months ago

The only thing else I can think of, is that a browser plugin might be affecting it. Try a different browser and see if it's still a problem.

[-] [email protected] 2 points 9 months ago

docker compose down && docker compose pull && docker compose up -d update was flawless. nice!

[-] [email protected] 1 points 9 months ago

docker compose down &&

Looks like the & parsing in code blocks is another bug in 0.18.3 like the post title one. I'll add your comment to the GitHub issue.

[-] [email protected] 1 points 9 months ago* (last edited 9 months ago)

You can pull new images while the old ones continue running happily. That docker-compose down command is completely unnecessary.

@ohai
@dessalines

[-] [email protected] 1 points 9 months ago

that's fair, just force of habit, i guess. thanks for the heads up! :)

[-] [email protected] 2 points 9 months ago

Upgraded! No issues.

Again, thank you for your amazing work!! :D

[-] [email protected] 2 points 9 months ago

Neat!

If you can, please keep supporting the devs with some resources.

[-] [email protected] 1 points 9 months ago

Thank you for your and the contributors' work!

[-] [email protected] 1 points 9 months ago

Super straightforward upgrade via docker compose, thanks for all the hard work ❤️

[-] [email protected] 1 points 9 months ago

Thank you for all of your hard work devs! I'm a supporter with monthly payments.

[-] [email protected] 1 points 9 months ago* (last edited 9 months ago)

Ran into this issue with database migrations:

Failed to run 2023-07-08-101154_fix_soft_delete_aggregates with: syntax error at or near "trigger"', crates/db_schema/src/utils.rs:221:25

Will open an issue on GitHub.

[-] [email protected] 2 points 9 months ago

That has to do with you running a custom install with an older postgres that lemmy doesn't support.

[-] [email protected] 1 points 9 months ago* (last edited 9 months ago)

I'll update to a newer Postgres version and report back. It would be nice to know what the minimum supported version is, maybe that should be added to the documentation.

EDIT: Upgrading to Postgres 15 resolved my issue, but not without some pain since the migration scripts had already tried to run on my Postgres 13 database. So after dumping the 13 database, I had to make some modifications after the fact to satisfy the migration scripts. It was a pretty janky process but I seem to be in a good place now.

I would highly advise communicating to people that they should upgrade past Postgres 13 before trying to upgrade Lemmy to 0.18.3 or higher, or you're gonna have a bad time.

[-] [email protected] 1 points 9 months ago

Thank you for sharing.

[-] [email protected] 1 points 9 months ago

80% is a massive improvement! Nice work!

[-] [email protected] 0 points 5 months ago* (last edited 5 months ago)

@dessalines
@LemmyDev

This is a repost from the matrix channel.
My account was banned on the platform “https://lemmygrad.ml” without any explanation & indefinitely after not using it for 1 or 2 days, here's my profile “https://lemmygrad.ml/u/abieNathanTheyThem”.

How can this be undone?

[-] [email protected] -1 points 9 months ago

Heads-up for anyone who compiles the Rust code from source and is testing/integrating their own manual changes/patches to the code... the main git branch is not what Lemmy 0.18.3 is based on. https://github.com/LemmyNet/lemmy/issues/3602

[-] [email protected] -4 points 9 months ago

Amazing thank you! Would love to see "awards" implemented similar to reddit, would be a great fundraising tool for instances.

[-] [email protected] 3 points 9 months ago

Normally, I'd be against the concept of awards. However, considering this is a completely free reddit-like app without ads, I'd be completely fine with awards so the creators can get at least some amount of money out of it.

load more comments
view more: next ›
this post was submitted on 28 Jul 2023
118 points (99.2% liked)

Announcements

765 readers
1 users here now

Official announcements from the Lemmy project. Subscribe to this community or add it to your RSS reader in order to be notified about new releases and important updates.

You can also find major news on join-lemmy.org

founded 5 years ago
MODERATORS