-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Closed
Labels
bugSomething isn't workingSomething isn't working
Description
Bug summary
File "...", line 3, in <module>
slack_webhook_block = SlackWebhook.load("slack")
^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\ProgramData\miniconda3\Lib\site-packages\prefect\_internal\compatibility\async_dispatch.py", line 94, in wrapper
return fn(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^
File "C:\ProgramData\miniconda3\Lib\site-packages\prefect\blocks\core.py", line 1099, in load
return cls._load_from_block_document(block_document, validate=validate)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\ProgramData\miniconda3\Lib\site-packages\prefect\blocks\core.py", line 1202, in _load_from_block_document
return cls._from_block_document(block_document)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\ProgramData\miniconda3\Lib\site-packages\prefect\blocks\core.py", line 736, in _from_block_document
block = block_cls.model_validate(block_document.data)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\ProgramData\miniconda3\Lib\site-packages\prefect\blocks\core.py", line 1545, in model_validate
return super().model_validate(
^^^^^^^^^^^^^^^^^^^^^^^
File "C:\ProgramData\miniconda3\Lib\site-packages\pydantic\main.py", line 705, in model_validate
return cls.__pydantic_validator__.validate_python(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\ProgramData\miniconda3\Lib\site-packages\prefect\blocks\notifications.py", line 41, in __init__
NOTIFY_TYPES += (PREFECT_NOTIFY_TYPE_DEFAULT,) # pyright: ignore[reportUnknownVariableType]
TypeError: unsupported operand type(s) for +=: 'frozenset' and 'tuple'
When I want to use slack webhook, no matter set Notify Type
to slack_default
or not, it'll failed like this.
run this code to reproduce:
from prefect.blocks.notifications import SlackWebhook
from apprise import NOTIFY_TYPES # pyright: ignore[reportAttributeAccessIssue, reportUnknownVariableType]
# Now you can use NOTIFY_TYPES without type hinting errors
print(NOTIFY_TYPES)
slack_webhook_block = SlackWebhook.load("slack")
slack_webhook_block.notify("Hello from Prefect!")
Version info
Version: 3.4.0 - 3.4.8
API version: 0.8.4
Python version: 3.12.3
Git commit: c80e4442
Built: Fri, May 02, 2025 08:02 PM
OS/Arch: win32/AMD64
Profile: 81
Server type: server
Pydantic version: 2.11.5
Additional context
apprise version 1.9.4 change NOTIFY_TYPES type, we only can use apprise<1.9.4
eduardobrito21, henrique-maio, ir3456, nszoni and leticiarina
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working