Skip to content

[Bug] Pyright (strict mode) fails on start/execute activity/workflow calls #893

Open
@dandavison

Description

@dandavison
Image
Type of "execute_activity" is partially unknown
  Type of "execute_activity" is "Overload[(activity: CallableAsyncNoParam[ReturnType@execute_activity], *, task_queue: str | None = None, schedule_to_close_timeout: timedelta | None = None, schedule_to_start_timeout: timedelta | None = None, start_to_close_timeout: timedelta | None = None, heartbeat_timeout: timedelta | None = None, retry_policy: RetryPolicy | None = None, cancellation_type: ActivityCancellationType = ActivityCancellationType.TRY_CANCEL, activity_id: str | None = None, versioning_intent: VersioningIntent | None = None, summary: str | None = None, priority: Priority = temporalio.common.Priority.default) -> Coroutine[Any, Any, ReturnType@execute_activity], (activity: CallableSyncNoParam[ReturnType@execute_activity], *, task_queue: str | None = None, schedule_to_close_timeout: timedelta | None = None, schedule_to_start_timeout: timedelta | None = None, start_to_close_timeout: timedelta | None = None, heartbeat_timeout: timedelta | None = None, retry_policy: RetryPolicy | None = None, cancellation_type: ActivityCancellationType = ActivityCancellationType.TRY_CANCEL, activity_id: str | None = None, versioning_intent: VersioningIntent | None = None, summary: str | None = None, priority: Priority = temporalio.common.Priority.default) -> Coroutine[Any, Any, ReturnType@execute_activity], (activity: CallableAsyncSingleParam[ParamType@execute_activity, ReturnType@execute_activity], arg: ParamType@execute_activity, *, task_queue: str | None = None, schedule_to_close_timeout: timedelta | None = None, schedule_to_start_timeout: timedelta | None = None, start_to_close_timeout: timedelta | None = None, heartbeat_timeout: timedelta | None = None, retry_policy: RetryPolicy | None = None, cancellation_type: ActivityCancellationType = ActivityCancellationType.TRY_CANCEL, activity_id: str | None = None, versioning_intent: VersioningIntent | None = None, summary: str | None = None, priority: Priority = temporalio.common.Priority.default) -> Coroutine[Any, Any, ReturnType@execute_activity], (activity: CallableSyncSingleParam[ParamType@execute_activity, ReturnType@execute_activity], arg: ParamType@execute_activity, *, task_queue: str | None = None, schedule_to_close_timeout: timedelta | None = None, schedule_to_start_timeout: timedelta | None = None, start_to_close_timeout: timedelta | None = None, heartbeat_timeout: timedelta | None = None, retry_policy: RetryPolicy | None = None, cancellation_type: ActivityCancellationType = ActivityCancellationType.TRY_CANCEL, activity_id: str | None = None, versioning_intent: VersioningIntent | None = None, summary: str | None = None, priority: Priority = temporalio.common.Priority.default) -> Coroutine[Any, Any, ReturnType@execute_activity], (activity: (...) -> Awaitable[ReturnType@execute_activity], *, args: Sequence[Any], task_queue: str | None = None, schedule_to_close_timeout: timedelta | None = None, schedule_to_start_timeout: timedelta | None = None, start_to_close_timeout: timedelta | None = None, heartbeat_timeout: timedelta | None = None, retry_policy: RetryPolicy | None = None, cancellation_type: ActivityCancellationType = ActivityCancellationType.TRY_CANCEL, activity_id: str | None = None, versioning_intent: VersioningIntent | None = None, summary: str | None = None, priority: Priority = temporalio.common.Priority.default) -> Coroutine[Any, Any, ReturnType@execute_activity], (activity: (...) -> ReturnType@execute_activity, *, args: Sequence[Any], task_queue: str | None = None, schedule_to_close_timeout: timedelta | None = None, schedule_to_start_timeout: timedelta | None = None, start_to_close_timeout: timedelta | None = None, heartbeat_timeout: timedelta | None = None, retry_policy: RetryPolicy | None = None, cancellation_type: ActivityCancellationType = ActivityCancellationType.TRY_CANCEL, activity_id: str | None = None, versioning_intent: VersioningIntent | None = None, summary: str | None = None, priority: Priority = temporalio.common.Priority.default) -> Coroutine[Any, Any, ReturnType@execute_activity], (activity: str, arg: Any = temporalio.common._arg_unset, *, args: Sequence[Any] = [], task_queue: str | None = None, result_type: Type[Unknown] | None = None, schedule_to_close_timeout: timedelta | None = None, schedule_to_start_timeout: timedelta | None = None, start_to_close_timeout: timedelta | None = None, heartbeat_timeout: timedelta | None = None, retry_policy: RetryPolicy | None = None, cancellation_type: ActivityCancellationType = ActivityCancellationType.TRY_CANCEL, activity_id: str | None = None, versioning_intent: VersioningIntent | None = None, summary: str | None = None, priority: Priority = temporalio.common.Priority.default) -> Coroutine[Any, Any, Any]]"

In VSCode, Pyright needs to be set to "strict" mode for this to be flagged.

"python.analysis.typeCheckingMode": "strict"

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions