Create an installation group for optional deps #7
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
name: Pull Request template
about: Describe the changes of a Pull Request you want to merge.
title: 'Create an installation group for optional deps'
labels: ''
assignees: ''
Status
READY
Description
I was following the tutorial docs but one of the first commands failed as I didn't have
docker
(Python module) installed. I looked atpycompss
, and it looks like optional dependencies are not managed with the package manager.Not sure if there's a reason for that, but maybe we could use the dependencies groups from setuptools? They are widely used, and also compatible with PEP 517. It allows developers to use
pip install -e .
orpip install -e .[docker]
(to install normal deps, plus the ones required for docker), orpip install -e .[all]
(at the moment just docker, but we could have deps groups that include numpy, psutil, etc, if needed).Also
python setup.py install
is being discouraged now, I think. Instead callingpython -m build
or other modules or tools is being the recommended way — probably for a future discussion/PR, but makes it easier to integrate a project with IDE, or use other tools like pytest, mypy, etc, with less configuration.Type of change
Please delete options that are not relevant.
Project impact
List the general project components that this PR will affect:
Related PRs
How Has This Been Tested?
Please describe the tests that you ran to verify your changes. If you haven't added any test and it is relevant provide instructions so we can reproduce.
Reproduce instructions:
Checklist:
utils/scripts/header_setup/replace_all.sh
)