Make a naive datetime.datetime in a given time zone aware. :raises ValueError: when value is not naive datetime
(
value: datetime, timezone: tzinfo | str | None = None, is_dst: bool | None = None
)
| 144 | |
| 145 | |
| 146 | def make_aware( |
| 147 | value: datetime, timezone: tzinfo | str | None = None, is_dst: bool | None = None |
| 148 | ) -> datetime: |
| 149 | """ |
| 150 | Make a naive datetime.datetime in a given time zone aware. |
| 151 | |
| 152 | :raises ValueError: when value is not naive datetime |
| 153 | """ |
| 154 | tz = _get_or_parse_timezone(timezone) |
| 155 | if hasattr(tz, "localize"): |
| 156 | return tz.localize(value, is_dst=is_dst) |
| 157 | if is_aware(value): |
| 158 | raise ValueError(f"make_aware expects a naive datetime, got {value}") |
| 159 | # This may be wrong around DST changes! |
| 160 | return value.replace(tzinfo=tz) |
| 161 | |
| 162 | |
| 163 | def make_naive(value: datetime, timezone: tzinfo | str | None = None) -> datetime: |
nothing calls this directly
no test coverage detected
searching dependent graphs…