jupyterhub / repo2docker

Turn repositories into Jupyter-enabled Docker images
https://repo2docker.readthedocs.io
BSD 3-Clause "New" or "Revised" License
1.62k stars 362 forks source link

Introduce micropipenv buildpack and merge buildpacks for python and pipenv (and include poetry) in this way #1083

Open pacospace opened 3 years ago

pacospace commented 3 years ago

Proposed change

I would like to propose the introduction of a new way to install dependencies in the repo2docker cases through micropipenv [1]: A lightweight wrapper for pip to support requirements.txt, Pipenv and Poetry lock files or converting them to pip-tools compatible output. Designed for containerized Python applications but not limited to them.

This would reduce code to be maintained, merging python and pipenv buildpacks, and moreover allowing repo2docker to handle poetry files, all with one single library.

Alternative options

Who would use this feature?

This feature will help maintainers of repo2docker and will allow users to use also poetry files all with one single library.

How much effort will adding it take?

It should not take too much time to assemble one buildpack called micropipenv that check for requirements.txt, Pipenv or Poetry lock files and install them in the pyenv, virtualenv or conda environment.

https://github.com/jupyterhub/repo2docker/pull/972 would not be required anymore. And the new buildpack for poetry https://github.com/jupyterhub/repo2docker/issues/835 could be integrated in one single buildpack.

Who can do this work?

I'm available to write the part with micropipenv, I would need some support on testing those changes.

References

welcome[bot] commented 3 years ago

Thank you for opening your first issue in this project! Engagement like this is essential for open source projects! :hugs:
If you haven't done so already, check out Jupyter's Code of Conduct. Also, please try to follow the issue template as it helps other other community members to contribute more effectively. welcome You can meet the other Jovyans by joining our Discourse forum. There is also an intro thread there where you can stop by and say Hi! :wave:
Welcome to the Jupyter community! :tada: