47
submitted 6 months ago by nutomic@lemmy.ml to c/rust@programming.dev

This library is responsible for federation in Lemmy, and can also be used by other Rust projects.

63
submitted 6 months ago by nutomic@lemmy.ml to c/rust@lemmy.ml

This library is responsible for federation in Lemmy, and can also be used by other Rust projects.

125
submitted 6 months ago* (last edited 6 months ago) by nutomic@lemmy.ml to c/announcements@lemmy.ml

Here is our regular update that explains what we have been working on for the past two weeks. This should allow average users to keep up with development, without reading Github comments or knowing how to program.

Last Friday we finally released Lemmy 0.19.0, after a long development time and extensive bug fixing. Read the announcement to find out about the major changes. A few days later on Wednesday we had to publish 0.19.1 to fix a few more bugs that slipped through.

@phiresky fixed the critical bug with outgoing federation in 0.19. Previously he fixed an authentication bug in lemmy-ui which was blocking the 0.19 release.

@dessalines fixed the broken logic for "hide read posts". He also fixed a problem with email login being case sensitive

@nutomic reenabled pushing to crates.io so Rust developers can easily interact with Lemmy. He also made performance optimizations for /api/v3/site and the optimized the Activitypub context sent by Lemmy, reducing the database size and the amount of data sent between instances. He fixed various tests to prevent random failures in continuous integration 1 2

@dullbananas has long been busy improving the database queries for Lemmy, such as fixing a bug in the way different posts sorts are combined, and improving the test cases.

This is our last update for 2023. It was a very busy year for Lemmy, and it looks like 2024 might have even more changes in store. So lets enjoy these holidays, have a Merry Christmas and Happy New Year!

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.

74
submitted 6 months ago* (last edited 6 months ago) by nutomic@lemmy.ml to c/asklemmy@lemmy.ml

Let's say someone created a Wikipedia clone with Activitypub support, so you can freely read and edit articles on other servers. Basically the same way that Lemmy works. What would be a good name for such a project? Bonus points if the name goes with a cute animal mascot.

Edit: Here you can see the names of existing Fediverse projects.

125
submitted 7 months ago by nutomic@lemmy.ml to c/announcements@lemmy.ml

Here is our regular update that explains what we have been working on for the past two weeks. This should allow average users to keep up with development, without reading Github comments or knowing how to program.

This week we finally started deploying 0.19 release candidates to lemmy.ml, as a final testing step before release. Unfortunately there are some nasty authentication which we have been attempting to debug all week, without success so far. So it will take some more time to fix this and other issues before publishing the final version.

@rasklyd made Lemmy releases for ARM64 platforms possible. @kroese did the same for lemmy-ui. This means that official releases from Lemmy 0.19 will work on devices such as Raspberry Pi.

@dessalines has been very busy attempting to fix the previously mentioned authentication bug. He also worked on other bug fixes and upgraded Jerboa for Lemmy 0.19.

@nutomic again fixed various problems that were introduced during 0.19 development, to get ready for the release.

@Sleeplessone1917 implemented the frontend for user settings import/export. He also started work on an overhaul of context menus.

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.

123
submitted 7 months ago* (last edited 7 months ago) by nutomic@lemmy.ml to c/lemmy@lemmy.ml

Here is our regular update that explains what we have been working on for the past two weeks. This should allow average users to keep up with development, without reading Github comments or knowing how to program.

@Neshura87 submitted the first ever RFC for Lemmy! It describes how post tags can be implemented.

0.19.0 is getting closer and closer to release, but we are still busy squashing bugs and getting lemmy-ui ready. For now there is another release candidate deployed on voyager.lemmy.ml for testing. Here is the full list of changes since the last release candidate for Lemmy and lemmy-ui

@nutomic fixed a bug with following local communities in the release candidate. He added a first integration test for image uploads.

@dessalines has been busy updating lemmy-ui to account for Lemmy API changes, and squashing various bugs like an issue with timezone db migrations, adding a creator_is_admin field to Post and Comment views.

@SleeplessOne1917 has implemented support for settings import/export in lemmy-ui, as well as some bug fixes.

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.

141
submitted 8 months ago by nutomic@lemmy.ml to c/lemmy@lemmy.ml

