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

🗄️ Split PlutoRunner into files #3007

Merged
merged 8 commits into from
Aug 23, 2024
Merged
Show file tree
Hide file tree
Changes from 6 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions src/runner/PlutoRunner/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
This module will be evaluated _inside_ the workspace process.

Pluto does most things on the server, but it uses worker processes to evaluate notebook code in.
These processes don't import Pluto, they only import this module.
Functions from this module are called by WorkspaceManager.jl via Malt.

When reading this file, pretend that you are living in a worker process,
and you are communicating with Pluto's server, who lives in the main process.
The package environment that this file is loaded with is the NotebookProcessProject.toml file in this directory.

# SOME EXTRA NOTES

1. The entire PlutoRunner should be a single file.
2. Restrict the communication between this PlutoRunner and the Pluto server to only use *Base Julia types*, like `String`, `Dict`, `NamedTuple`, etc.

These restriction are there to allow flexibility in the way that this file is
loaded on a runner process, which is something that we might want to change
in the future.
fonsp marked this conversation as resolved.
Show resolved Hide resolved

# DEVELOPMENT TIP
If you are editing this file, you cannot use Revise unfortunately.
However! You don't need to restart Pluto to test your changes! You just need to restart the notebook from the Pluto main menu, and the new PlutoRunner.jl will be loaded.
fonsp marked this conversation as resolved.
Show resolved Hide resolved
Loading
Loading