<!-- Provide a general summary of your proposed changes in the Title field above -->
### Description
<!-- Describe your changes in detail -->
I'm chasing some loose datetime.datetime.utcnow() deprecation warning in some test suites, and one of these was seemingly coming from sqlalchemy. It wasn't, but nevertheless these minor cleanup changes may still be found useful.
### Checklist
<!-- go over following points. check them with an `x` if they do apply, (they turn into clickable checkboxes once the PR is submitted, so no need to do everything at once)
-->
This pull request is:
- [x] A documentation / typographical / small typing error fix
- Good to go, no issue or tests are needed
**Have a nice day!**
Closes: #11736
Pull-request: https://github.com/sqlalchemy/sqlalchemy/pull/11736
Pull-request-sha:
9bee8af8d1082c3cde5f64c78f1e565ef4ab14cd
Change-Id: Ib1b85fa3d66b665165d908e7c8394482b714c57f
"""
import datetime
+from functools import partial
from sqlalchemy import Column
from sqlalchemy import create_engine
"""Mixin that identifies a class as having a timestamp column"""
timestamp = Column(
- DateTime, default=datetime.datetime.utcnow, nullable=False
+ DateTime,
+ default=partial(datetime.datetime.now, datetime.timezone.utc),
+ nullable=False,
)
entity = desc['entity']
query = query.filter(entity.deleted == False)
- update_context.values['timestamp'] = datetime.utcnow()
+ update_context.values['timestamp'] = (
+ datetime.datetime.now(datetime.UTC)
+ )
return query
The ``.values`` dictionary of the "update context" object can also
from __future__ import annotations
import datetime
+from functools import partial
import random
from typing import List
"""Mixin that identifies a class as having a timestamp column"""
timestamp = Column(
- DateTime, default=datetime.datetime.utcnow, nullable=False
+ DateTime,
+ default=partial(datetime.datetime.now, datetime.timezone.utc),
+ nullable=False,
)
cls.HasTemporal = HasTemporal