Here is our regular update that explains what we have been working on for the past two weeks. This should allow average users to keep up with development, without reading Github comments or knowing how to program.

We published a new release candidate for Lemmy 0.19.0. Note that this so-called release candidate is really a beta. In the future we will use more appropriate version names.

Most importantly it includes the new feature to export user settings, and later import them on another instance.

The Docker image was changed from Alpine to Debian which should improve stability and performance (#3972). This unfortunately broke ARM builds, so we'd need some assistance getting them working again for debian.

The remaining changes are mostly minor improvements and bug fixes, you can see them in the full changelog. Please test the new version on voyager.lemmy.ml or by installing tag 0.19.0-rc.3 on your server. If you encounter any problems, report them on Github.

For Developers: This version includes various API changes compared to rc.1:

  • The endpoints for exporting and importing user settings are at GET /api/v3/user/export_settings and POST /api/v3/user/import_settings. Note that the returned json is not meant to be parsed, but directly stored to disk (#3976).
  • /api/v3/login now sets the auth cookie automatically, so clients might not have to handle it anymore. There is also a new endpoint /api/v3/logout which clears the cookie and invalidates the auth token (#3818).
  • There is a new endpoint /api/v3/user/validate_auth which returns errors in case of invalid auth token. This is necessary because other API actions silently ignore invalid auth and treat the user as unauthenticated. We are changing various endpoints to return simply {"success": "true"} (#3993, #4058 (not included in rc.2)).
  • The endpoint /api/v3/post/mark_as_read can now take an array post_ids instead of single post_id value but remains backwards compatible (#4048).

@nutomic improved the way that titles for Mastodon posts are handled (#4033). He also worked on various minor fixes and enhancements, see here.

@dessalines is nearly done with the redesign of join-lemmy.org. You can see it here, and check the pull request to provide feedback / suggestions. Also worked on cleaning up stale lemmy issues.

@SleeplessOne1917 reworked a much cleaner 2FA interface for lemmy UI (#2179), fixed a bug with the emoji picker (#2175), and added an enable_animated_images setting to users (#4040). Also worked on lemmy-ui-leptos.

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.

15
submitted 8 months ago by nutomic@lemmy.ml to c/technology@lemmy.ml

In my experience the translated subtitles were even better than some human-made ones.

223
submitted 8 months ago* (last edited 8 months ago) by nutomic@lemmy.ml to c/lemmy@lemmy.ml

Here is our regular update that explains what we have been working on for the past two weeks. This should allow average users to keep up with development, without reading Github comments or knowing how to program.

We are slowly getting closer to the 0.19 release, although there is still a lot of work left. Client developers should read this post with information about breaking changes to update their projects.

Edit: You can test the latest 0.19 code on voyager.lemmy.ml, or by installing 0.19.0-beta.8 on your server. Be sure to report any bugs on Github.

@nutomic has closed over 100 issues, most of them duplicates, invalid or already resolved ones. He also made numerous pull requests to fix minor bugs and implement small enhancements. This includes a bug fix for federation of admin actions which was released as 0.18.5. He is also changing the way HTML escaping is handled to avoid broken texts.

@dessalines is working on redesigning the join-lemmy.org website, adding the apps and instances pages. Also worked on rewriting the Docker images to use Debian as base instead of Alpine. Additionally he is adding support for new backend features to lemmy-ui (scaled search and cursor-based pagination).

@SleeplessOne1917 has implemented support for new block instance feature, finished implementing the remote follow feature, and updated 2-Factor-Auth to account for a backend rework. He also implemented some bug fixes. He has also been working on adding authentication to lemmy-ui-leptos.

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.

405
submitted 9 months ago by nutomic@lemmy.ml to c/lemmy@lemmy.ml

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.

151
Lemmy RFCs (github.com)
submitted 9 months ago* (last edited 9 months ago) by nutomic@lemmy.ml to c/lemmy@lemmy.ml

We created a new repository for host requests for comment. It is based on the Rust RFC repo and meant to describe how major new features can be implemented. In this way more people can get involved in the discussion, without having to know Rust or getting lost in implementation details. If there is a major new feature you would like to see implemented, please consider writing an RFC first. Also feel free to suggest changes to the RFC process so that it works better for Lemmy.

One RFC was already created a few weeks ago for supporting post tags. It should be added to the repo soon.

[-] nutomic@lemmy.ml 71 points 10 months ago* (last edited 10 months ago)

Wow lots of questions here.

  • Im doing well, its exciting to know that so many people like the software Ive worked on for the last years. The first month after the migration was really stressful, but by now its calmed down a lot. Plus there are many contributors now which are helping a lot.
  • Unfortunately the user donations are just barely enough to pay our salaries, by my calculations the income from Liberapay, Patreon and Open Collective is around 4000 USD per month. Luckily we still have some NLnet funding left, and should be able to work on those milestones now that things have calmed down. I hope the user donations will increase so that they can pay us proper salaries. Maybe even hire additional people, but that seems very optimistic now. It would also be good if we could find other funding sources besides NLnet, as its not clear if they will fund us another year.
  • I think the "breaking bugs" were really minor considering how we had to constantly rush out performance and security fixes. This should get better as we dont need to make emergency fixes, and have more time to let the community test release candidates before making the full release.
  • Supporting downgrades means that someone has to test them and report/fix problems. We dont have time for that, but feel free to do it.
  • Like I said, our recent releases had urgent performance/security fixes so we didnt have enough time for testing. We also didnt find out about these problems until later. Part of the problem is that keeping up with issues is almost a full-time job on its own, so I rarely read them anymore. If you see something important reported, do let me know.
  • No concrete plans, but I definitely think that admins are the main actors who should have a voice in development. Its impossible for us to listen to all the individual users, because there are too many and they often dont have the necessary technical knowledge. If you have some ideas how to facilitate communication between devs and admins, let me know.

Are we almost done? Nope, only halfway. Will answer the second half a bit later.

[-] nutomic@lemmy.ml 59 points 10 months ago

Im glad its finally working, took a long time. Welcome to the federation!

[-] nutomic@lemmy.ml 48 points 10 months ago

He has done a lot for open source, its hard to imagine where we would be today without his contributions. Hes also a weird and controversial figure, but I couldnt care less about that pointless drama.

[-] nutomic@lemmy.ml 55 points 10 months ago

Simple, no one has implemented it. Dessalines and I are busy with lots of things, so we rely on community contributions.

[-] nutomic@lemmy.ml 62 points 10 months ago

It depends where and how you are hosting. Hetzner or OVH have small VPS which can host hundreds of active users for those 10 usd. Of course if you host on AWS or Digitalocean its much more expensive. lemmy.ml is bigger than beehaw, and only costs 80 euros per month for a dedicated server. Hosting costs will also go down as the code gets more optimized.

[-] nutomic@lemmy.ml 48 points 10 months ago

Yes theres an open pull request for this.

[-] nutomic@lemmy.ml 52 points 10 months ago
  1. Manjaro for me.
  2. Impossible to choose, there are too many.
  3. I didnt have the time or motivation to try different clients yet. The web ui works just fine for me.
[-] nutomic@lemmy.ml 65 points 10 months ago

The only reason is that no one got around to it yet. Its not that difficult, in fact I plan to work on it soonish. There have just been tons of more important things to work on recently (like improving performance and keeping up with all the pull requests).

[-] nutomic@lemmy.ml 64 points 10 months ago

Limitations no, if anything the protocol is too extensive and lets you do too many things (or do the same thing in different ways). But thats somewhat expected for a protocol which can handle all types of social media platforms. I think the protocol is fine as is, but it needs minor changes here and there to keep up with how it is being used in the real world. The FEP process is doing a good job of that.

From what I know the AT protocol used by Bluesky is entirely centralized, so it doesnt look like a competitor yet. They claim that it will be decentralized in the future, but I will believe it when I see it. For now the decentralization seems more like a marketing gimmick.

[-] nutomic@lemmy.ml 50 points 10 months ago

Thanks for your help :)

[-] nutomic@lemmy.ml 59 points 11 months ago

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

8
submitted 11 months ago by nutomic@lemmy.ml to c/videos@lemmy.ml
[-] nutomic@lemmy.ml 70 points 11 months ago

All the code is open source, everyone is welcome to look through it for potential problems and report/fix them. we dont have any money to pay for a professional audit. Maybe there are some organizations which would do audits of open source projects for free, might be worth searching for.

view more: ‹ prev next ›

nutomic

joined 4 years ago
MODERATOR OF