Skip to content

Comments

Backend refactor#125

Draft
LilithSilver wants to merge 59 commits intomainfrom
backend-refactor
Draft

Backend refactor#125
LilithSilver wants to merge 59 commits intomainfrom
backend-refactor

Conversation

@LilithSilver
Copy link
Collaborator

@LilithSilver LilithSilver commented Jan 26, 2026

Refactors the backend to use futures instead of signals, and to use multiple separate modules instead of one giant driver.

TODO before this PR is out of draft:

  • Test local and remote servers
  • Figure out binary doc loading
  • Implement merge
  • Implement revert
  • Delete branch
  • Make branch list work
  • with_document breaks if repo.stop() is called in the middle
  • Server status info thingy
  • Write the config file
  • Checkout saved branch on startup
  • Fix FS watcher not actually using ignore globs (Nikita)
  • Fix deadlock with initial loading projects
  • Make diffs work again (Nikita)
    • Figure out how to send Variants across threads, or alternatively figure out how to create diffs without using Variants
  • Finish the Variant parser
  • Figure out loading bars? Probably stretch
  • Support stable tokio and no console in Release mode
  • Clean up TODOs

Performance/correctness TODOs:

  • See if we can figure out why get_changes is so slow, and why it causes a freeze even on a different thread (and make it better)
  • Validate the concurrency of main_thread_block.rs with a second pair of eyes
  • See if I can reduce block_on for getters on the VM

nikitalita and others added 29 commits January 30, 2026 18:53
debugging does not work on macos if the plugin isn't signed.
Works better than codelldb on macos
Add Nikita's work to-date to backend-refactor
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