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

Make sagemaker an optional dependency

Open
#184 5 comments 3 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
299
Forks
84
PR merge metrics
No merged PRs in 30d

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

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.