- 
          
 - 
                Notifications
    
You must be signed in to change notification settings  - Fork 318
 
Description
I think about something like Pluto.run(notebook=..., project=... ) . This would start the notebook with the environment provided under project instead of the notebook environment.   A similar option to Pluto.SessionActions.open and  corresponding methods of PlutoSliderServer.jl would be nice.
The main use case is the use of Pluto notebooks as package tutorials which at once are used in the documentation and in CI.
- Disable PlutoPkg when working in the tree of a package under development. This allows to develop notebook and package in parallel and to take advantage of updates in the package via Revise.jl .
 - Eventually run the notebook during unit tests for a dev'ed package(though this could be achieved by running the notebook as a script)
 - Batch generation of html pages from Pluto notebooks using a not yet registered version of the package during documentation development and deployment.
 
Outside of these contexts, and without providing an environment, the notebook should run in "reproducible mode" using  PlutoPkg with a fixed version of the package.
I find it important that switching between these two modes is possible without changes in the notebook
(like  e.g. "markdowning" a cell with Pkg.activate.
In the moment I achieve this behavior in a quite hackish way.
The the initial  proposal in #1281 seems to have a similar effect.
A slightly related discussion is found here. EDIT: May be @kellertuer is interested in this as well.