Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .pre-commit-config.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
repos:
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.12.0
rev: v0.16.1
hooks:
- id: ruff
args: [--fix]
Expand Down
4 changes: 3 additions & 1 deletion demo.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
import asyncio
import contextlib
import taskgroup

import exceptiongroup

import taskgroup


class ConnectionClosedError(Exception):
pass
Expand Down
4 changes: 2 additions & 2 deletions taskgroup/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@

__version__ = "0.2.2"

__all__ = ["run", "Runner", "TaskGroup", "Timeout", "timeout", "timeout_at"]
__all__ = ["Runner", "TaskGroup", "Timeout", "run", "timeout", "timeout_at"]

from .runners import run, Runner
from .runners import Runner, run
from .taskgroups import TaskGroup
from .timeouts import Timeout, timeout, timeout_at
15 changes: 8 additions & 7 deletions taskgroup/install.py
Original file line number Diff line number Diff line change
@@ -1,17 +1,18 @@
import sys
import contextvars
import asyncio
import contextvars
import sys
import types
from typing import cast, Optional, Type

from .tasks import task_factory as _task_factory, Task as _Task
from typing import Optional, Type, cast

from typing_extensions import Self, TypeVar

from .tasks import Task as _Task
from .tasks import task_factory as _task_factory

if sys.version_info >= (3, 9):
from collections.abc import Generator, Coroutine
from collections.abc import Coroutine, Generator
else:
from typing import Generator, Coroutine
from typing import Coroutine, Generator


UNCANCEL_DONE = object()
Expand Down
7 changes: 3 additions & 4 deletions taskgroup/runners.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,14 @@

__all__ = ("Runner", "run")

import sys

import collections.abc
import contextvars
import enum
import functools
import signal
import sys
import threading
from asyncio import AbstractEventLoop, coroutines, events, exceptions, tasks, constants
from asyncio import AbstractEventLoop, constants, coroutines, events, exceptions, tasks
from typing import Any, TypeVar, final

from typing_extensions import Self
Expand Down Expand Up @@ -118,7 +117,7 @@ def run(
) -> _T:
"""Run a coroutine inside the embedded event loop."""
if not coroutines.iscoroutine(coro):
raise ValueError("a coroutine was expected, got {!r}".format(coro))
raise ValueError(f"a coroutine was expected, got {coro!r}")

if events._get_running_loop() is not None:
# fail fast with short traceback
Expand Down
25 changes: 11 additions & 14 deletions taskgroup/taskgroups.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,27 +6,24 @@
from __future__ import annotations

__all__ = ["TaskGroup"]
import sys
from types import TracebackType
from asyncio import events
from asyncio import exceptions
from asyncio import tasks
from asyncio import futures
import asyncio
import contextlib
import contextvars
from typing import Optional, Type
from . import install as _install
from . import tasks as _tasks
import sys
from asyncio import events, exceptions, futures, tasks
from types import TracebackType
from typing import Any, Optional, Type, Union

from exceptiongroup import BaseExceptionGroup
from typing import Any, Union
from typing_extensions import Self, TypeAlias, Literal, TypeVar
import contextlib
from typing_extensions import Literal, Self, TypeAlias, TypeVar

from . import install as _install
from . import tasks as _tasks

if sys.version_info >= (3, 9):
from collections.abc import Generator, Coroutine, Awaitable
from collections.abc import Awaitable, Coroutine, Generator
else:
from typing import Generator, Coroutine, Awaitable
from typing import Awaitable, Coroutine, Generator


_T = TypeVar("_T")
Expand Down
9 changes: 5 additions & 4 deletions taskgroup/tasks.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,15 @@

import asyncio
import contextvars
from typing import Any, Union, TYPE_CHECKING, Generic
from typing_extensions import TypeAlias, TypeVar, Self
import sys
from typing import TYPE_CHECKING, Any, Generic, Union

from typing_extensions import Self, TypeAlias, TypeVar

if sys.version_info >= (3, 9):
from collections.abc import Generator, Coroutine, Awaitable
from collections.abc import Awaitable, Coroutine, Generator
else:
from typing import Generator, Coroutine, Awaitable
from typing import Awaitable, Coroutine, Generator

_YieldT_co = TypeVar("_YieldT_co", covariant=True)
_SendT_contra = TypeVar("_SendT_contra", contravariant=True, default=None)
Expand Down
9 changes: 3 additions & 6 deletions taskgroup/timeouts.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,16 +6,13 @@

import contextlib
import enum
from asyncio import events, exceptions, tasks
from types import TracebackType
from typing import final, Optional, Type

from asyncio import events
from asyncio import exceptions
from asyncio import tasks
from . import install as _install
from typing import Optional, Type, final

from typing_extensions import Self

from . import install as _install

__all__ = (
"Timeout",
Expand Down
Loading