@dessalines@lemmy.ml Thanks for the information here and all the hard work you have put into this release.
Gotta say tho, as the maintainer of Lemmy-Swift-Client, breaking API changes like this without an API version bump, make API development within the community incredibly difficult.
So my question to you would be, what is the purpose of having
v3
in the API path, if the true test of API compatibility is the GetServerResponseversion
field? And breaking changes will occur in GetServerResponseversion
changes as opposed to the version in the API path? That doesn’t quite make sense to me.Would love your perspective so I can figure out how to best design the package API to accommodate client developers who might have to contend with multiple server versions.
The lemmy API still hasn’t hit a version 1.0, and should very much be considered beta, with a lot of active and breaking changes. When we do stabilize it, then we can start to make these breaking API changes more solid. The
v3
should probably just go away at this point, because we have too much active development and API changes to justify it.What we do on lemmy-js-client, which has its types auto-generated from rust, is use tags that match our lemmy release semver version.
I’m not sure how you built lemmy-swift-client ( I hope its auto-generated from either the rust or lemmy-js-client types), but you could do the same thing: use tags to version it, then applications could use those tagged versions.
WebSockets … causing live updates to the site which many users dislike
I appreciate all the work in this release. It’s insane how much you packed into one release. Well done. I am most excited about the live updates going away. It was quite disruptive. Thanks for that.
That said, WebSockets can be implemented very efficiently. I run an open source notification service called ntfy, and the public instance ntfy.sh currently keeps 6-8k WebSocket connections and thousands more HTTP stream (long polling HTTP) open, all on a 2 core machine with 4GB of RAM. My point being that WebSockets can be implemented very efficiently. Though in Lemmy’s case it’s likely not necessary.
– Another thing I wanted to notice is that I am missing mentions of security issues in the release notes. There are some tickets that sound really really really bad, like this one: https://github.com/LemmyNet/lemmy/issues/3060
Isn’t that more important than anything else?
We’re very busy but we’ll get to it when we can.
That said, WebSockets can be implemented very efficiently.
I agree, the main issue I was actually seeing with Lemmy’s use of WebSockets was that when opening the main page it was continuously streaming all posts from the server (including posts in communities not subscribed to) to the browser client.
I laughed a lot on it 🤣
I really appreciate the work that you’re doing but…
Captchas are not available in this version, as they need to be reimplemented in a different way. They will be back in 0.18.1, so wait with upgrading if you rely on them.
What the hell? Another bad default where newbies will continue to launch instances attracting 10k+ bot signups per day and new users will keep getting disgusted by Lemmy if they land on one of those spammy instances. Making captchas a default should have been a priority and I’m sure no one would have complained if the 0.18 release was postponed to make that happen.
The feed desperately needed a fix, so I’m glad they pushed it out. But agreed, they should be prioritizing methods to reduce spam and bots in the next release, even if they need to push out a relatively feature-sparse version first
I was tracking the Race for Captchas in
0.18.0
and I’m pretty surprised how it went in the end.
All Lemmy instances on v0.18.0 are inaccessible with javascript disabled. The only way to privately browse Lemmy instances now is via kbin. I was hoping that Lemmy was going to focus more on privacy with the coming updates. Maybe this will be fixed in v0.18.1?
JavaScript itself has nothing to do with privacy. I assume you think so because you are using Tor Browser at the higest security setting that disables JavaScript entirely?
IMHO just stop using that broken-by-design browser and use a browser extension with a JavaScript allow-list.
It should still be possible to browse the internet with JS disabled. Especially Free Software should set a high standard to that. It’s understandable that Lemmy devs have too much on their heads now, but let’s not pretend that it’s okay to make websites which aren’t viewable without JS.
wow TOTP support is always welcome!!
The piece of content in the feed is great and much more fun to browse ! That specific change makes me feel that I can jump from reddit to lemmy definitly.
Good work dudes <3
I thought captcha were re enabled on the rc For this but the notes say it’s gone again. Adding one completely stopped botted sign ups for me
Captchas have been restored by a PR shortly before release and almost immediately been removed again by reverting the PR. The PR author has been asked to re-create his PR and then
0.18.0
got released without Captchas.Wow that seems… Odd
The PR hadn’t been reviewed and was merged by mistake, from my understanding.
PR #3249 got reviewed, approved and then merged by Nutomic and then reverted by dessalines because …
@TKilFree This got wrongly merged without a PR from me. You’ll need to re-open it.
Whatever that means …
Man, i appreciate updates, but lemmy_api_common is now broken.
Great work!
That’s a LOT of changes. Kudos to all the people involved.
is the bug with “active” sorting fixed ?
It seems to!
very nice, updated with zero issues.
Is it safe to update via ansible?
Yes. We have one issue open having to do with site icons, but everything else is smooth.
Good to know. Thank you for your work!
I just upgraded via Ansible and the only issue I ran into is that on 0.18.0 you can’t enable Federation and Private Instance at the same time. I had both enabled on 0.17.4 and when I upgraded, the Lemmy docker wouldn’t start because both options can’t be enabled together anymore. I had to disable Private Instance directly on the database to get my instance up and running again.
I tried to upgrade via the instructions doing a
git pull
and then running ansible again and it totally broke my site with aserver error
message. I ended up reverting back to 0.17.4.Yeah, I’ll better wait for now.
The community linking is great, is there a way to share posts natively?