You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Something that could be worth adding is an option (disabled by default) to treat a Davos project more like a "complete" virtual environment -- i.e., include & provide all required packages on its own, rather than supplementing the user’s existing environment.
Currently, Davos projects don’t duplicate any dependencies already satisfied by the user’s environment. This makes them more efficient, and there’s few if any downsides to doing it this way. But I can imagine some users might want the alternate behavior in some cases, and right now the only way to achieve this would be to add --ignore-installed to the onion comment for every smuggle statement (which would then have to be removed after the first run, otherwise the smuggle statements would install all packages every time).
My gut feeling is this might work better as a flag attached to the Project object itself rather than davos.config/the top-level davos module -- e.g., davos.project.complete = True. Then the behavior would be linked to the project even if it were re-used across multiple notebooks, we'd avoid ambiguity about what happens if you enable the option then change which project you're using, and it could be a constructor argument so you don't have to set it every time, e.g., davos.project = Project('my-project', complete=True)
The text was updated successfully, but these errors were encountered:
Something that could be worth adding is an option (disabled by default) to treat a Davos project more like a "complete" virtual environment -- i.e., include & provide all required packages on its own, rather than supplementing the user’s existing environment.
Currently, Davos projects don’t duplicate any dependencies already satisfied by the user’s environment. This makes them more efficient, and there’s few if any downsides to doing it this way. But I can imagine some users might want the alternate behavior in some cases, and right now the only way to achieve this would be to add
--ignore-installed
to the onion comment for everysmuggle
statement (which would then have to be removed after the first run, otherwise thesmuggle
statements would install all packages every time).My gut feeling is this might work better as a flag attached to the
Project
object itself rather thandavos.config
/the top-leveldavos
module -- e.g.,davos.project.complete = True
. Then the behavior would be linked to the project even if it were re-used across multiple notebooks, we'd avoid ambiguity about what happens if you enable the option then change which project you're using, and it could be a constructor argument so you don't have to set it every time, e.g.,davos.project = Project('my-project', complete=True)
The text was updated successfully, but these errors were encountered: