Skip to content

Commit 5becd3d

Browse files
committed
maintenance for deprecation warnings
1 parent 6a74b2f commit 5becd3d

11 files changed

+40
-41
lines changed

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ dependencies =[
3232
"numpy",
3333
"pandas",
3434
"fastapi",
35-
"pydantic",
35+
"pydantic>2",
3636
"joblib",
3737
"uvicorn",
3838
"scikit-learn",

vetiver/prototype.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -170,7 +170,7 @@ def _item(value):
170170
# if its a numpy type, we have to take the Python type due to Pydantic
171171

172172
dict_data = {
173-
f"{key}": (type(value.item()), Field(..., example=_item(value)))
173+
f"{key}": (type(value.item()), Field(..., examples=[_item(value)]))
174174
for key, value in dict_data.items()
175175
}
176176
prototype = create_prototype(**dict_data)
@@ -197,8 +197,8 @@ def _(data: dict):
197197
dict_data.update(
198198
{
199199
key: (
200-
type(value["example"]),
201-
Field(..., example=value["example"]),
200+
type(value["examples"]),
201+
Field(..., examples=[value["examples"]]),
202202
)
203203
}
204204
)
@@ -242,5 +242,5 @@ def _(data: NoneType):
242242
def _to_field(data):
243243
basemodel_input = dict()
244244
for key, value in data.items():
245-
basemodel_input[key] = (type(value), Field(..., example=value))
245+
basemodel_input[key] = (type(value), Field(..., examples=[value]))
246246
return basemodel_input

vetiver/server.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -366,7 +366,7 @@ def predict(endpoint, data: Union[dict, pd.DataFrame, pd.Series], **kw) -> pd.Da
366366

367367
if isinstance(data, pd.DataFrame):
368368
response = requester.post(
369-
endpoint, data=data.to_json(orient="records"), **kw
369+
endpoint, content=data.to_json(orient="records"), **kw
370370
) # TO DO: httpx deprecating data in favor of content for TestClient
371371
elif isinstance(data, pd.Series):
372372
response = requester.post(endpoint, json=[data.to_dict()], **kw)

vetiver/templates/model_card.qmd

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ A [model card](https://doi.org/10.1145/3287560.3287596) provides brief, transpar
4545
```{python}
4646
#| echo: false
4747
model_desc = v.description
48-
num_features = len(v.prototype.construct().dict())
48+
num_features = len(v.prototype.model_construct().model_dump())
4949
5050
display(Markdown(f"""
5151
- A {model_desc} using {num_features} feature{'s'[:num_features^1]}.

vetiver/tests/test_add_endpoint.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ def data() -> pd.DataFrame:
1717

1818

1919
def test_endpoint_adds(client, data):
20-
response = client.post("/sum/", data=data.to_json(orient="records"))
20+
response = client.post("/sum/", content=data.to_json(orient="records"))
2121

2222
assert response.status_code == 200
2323
assert response.json() == {"sum": [3, 6, 9]}
@@ -26,7 +26,7 @@ def test_endpoint_adds(client, data):
2626
def test_endpoint_adds_no_prototype(client_no_prototype, data):
2727

2828
data = pd.DataFrame({"B": [1, 1, 1], "C": [2, 2, 2], "D": [3, 3, 3]})
29-
response = client_no_prototype.post("/sum/", data=data.to_json(orient="records"))
29+
response = client_no_prototype.post("/sum/", content=data.to_json(orient="records"))
3030

3131
assert response.status_code == 200
3232
assert response.json() == {"sum": [3, 6, 9]}

vetiver/tests/test_custom_handler.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ def test_custom_vetiver_model():
4141
assert not v.metadata.required_pkgs
4242
assert isinstance(v.model, sklearn.dummy.DummyRegressor)
4343
# change to model_construct for pydantic v3
44-
assert isinstance(v.prototype.construct(), pydantic.BaseModel)
44+
assert isinstance(v.prototype.model_construct(), pydantic.BaseModel)
4545

4646

4747
def test_custom_vetiver_model_no_ptype():
@@ -60,4 +60,4 @@ def test_custom_vetiver_model_no_ptype():
6060
assert v.description == "A regression model for testing purposes"
6161
assert isinstance(v.model, sklearn.dummy.DummyRegressor)
6262
# change to model_construct for pydantic v3
63-
assert isinstance(v.prototype.construct(), pydantic.BaseModel)
63+
assert isinstance(v.prototype.model_construct(), pydantic.BaseModel)

vetiver/tests/test_monitor.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99

1010
import pytest
1111

12-
rng = pd.date_range("1/1/2012", periods=10, freq="S")
12+
rng = pd.date_range("1/1/2012", periods=10, freq="s")
1313
new = dict(x=range(len(rng)), y=range(len(rng)))
1414
df = pd.DataFrame(new, index=rng)
1515
td = timedelta(seconds=2)

vetiver/tests/test_prepare_docker.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,6 @@ def test_warning_if_no_protocol(create_vetiver_model):
4949
(("gcs", "gs"), "gcsfs"),
5050
],
5151
)
52-
@pytest.fixture(scope="module")
5352
def test_get_board_pkgs(prot, output, create_vetiver_model):
5453
board = pins.board_temp(allow_pickle_read=True)
5554
board.fs.protocol = prot

vetiver/tests/test_server.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ class CustomPrototype(BaseModel):
4343
v = VetiverModel(
4444
model=model,
4545
# move to model_construct for pydantic 3
46-
prototype_data=CustomPrototype.construct(),
46+
prototype_data=CustomPrototype.model_construct(),
4747
model_name="my_model",
4848
versioned=None,
4949
description="A regression model for testing purposes",
@@ -82,18 +82,18 @@ def test_get_prototype(client, model):
8282
assert response.status_code == 200, response.text
8383
assert response.json() == {
8484
"properties": {
85-
"B": {"example": 55, "type": "integer"},
86-
"C": {"example": 65, "type": "integer"},
87-
"D": {"example": 17, "type": "integer"},
85+
"B": {"examples": [55], "type": "integer"},
86+
"C": {"examples": [65], "type": "integer"},
87+
"D": {"examples": [17], "type": "integer"},
8888
},
8989
"required": ["B", "C", "D"],
9090
"title": "prototype",
9191
"type": "object",
9292
}
9393

9494
assert (
95-
model.prototype.construct().dict()
96-
== vetiver_create_prototype(response.json()).construct().dict()
95+
model.prototype.model_construct().model_dump()
96+
== vetiver_create_prototype(response.json()).model_construct().model_dump()
9797
)
9898

9999

vetiver/tests/test_spacy.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ def test_good_prototype_shape(data, spacy_model):
6868
model_schema = v.prototype.model_json_schema()
6969
expected = {
7070
"properties": {
71-
"col": {"example": "1", "title": "Col", "type": "string"},
71+
"col": {"examples": "[1]", "title": "Col", "type": "string"},
7272
},
7373
"required": ["col"],
7474
"title": "prototype",
@@ -77,7 +77,7 @@ def test_good_prototype_shape(data, spacy_model):
7777
except AttributeError: # pydantic v1
7878
model_schema = v.prototype.schema_json()
7979
expected = '{"title": "prototype", "type": "object", "properties": \
80-
{"col": {"title": "Col", "example": "1", "type": "string"}}, "required": ["col"]}'
80+
{"col": {"title": "Col", "examples": "[1]", "type": "string"}}, "required": ["col"]}'
8181

8282
assert model_schema == expected
8383

0 commit comments

Comments
 (0)