aws / aws/aws-step-functions-data-science-sdk-python

Make sagemaker an optional dependency

Ouverte
#184 5 commentaires 3 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
Python
Étoiles
299
Forks
84
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

I'd like to see sagemaker marked as an optional dependency, as it is not always required.

### Use Case

Not all users of this package are using the sagemaker dependency, and it adds a lot of bloat to overall installations by forcing users to have gcc and g++ to be able to install numpy and pandas.

### Proposed Solution

It's quite simple to actually do this.

In `setup.py` you'd have to change `install_requires` and add `extras_require`:

```python
setup(
# [...]
install_requires = [
"boto3>=1.14.38",
"pyyaml"
]
extras_require = {
"sagemaker": ["sagemaker>=2.1.0"],
"test": [] # [...]
}
# [...]
)
```

In addition to this, some extra documentation should probably be added to the README to make it easier for users to understand how to install the extra dependency (`pip install stepfunctions[sagemaker]`).

### Other

If this is implemented, the major version probably has to be bumped because it's a change in how the package is installed.

---

* [x] :wave: I may be able to implement this feature request
* [x] :warning: This feature might incur a breaking change

---

This is a :rocket: Feature Request

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

Commencez dans setup.py et examinez install_requires et extras_require, puis consultez le README pour les instructions d’installation. Vérifiez que l’installation par défaut ne nécessite plus sagemaker et que les utilisateurs peuvent installer la dépendance facultative avec la commande pip documentée ; évaluez l’impact sur la version majeure avant de la modifier.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
aws, python
Domaine
build-system, cloud, documentation, machine-learning
Type d'issue
Fonctionnalité
Difficulté
2/5
Temps estimé
1-3 heures
Activité
À l'abandon
Clarté
Clairement spécifiée
Accessibilité débutants
45/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.