this post was submitted on 22 Sep 2023
277 points (100.0% liked)

Lemmy

496 readers
4 users here now

Everything about Lemmy; bugs, gripes, praises, and advocacy.

For discussion about the lemmy.ml instance, go to !meta@lemmy.ml.

founded 4 years ago
MODERATORS
 

Some years ago we used to post weekly development updates to let the community know what we are working on. For some reason we stopped posting these updates, but now we want to continue giving you information every two weeks about the recent development progress. This should allow average users to keep up with development, without reading Github comments or knowing how to program.

We've been working towards a v0.19.0 release of Lemmy, which will include several breaking API changes. Once this is ready, we'll post the these changes in dev spaces, and give app developers several weeks to support the new changes.

This week @nutomic finished implementing the block instance feature for users. It allows users to block entire instances, so that all communities from those instances will be hidden on the frontpage. Posts or comments from users of blocked instances in other communities are unaffected. He also reworked the 2-Factor-Authentication implementation, with a two-step process to enable 2FA which prevents locking yourself out. Additionally he is reworking the API authentication to be more ergonomic by using headers and cookies. Finally he is adding a feature for users to import/export community follows, bocklists and profile settings.

@dessalines is currently implementing a redesign of the join-lemmy.org website. He is also keeping the lemmy-js-client updated with the latest backend changes 1 2 3.

@phiresky optimized the way pagination is implemented. He is also fixing problems with federation workers which are causing test failures and performance problems in the development branch. These problems were introduced during a complex rewrite of the federation queue which was recently finished, and is thought to allow Lemmy federation to scale to the size of Reddit.

@SleeplessOne1917 is implementing remote follow functionality, which makes it easy to follow communities from your home instance while browsing other instances. He is also fixing problems with the way deleted and removed comments are handled .

@codyro and @ticoombs have been making improvements to lemmy-ansible, including externalizing the pict-rs configuration, adding support for AlmaLinux/RHEL, cleaning up the configuration, as well as versioning the deploys. These will make deploying and installing Lemmy much easier.

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. Recurring donations are ideal because they allow for long-term planning. But also one-time donations of any amount help us.

top 30 comments
sorted by: hot top controversial new old
[โ€“] lemann@lemmy.one 28 points 1 year ago (1 children)

Thank you for the update ๐Ÿ˜

Also devs please feel free to take a well-deserved break whenever you feel like - wouldn't want to see anyone getting burned out from spending the majority of available time working on Lemmy. I can imagine the reddit migration has shaken a few things out of order especially

[โ€“] nutomic@lemmy.ml 39 points 1 year ago

Thanks for the concern. Personally I took plenty of time off during summer. Now Im motivated to code again, and honestly I would get really bored if I did nothing.

[โ€“] mojo@lemm.ee 26 points 1 year ago (2 children)

Looking at the Liberapay, it's shocking Lemmy only gets $332 a month to fund this entire social media. Compare that to the totally "grass roots" normal NFT growth where they immediately had millions poured into them from venture capitalist. As it turns out, actual grass roots social media without profit incentive isn't profitable! And that's how you know we're on the right path.

[โ€“] dessalines@lemmy.ml 32 points 1 year ago (2 children)

For as many users as lemmy has now, its kind of astonishing how little donations we have, like less than the average youtuber / streamer with a patreon. Its more when we sum up the other platforms, but I'd really like us to be able to add more full-time devs and grow the coop.

And not just us of course, but open source software in general needs so much more funding than its currently getting. If you use open source software, consider donating to those devs!

Once I finish the join-lemmy.org site redesign, I'll put a section on the donation page that sums all these up for transparency's sake, and we'll probably try to have a once-per-year donation push to try to make sure we get fully funded.

[โ€“] wiki_me@lemmy.ml 5 points 1 year ago* (last edited 1 year ago)

For as many users as lemmy has now, its kind of astonishing how little donations we have, like less than the average youtuber / streamer with a patreon. Its more when we sum up the other platforms, but Iโ€™d really like us to be able to add more full-time devs and grow the coop.

Why look at youtubers when you can look at a open source project?, look at misskey which is very similar , it makes about 4k while having about 10k monthly active users, that's about 0.4 dollar per user.

Lemmy has about 40k monthly active users and makes about 3962 , about 0.1 dollar per user.

If you will push the conversation rate to be as high as misskey, that should give you currently about 16K a month (40k * 0.4).

