this post was submitted on 23 Jun 2023
9 points (100.0% liked)
Lemmy Support
4661 readers
19 users here now
Support / questions about Lemmy.
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
I'm not sure those two settings should be compatible? If it's a private instance then it means it should not federate.
I guess it was an oversight regarding breaking changes. What error did you get? It might help some people who're experience similar problems.
Thankfully the error was very explicit:
lemmy_1 | Error: LemmyError { message: Some("Cannot have both private instance and federation enabled."), inner: Cannot have both private instance and federation enabled., context: SpanTrace [] }
ncgnzlcl_lemmy_1 exited with code 1
With both options enabled, my instance operated as expected on 0.17.4: there was no anonymous access to anything, but once logged in you could subscribe to communities from any public instances. They don't seem incompatible at all, and my posts and comments were federated correctly outside of my instance.
Prior to v18, a private instance that federates could see other instances' content, but its own content would not federate. Not sure if they changed it on purpose.
At least on 0.17.4, with Private Instance and Federation enabled, the comments and posts I made to remote communities were federated correctly to other instances. The change seems very intentional, as shown by the error message I got after I upgraded:
lemmy_1 | Error: LemmyError { message: Some("Cannot have both private instance and federation enabled."), inner: Cannot have both private instance and federation enabled., context: SpanTrace [] }
ncgnzlcl_lemmy_1 exited with code 1
The check giving this error is pretty old, so it seems that you got it to work was not intentional: https://github.com/LemmyNet/lemmy/blame/63d3759c481ff2d7594d391ae86e881e2aeca56d/crates/api_common/src/utils.rs#L539
As far as I can see, 0.18 and its release candidates only added additional checks preventing such an instance to be set up in the first place.
I see, thank you for the insight. According to this comment, after an instance on 0.18.0 is running one can still set it to private with federation enabled, so it seems this check is only preventing the instance from starting in that state.
Yes, that's what this check (and the later introduced changes) are meant for. On the reasoning why this configuration is not desired I can't comment.