ashb commented on code in PR #53831:
URL: https://github.com/apache/airflow/pull/53831#discussion_r2249149808
##########
task-sdk/src/airflow/sdk/bases/notifier.py:
##########
@@ -104,4 +132,23 @@ def __call__(self, *args) -> None:
try:
self.notify(context)
except Exception as e:
- self.log.exception("Failed to send notification: %s", e)
+ self.log.exception("Failed to send (blocking) notification: %s", e)
+
+ def __await__(self) -> Generator[Any, None, None]:
+ """
+ Make the notifier awaitable.
+
+ Context provided in the constructor is used.
+ """
+ self._update_context(self.context)
+ self.render_template_fields(self.context)
+ try:
+ return self.async_notify(self.context).__await__()
Review Comment:
Two questions here can't we make this a normal async function?
```suggestion
async def __await__(self) -> Any:
"""
Make the notifier awaitable.
Context provided in the constructor is used.
"""
self._update_context(self.context)
self.render_template_fields(self.context)
try:
return await self.async_notify(self.context)
```
And why do we need the empty generator? I think with the above change that
isn't needed anymore?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]