ContextLab / ContextLab/davos

Per notebook requirements.txt

Open
#96 6 comments 0 reactions 0 assignees View on GitHub
Dominant language
TeX
Stars
37
Forks
8
PR merge metrics
No merged PRs in 30d

Description

Is davos would be something to help us to setup per notebook venv? e.g. in https://github.com/dandi/example-notebooks/ we have some notebooks with specific requirements.txt:

```
❯ find -iname requirements.txt
./000055/BruntonLab/peterson21/requirements.txt
./000006/DataJoint/DJ-NWB-Economo-2018/requirements.txt
./000009/DataJoint/DJ-NWB-Guo-Inagaki-2017/requirements.txt
./000010/DataJoint/DJ-NWB-Li-Daie-2015-2016/requirements.txt
./000013/DataJoint/DJ-NWB-Hires-Gutnisky-2015/requirements.txt
```
and it would be great if we could just use smth like

```
import davos
davos.configure(requirements='requirements.txt')
```

and then `davos` would do the magic to ensure that all followup imports would happen from the environment which was configured according to that `requirements.txt`. Is that possible?

backref on issue which inspired the question: https://github.com/dandi/handbook/pull/95

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the proposed davos.configure(requirements='requirements.txt') entry point and the per-notebook requirements.txt examples in the issue. Determine whether a notebook-specific environment can be configured so follow-up imports use it; done means those imports resolve according to the selected requirements file.

Written by the indexing model from the issue text.

Assessment

Tech stack
jupyter, python
Domain
tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.