Skip to content

Commit 869f3ee

Browse files
authored
Update pyproject.toml and prepare for v3.0.1 release (#5329)
* Update pyproject.toml * Correct typo
1 parent fa30a6d commit 869f3ee

File tree

10 files changed

+36
-142
lines changed

10 files changed

+36
-142
lines changed

CHANGELOG.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
# Changelog
22

3+
## v3.0.1 (2025-11-19)
4+
5+
* Update project dependencies to include submodules: sagemaker-core, sagemaker-train, sagemaker-serve, sagemaker-mlops
6+
37
## v3.0.0 (2025-11-19)
48

59
### Major Version Release
@@ -10,7 +14,7 @@
1014

1115
* Version 3.0.0 represents a significant milestone in our product's evolution. This major release introduces a modernized architecture, enhanced performance, and powerful new features while maintaining our commitment to user experience and reliability.
1216
* Older interfaces such as Estimator, Model, Predictor and all their subclasses will not be supported in V3.
13-
* Please review documenation of interfaces for parameters support (especially ModelBuilder)
17+
* Please review documentation of interfaces for parameters support (especially ModelBuilder)
1418

1519
## v2.254.1 (2025-10-31)
1620

README.rst

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,17 +42,17 @@ For detailed documentation, including the API reference, see `Read the Docs <htt
4242
To install SageMaker Python SDK, see `Installing SageMaker Python SDK <#installing-the-sagemaker-python-sdk>`_.
4343

4444
❗🔥 SageMaker V3 Release
45-
-----------------
45+
-------------------------
4646

4747
Version 3.0.0 represents a significant milestone in our product's evolution. This major release introduces a modernized architecture, enhanced performance, and powerful new features while maintaining our commitment to user experience and reliability.
4848

4949
**Important: Please review these breaking changes before upgrading.**
5050

5151
* Older interfaces such as Estimator, Model, Predictor and all their subclasses will not be supported in V3.
52-
* Please review documenation of interfaces for parameters support (especially ModelBuilder) in our V3 examples folder.
52+
* Please review documentation of interfaces for parameters support (especially ModelBuilder) in our V3 examples folder.
5353

5454
SageMaker V2 Examples
55-
-----------------
55+
---------------------
5656

5757
#. `Using the SageMaker Python SDK <https://sagemaker.readthedocs.io/en/stable/overview.html>`__
5858
#. `Using MXNet <https://sagemaker.readthedocs.io/en/stable/using_mxnet.html>`__

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3.0
1+
3.0.1

pyproject.toml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,9 @@ classifiers = [
3434
]
3535
dependencies = [
3636
"sagemaker-core>=2.0.0,<3.0.0",
37+
"sagemaker-train<2.0.0",
38+
"sagemaker-serve<2.0.0",
39+
"sagemaker-mlops<2.0.0",
3740
]
3841

3942
[project.optional-dependencies]

sagemaker-mlops/README.md

Lines changed: 1 addition & 135 deletions
Original file line numberDiff line numberDiff line change
@@ -109,138 +109,4 @@ pip install -e sagemaker-core
109109
pip install -e sagemaker-train
110110
pip install -e sagemaker-serve
111111
pip install -e sagemaker-mlops
112-
```
113-
114-
## Usage
115-
116-
### Importing Workflow Primitives (from Core)
117-
118-
```python
119-
# Import primitives from Core
120-
from sagemaker.core.workflow import (
121-
Parameter,
122-
ParameterString,
123-
ParameterInteger,
124-
Join,
125-
ExecutionVariables,
126-
Condition,
127-
ConditionEquals,
128-
)
129-
```
130-
131-
### Importing Workflow Orchestration (from MLOps)
132-
133-
```python
134-
# Import orchestration from MLOps
135-
from sagemaker.mlops.workflow import (
136-
Pipeline,
137-
TrainingStep,
138-
ProcessingStep,
139-
ModelStep,
140-
ConditionStep,
141-
)
142-
143-
# Import model building from Serve (re-exported from MLOps for convenience)
144-
from sagemaker.mlops import ModelBuilder
145-
```
146-
147-
### Creating a Pipeline
148-
149-
```python
150-
from sagemaker.core.workflow import ParameterString
151-
from sagemaker.mlops.workflow import Pipeline, TrainingStep
152-
from sagemaker.train import Estimator
153-
154-
# Define parameters (primitives from Core)
155-
input_data = ParameterString(name="InputData", default_value="s3://bucket/data")
156-
157-
# Create estimator (from Train)
158-
estimator = Estimator(
159-
image_uri="...",
160-
role="...",
161-
instance_count=1,
162-
instance_type="ml.m5.xlarge",
163-
)
164-
165-
# Create training step (orchestration from MLOps)
166-
train_step = TrainingStep(
167-
name="TrainModel",
168-
estimator=estimator,
169-
inputs={"training": input_data},
170-
)
171-
172-
# Create pipeline (orchestration from MLOps)
173-
pipeline = Pipeline(
174-
name="MyPipeline",
175-
parameters=[input_data],
176-
steps=[train_step],
177-
)
178-
179-
# Execute pipeline
180-
pipeline.upsert(role_arn="...")
181-
pipeline.start()
182-
```
183-
184-
### Using ModelBuilder
185-
186-
```python
187-
from sagemaker.serve import ModelBuilder
188-
from sagemaker.train import ModelTrainer
189-
190-
# Create model trainer (from Train)
191-
trainer = ModelTrainer(
192-
model_path="s3://bucket/model.tar.gz",
193-
role="...",
194-
)
195-
196-
# Build model (orchestration from MLOps)
197-
builder = ModelBuilder(model_trainer=trainer)
198-
model = builder.build()
199-
```
200-
201-
## Dependency Hierarchy
202-
203-
This package depends on:
204-
205-
- **sagemaker-core** (>=2.0.0): Foundation primitives
206-
- **sagemaker-train** (>=0.1.0): Training functionality
207-
- **sagemaker-serve** (>=0.1.0): Serving functionality
208-
209-
Lower-level packages should NOT import from this package to maintain clean architecture.
210-
211-
## Architecture Violations Fixed
212-
213-
Creating this package resolved the following architectural violations:
214-
215-
1. **Workflow violations (7)**: Core was importing from Train/Serve through workflow orchestration files
216-
2. **Serve→Train violations (2)**: ModelBuilder in Serve was accepting ModelTrainer objects from Train
217-
218-
After this change:
219-
- Workflow violations: 0 (down from 7)
220-
- Serve→Train violations: 0 (down from 2)
221-
- Clean architecture established: Core ← Train/Serve ← MLOps
222-
223-
## Development
224-
225-
### Running Tests
226-
227-
```bash
228-
pytest sagemaker-mlops/tests/ -v
229-
```
230-
231-
### Code Style
232-
233-
This package follows the same code style as other SageMaker packages:
234-
235-
```bash
236-
black sagemaker-mlops/src/
237-
flake8 sagemaker-mlops/src/
238-
```
239-
240-
## Contributing
241-
242-
See the main [CONTRIBUTING.md](../CONTRIBUTING.md) for contribution guidelines.
243-
244-
## License
245-
246-
This package is licensed under the Apache License 2.0. See [LICENSE](../LICENSE) for details.
112+
```

sagemaker-mlops/VERSION

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
1.0

sagemaker-mlops/pyproject.toml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
44

55
[project]
66
name = "sagemaker-mlops"
7-
version = "0.1.0"
7+
dynamic = ["version"]
88
description = "SageMaker MLOps package for workflow orchestration and model building"
99
readme = "README.md"
1010
requires-python = ">=3.9"
@@ -47,6 +47,9 @@ dev = [
4747
package-dir = {"" = "src"}
4848
include-package-data = true
4949

50+
[tool.setuptools.dynamic]
51+
version = { file = "VERSION"}
52+
5053
[tool.setuptools.packages.find]
5154
where = ["src"]
5255
include = ["sagemaker*"]

sagemaker-serve/README.md

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
# SageMaker Serve
2+
3+
SageMaker Serve package for model serving and deployment.
4+
5+
## Installation
6+
7+
```bash
8+
pip install sagemaker-serve
9+
```
10+
11+
## Usage
12+
13+
This package provides functionality for serving and deploying machine learning models on Amazon SageMaker.

sagemaker-serve/VERSION

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
1.0

sagemaker-serve/pyproject.toml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
44

55
[project]
66
name = "sagemaker-serve"
7-
version = "0.1.0"
7+
dynamic = ["version"]
88
description = "SageMaker Serve package for model serving and deployment"
99
readme = "README.md"
1010
requires-python = ">=3.9"
@@ -61,6 +61,9 @@ where = ["src"]
6161
include = ["sagemaker*"]
6262
namespaces = true
6363

64+
[tool.setuptools.dynamic]
65+
version = { file = "VERSION"}
66+
6467
[tool.pytest.ini_options]
6568
testpaths = ["tests"]
6669
python_files = ["test_*.py"]

0 commit comments

Comments
 (0)