I have a few ideas about how to increase it, i can open a issue throwing some ideas, for starter (I don't remember if i said this before) the part in the UI where people are suppose to learn lemmy wants donations (the little heart), is probably very hard to notice.

[โ€“] fbmac@lemmy.fbmac.net 2 points 1 year ago

Maybe opt-in ads? It could be opt-in for both the instance and the end user

I'm not demanding it to be opt-in, just taking the assumption that you don't want to just put ads there, and that there would be a backslash if you just put them there

Or some kind of "lemmy gold"

[โ€“] hillbicks@feddit.de 16 points 1 year ago

I regularly comments from users who were not aware or the financial situation. Maybe "we" need to promote it a bit more. But it is 332 per week, not month. At the beginning of the last migration it stood at 40 something, so we at least got some traction.

Thanks for the update and thanks for the work guys, I really appreciate it

[โ€“] IzzyData@lemmy.ml 24 points 1 year ago

Great work. Thank you for the update Nutomic.

[โ€“] Illecors@lemmy.cafe 18 points 1 year ago

@phiresky optimized the way pagination is implemented. He is also fixing problems with federation workers which are causing test failures and performance problems in the development branch. These problems were introduced during a complex rewrite of the federation queue which was recently finished, and is thought to allow Lemmy federation to scale to the size of Reddit.

I can't wait for this to get into action! Separating the federation into a separate process with the ability of using a separate physical resource is so good!

Thank you!

[โ€“] fmstrat@lemmy.nowsci.com 12 points 1 year ago (1 children)

We've been working towards a v0.19.0 release of Lemmy, which will include several breaking API changes. Once this is ready, we'll post the these changes in dev spaces, and give app developers several weeks to support the new changes.

Thank you for the update and the heads up.

How will this be announced, and what specifically does several weeks mean? Since Lemmy goes beyond Mobile Apps to all kinds of systems including moderation tools, auto-purgers, bots, CSAM, auto-subscribers, searchers, etc, breaking changes to the API can have far-reaching impacts.

Could something be set up specifically for breaking-change announcements where participants could be alerted? Even just a Breaking Changes issue that could be followed would work nicely.

Thank you again.

[โ€“] nutomic@lemmy.ml 2 points 1 year ago (1 children)

When we are ready to publish the first release candidate, we will make a post that lists all the breaking changes. You can follow !announcements@lemmy.ml via rss reader to get notified about it. We will also share it in different Matrix chats, and I'm sure it will get upvoted to the frontpage as well.

[โ€“] xusontha@ls.buckodr.ink 1 points 1 year ago (1 children)

Do you have any sort of timeline for when 0.19 or the release candidates will become available? I only wonder because I'm eager to check out some of the new features that have been mentioned here and on Github

[โ€“] nutomic@lemmy.ml 2 points 1 year ago (2 children)
[โ€“] fmstrat@lemmy.nowsci.com 2 points 1 year ago* (last edited 1 year ago) (1 children)

For the truly breaking changes like API auth, pagination, and TOTP, is there a reason you don't roll the deprecation like most software?

I.E. 0.19 supports both methods, and 0.20 deprecates the old one? This way developers aren't caught off guard if they're not following (which will get worse as time goes on), and allows development using official releases vs RCs.

For instance, if I want to update my app now, I have to release it with an RC library. If there was a version between deprecation, I could update at any point during the official 0.19 lifespan.

[โ€“] nutomic@lemmy.ml 1 points 1 year ago (1 children)

In case of pagination both old and new variants are supported in 0.19 (see my reply to fmstrat above). TOTP is currently broken so it wouldnt make sense to keep supporting the old version. In case of auth it would be possible to keep backwards compat, but keep in mind that we are only two fulltime devs with tons of other things to work on. If we spend a lot of time on this, it means less time for other important tasks. Besides you can support both 0.19 auth and 0.20 auth at the same time by sending auth as param and header/cookie.

[โ€“] fmstrat@lemmy.nowsci.com 2 points 1 year ago

Thanks for the response, I actually put another comment in after I started diving in and saw that the pagination/auth were overlapping, which was great news, it just didn't come across clearly to me in the write-up for some reason. Thank you for structuring things this way.

[โ€“] fmstrat@lemmy.nowsci.com 2 points 1 year ago (1 children)

Actually, as I start to do updates, it looks like the JS library still has page along with page_cursor (and the auth can be run in parallel) which seems to be great news! Does this mean I can continue to use page for pagination until .19 officially releases and rolls out, and then switch over?

[โ€“] nutomic@lemmy.ml 1 points 1 year ago

0.19 supports both page and page_cursor. We will probably get rid of page in 0.20.

[โ€“] Rentlar@lemmy.ca 11 points 1 year ago

Thanks for the update! I think it's a good idea to get the word out there more often on what's being worked on and how progress is going at a regular interval.

[โ€“] klemptor@lemmy.ml 9 points 1 year ago

This week @nutomic finished implementing the block instance feature for users.

Thank youuuuuu!

[โ€“] ulu_mulu@lemm.ee 9 points 1 year ago

Amazing job as always!

[โ€“] Blaze@discuss.tchncs.de 7 points 1 year ago

Great news, thanks for the update!

[โ€“] mouth_brood@lemmy.one 4 points 1 year ago

Donated! Keep up the good work

[โ€“] Oha@lemmy.ohaa.xyz 4 points 1 year ago

Thank you for your work. I love seeing that my money actually goes to something great

[โ€“] cetra3@lemmy.ml 4 points 1 year ago

Excellent work! Keep it up!

[โ€“] Fly4aShyGuy@lemmy.one 2 points 1 year ago* (last edited 1 year ago)

Just another note of thanks as others have put here. I really need to get more active in these communities, love to see this grow, great project!

[โ€“] lazynooblet@lazysoci.al 1 points 1 year ago

I spend enough time on Lemmy, enjoying the spoils of your hard work that I couldn't not donate. Like others have noticed, the weekly amount at it's current level ($350/w) is embarrassing.

IF YOU ARE READING THIS, GO DONATE.

[โ€“] Die4Ever@programming.dev 1 points 1 year ago (1 children)

did you forget to mention the new Scaled sort? or is it not gonna make it into v0.19.0?

https://github.com/LemmyNet/lemmy/pull/3907

[โ€“] nutomic@lemmy.ml 2 points 1 year ago

The post only includes pull requests which were active last week. Scaled sort was already completed earlier. It will definitely go into the next release, like every merged PR.