aws / aws/sagemaker-python-sdk
sagemaker-train should depend on mlflow-skinny, following sagemaker-mlflow 0.5.0
- Lenguaje dominante
- Python
- Estrellas
- 2.3k
- Forks
- 1.3k
- Merge medio
- 1 d 22 h
- PR fusionados (30 d)
- 35
Descripción
## Describe the feature you'd like
`sagemaker-train` (and `sagemaker-serve`) declare an unconditional dependency on the full `mlflow` distribution:
```
sagemaker-train 1.18.0: mlflow<4.0.0,>=3.0.0
```
The training integration uses MLflow purely as a tracking client (logging runs and metrics to a configured tracking server), which `mlflow-skinny` implements completely. The full distribution additionally drags in the tracking server stack and its dependency constraints.
`sagemaker-mlflow` already made exactly this change in 0.5.0: `mlflow-skinny>=2.8` as the base requirement, with full mlflow relegated to an optional `full` extra. Applying the same pattern to `sagemaker-train` and `sagemaker-serve` would make the SDK family consistent.
## Why it matters
Full mlflow currently caps `cryptography<50`. Snyk advisories SNYK-PYTHON-CRYPTOGRAPHY-18516620/21/22 (two high severity) are fixed only in cryptography 50.0.0, so any project consuming sagemaker-train transitively cannot reach the fixed version and must either waive the findings or remove sagemaker-train. Since the mlflow usage is client-only, the cap buys nothing for these packages.
## Suggested change
Mirror sagemaker-mlflow 0.5.0: depend on `mlflow-skinny`, offer full mlflow behind an extra for anyone who genuinely needs the server components.
Guía de contribución
Línea de trabajo
Inspecciona los metadatos de dependencias de sagemaker-train y sagemaker-serve, y compáralos con el patrón de sagemaker-mlflow 0.5.0 descrito en el issue. Verifica que mlflow-skinny sea el requisito base, que mlflow completo esté disponible mediante un extra opcional y que la resolución de dependencias ya no imponga el límite superior de cryptography indicado.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- aws, python
- Área
- build-system, machine-learning
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 2/5
- Tiempo estimado
- Medio día
- Estado de actividad
- Tranquilo
- Claridad
- Bastante claro
- Aptitud para principiantes
- 72/100