Open
Description
Proposed change
Add a development-oriented configuration for binder which can be used for PR review as well as a demo.
References
Alternative options
Do nothing.
Who would use this feature?
Reviewers of PRs, etc.
This would also be a basically single-command way to get a full development environment that works on proprietary systems like Apple Silicon and Windows.
Suggest a solution
Add a binder configuration which fully encapsulates the development environment:
.binder/apt.txt
- include X11 dependencies needed to run
firefox
- include X11 dependencies needed to run
.binder/environment.yml
- include all python packages
- include as many
contrib
packages as possible - include a reasonably pinned version of
nodejs
,python
,firefox
,geckodriver
,make
, etc. - include
nbgitpuller
- though i don't think one can actually use a downstream config, due to how loading works
- consider making it lazier in the future, a la
kernelspecs
, etc.
.binder/postBuild
- fully execute the dev build chain
- build the js packages
- build the python packages
- build the docs
- run the full test suite
- don't block for anything except failing to build/install the packages
- fully execute the dev build chain
README.md
- add link to binder
CONTRIBUTING.md
- add note about keeping binder config up-to-date w/r/t
pyproject.toml
, etc.
- add note about keeping binder config up-to-date w/r/t
.github/workflows/binder.yml
- add the binder PR link generator workflow