Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

laputa lives on #859

Closed
wants to merge 4 commits into from
Closed

laputa lives on #859

wants to merge 4 commits into from

Conversation

ellie-idb
Copy link

@ellie-idb ellie-idb commented Nov 30, 2024

this is a SUPER wip PR of getting laputa working as a viable alternative to the TypeScript PDS. the motivation behind a lot of this is that people may want to run a PDS on low-power embedded devices (think: <1GB of RAM), such as myself. Go works great here, and this experimental PDS only uses about <100kb of RAM. perfect for my use cases!

lots to be done here, and lots of cleanup to be done here, but this is Just Good Enough ™️ to federate with the app view. off the top of my head:

  • tons of handlers are fully not implemented
  • it's definitely not secure because it doesn't enforce invite codes 💀
  • echo is a very mid HTTP handling library. sorry guys. i just don't love it.
  • i'm probably not emitting some events in the right sequence, namely the #account event
  • the PDS is emitting events to the firehose that are causing upstream consumers to crash (see: Sonar is crashing due to an invalid memory address or nil pointer dereference #857, https://bsky.app/profile/tom.frontpage.team/post/3lc3u6lalps2a).
  • misc errors seen in development with relays failing to accept some repo ops due to a base mismatch
  • subscribeRepos currently doesn't backfill cursors, meaning that all events emitted before a consumer connects are silently dropped (VERY BAD)

let me know if there's any interest in this! i'd love to see some of this work get upstreamed 😄

@bnewbold
Copy link
Collaborator

bnewbold commented Dec 5, 2024

I would recommend just forking: grab the laputa code, call it something else, and develop in a separate repo. I'm leaning towards just entirely removing laputa from this repo all together.

@ellie-idb ellie-idb closed this Dec 5, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants