Skip to content

Commit 960abec

Browse files
committed
make datetime required in StacCommonMetadata
1 parent 6e4c929 commit 960abec

File tree

3 files changed

+12
-12
lines changed

3 files changed

+12
-12
lines changed

Diff for: stac_pydantic/item.py

+1-11
Original file line numberDiff line numberDiff line change
@@ -4,13 +4,7 @@
44
from pydantic import AnyUrl, ConfigDict, Field, model_serializer, model_validator
55

66
from stac_pydantic.links import Links
7-
from stac_pydantic.shared import (
8-
SEMVER_REGEX,
9-
Asset,
10-
StacBaseModel,
11-
StacCommonMetadata,
12-
UtcDatetime,
13-
)
7+
from stac_pydantic.shared import SEMVER_REGEX, Asset, StacBaseModel, StacCommonMetadata
148
from stac_pydantic.version import STAC_VERSION
159

1610

@@ -19,10 +13,6 @@ class ItemProperties(StacCommonMetadata):
1913
https://github.com/radiantearth/stac-spec/blob/v1.0.0/item-spec/item-spec.md#properties-object
2014
"""
2115

22-
# Overide the datetime field to be required
23-
datetime: Optional[UtcDatetime] = Field(...)
24-
25-
# Check https://docs.pydantic.dev/dev-v2/migration/#changes-to-config for more information.
2616
model_config = ConfigDict(extra="allow")
2717

2818

Diff for: stac_pydantic/shared.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,7 @@ class StacCommonMetadata(StacBaseModel):
134134
title: Optional[str] = None
135135
description: Optional[str] = None
136136
# Date and Time
137-
datetime: Optional[UtcDatetime] = None
137+
datetime: Optional[UtcDatetime] = Field(...)
138138
created: Optional[UtcDatetime] = None
139139
updated: Optional[UtcDatetime] = None
140140
# Date and Time Range

Diff for: tests/test_models.py

+10
Original file line numberDiff line numberDiff line change
@@ -180,6 +180,16 @@ def test_stac_common_dates(args) -> None:
180180
StacCommonMetadata(**args)
181181

182182

183+
def test_stac_null_datetime_required() -> None:
184+
with pytest.raises(ValidationError):
185+
StacCommonMetadata(
186+
**{
187+
"start_datetime": "2024-01-01T00:00:00Z",
188+
"end_datetime": "2024-01-02T00:00:00Z",
189+
}
190+
)
191+
192+
183193
@pytest.mark.parametrize(
184194
"args",
185195
[

0 commit comments

Comments
 (0)