From 4b5b32e67093c4f1f8523d4807b0dc3da5ef6076 Mon Sep 17 00:00:00 2001 From: Ivana Kellyer Date: Mon, 3 Aug 2026 16:42:58 +0200 Subject: [PATCH 1/6] feat: Enforce minimum version checks in all integrations Add `_check_minimum_version` calls to all integrations that have entries in `_MIN_VERSIONS` but were not enforcing them at runtime. Also add `_MIN_VERSIONS` entries for huey, litestar, pyramid, redis, spark, and trytond_wsgi. --- sentry_sdk/integrations/__init__.py | 6 ++++++ sentry_sdk/integrations/beam.py | 6 +++++- sentry_sdk/integrations/chalice.py | 6 +++--- sentry_sdk/integrations/cohere.py | 12 ++++++++++-- sentry_sdk/integrations/dramatiq.py | 6 +++++- sentry_sdk/integrations/fastapi.py | 7 +++++-- sentry_sdk/integrations/google_genai/__init__.py | 6 +++++- sentry_sdk/integrations/grpc/__init__.py | 4 +++- sentry_sdk/integrations/httpx.py | 6 +++++- sentry_sdk/integrations/httpx2.py | 6 +++++- sentry_sdk/integrations/huey.py | 6 +++++- sentry_sdk/integrations/huggingface_hub.py | 6 +++++- sentry_sdk/integrations/langchain.py | 7 +++++-- sentry_sdk/integrations/langgraph.py | 7 +++++-- sentry_sdk/integrations/launchdarkly.py | 6 ++++-- sentry_sdk/integrations/litellm.py | 7 +++++-- sentry_sdk/integrations/litestar.py | 5 +++++ sentry_sdk/integrations/loguru.py | 7 +++++-- sentry_sdk/integrations/mcp.py | 4 +++- sentry_sdk/integrations/openai.py | 6 +++++- sentry_sdk/integrations/openai_agents/__init__.py | 3 ++- sentry_sdk/integrations/openfeature.py | 6 +++++- sentry_sdk/integrations/pydantic_ai/__init__.py | 3 ++- sentry_sdk/integrations/pymongo.py | 11 +++++++++-- sentry_sdk/integrations/pyramid.py | 6 +++++- sentry_sdk/integrations/pyreqwest.py | 6 +++++- sentry_sdk/integrations/quart.py | 6 +++++- sentry_sdk/integrations/redis/__init__.py | 7 +++++-- sentry_sdk/integrations/spark/spark_driver.py | 11 +++++++++-- sentry_sdk/integrations/starlette.py | 7 +++---- sentry_sdk/integrations/starlite.py | 6 +++++- sentry_sdk/integrations/trytond.py | 11 +++++++++-- sentry_sdk/integrations/typer.py | 6 +++++- sentry_sdk/integrations/unleash.py | 6 +++++- 34 files changed, 173 insertions(+), 48 deletions(-) diff --git a/sentry_sdk/integrations/__init__.py b/sentry_sdk/integrations/__init__.py index 7aa496cec2..34c3670075 100644 --- a/sentry_sdk/integrations/__init__.py +++ b/sentry_sdk/integrations/__init__.py @@ -146,10 +146,12 @@ def iter_default_integrations( "grpc": (1, 32, 0), # grpcio "httpx": (0, 16, 0), "httpx2": (2, 0, 0), + "huey": (2, 0), "huggingface_hub": (0, 24, 7), "langchain": (0, 1, 0), "langgraph": (0, 6, 6), "launchdarkly": (9, 8, 0), + "litestar": (2, 0, 0), "litellm": (1, 77, 5), "loguru": (0, 7, 0), "mcp": (1, 15, 0), @@ -158,18 +160,22 @@ def iter_default_integrations( "openfeature": (0, 7, 1), "pydantic_ai": (1, 0, 0), "pymongo": (3, 5, 0), + "pyramid": (1, 8), "pyreqwest": (0, 11, 6), "quart": (0, 16, 0), "ray": (2, 7, 0), + "redis": (2, 10, 0), "requests": (2, 0, 0), "rq": (0, 6), "sanic": (0, 8), + "spark": (3, 0), # pyspark "sqlalchemy": (1, 2), "starlette": (0, 16), "starlite": (1, 48), "statsig": (0, 55, 3), "strawberry": (0, 209, 5), "tornado": (6, 0), + "trytond_wsgi": (4, 6), # trytond "typer": (0, 15), "unleash": (6, 0, 1), } diff --git a/sentry_sdk/integrations/beam.py b/sentry_sdk/integrations/beam.py index 31f45f73de..684c70ee36 100644 --- a/sentry_sdk/integrations/beam.py +++ b/sentry_sdk/integrations/beam.py @@ -4,12 +4,13 @@ from typing import TYPE_CHECKING import sentry_sdk -from sentry_sdk.integrations import Integration +from sentry_sdk.integrations import Integration, _check_minimum_version from sentry_sdk.integrations.logging import ignore_logger from sentry_sdk.utils import ( capture_internal_exceptions, ensure_integration_enabled, event_from_exception, + package_version, reraise, ) @@ -34,6 +35,9 @@ class BeamIntegration(Integration): def setup_once() -> None: from apache_beam.transforms.core import DoFn, ParDo # type: ignore + version = package_version("apache-beam") + _check_minimum_version(BeamIntegration, version) + ignore_logger("root") ignore_logger("bundle_processor.create") diff --git a/sentry_sdk/integrations/chalice.py b/sentry_sdk/integrations/chalice.py index 9baa0e5cdd..69c09d13da 100644 --- a/sentry_sdk/integrations/chalice.py +++ b/sentry_sdk/integrations/chalice.py @@ -2,7 +2,7 @@ from functools import wraps import sentry_sdk -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version from sentry_sdk.integrations._wsgi_common import _filter_headers from sentry_sdk.integrations.aws_lambda import _make_request_event_processor from sentry_sdk.traces import ( @@ -156,9 +156,9 @@ class ChaliceIntegration(Integration): @staticmethod def setup_once() -> None: version = parse_version(CHALICE_VERSION) - + _check_minimum_version(ChaliceIntegration, version) if version is None: - raise DidNotEnable("Unparsable Chalice version: {}".format(CHALICE_VERSION)) + return if version < (1, 20): old_get_view_function_response = Chalice._get_view_function_response diff --git a/sentry_sdk/integrations/cohere.py b/sentry_sdk/integrations/cohere.py index 7abf3f6808..1aa3172fd2 100644 --- a/sentry_sdk/integrations/cohere.py +++ b/sentry_sdk/integrations/cohere.py @@ -15,9 +15,14 @@ from sentry_sdk.tracing import Span import sentry_sdk -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version from sentry_sdk.scope import should_send_default_pii -from sentry_sdk.utils import capture_internal_exceptions, event_from_exception, reraise +from sentry_sdk.utils import ( + capture_internal_exceptions, + event_from_exception, + package_version, + reraise, +) try: from cohere import ( @@ -78,6 +83,9 @@ def __init__(self: "CohereIntegration", include_prompts: bool = True) -> None: @staticmethod def setup_once() -> None: + version = package_version("cohere") + _check_minimum_version(CohereIntegration, version) + BaseCohere.chat = _wrap_chat(BaseCohere.chat, streaming=False) Client.embed = _wrap_embed(Client.embed) BaseCohere.chat_stream = _wrap_chat(BaseCohere.chat_stream, streaming=True) diff --git a/sentry_sdk/integrations/dramatiq.py b/sentry_sdk/integrations/dramatiq.py index 2840c24fe5..abb6f11eb9 100644 --- a/sentry_sdk/integrations/dramatiq.py +++ b/sentry_sdk/integrations/dramatiq.py @@ -4,7 +4,7 @@ import sentry_sdk from sentry_sdk.api import continue_trace, get_baggage, get_traceparent from sentry_sdk.consts import OP, SPANDATA, SPANSTATUS -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version from sentry_sdk.integrations._wsgi_common import request_body_within_bounds from sentry_sdk.traces import SegmentNameSource from sentry_sdk.tracing import ( @@ -17,6 +17,7 @@ AnnotatedValue, capture_internal_exceptions, event_from_exception, + package_version, ) R = TypeVar("R") @@ -54,6 +55,9 @@ class DramatiqIntegration(Integration): @staticmethod def setup_once() -> None: + version = package_version("dramatiq") + _check_minimum_version(DramatiqIntegration, version) + _patch_dramatiq_broker() diff --git a/sentry_sdk/integrations/fastapi.py b/sentry_sdk/integrations/fastapi.py index 14ee66eecf..6bc5b2d16e 100644 --- a/sentry_sdk/integrations/fastapi.py +++ b/sentry_sdk/integrations/fastapi.py @@ -5,11 +5,11 @@ import sentry_sdk from sentry_sdk.consts import SPANDATA -from sentry_sdk.integrations import DidNotEnable +from sentry_sdk.integrations import DidNotEnable, _check_minimum_version from sentry_sdk.traces import StreamedSpan, get_current_span from sentry_sdk.tracing import SOURCE_FOR_STYLE, TransactionSource from sentry_sdk.tracing_utils import has_span_streaming_enabled -from sentry_sdk.utils import transaction_from_function +from sentry_sdk.utils import package_version, transaction_from_function if TYPE_CHECKING: from typing import Any, Awaitable, Callable, Dict @@ -46,6 +46,9 @@ class FastApiIntegration(StarletteIntegration): @staticmethod def setup_once() -> None: + version = package_version("fastapi") + _check_minimum_version(FastApiIntegration, version) + patch_get_request_handler() diff --git a/sentry_sdk/integrations/google_genai/__init__.py b/sentry_sdk/integrations/google_genai/__init__.py index 45652c3f71..2c82f6ee4f 100644 --- a/sentry_sdk/integrations/google_genai/__init__.py +++ b/sentry_sdk/integrations/google_genai/__init__.py @@ -10,10 +10,11 @@ import sentry_sdk from sentry_sdk.ai.utils import get_start_span_function from sentry_sdk.consts import OP, SPANDATA -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version from sentry_sdk.traces import SpanStatus, StreamedSpan from sentry_sdk.tracing import SPANSTATUS from sentry_sdk.tracing_utils import has_span_streaming_enabled +from sentry_sdk.utils import package_version try: from google.genai.models import AsyncModels, Models @@ -46,6 +47,9 @@ def __init__(self: "GoogleGenAIIntegration", include_prompts: bool = True) -> No @staticmethod def setup_once() -> None: + version = package_version("google-genai") + _check_minimum_version(GoogleGenAIIntegration, version) + # Patch sync methods Models.generate_content = _wrap_generate_content(Models.generate_content) Models.generate_content_stream = _wrap_generate_content_stream( diff --git a/sentry_sdk/integrations/grpc/__init__.py b/sentry_sdk/integrations/grpc/__init__.py index bf74ff1351..8d94e1f6b5 100644 --- a/sentry_sdk/integrations/grpc/__init__.py +++ b/sentry_sdk/integrations/grpc/__init__.py @@ -1,7 +1,7 @@ from functools import wraps from typing import TYPE_CHECKING, Any, Optional, Sequence -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version from sentry_sdk.utils import parse_version from .client import ClientInterceptor @@ -175,6 +175,8 @@ class GRPCIntegration(Integration): @staticmethod def setup_once() -> None: + _check_minimum_version(GRPCIntegration, GRPC_VERSION) + import grpc grpc.insecure_channel = _wrap_channel_sync(grpc.insecure_channel) diff --git a/sentry_sdk/integrations/httpx.py b/sentry_sdk/integrations/httpx.py index 333754e209..e34dbf2009 100644 --- a/sentry_sdk/integrations/httpx.py +++ b/sentry_sdk/integrations/httpx.py @@ -2,7 +2,7 @@ import sentry_sdk from sentry_sdk.consts import OP, SPANDATA -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version from sentry_sdk.scope import should_send_default_pii from sentry_sdk.tracing_utils import ( add_http_request_source, @@ -13,6 +13,7 @@ SENSITIVE_DATA_SUBSTITUTE, capture_internal_exceptions, ensure_integration_enabled, + package_version, parse_url, ) @@ -40,6 +41,9 @@ def setup_once() -> None: httpx has its own transport layer and can be customized when needed, so patch Client.send and AsyncClient.send to support both synchronous and async interfaces. """ + version = package_version("httpx") + _check_minimum_version(HttpxIntegration, version) + _install_httpx_client() _install_httpx_async_client() diff --git a/sentry_sdk/integrations/httpx2.py b/sentry_sdk/integrations/httpx2.py index b658ce8ba4..fb6a6c420d 100644 --- a/sentry_sdk/integrations/httpx2.py +++ b/sentry_sdk/integrations/httpx2.py @@ -2,7 +2,7 @@ import sentry_sdk from sentry_sdk.consts import OP, SPANDATA -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version from sentry_sdk.scope import should_send_default_pii from sentry_sdk.tracing_utils import ( add_http_request_source, @@ -13,6 +13,7 @@ SENSITIVE_DATA_SUBSTITUTE, capture_internal_exceptions, ensure_integration_enabled, + package_version, parse_url, ) @@ -40,6 +41,9 @@ def setup_once() -> None: httpx2 has its own transport layer and can be customized when needed, so patch Client.send and AsyncClient.send to support both synchronous and async interfaces. """ + version = package_version("httpx2") + _check_minimum_version(Httpx2Integration, version) + _install_httpx2_client() _install_httpx2_async_client() diff --git a/sentry_sdk/integrations/huey.py b/sentry_sdk/integrations/huey.py index e1d34f05d7..eaa66b6044 100644 --- a/sentry_sdk/integrations/huey.py +++ b/sentry_sdk/integrations/huey.py @@ -5,7 +5,7 @@ import sentry_sdk from sentry_sdk.api import continue_trace, get_baggage, get_traceparent from sentry_sdk.consts import OP, SPANDATA, SPANSTATUS -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version from sentry_sdk.scope import should_send_default_pii from sentry_sdk.traces import SegmentNameSource, SpanStatus, StreamedSpan from sentry_sdk.tracing import ( @@ -21,6 +21,7 @@ ensure_integration_enabled, event_from_exception, has_data_collection_enabled, + package_version, reraise, ) @@ -55,6 +56,9 @@ class HueyIntegration(Integration): @staticmethod def setup_once() -> None: + version = package_version("huey") + _check_minimum_version(HueyIntegration, version) + patch_enqueue() patch_execute() _register_control_flow_exception( diff --git a/sentry_sdk/integrations/huggingface_hub.py b/sentry_sdk/integrations/huggingface_hub.py index 835acc7279..f489e61627 100644 --- a/sentry_sdk/integrations/huggingface_hub.py +++ b/sentry_sdk/integrations/huggingface_hub.py @@ -11,13 +11,14 @@ set_data_normalized, ) from sentry_sdk.consts import OP, SPANDATA -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version from sentry_sdk.scope import should_send_default_pii from sentry_sdk.traces import StreamedSpan from sentry_sdk.tracing_utils import has_span_streaming_enabled from sentry_sdk.utils import ( capture_internal_exceptions, event_from_exception, + package_version, reraise, ) @@ -43,6 +44,9 @@ def __init__( @staticmethod def setup_once() -> None: + version = package_version("huggingface_hub") + _check_minimum_version(HuggingfaceHubIntegration, version) + # Other tasks that can be called: https://huggingface.co/docs/huggingface_hub/guides/inference#supported-providers-and-tasks huggingface_hub.inference._client.InferenceClient.text_generation = ( _wrap_huggingface_task( diff --git a/sentry_sdk/integrations/langchain.py b/sentry_sdk/integrations/langchain.py index 9dcbb189ce..ead8af2bbc 100644 --- a/sentry_sdk/integrations/langchain.py +++ b/sentry_sdk/integrations/langchain.py @@ -16,7 +16,7 @@ truncate_and_annotate_messages, ) from sentry_sdk.consts import OP, SPANDATA -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version from sentry_sdk.scope import should_send_default_pii from sentry_sdk.traces import StreamedSpan from sentry_sdk.tracing_utils import ( @@ -24,7 +24,7 @@ has_span_streaming_enabled, should_truncate_gen_ai_input, ) -from sentry_sdk.utils import capture_internal_exceptions, logger +from sentry_sdk.utils import capture_internal_exceptions, logger, package_version if TYPE_CHECKING: from typing import ( @@ -230,6 +230,9 @@ def __init__( @staticmethod def setup_once() -> None: + version = package_version("langchain") + _check_minimum_version(LangchainIntegration, version) + manager._configure = _wrap_configure(manager._configure) if AgentExecutor is not None: diff --git a/sentry_sdk/integrations/langgraph.py b/sentry_sdk/integrations/langgraph.py index 3d3856a913..8f3bb1fdb8 100644 --- a/sentry_sdk/integrations/langgraph.py +++ b/sentry_sdk/integrations/langgraph.py @@ -9,7 +9,7 @@ truncate_and_annotate_messages, ) from sentry_sdk.consts import OP, SPANDATA -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version # This is fine because langgraph depends on langchain-base, and LangchainIntegration only imports from langchain-base. from sentry_sdk.integrations.langchain import LangchainIntegration @@ -19,7 +19,7 @@ has_span_streaming_enabled, should_truncate_gen_ai_input, ) -from sentry_sdk.utils import safe_serialize +from sentry_sdk.utils import package_version, safe_serialize try: from langgraph.errors import GraphBubbleUp @@ -38,6 +38,9 @@ def __init__(self: "LanggraphIntegration", include_prompts: bool = True) -> None @staticmethod def setup_once() -> None: + version = package_version("langgraph") + _check_minimum_version(LanggraphIntegration, version) + LangchainIntegration._ignored_exceptions.add(GraphBubbleUp) # LangGraph lets users create agents using a StateGraph or the Functional API. # StateGraphs are then compiled to a CompiledStateGraph. Both CompiledStateGraph and diff --git a/sentry_sdk/integrations/launchdarkly.py b/sentry_sdk/integrations/launchdarkly.py index 3c2c76450c..988bf4719d 100644 --- a/sentry_sdk/integrations/launchdarkly.py +++ b/sentry_sdk/integrations/launchdarkly.py @@ -1,7 +1,8 @@ from typing import TYPE_CHECKING from sentry_sdk.feature_flags import add_feature_flag -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version +from sentry_sdk.utils import package_version try: import ldclient @@ -38,7 +39,8 @@ def __init__(self, ld_client: "LDClient | None" = None) -> None: @staticmethod def setup_once() -> None: - pass + version = package_version("launchdarkly-server-sdk") + _check_minimum_version(LaunchDarklyIntegration, version) class LaunchDarklyHook(Hook): diff --git a/sentry_sdk/integrations/litellm.py b/sentry_sdk/integrations/litellm.py index 49ead6b068..9a61c95d19 100644 --- a/sentry_sdk/integrations/litellm.py +++ b/sentry_sdk/integrations/litellm.py @@ -12,13 +12,13 @@ truncate_and_annotate_messages, ) from sentry_sdk.consts import SPANDATA -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version from sentry_sdk.scope import should_send_default_pii from sentry_sdk.tracing_utils import ( has_span_streaming_enabled, should_truncate_gen_ai_input, ) -from sentry_sdk.utils import event_from_exception +from sentry_sdk.utils import event_from_exception, package_version if TYPE_CHECKING: from datetime import datetime @@ -359,6 +359,9 @@ def __init__(self: "LiteLLMIntegration", include_prompts: bool = True) -> None: @staticmethod def setup_once() -> None: """Set up LiteLLM callbacks for monitoring.""" + version = package_version("litellm") + _check_minimum_version(LiteLLMIntegration, version) + litellm.input_callback = input_callback or [] if _input_callback not in litellm.input_callback: litellm.input_callback.append(_input_callback) diff --git a/sentry_sdk/integrations/litestar.py b/sentry_sdk/integrations/litestar.py index 8a3f09ffa0..4362469e00 100644 --- a/sentry_sdk/integrations/litestar.py +++ b/sentry_sdk/integrations/litestar.py @@ -8,6 +8,7 @@ _DEFAULT_FAILED_REQUEST_STATUS_CODES, DidNotEnable, Integration, + _check_minimum_version, ) from sentry_sdk.integrations.asgi import SentryAsgiMiddleware from sentry_sdk.integrations.logging import ignore_logger @@ -18,6 +19,7 @@ ensure_integration_enabled, event_from_exception, has_data_collection_enabled, + package_version, transaction_from_function, ) @@ -68,6 +70,9 @@ def __init__( @staticmethod def setup_once() -> None: + version = package_version("litestar") + _check_minimum_version(LitestarIntegration, version) + patch_app_init() patch_middlewares() patch_http_route_handle() diff --git a/sentry_sdk/integrations/loguru.py b/sentry_sdk/integrations/loguru.py index dbb724d9a8..4a5e443cca 100644 --- a/sentry_sdk/integrations/loguru.py +++ b/sentry_sdk/integrations/loguru.py @@ -2,14 +2,14 @@ from typing import TYPE_CHECKING import sentry_sdk -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version from sentry_sdk.integrations.logging import ( BreadcrumbHandler, EventHandler, _BaseHandler, ) from sentry_sdk.logger import _log_level_to_otel -from sentry_sdk.utils import has_logs_enabled, safe_repr +from sentry_sdk.utils import has_logs_enabled, package_version, safe_repr if TYPE_CHECKING: from logging import LogRecord @@ -87,6 +87,9 @@ def __init__( @staticmethod def setup_once() -> None: + version = package_version("loguru") + _check_minimum_version(LoguruIntegration, version) + if LoguruIntegration.level is not None: logger.add( LoguruBreadcrumbHandler(level=LoguruIntegration.level), diff --git a/sentry_sdk/integrations/mcp.py b/sentry_sdk/integrations/mcp.py index b45ec84716..ae5e756279 100644 --- a/sentry_sdk/integrations/mcp.py +++ b/sentry_sdk/integrations/mcp.py @@ -16,7 +16,7 @@ import sentry_sdk from sentry_sdk.ai.utils import _set_span_data_attribute, get_start_span_function from sentry_sdk.consts import OP, SPANDATA -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version from sentry_sdk.scope import should_send_default_pii from sentry_sdk.traces import StreamedSpan from sentry_sdk.tracing_utils import has_span_streaming_enabled @@ -87,6 +87,8 @@ def setup_once() -> None: """ Patches MCP server classes to instrument handler execution. """ + _check_minimum_version(MCPIntegration, MCP_PACKAGE_VERSION) + _patch_lowlevel_server() _patch_handle_request() diff --git a/sentry_sdk/integrations/openai.py b/sentry_sdk/integrations/openai.py index a400393237..8d50b4b4a1 100644 --- a/sentry_sdk/integrations/openai.py +++ b/sentry_sdk/integrations/openai.py @@ -38,7 +38,7 @@ truncate_and_annotate_messages, ) from sentry_sdk.consts import SPANDATA -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version from sentry_sdk.scope import should_send_default_pii from sentry_sdk.traces import StreamedSpan from sentry_sdk.tracing_utils import ( @@ -49,6 +49,7 @@ capture_internal_exceptions, event_from_exception, has_data_collection_enabled, + package_version, reraise, ) @@ -127,6 +128,9 @@ def __init__( @staticmethod def setup_once() -> None: + version = package_version("openai") + _check_minimum_version(OpenAIIntegration, version) + Completions.create = _wrap_chat_completion_create(Completions.create) AsyncCompletions.create = _wrap_async_chat_completion_create( AsyncCompletions.create diff --git a/sentry_sdk/integrations/openai_agents/__init__.py b/sentry_sdk/integrations/openai_agents/__init__.py index 5895f53ad3..c366476209 100644 --- a/sentry_sdk/integrations/openai_agents/__init__.py +++ b/sentry_sdk/integrations/openai_agents/__init__.py @@ -1,6 +1,6 @@ from functools import wraps -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version from sentry_sdk.utils import parse_version from .patches import ( @@ -95,6 +95,7 @@ def setup_once() -> None: _patch_runner() library_version = parse_version(OPENAI_AGENTS_VERSION) + _check_minimum_version(OpenAIAgentsIntegration, library_version) if library_version is not None and library_version >= ( 0, 8, diff --git a/sentry_sdk/integrations/openfeature.py b/sentry_sdk/integrations/openfeature.py index 281604fe38..bd91a03c9c 100644 --- a/sentry_sdk/integrations/openfeature.py +++ b/sentry_sdk/integrations/openfeature.py @@ -1,7 +1,8 @@ from typing import TYPE_CHECKING, Any from sentry_sdk.feature_flags import add_feature_flag -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version +from sentry_sdk.utils import package_version try: from openfeature import api @@ -18,6 +19,9 @@ class OpenFeatureIntegration(Integration): @staticmethod def setup_once() -> None: + version = package_version("openfeature-sdk") + _check_minimum_version(OpenFeatureIntegration, version) + # Register the hook within the global openfeature hooks list. api.add_hooks(hooks=[OpenFeatureHook()]) diff --git a/sentry_sdk/integrations/pydantic_ai/__init__.py b/sentry_sdk/integrations/pydantic_ai/__init__.py index 81e7cf8090..49c31ff9b5 100644 --- a/sentry_sdk/integrations/pydantic_ai/__init__.py +++ b/sentry_sdk/integrations/pydantic_ai/__init__.py @@ -1,6 +1,6 @@ import functools -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version from sentry_sdk.utils import capture_internal_exceptions, parse_version try: @@ -166,6 +166,7 @@ def setup_once() -> None: return PYDANTIC_AI_VERSION = parse_version(PYDANTIC_AI_VERSION) + _check_minimum_version(PydanticAIIntegration, PYDANTIC_AI_VERSION) if PYDANTIC_AI_VERSION is None: return diff --git a/sentry_sdk/integrations/pymongo.py b/sentry_sdk/integrations/pymongo.py index 22da5d18ff..52e7df9b7a 100644 --- a/sentry_sdk/integrations/pymongo.py +++ b/sentry_sdk/integrations/pymongo.py @@ -3,12 +3,16 @@ import sentry_sdk from sentry_sdk.consts import OP, SPANDATA, SPANSTATUS -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version from sentry_sdk.scope import should_send_default_pii from sentry_sdk.traces import SpanStatus, StreamedSpan from sentry_sdk.tracing import Span from sentry_sdk.tracing_utils import has_span_streaming_enabled -from sentry_sdk.utils import capture_internal_exceptions, has_data_collection_enabled +from sentry_sdk.utils import ( + capture_internal_exceptions, + has_data_collection_enabled, + package_version, +) try: from pymongo import monitoring @@ -265,4 +269,7 @@ class PyMongoIntegration(Integration): @staticmethod def setup_once() -> None: + version = package_version("pymongo") + _check_minimum_version(PyMongoIntegration, version) + monitoring.register(CommandTracer()) diff --git a/sentry_sdk/integrations/pyramid.py b/sentry_sdk/integrations/pyramid.py index 5ab6ef90e9..8f5ec89163 100644 --- a/sentry_sdk/integrations/pyramid.py +++ b/sentry_sdk/integrations/pyramid.py @@ -4,7 +4,7 @@ import weakref import sentry_sdk -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version from sentry_sdk.integrations._wsgi_common import RequestExtractor from sentry_sdk.integrations.wsgi import SentryWsgiMiddleware from sentry_sdk.scope import should_send_default_pii @@ -16,6 +16,7 @@ ensure_integration_enabled, event_from_exception, has_data_collection_enabled, + package_version, reraise, ) @@ -68,6 +69,9 @@ def __init__(self, transaction_style: str = "route_name") -> None: @staticmethod def setup_once() -> None: + version = package_version("pyramid") + _check_minimum_version(PyramidIntegration, version) + from pyramid import router old_call_view = router._call_view diff --git a/sentry_sdk/integrations/pyreqwest.py b/sentry_sdk/integrations/pyreqwest.py index d25d03f470..d76c84ccbc 100644 --- a/sentry_sdk/integrations/pyreqwest.py +++ b/sentry_sdk/integrations/pyreqwest.py @@ -4,7 +4,7 @@ import sentry_sdk from sentry_sdk import start_span from sentry_sdk.consts import OP, SPANDATA -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version from sentry_sdk.scope import should_send_default_pii from sentry_sdk.traces import StreamedSpan from sentry_sdk.tracing import BAGGAGE_HEADER_NAME @@ -19,6 +19,7 @@ SENSITIVE_DATA_SUBSTITUTE, capture_internal_exceptions, logger, + package_version, parse_url, ) @@ -47,6 +48,9 @@ class PyreqwestIntegration(Integration): @staticmethod def setup_once() -> None: + version = package_version("pyreqwest") + _check_minimum_version(PyreqwestIntegration, version) + _patch_pyreqwest() diff --git a/sentry_sdk/integrations/quart.py b/sentry_sdk/integrations/quart.py index 6ad19b19cc..68e4efd3c2 100644 --- a/sentry_sdk/integrations/quart.py +++ b/sentry_sdk/integrations/quart.py @@ -6,7 +6,7 @@ import sentry_sdk from sentry_sdk.data_collection import _apply_data_collection_filtering_to_query_string -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version from sentry_sdk.integrations._wsgi_common import _filter_headers from sentry_sdk.integrations.asgi import SentryAsgiMiddleware from sentry_sdk.scope import should_send_default_pii @@ -19,6 +19,7 @@ ensure_integration_enabled, event_from_exception, has_data_collection_enabled, + package_version, parse_url, ) @@ -76,6 +77,9 @@ def __init__(self, transaction_style: str = "endpoint") -> None: @staticmethod def setup_once() -> None: + version = package_version("quart") + _check_minimum_version(QuartIntegration, version) + request_started.connect(_request_websocket_started) websocket_started.connect(_request_websocket_started) got_background_exception.connect(_capture_exception) diff --git a/sentry_sdk/integrations/redis/__init__.py b/sentry_sdk/integrations/redis/__init__.py index 7095721ed2..69f11bf4f2 100644 --- a/sentry_sdk/integrations/redis/__init__.py +++ b/sentry_sdk/integrations/redis/__init__.py @@ -1,13 +1,13 @@ import warnings from typing import TYPE_CHECKING -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version from sentry_sdk.integrations.redis.consts import _DEFAULT_MAX_DATA_SIZE from sentry_sdk.integrations.redis.rb import _patch_rb from sentry_sdk.integrations.redis.redis import _patch_redis from sentry_sdk.integrations.redis.redis_cluster import _patch_redis_cluster from sentry_sdk.integrations.redis.redis_py_cluster_legacy import _patch_rediscluster -from sentry_sdk.utils import logger +from sentry_sdk.utils import logger, package_version if TYPE_CHECKING: from typing import Optional @@ -34,6 +34,9 @@ def __init__( @staticmethod def setup_once() -> None: + version = package_version("redis") + _check_minimum_version(RedisIntegration, version) + try: from redis import StrictRedis, client except ImportError: diff --git a/sentry_sdk/integrations/spark/spark_driver.py b/sentry_sdk/integrations/spark/spark_driver.py index a83532b6a6..9b9f45f55f 100644 --- a/sentry_sdk/integrations/spark/spark_driver.py +++ b/sentry_sdk/integrations/spark/spark_driver.py @@ -1,8 +1,12 @@ from typing import TYPE_CHECKING import sentry_sdk -from sentry_sdk.integrations import Integration -from sentry_sdk.utils import capture_internal_exceptions, ensure_integration_enabled +from sentry_sdk.integrations import Integration, _check_minimum_version +from sentry_sdk.utils import ( + capture_internal_exceptions, + ensure_integration_enabled, + package_version, +) if TYPE_CHECKING: from typing import Any, Optional @@ -17,6 +21,9 @@ class SparkIntegration(Integration): @staticmethod def setup_once() -> None: + version = package_version("pyspark") + _check_minimum_version(SparkIntegration, version) + _setup_sentry_tracing() diff --git a/sentry_sdk/integrations/starlette.py b/sentry_sdk/integrations/starlette.py index 054cea6c12..ff490ba292 100644 --- a/sentry_sdk/integrations/starlette.py +++ b/sentry_sdk/integrations/starlette.py @@ -14,6 +14,7 @@ _DEFAULT_FAILED_REQUEST_STATUS_CODES, DidNotEnable, Integration, + _check_minimum_version, ) from sentry_sdk.integrations._asgi_common import _RootPathInPath from sentry_sdk.integrations._wsgi_common import ( @@ -128,11 +129,9 @@ def __init__( @staticmethod def setup_once() -> None: version = parse_version(STARLETTE_VERSION) - + _check_minimum_version(StarletteIntegration, version) if version is None: - raise DidNotEnable( - "Unparsable Starlette version: {}".format(STARLETTE_VERSION) - ) + return patch_middlewares() # Starlette tolerates both starting with: diff --git a/sentry_sdk/integrations/starlite.py b/sentry_sdk/integrations/starlite.py index 8963fc9e53..908eb5873f 100644 --- a/sentry_sdk/integrations/starlite.py +++ b/sentry_sdk/integrations/starlite.py @@ -3,7 +3,7 @@ import sentry_sdk from sentry_sdk.consts import OP, SPANDATA from sentry_sdk.data_collection import _apply_key_value_collection_filtering -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version from sentry_sdk.integrations.asgi import SentryAsgiMiddleware from sentry_sdk.scope import should_send_default_pii from sentry_sdk.tracing import SOURCE_FOR_STYLE, TransactionSource @@ -13,6 +13,7 @@ event_from_exception, has_data_collection_enabled, nullcontext, + package_version, transaction_from_function, ) @@ -64,6 +65,9 @@ class StarliteIntegration(Integration): @staticmethod def setup_once() -> None: + version = package_version("starlite") + _check_minimum_version(StarliteIntegration, version) + patch_app_init() patch_middlewares() patch_http_route_handle() diff --git a/sentry_sdk/integrations/trytond.py b/sentry_sdk/integrations/trytond.py index 0449a8f10c..64828f0925 100644 --- a/sentry_sdk/integrations/trytond.py +++ b/sentry_sdk/integrations/trytond.py @@ -1,7 +1,11 @@ import sentry_sdk -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version from sentry_sdk.integrations.wsgi import SentryWsgiMiddleware -from sentry_sdk.utils import ensure_integration_enabled, event_from_exception +from sentry_sdk.utils import ( + ensure_integration_enabled, + event_from_exception, + package_version, +) try: from trytond.exceptions import TrytonException # type: ignore @@ -21,6 +25,9 @@ def __init__(self) -> None: @staticmethod def setup_once() -> None: + version = package_version("trytond") + _check_minimum_version(TrytondWSGIIntegration, version) + app.wsgi_app = SentryWsgiMiddleware( app.wsgi_app, span_origin=TrytondWSGIIntegration.origin, diff --git a/sentry_sdk/integrations/typer.py b/sentry_sdk/integrations/typer.py index 497f0539ec..8e74fb6894 100644 --- a/sentry_sdk/integrations/typer.py +++ b/sentry_sdk/integrations/typer.py @@ -1,10 +1,11 @@ from typing import TYPE_CHECKING import sentry_sdk -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version from sentry_sdk.utils import ( capture_internal_exceptions, event_from_exception, + package_version, ) if TYPE_CHECKING: @@ -28,6 +29,9 @@ class TyperIntegration(Integration): @staticmethod def setup_once() -> None: + version = package_version("typer") + _check_minimum_version(TyperIntegration, version) + typer.main.except_hook = _make_excepthook(except_hook) # type: ignore diff --git a/sentry_sdk/integrations/unleash.py b/sentry_sdk/integrations/unleash.py index 0316f6b88a..e8daae1111 100644 --- a/sentry_sdk/integrations/unleash.py +++ b/sentry_sdk/integrations/unleash.py @@ -2,7 +2,8 @@ from typing import Any from sentry_sdk.feature_flags import add_feature_flag -from sentry_sdk.integrations import DidNotEnable, Integration +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version +from sentry_sdk.utils import package_version try: from UnleashClient import UnleashClient @@ -15,6 +16,9 @@ class UnleashIntegration(Integration): @staticmethod def setup_once() -> None: + version = package_version("UnleashClient") + _check_minimum_version(UnleashIntegration, version) + # Wrap and patch evaluation methods (class methods) old_is_enabled = UnleashClient.is_enabled From 102e48501b2e2e0b46d3de8f5cce456d151b25b6 Mon Sep 17 00:00:00 2001 From: Ivana Kellyer Date: Tue, 4 Aug 2026 11:19:06 +0200 Subject: [PATCH 2/6] use version if provided --- sentry_sdk/integrations/anthropic.py | 5 +++-- sentry_sdk/integrations/beam.py | 5 +++-- sentry_sdk/integrations/cohere.py | 7 +++++-- sentry_sdk/integrations/dramatiq.py | 5 +++-- sentry_sdk/integrations/fastapi.py | 5 +++-- sentry_sdk/integrations/google_genai/__init__.py | 5 +++-- sentry_sdk/integrations/graphene.py | 5 +++-- sentry_sdk/integrations/httpx.py | 5 +++-- sentry_sdk/integrations/httpx2.py | 5 +++-- sentry_sdk/integrations/huey.py | 5 +++-- sentry_sdk/integrations/huggingface_hub.py | 5 +++-- sentry_sdk/integrations/langchain.py | 5 +++-- sentry_sdk/integrations/launchdarkly.py | 5 +++-- sentry_sdk/integrations/loguru.py | 5 +++-- sentry_sdk/integrations/openai.py | 5 +++-- sentry_sdk/integrations/pymongo.py | 5 +++-- sentry_sdk/integrations/pyreqwest.py | 7 +++++-- sentry_sdk/integrations/ray.py | 5 +++-- sentry_sdk/integrations/redis/__init__.py | 9 +++++---- sentry_sdk/integrations/spark/spark_driver.py | 11 ++++++++--- sentry_sdk/integrations/trytond.py | 5 +++-- sentry_sdk/integrations/typer.py | 5 +++-- 22 files changed, 77 insertions(+), 47 deletions(-) diff --git a/sentry_sdk/integrations/anthropic.py b/sentry_sdk/integrations/anthropic.py index dfa4aef34c..b97fcfa52c 100644 --- a/sentry_sdk/integrations/anthropic.py +++ b/sentry_sdk/integrations/anthropic.py @@ -26,7 +26,7 @@ from sentry_sdk.utils import ( capture_internal_exceptions, event_from_exception, - package_version, + parse_version, reraise, safe_serialize, ) @@ -43,6 +43,7 @@ Omit = None from anthropic import AsyncStream, Stream + from anthropic import __version__ as ANTHROPIC_VERSION from anthropic.lib.streaming import ( AsyncMessageStream, AsyncMessageStreamManager, @@ -151,7 +152,7 @@ def __init__(self: "AnthropicIntegration", include_prompts: bool = True) -> None @staticmethod def setup_once() -> None: - version = package_version("anthropic") + version = parse_version(ANTHROPIC_VERSION) _check_minimum_version(AnthropicIntegration, version) """ diff --git a/sentry_sdk/integrations/beam.py b/sentry_sdk/integrations/beam.py index 684c70ee36..46cb9dfb8c 100644 --- a/sentry_sdk/integrations/beam.py +++ b/sentry_sdk/integrations/beam.py @@ -10,7 +10,7 @@ capture_internal_exceptions, ensure_integration_enabled, event_from_exception, - package_version, + parse_version, reraise, ) @@ -33,9 +33,10 @@ class BeamIntegration(Integration): @staticmethod def setup_once() -> None: + from apache_beam import __version__ as BEAM_VERSION from apache_beam.transforms.core import DoFn, ParDo # type: ignore - version = package_version("apache-beam") + version = parse_version(BEAM_VERSION) _check_minimum_version(BeamIntegration, version) ignore_logger("root") diff --git a/sentry_sdk/integrations/cohere.py b/sentry_sdk/integrations/cohere.py index 1aa3172fd2..36e68f5ef6 100644 --- a/sentry_sdk/integrations/cohere.py +++ b/sentry_sdk/integrations/cohere.py @@ -20,7 +20,7 @@ from sentry_sdk.utils import ( capture_internal_exceptions, event_from_exception, - package_version, + parse_version, reraise, ) @@ -29,6 +29,9 @@ ChatStreamEndEvent, NonStreamedChatResponse, ) + from cohere import ( + __version__ as COHERE_VERSION, + ) from cohere.base_client import BaseCohere from cohere.client import Client @@ -83,7 +86,7 @@ def __init__(self: "CohereIntegration", include_prompts: bool = True) -> None: @staticmethod def setup_once() -> None: - version = package_version("cohere") + version = parse_version(COHERE_VERSION) _check_minimum_version(CohereIntegration, version) BaseCohere.chat = _wrap_chat(BaseCohere.chat, streaming=False) diff --git a/sentry_sdk/integrations/dramatiq.py b/sentry_sdk/integrations/dramatiq.py index abb6f11eb9..03a7fb8c23 100644 --- a/sentry_sdk/integrations/dramatiq.py +++ b/sentry_sdk/integrations/dramatiq.py @@ -17,12 +17,13 @@ AnnotatedValue, capture_internal_exceptions, event_from_exception, - package_version, + parse_version, ) R = TypeVar("R") try: + from dramatiq import __version__ as DRAMATIQ_VERSION from dramatiq.broker import Broker from dramatiq.errors import Retry from dramatiq.message import Message @@ -55,7 +56,7 @@ class DramatiqIntegration(Integration): @staticmethod def setup_once() -> None: - version = package_version("dramatiq") + version = parse_version(DRAMATIQ_VERSION) _check_minimum_version(DramatiqIntegration, version) _patch_dramatiq_broker() diff --git a/sentry_sdk/integrations/fastapi.py b/sentry_sdk/integrations/fastapi.py index 6bc5b2d16e..a8370ec43f 100644 --- a/sentry_sdk/integrations/fastapi.py +++ b/sentry_sdk/integrations/fastapi.py @@ -9,7 +9,7 @@ from sentry_sdk.traces import StreamedSpan, get_current_span from sentry_sdk.tracing import SOURCE_FOR_STYLE, TransactionSource from sentry_sdk.tracing_utils import has_span_streaming_enabled -from sentry_sdk.utils import package_version, transaction_from_function +from sentry_sdk.utils import parse_version, transaction_from_function if TYPE_CHECKING: from typing import Any, Awaitable, Callable, Dict @@ -27,6 +27,7 @@ try: import fastapi # type: ignore + from fastapi import __version__ as FASTAPI_VERSION except ImportError: raise DidNotEnable("FastAPI is not installed") @@ -46,7 +47,7 @@ class FastApiIntegration(StarletteIntegration): @staticmethod def setup_once() -> None: - version = package_version("fastapi") + version = parse_version(FASTAPI_VERSION) _check_minimum_version(FastApiIntegration, version) patch_get_request_handler() diff --git a/sentry_sdk/integrations/google_genai/__init__.py b/sentry_sdk/integrations/google_genai/__init__.py index 2c82f6ee4f..1d8f8744fa 100644 --- a/sentry_sdk/integrations/google_genai/__init__.py +++ b/sentry_sdk/integrations/google_genai/__init__.py @@ -14,9 +14,10 @@ from sentry_sdk.traces import SpanStatus, StreamedSpan from sentry_sdk.tracing import SPANSTATUS from sentry_sdk.tracing_utils import has_span_streaming_enabled -from sentry_sdk.utils import package_version +from sentry_sdk.utils import parse_version try: + from google.genai import __version__ as GOOGLE_GENAI_VERSION from google.genai.models import AsyncModels, Models except ImportError: raise DidNotEnable("google-genai not installed") @@ -47,7 +48,7 @@ def __init__(self: "GoogleGenAIIntegration", include_prompts: bool = True) -> No @staticmethod def setup_once() -> None: - version = package_version("google-genai") + version = parse_version(GOOGLE_GENAI_VERSION) _check_minimum_version(GoogleGenAIIntegration, version) # Patch sync methods diff --git a/sentry_sdk/integrations/graphene.py b/sentry_sdk/integrations/graphene.py index 7f567a5407..07bc586a5b 100644 --- a/sentry_sdk/integrations/graphene.py +++ b/sentry_sdk/integrations/graphene.py @@ -10,10 +10,11 @@ ensure_integration_enabled, event_from_exception, has_data_collection_enabled, - package_version, + parse_version, ) try: + from graphene import __version__ as GRAPHENE_VERSION from graphene.types import schema as graphene_schema # type: ignore except ImportError: raise DidNotEnable("graphene is not installed") @@ -36,7 +37,7 @@ class GrapheneIntegration(Integration): @staticmethod def setup_once() -> None: - version = package_version("graphene") + version = parse_version(GRAPHENE_VERSION) _check_minimum_version(GrapheneIntegration, version) _patch_graphql() diff --git a/sentry_sdk/integrations/httpx.py b/sentry_sdk/integrations/httpx.py index e34dbf2009..e6b25a59a5 100644 --- a/sentry_sdk/integrations/httpx.py +++ b/sentry_sdk/integrations/httpx.py @@ -13,8 +13,8 @@ SENSITIVE_DATA_SUBSTITUTE, capture_internal_exceptions, ensure_integration_enabled, - package_version, parse_url, + parse_version, ) if TYPE_CHECKING: @@ -25,6 +25,7 @@ try: from httpx import AsyncClient, Client, Request, Response + from httpx import __version__ as HTTPX_VERSION except ImportError: raise DidNotEnable("httpx is not installed") @@ -41,7 +42,7 @@ def setup_once() -> None: httpx has its own transport layer and can be customized when needed, so patch Client.send and AsyncClient.send to support both synchronous and async interfaces. """ - version = package_version("httpx") + version = parse_version(HTTPX_VERSION) _check_minimum_version(HttpxIntegration, version) _install_httpx_client() diff --git a/sentry_sdk/integrations/httpx2.py b/sentry_sdk/integrations/httpx2.py index fb6a6c420d..7e40d18d33 100644 --- a/sentry_sdk/integrations/httpx2.py +++ b/sentry_sdk/integrations/httpx2.py @@ -13,8 +13,8 @@ SENSITIVE_DATA_SUBSTITUTE, capture_internal_exceptions, ensure_integration_enabled, - package_version, parse_url, + parse_version, ) if TYPE_CHECKING: @@ -25,6 +25,7 @@ try: from httpx2 import AsyncClient, Client, Request, Response + from httpx2 import __version__ as HTTPX2_VERSION except ImportError: raise DidNotEnable("httpx2 is not installed") @@ -41,7 +42,7 @@ def setup_once() -> None: httpx2 has its own transport layer and can be customized when needed, so patch Client.send and AsyncClient.send to support both synchronous and async interfaces. """ - version = package_version("httpx2") + version = parse_version(HTTPX2_VERSION) _check_minimum_version(Httpx2Integration, version) _install_httpx2_client() diff --git a/sentry_sdk/integrations/huey.py b/sentry_sdk/integrations/huey.py index eaa66b6044..78139aa709 100644 --- a/sentry_sdk/integrations/huey.py +++ b/sentry_sdk/integrations/huey.py @@ -21,7 +21,7 @@ ensure_integration_enabled, event_from_exception, has_data_collection_enabled, - package_version, + parse_version, reraise, ) @@ -34,6 +34,7 @@ F = TypeVar("F", bound=Callable[..., Any]) try: + from huey import __version__ as HUEY_VERSION from huey.api import Huey, PeriodicTask, Result, ResultGroup, Task from huey.exceptions import CancelExecution, RetryTask, TaskLockedException except ImportError: @@ -56,7 +57,7 @@ class HueyIntegration(Integration): @staticmethod def setup_once() -> None: - version = package_version("huey") + version = parse_version(HUEY_VERSION) _check_minimum_version(HueyIntegration, version) patch_enqueue() diff --git a/sentry_sdk/integrations/huggingface_hub.py b/sentry_sdk/integrations/huggingface_hub.py index f489e61627..68b37fb058 100644 --- a/sentry_sdk/integrations/huggingface_hub.py +++ b/sentry_sdk/integrations/huggingface_hub.py @@ -18,7 +18,7 @@ from sentry_sdk.utils import ( capture_internal_exceptions, event_from_exception, - package_version, + parse_version, reraise, ) @@ -29,6 +29,7 @@ try: import huggingface_hub.inference._client + from huggingface_hub import __version__ as HUGGINGFACE_HUB_VERSION except ImportError: raise DidNotEnable("Huggingface not installed") @@ -44,7 +45,7 @@ def __init__( @staticmethod def setup_once() -> None: - version = package_version("huggingface_hub") + version = parse_version(HUGGINGFACE_HUB_VERSION) _check_minimum_version(HuggingfaceHubIntegration, version) # Other tasks that can be called: https://huggingface.co/docs/huggingface_hub/guides/inference#supported-providers-and-tasks diff --git a/sentry_sdk/integrations/langchain.py b/sentry_sdk/integrations/langchain.py index ead8af2bbc..419d9516ce 100644 --- a/sentry_sdk/integrations/langchain.py +++ b/sentry_sdk/integrations/langchain.py @@ -24,7 +24,7 @@ has_span_streaming_enabled, should_truncate_gen_ai_input, ) -from sentry_sdk.utils import capture_internal_exceptions, logger, package_version +from sentry_sdk.utils import capture_internal_exceptions, logger, parse_version if TYPE_CHECKING: from typing import ( @@ -44,6 +44,7 @@ try: + from langchain import __version__ as LANGCHAIN_VERSION from langchain_core.agents import AgentFinish from langchain_core.callbacks import ( BaseCallbackHandler, @@ -230,7 +231,7 @@ def __init__( @staticmethod def setup_once() -> None: - version = package_version("langchain") + version = parse_version(LANGCHAIN_VERSION) _check_minimum_version(LangchainIntegration, version) manager._configure = _wrap_configure(manager._configure) diff --git a/sentry_sdk/integrations/launchdarkly.py b/sentry_sdk/integrations/launchdarkly.py index 988bf4719d..b053462491 100644 --- a/sentry_sdk/integrations/launchdarkly.py +++ b/sentry_sdk/integrations/launchdarkly.py @@ -2,10 +2,11 @@ from sentry_sdk.feature_flags import add_feature_flag from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version -from sentry_sdk.utils import package_version +from sentry_sdk.utils import parse_version try: import ldclient + from ldclient import __version__ as LDCLIENT_VERSION from ldclient.hook import Hook, Metadata if TYPE_CHECKING: @@ -39,7 +40,7 @@ def __init__(self, ld_client: "LDClient | None" = None) -> None: @staticmethod def setup_once() -> None: - version = package_version("launchdarkly-server-sdk") + version = parse_version(LDCLIENT_VERSION) _check_minimum_version(LaunchDarklyIntegration, version) diff --git a/sentry_sdk/integrations/loguru.py b/sentry_sdk/integrations/loguru.py index 4a5e443cca..f1c2114766 100644 --- a/sentry_sdk/integrations/loguru.py +++ b/sentry_sdk/integrations/loguru.py @@ -9,7 +9,7 @@ _BaseHandler, ) from sentry_sdk.logger import _log_level_to_otel -from sentry_sdk.utils import has_logs_enabled, package_version, safe_repr +from sentry_sdk.utils import has_logs_enabled, parse_version, safe_repr if TYPE_CHECKING: from logging import LogRecord @@ -17,6 +17,7 @@ try: import loguru + from loguru import __version__ as LOGURU_VERSION from loguru import logger from loguru._defaults import LOGURU_FORMAT as DEFAULT_FORMAT @@ -87,7 +88,7 @@ def __init__( @staticmethod def setup_once() -> None: - version = package_version("loguru") + version = parse_version(LOGURU_VERSION) _check_minimum_version(LoguruIntegration, version) if LoguruIntegration.level is not None: diff --git a/sentry_sdk/integrations/openai.py b/sentry_sdk/integrations/openai.py index 8d50b4b4a1..fa4dc1a914 100644 --- a/sentry_sdk/integrations/openai.py +++ b/sentry_sdk/integrations/openai.py @@ -49,7 +49,7 @@ capture_internal_exceptions, event_from_exception, has_data_collection_enabled, - package_version, + parse_version, reraise, ) @@ -89,6 +89,7 @@ Omit = None from openai import AsyncStream, Stream + from openai import __version__ as OPENAI_VERSION from openai.resources import AsyncEmbeddings, Embeddings from openai.resources.chat.completions import AsyncCompletions, Completions @@ -128,7 +129,7 @@ def __init__( @staticmethod def setup_once() -> None: - version = package_version("openai") + version = parse_version(OPENAI_VERSION) _check_minimum_version(OpenAIIntegration, version) Completions.create = _wrap_chat_completion_create(Completions.create) diff --git a/sentry_sdk/integrations/pymongo.py b/sentry_sdk/integrations/pymongo.py index 52e7df9b7a..6b334befd8 100644 --- a/sentry_sdk/integrations/pymongo.py +++ b/sentry_sdk/integrations/pymongo.py @@ -11,10 +11,11 @@ from sentry_sdk.utils import ( capture_internal_exceptions, has_data_collection_enabled, - package_version, + parse_version, ) try: + from pymongo import __version__ as PYMONGO_VERSION from pymongo import monitoring except ImportError: raise DidNotEnable("Pymongo not installed") @@ -269,7 +270,7 @@ class PyMongoIntegration(Integration): @staticmethod def setup_once() -> None: - version = package_version("pymongo") + version = parse_version(PYMONGO_VERSION) _check_minimum_version(PyMongoIntegration, version) monitoring.register(CommandTracer()) diff --git a/sentry_sdk/integrations/pyreqwest.py b/sentry_sdk/integrations/pyreqwest.py index d76c84ccbc..6f1fb99eff 100644 --- a/sentry_sdk/integrations/pyreqwest.py +++ b/sentry_sdk/integrations/pyreqwest.py @@ -19,11 +19,14 @@ SENSITIVE_DATA_SUBSTITUTE, capture_internal_exceptions, logger, - package_version, parse_url, + parse_version, ) try: + from pyreqwest import ( + __version__ as PYREQWEST_VERSION, # type: ignore[import-not-found] + ) from pyreqwest.client import ( # type: ignore[import-not-found] ClientBuilder, SyncClientBuilder, @@ -48,7 +51,7 @@ class PyreqwestIntegration(Integration): @staticmethod def setup_once() -> None: - version = package_version("pyreqwest") + version = parse_version(PYREQWEST_VERSION) _check_minimum_version(PyreqwestIntegration, version) _patch_pyreqwest() diff --git a/sentry_sdk/integrations/ray.py b/sentry_sdk/integrations/ray.py index 744cc266cf..532c7f5151 100644 --- a/sentry_sdk/integrations/ray.py +++ b/sentry_sdk/integrations/ray.py @@ -11,13 +11,14 @@ from sentry_sdk.utils import ( event_from_exception, logger, - package_version, + parse_version, qualname_from_function, reraise, ) try: import ray # type: ignore[import-not-found] + from ray import __version__ as RAY_VERSION from ray import remote except ImportError: raise DidNotEnable("Ray not installed.") @@ -251,7 +252,7 @@ class RayIntegration(Integration): @staticmethod def setup_once() -> None: - version = package_version("ray") + version = parse_version(RAY_VERSION) _check_minimum_version(RayIntegration, version) _patch_ray_remote() diff --git a/sentry_sdk/integrations/redis/__init__.py b/sentry_sdk/integrations/redis/__init__.py index 69f11bf4f2..91c58a3952 100644 --- a/sentry_sdk/integrations/redis/__init__.py +++ b/sentry_sdk/integrations/redis/__init__.py @@ -7,7 +7,7 @@ from sentry_sdk.integrations.redis.redis import _patch_redis from sentry_sdk.integrations.redis.redis_cluster import _patch_redis_cluster from sentry_sdk.integrations.redis.redis_py_cluster_legacy import _patch_rediscluster -from sentry_sdk.utils import logger, package_version +from sentry_sdk.utils import logger, parse_version if TYPE_CHECKING: from typing import Optional @@ -34,14 +34,15 @@ def __init__( @staticmethod def setup_once() -> None: - version = package_version("redis") - _check_minimum_version(RedisIntegration, version) - try: from redis import StrictRedis, client + from redis import __version__ as REDIS_VERSION except ImportError: raise DidNotEnable("Redis client not installed") + version = parse_version(REDIS_VERSION) + _check_minimum_version(RedisIntegration, version) + _patch_redis(StrictRedis, client) _patch_redis_cluster() _patch_rb() diff --git a/sentry_sdk/integrations/spark/spark_driver.py b/sentry_sdk/integrations/spark/spark_driver.py index 9b9f45f55f..d30454aa64 100644 --- a/sentry_sdk/integrations/spark/spark_driver.py +++ b/sentry_sdk/integrations/spark/spark_driver.py @@ -1,13 +1,18 @@ from typing import TYPE_CHECKING import sentry_sdk -from sentry_sdk.integrations import Integration, _check_minimum_version +from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version from sentry_sdk.utils import ( capture_internal_exceptions, ensure_integration_enabled, - package_version, + parse_version, ) +try: + from pyspark import __version__ as PYSPARK_VERSION +except ImportError: + raise DidNotEnable("pyspark is not installed") + if TYPE_CHECKING: from typing import Any, Optional @@ -21,7 +26,7 @@ class SparkIntegration(Integration): @staticmethod def setup_once() -> None: - version = package_version("pyspark") + version = parse_version(PYSPARK_VERSION) _check_minimum_version(SparkIntegration, version) _setup_sentry_tracing() diff --git a/sentry_sdk/integrations/trytond.py b/sentry_sdk/integrations/trytond.py index 64828f0925..f771978483 100644 --- a/sentry_sdk/integrations/trytond.py +++ b/sentry_sdk/integrations/trytond.py @@ -4,10 +4,11 @@ from sentry_sdk.utils import ( ensure_integration_enabled, event_from_exception, - package_version, + parse_version, ) try: + from trytond import __version__ as TRYTOND_VERSION # type: ignore from trytond.exceptions import TrytonException # type: ignore from trytond.wsgi import app # type: ignore except ImportError: @@ -25,7 +26,7 @@ def __init__(self) -> None: @staticmethod def setup_once() -> None: - version = package_version("trytond") + version = parse_version(TRYTOND_VERSION) _check_minimum_version(TrytondWSGIIntegration, version) app.wsgi_app = SentryWsgiMiddleware( diff --git a/sentry_sdk/integrations/typer.py b/sentry_sdk/integrations/typer.py index 8e74fb6894..8a84c8a7eb 100644 --- a/sentry_sdk/integrations/typer.py +++ b/sentry_sdk/integrations/typer.py @@ -5,7 +5,7 @@ from sentry_sdk.utils import ( capture_internal_exceptions, event_from_exception, - package_version, + parse_version, ) if TYPE_CHECKING: @@ -19,6 +19,7 @@ try: import typer + from typer import __version__ as TYPER_VERSION from typer.main import except_hook except ImportError: raise DidNotEnable("Typer not installed") @@ -29,7 +30,7 @@ class TyperIntegration(Integration): @staticmethod def setup_once() -> None: - version = package_version("typer") + version = parse_version(TYPER_VERSION) _check_minimum_version(TyperIntegration, version) typer.main.except_hook = _make_excepthook(except_hook) # type: ignore From 62f7c48948e1518752cbb8816892d1ed28886ed4 Mon Sep 17 00:00:00 2001 From: Ivana Kellyer Date: Tue, 4 Aug 2026 11:25:34 +0200 Subject: [PATCH 3/6] . --- scripts/populate_tox/releases.jsonl | 51 +++-------------------------- sentry_sdk/integrations/__init__.py | 2 +- sentry_sdk/integrations/trytond.py | 4 +-- 3 files changed, 8 insertions(+), 49 deletions(-) diff --git a/scripts/populate_tox/releases.jsonl b/scripts/populate_tox/releases.jsonl index 275d7bd489..232def42e8 100644 --- a/scripts/populate_tox/releases.jsonl +++ b/scripts/populate_tox/releases.jsonl @@ -273,19 +273,8 @@ {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Web Environment", "Framework :: AnyIO", "Framework :: AsyncIO", "Framework :: Trio", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Programming Language :: Python :: 3.14", "Topic :: Internet :: WWW/HTTP"], "name": "httpx2", "requires_python": ">=3.10", "version": "2.9.1", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "httpx2-2.9.1-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "httpx2-2.9.1.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Web Environment", "Framework :: AnyIO", "Framework :: AsyncIO", "Framework :: Trio", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Programming Language :: Python :: 3.14", "Topic :: Internet :: WWW/HTTP"], "name": "httpx2", "requires_python": ">=3.10", "version": "2.9.1", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "httpx2-2.9.1-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "httpx2-2.9.1.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Web Environment", "Framework :: AnyIO", "Framework :: AsyncIO", "Framework :: Trio", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Programming Language :: Python :: 3.14", "Topic :: Internet :: WWW/HTTP"], "name": "httpx2", "requires_python": ">=3.10", "version": "2.9.1", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "httpx2-2.9.1-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "httpx2-2.9.1.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 4 - Beta", "Environment :: Web Environment", "Framework :: Django", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python"], "name": "huey", "requires_python": null, "version": "0.1.1", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "huey-0.1.1.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 4 - Beta", "Environment :: Web Environment", "Framework :: Django", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python"], "name": "huey", "requires_python": null, "version": "0.1.1", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "huey-0.1.1.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 4 - Beta", "Environment :: Web Environment", "Framework :: Django", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python"], "name": "huey", "requires_python": null, "version": "0.1.1", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "huey-0.1.1.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 4 - Beta", "Environment :: Web Environment", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python"], "name": "huey", "requires_python": "", "version": "1.9.1", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "huey-1.9.1.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 4 - Beta", "Environment :: Web Environment", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python"], "name": "huey", "requires_python": "", "version": "1.9.1", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "huey-1.9.1.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 4 - Beta", "Environment :: Web Environment", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python"], "name": "huey", "requires_python": "", "version": "1.9.1", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "huey-1.9.1.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 4 - Beta", "Environment :: Web Environment", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python"], "name": "huey", "requires_python": "", "version": "1.9.1", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "huey-1.9.1.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 4 - Beta", "Environment :: Web Environment", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python"], "name": "huey", "requires_python": "", "version": "1.9.1", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "huey-1.9.1.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Topic :: Software Development :: Libraries :: Python Modules"], "name": "huey", "requires_python": null, "version": "2.4.5", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "huey-2.4.5.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Topic :: Software Development :: Libraries :: Python Modules"], "name": "huey", "requires_python": null, "version": "2.4.5", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "huey-2.4.5.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Topic :: Software Development :: Libraries :: Python Modules"], "name": "huey", "requires_python": null, "version": "2.4.5", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "huey-2.4.5.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Topic :: Software Development :: Libraries :: Python Modules"], "name": "huey", "requires_python": null, "version": "2.4.5", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "huey-2.4.5.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Topic :: Software Development :: Libraries :: Python Modules"], "name": "huey", "requires_python": null, "version": "2.4.5", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "huey-2.4.5.tar.gz"}]} +{"info": {"classifiers": ["Development Status :: 4 - Beta", "Environment :: Web Environment", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python"], "name": "huey", "requires_python": "", "version": "2.0.1", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "huey-2.0.1.tar.gz"}]} +{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Programming Language :: Python :: 3.14", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Topic :: Software Development :: Libraries :: Python Modules"], "name": "huey", "requires_python": null, "version": "2.5.5", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "huey-2.5.5-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "huey-2.5.5.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "Programming Language :: Python :: 3", "Topic :: Software Development :: Libraries :: Python Modules"], "name": "huey", "requires_python": null, "version": "3.1.1", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "huey-3.1.1-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "huey-3.1.1.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "Programming Language :: Python :: 3", "Topic :: Software Development :: Libraries :: Python Modules"], "name": "huey", "requires_python": null, "version": "3.1.1", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "huey-3.1.1-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "huey-3.1.1.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "Programming Language :: Python :: 3", "Topic :: Software Development :: Libraries :: Python Modules"], "name": "huey", "requires_python": null, "version": "3.1.1", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "huey-3.1.1-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "huey-3.1.1.tar.gz"}]} @@ -436,15 +425,9 @@ {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Operating System :: MacOS :: MacOS X", "Operating System :: Microsoft :: Windows", "Operating System :: POSIX", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Database", "Typing :: Typed"], "name": "pymongo", "requires_python": ">=3.7", "version": "4.4.1", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-macosx_10_9_universal2.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux1_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux2014_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-win32.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp311-cp311-macosx_10_9_universal2.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp311-cp311-win32.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp311-cp311-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-macosx_10_6_intel.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux1_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux2014_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-win32.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-macosx_10_9_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux1_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux2014_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-win32.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-macosx_10_9_universal2.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux1_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux2014_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-win32.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-win_amd64.whl"}, {"packagetype": "sdist", "filename": "pymongo-4.4.1.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Operating System :: MacOS :: MacOS X", "Operating System :: Microsoft :: Windows", "Operating System :: POSIX", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Database", "Typing :: Typed"], "name": "pymongo", "requires_python": ">=3.7", "version": "4.4.1", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-macosx_10_9_universal2.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux1_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux2014_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-win32.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp311-cp311-macosx_10_9_universal2.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp311-cp311-win32.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp311-cp311-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-macosx_10_6_intel.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux1_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux2014_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-win32.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-macosx_10_9_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux1_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux2014_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-win32.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-macosx_10_9_universal2.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux1_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux2014_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-win32.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-win_amd64.whl"}, {"packagetype": "sdist", "filename": "pymongo-4.4.1.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Operating System :: MacOS :: MacOS X", "Operating System :: Microsoft :: Windows", "Operating System :: POSIX", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Database", "Typing :: Typed"], "name": "pymongo", "requires_python": ">=3.7", "version": "4.4.1", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-macosx_10_9_universal2.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux1_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux2014_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-win32.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp310-cp310-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp311-cp311-macosx_10_9_universal2.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp311-cp311-win32.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp311-cp311-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-macosx_10_6_intel.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux1_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux2014_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux_2_17_s390x.manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-win32.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp37-cp37m-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-macosx_10_9_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux1_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux2014_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-win32.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp38-cp38-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-macosx_10_9_universal2.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux1_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux2014_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-win32.whl"}, {"packagetype": "bdist_wheel", "filename": "pymongo-4.4.1-cp39-cp39-win_amd64.whl"}, {"packagetype": "sdist", "filename": "pymongo-4.4.1.tar.gz"}]} -{"info": {"classifiers": ["Framework :: Pylons", "Intended Audience :: Developers", "License :: Repoze Public License", "Programming Language :: Python", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: WSGI"], "name": "pyramid", "requires_python": null, "version": "1.0.2", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "pyramid-1.0.2.tar.gz"}]} -{"info": {"classifiers": ["Framework :: Pylons", "Intended Audience :: Developers", "License :: Repoze Public License", "Programming Language :: Python", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: WSGI"], "name": "pyramid", "requires_python": null, "version": "1.0.2", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "pyramid-1.0.2.tar.gz"}]} -{"info": {"classifiers": ["Framework :: Pylons", "Intended Audience :: Developers", "License :: Repoze Public License", "Programming Language :: Python", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: WSGI"], "name": "pyramid", "requires_python": null, "version": "1.0.2", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "pyramid-1.0.2.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 6 - Mature", "Framework :: Pyramid", "Intended Audience :: Developers", "License :: Repoze Public License", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: WSGI"], "name": "pyramid", "requires_python": ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*", "version": "1.10.8", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "pyramid-1.10.8-py2.py3-none-any.whl"}, {"packagetype": "sdist", "filename": "pyramid-1.10.8.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 6 - Mature", "Framework :: Pyramid", "Intended Audience :: Developers", "License :: Repoze Public License", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: WSGI"], "name": "pyramid", "requires_python": ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*", "version": "1.10.8", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "pyramid-1.10.8-py2.py3-none-any.whl"}, {"packagetype": "sdist", "filename": "pyramid-1.10.8.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 6 - Mature", "Framework :: Pyramid", "Intended Audience :: Developers", "License :: Repoze Public License", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: WSGI"], "name": "pyramid", "requires_python": ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*", "version": "1.10.8", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "pyramid-1.10.8-py2.py3-none-any.whl"}, {"packagetype": "sdist", "filename": "pyramid-1.10.8.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 6 - Mature", "Framework :: Pyramid", "Intended Audience :: Developers", "License :: Repoze Public License", "Programming Language :: Python", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.2", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: WSGI"], "name": "pyramid", "requires_python": "", "version": "1.6.5", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "pyramid-1.6.5-py2.py3-none-any.whl"}, {"packagetype": "sdist", "filename": "pyramid-1.6.5.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 6 - Mature", "Framework :: Pyramid", "Intended Audience :: Developers", "License :: Repoze Public License", "Programming Language :: Python", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.2", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: WSGI"], "name": "pyramid", "requires_python": "", "version": "1.6.5", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "pyramid-1.6.5-py2.py3-none-any.whl"}, {"packagetype": "sdist", "filename": "pyramid-1.6.5.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 6 - Mature", "Framework :: Pyramid", "Intended Audience :: Developers", "License :: Repoze Public License", "Programming Language :: Python", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.2", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: WSGI"], "name": "pyramid", "requires_python": "", "version": "1.6.5", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "pyramid-1.6.5-py2.py3-none-any.whl"}, {"packagetype": "sdist", "filename": "pyramid-1.6.5.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 6 - Mature", "Framework :: Pyramid", "Intended Audience :: Developers", "License :: Repoze Public License", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: WSGI"], "name": "pyramid", "requires_python": "", "version": "1.8.6", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "pyramid-1.8.6-py2.py3-none-any.whl"}, {"packagetype": "sdist", "filename": "pyramid-1.8.6.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 6 - Mature", "Framework :: Pyramid", "Intended Audience :: Developers", "License :: Repoze Public License", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: WSGI"], "name": "pyramid", "requires_python": "", "version": "1.8.6", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "pyramid-1.8.6-py2.py3-none-any.whl"}, {"packagetype": "sdist", "filename": "pyramid-1.8.6.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 6 - Mature", "Framework :: Pyramid", "Intended Audience :: Developers", "License :: Repoze Public License", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Internet :: WWW/HTTP", "Topic :: Internet :: WWW/HTTP :: WSGI"], "name": "pyramid", "requires_python": "", "version": "1.8.6", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "pyramid-1.8.6-py2.py3-none-any.whl"}, {"packagetype": "sdist", "filename": "pyramid-1.8.6.tar.gz"}]} @@ -459,21 +442,9 @@ {"info": {"classifiers": ["Development Status :: 4 - Beta", "Intended Audience :: Developers", "Intended Audience :: Information Technology", "Operating System :: MacOS", "Operating System :: Microsoft :: Windows", "Operating System :: POSIX :: Linux", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Programming Language :: Python :: 3.14", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: GraalPy", "Programming Language :: Python :: Implementation :: PyPy", "Programming Language :: Rust", "Typing :: Typed"], "name": "pyreqwest", "requires_python": ">=3.11", "version": "0.12.2", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-macosx_10_12_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-macosx_11_0_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-manylinux_2_28_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-musllinux_1_1_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-musllinux_1_1_armv7l.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-musllinux_1_1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-win_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-macosx_10_12_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-macosx_11_0_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-manylinux_2_28_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-musllinux_1_1_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-musllinux_1_1_armv7l.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-musllinux_1_1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-win_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-macosx_10_12_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-macosx_11_0_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-manylinux_2_28_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-musllinux_1_1_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-musllinux_1_1_armv7l.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-musllinux_1_1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-win_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-macosx_10_12_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-macosx_11_0_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-manylinux_2_17_i686.manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-manylinux_2_28_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-musllinux_1_1_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-musllinux_1_1_armv7l.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-musllinux_1_1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-win_arm64.whl"}, {"packagetype": "sdist", "filename": "pyreqwest-0.12.2.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 4 - Beta", "Intended Audience :: Developers", "Intended Audience :: Information Technology", "Operating System :: MacOS", "Operating System :: Microsoft :: Windows", "Operating System :: POSIX :: Linux", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Programming Language :: Python :: 3.14", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: GraalPy", "Programming Language :: Python :: Implementation :: PyPy", "Programming Language :: Rust", "Typing :: Typed"], "name": "pyreqwest", "requires_python": ">=3.11", "version": "0.12.2", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-macosx_10_12_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-macosx_11_0_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-manylinux_2_28_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-musllinux_1_1_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-musllinux_1_1_armv7l.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-musllinux_1_1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-win_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-macosx_10_12_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-macosx_11_0_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-manylinux_2_28_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-musllinux_1_1_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-musllinux_1_1_armv7l.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-musllinux_1_1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-win_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-macosx_10_12_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-macosx_11_0_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-manylinux_2_28_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-musllinux_1_1_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-musllinux_1_1_armv7l.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-musllinux_1_1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-win_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-macosx_10_12_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-macosx_11_0_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-manylinux_2_17_i686.manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-manylinux_2_28_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-musllinux_1_1_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-musllinux_1_1_armv7l.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-musllinux_1_1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-win_arm64.whl"}, {"packagetype": "sdist", "filename": "pyreqwest-0.12.2.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 4 - Beta", "Intended Audience :: Developers", "Intended Audience :: Information Technology", "Operating System :: MacOS", "Operating System :: Microsoft :: Windows", "Operating System :: POSIX :: Linux", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Programming Language :: Python :: 3.14", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: GraalPy", "Programming Language :: Python :: Implementation :: PyPy", "Programming Language :: Rust", "Typing :: Typed"], "name": "pyreqwest", "requires_python": ">=3.11", "version": "0.12.2", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-macosx_10_12_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-macosx_11_0_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-manylinux_2_28_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-musllinux_1_1_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-musllinux_1_1_armv7l.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-musllinux_1_1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp311-cp311-win_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-macosx_10_12_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-macosx_11_0_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-manylinux_2_28_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-musllinux_1_1_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-musllinux_1_1_armv7l.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-musllinux_1_1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp312-cp312-win_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-macosx_10_12_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-macosx_11_0_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-manylinux_2_17_i686.manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-manylinux_2_28_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-musllinux_1_1_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-musllinux_1_1_armv7l.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-musllinux_1_1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp313-cp313-win_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-macosx_10_12_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-macosx_11_0_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-manylinux_2_17_i686.manylinux2014_i686.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-manylinux_2_28_ppc64le.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-musllinux_1_1_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-musllinux_1_1_armv7l.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-musllinux_1_1_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "pyreqwest-0.12.2-cp314-cp314-win_arm64.whl"}, {"packagetype": "sdist", "filename": "pyreqwest-0.12.2.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy"], "name": "pyspark", "requires_python": "", "version": "2.1.3", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "pyspark-2.1.3.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy"], "name": "pyspark", "requires_python": "", "version": "2.1.3", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "pyspark-2.1.3.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy"], "name": "pyspark", "requires_python": "", "version": "2.1.3", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "pyspark-2.1.3.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy"], "name": "pyspark", "requires_python": "", "version": "2.4.8", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "pyspark-2.4.8.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy"], "name": "pyspark", "requires_python": "", "version": "2.4.8", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "pyspark-2.4.8.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy"], "name": "pyspark", "requires_python": "", "version": "2.4.8", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "pyspark-2.4.8.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy"], "name": "pyspark", "requires_python": "", "version": "3.0.3", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "pyspark-3.0.3.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy"], "name": "pyspark", "requires_python": "", "version": "3.0.3", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "pyspark-3.0.3.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy"], "name": "pyspark", "requires_python": "", "version": "3.0.3", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "pyspark-3.0.3.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Typing :: Typed"], "name": "pyspark", "requires_python": ">=3.6", "version": "3.1.3", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "pyspark-3.1.3.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Typing :: Typed"], "name": "pyspark", "requires_python": ">=3.6", "version": "3.1.3", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "pyspark-3.1.3.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Typing :: Typed"], "name": "pyspark", "requires_python": ">=3.6", "version": "3.1.3", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "pyspark-3.1.3.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Typing :: Typed"], "name": "pyspark", "requires_python": ">=3.6", "version": "3.2.4", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "pyspark-3.2.4.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Typing :: Typed"], "name": "pyspark", "requires_python": ">=3.6", "version": "3.2.4", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "pyspark-3.2.4.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Typing :: Typed"], "name": "pyspark", "requires_python": ">=3.6", "version": "3.2.4", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "pyspark-3.2.4.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Typing :: Typed"], "name": "pyspark", "requires_python": ">=3.8", "version": "3.5.9", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "pyspark-3.5.9.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Typing :: Typed"], "name": "pyspark", "requires_python": ">=3.8", "version": "3.5.9", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "pyspark-3.5.9.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Typing :: Typed"], "name": "pyspark", "requires_python": ">=3.8", "version": "3.5.9", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "pyspark-3.5.9.tar.gz"}]} @@ -498,9 +469,6 @@ {"info": {"classifiers": ["Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9"], "name": "ray", "requires_python": "", "version": "2.7.2", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp310-cp310-macosx_10_15_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp310-cp310-macosx_11_0_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp310-cp310-manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp310-cp310-manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp310-cp310-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp311-cp311-macosx_10_15_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp311-cp311-macosx_11_0_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp311-cp311-manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp311-cp311-manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp311-cp311-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp37-cp37m-macosx_10_15_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp37-cp37m-manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp37-cp37m-manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp37-cp37m-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp38-cp38-macosx_10_15_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp38-cp38-macosx_11_0_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp38-cp38-manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp38-cp38-manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp38-cp38-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp39-cp39-macosx_10_15_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp39-cp39-macosx_11_0_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp39-cp39-manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp39-cp39-manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp39-cp39-win_amd64.whl"}]} {"info": {"classifiers": ["Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9"], "name": "ray", "requires_python": "", "version": "2.7.2", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp310-cp310-macosx_10_15_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp310-cp310-macosx_11_0_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp310-cp310-manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp310-cp310-manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp310-cp310-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp311-cp311-macosx_10_15_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp311-cp311-macosx_11_0_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp311-cp311-manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp311-cp311-manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp311-cp311-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp37-cp37m-macosx_10_15_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp37-cp37m-manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp37-cp37m-manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp37-cp37m-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp38-cp38-macosx_10_15_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp38-cp38-macosx_11_0_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp38-cp38-manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp38-cp38-manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp38-cp38-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp39-cp39-macosx_10_15_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp39-cp39-macosx_11_0_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp39-cp39-manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp39-cp39-manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp39-cp39-win_amd64.whl"}]} {"info": {"classifiers": ["Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9"], "name": "ray", "requires_python": "", "version": "2.7.2", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp310-cp310-macosx_10_15_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp310-cp310-macosx_11_0_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp310-cp310-manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp310-cp310-manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp310-cp310-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp311-cp311-macosx_10_15_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp311-cp311-macosx_11_0_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp311-cp311-manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp311-cp311-manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp311-cp311-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp37-cp37m-macosx_10_15_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp37-cp37m-manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp37-cp37m-manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp37-cp37m-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp38-cp38-macosx_10_15_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp38-cp38-macosx_11_0_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp38-cp38-manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp38-cp38-manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp38-cp38-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp39-cp39-macosx_10_15_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp39-cp39-macosx_11_0_arm64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp39-cp39-manylinux2014_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp39-cp39-manylinux2014_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "ray-2.7.2-cp39-cp39-win_amd64.whl"}]} -{"info": {"classifiers": ["Development Status :: 4 - Beta", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python"], "name": "redis", "requires_python": null, "version": "0.6.1", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "redis-0.6.1.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 4 - Beta", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python"], "name": "redis", "requires_python": null, "version": "0.6.1", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "redis-0.6.1.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 4 - Beta", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python"], "name": "redis", "requires_python": null, "version": "0.6.1", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "redis-0.6.1.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6"], "name": "redis", "requires_python": "", "version": "2.10.6", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "redis-2.10.6-py2.py3-none-any.whl"}, {"packagetype": "sdist", "filename": "redis-2.10.6.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6"], "name": "redis", "requires_python": "", "version": "2.10.6", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "redis-2.10.6-py2.py3-none-any.whl"}, {"packagetype": "sdist", "filename": "redis-2.10.6.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6"], "name": "redis", "requires_python": "", "version": "2.10.6", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "redis-2.10.6-py2.py3-none-any.whl"}, {"packagetype": "sdist", "filename": "redis-2.10.6.tar.gz"}]} @@ -510,17 +478,14 @@ {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7"], "name": "redis", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "version": "3.1.0", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "redis-3.1.0-py2.py3-none-any.whl"}, {"packagetype": "sdist", "filename": "redis-3.1.0.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7"], "name": "redis", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "version": "3.2.1", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "redis-3.2.1-py2.py3-none-any.whl"}, {"packagetype": "sdist", "filename": "redis-3.2.1.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7"], "name": "redis", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*", "version": "3.2.1", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "redis-3.2.1-py2.py3-none-any.whl"}, {"packagetype": "sdist", "filename": "redis-3.2.1.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8"], "name": "redis", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "version": "3.4.1", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "redis-3.4.1-py2.py3-none-any.whl"}, {"packagetype": "sdist", "filename": "redis-3.4.1.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8"], "name": "redis", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "version": "3.4.1", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "redis-3.4.1-py2.py3-none-any.whl"}, {"packagetype": "sdist", "filename": "redis-3.4.1.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy"], "name": "redis", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "version": "3.5.3", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "redis-3.5.3-py2.py3-none-any.whl"}, {"packagetype": "sdist", "filename": "redis-3.5.3.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy"], "name": "redis", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "version": "3.5.3", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "redis-3.5.3-py2.py3-none-any.whl"}, {"packagetype": "sdist", "filename": "redis-3.5.3.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy"], "name": "redis", "requires_python": ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", "version": "3.5.3", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "redis-3.5.3-py2.py3-none-any.whl"}, {"packagetype": "sdist", "filename": "redis-3.5.3.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy"], "name": "redis", "requires_python": ">=3.6", "version": "4.3.6", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "redis-4.3.6-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "redis-4.3.6.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy"], "name": "redis", "requires_python": ">=3.6", "version": "4.3.6", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "redis-4.3.6-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "redis-4.3.6.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy"], "name": "redis", "requires_python": ">=3.6", "version": "4.3.6", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "redis-4.3.6-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "redis-4.3.6.tar.gz"}]} +{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy"], "name": "redis", "requires_python": ">=3.6", "version": "4.0.2", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "redis-4.0.2-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "redis-4.0.2.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy"], "name": "redis", "requires_python": ">=3.7", "version": "4.6.0", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "redis-4.6.0-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "redis-4.6.0.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy"], "name": "redis", "requires_python": ">=3.7", "version": "4.6.0", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "redis-4.6.0-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "redis-4.6.0.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy"], "name": "redis", "requires_python": ">=3.7", "version": "4.6.0", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "redis-4.6.0-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "redis-4.6.0.tar.gz"}]} +{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy"], "name": "redis", "requires_python": ">=3.8", "version": "5.1.1", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "redis-5.1.1-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "redis-5.1.1.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy"], "name": "redis", "requires_python": ">=3.8", "version": "5.3.1", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "redis-5.3.1-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "redis-5.3.1.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy"], "name": "redis", "requires_python": ">=3.8", "version": "5.3.1", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "redis-5.3.1-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "redis-5.3.1.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy"], "name": "redis", "requires_python": ">=3.8", "version": "5.3.1", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "redis-5.3.1-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "redis-5.3.1.tar.gz"}]} @@ -631,9 +596,6 @@ {"info": {"classifiers": ["License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy"], "name": "tornado", "requires_python": ">=3.9", "version": "6.5.7", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "tornado-6.5.7-cp39-abi3-macosx_10_9_universal2.whl"}, {"packagetype": "bdist_wheel", "filename": "tornado-6.5.7-cp39-abi3-macosx_10_9_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "tornado-6.5.7-cp39-abi3-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "tornado-6.5.7-cp39-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "tornado-6.5.7-cp39-abi3-musllinux_1_2_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "tornado-6.5.7-cp39-abi3-musllinux_1_2_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "tornado-6.5.7-cp39-abi3-win32.whl"}, {"packagetype": "bdist_wheel", "filename": "tornado-6.5.7-cp39-abi3-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "tornado-6.5.7-cp39-abi3-win_arm64.whl"}, {"packagetype": "sdist", "filename": "tornado-6.5.7.tar.gz"}]} {"info": {"classifiers": ["License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy"], "name": "tornado", "requires_python": ">=3.9", "version": "6.5.7", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "tornado-6.5.7-cp39-abi3-macosx_10_9_universal2.whl"}, {"packagetype": "bdist_wheel", "filename": "tornado-6.5.7-cp39-abi3-macosx_10_9_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "tornado-6.5.7-cp39-abi3-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "tornado-6.5.7-cp39-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "tornado-6.5.7-cp39-abi3-musllinux_1_2_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "tornado-6.5.7-cp39-abi3-musllinux_1_2_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "tornado-6.5.7-cp39-abi3-win32.whl"}, {"packagetype": "bdist_wheel", "filename": "tornado-6.5.7-cp39-abi3-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "tornado-6.5.7-cp39-abi3-win_arm64.whl"}, {"packagetype": "sdist", "filename": "tornado-6.5.7.tar.gz"}]} {"info": {"classifiers": ["License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy"], "name": "tornado", "requires_python": ">=3.9", "version": "6.5.7", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "tornado-6.5.7-cp39-abi3-macosx_10_9_universal2.whl"}, {"packagetype": "bdist_wheel", "filename": "tornado-6.5.7-cp39-abi3-macosx_10_9_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "tornado-6.5.7-cp39-abi3-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "tornado-6.5.7-cp39-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "tornado-6.5.7-cp39-abi3-musllinux_1_2_aarch64.whl"}, {"packagetype": "bdist_wheel", "filename": "tornado-6.5.7-cp39-abi3-musllinux_1_2_x86_64.whl"}, {"packagetype": "bdist_wheel", "filename": "tornado-6.5.7-cp39-abi3-win32.whl"}, {"packagetype": "bdist_wheel", "filename": "tornado-6.5.7-cp39-abi3-win_amd64.whl"}, {"packagetype": "bdist_wheel", "filename": "tornado-6.5.7-cp39-abi3-win_arm64.whl"}, {"packagetype": "sdist", "filename": "tornado-6.5.7.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: No Input/Output (Daemon)", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License (GPL)", "Natural Language :: English", "Natural Language :: French", "Natural Language :: German", "Natural Language :: Spanish", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Software Development :: Libraries :: Application Frameworks"], "name": "trytond", "requires_python": null, "version": "1.2.10", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "trytond-1.2.10.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: No Input/Output (Daemon)", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License (GPL)", "Natural Language :: English", "Natural Language :: French", "Natural Language :: German", "Natural Language :: Spanish", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Software Development :: Libraries :: Application Frameworks"], "name": "trytond", "requires_python": null, "version": "1.2.10", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "trytond-1.2.10.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: No Input/Output (Daemon)", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License (GPL)", "Natural Language :: English", "Natural Language :: French", "Natural Language :: German", "Natural Language :: Spanish", "Operating System :: OS Independent", "Programming Language :: Python", "Topic :: Software Development :: Libraries :: Application Frameworks"], "name": "trytond", "requires_python": null, "version": "1.2.10", "yanked": false}, "urls": [{"packagetype": "sdist", "filename": "trytond-1.2.10.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: No Input/Output (Daemon)", "Framework :: Tryton", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Natural Language :: Bulgarian", "Natural Language :: Catalan", "Natural Language :: Chinese (Simplified)", "Natural Language :: Czech", "Natural Language :: Dutch", "Natural Language :: English", "Natural Language :: French", "Natural Language :: German", "Natural Language :: Hungarian", "Natural Language :: Italian", "Natural Language :: Polish", "Natural Language :: Portuguese (Brazilian)", "Natural Language :: Russian", "Natural Language :: Slovenian", "Natural Language :: Spanish", "Operating System :: OS Independent", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Libraries :: Application Frameworks"], "name": "trytond", "requires_python": "", "version": "4.6.22", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "trytond-4.6.22-py2-none-any.whl"}, {"packagetype": "bdist_wheel", "filename": "trytond-4.6.22-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "trytond-4.6.22.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: No Input/Output (Daemon)", "Framework :: Tryton", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Natural Language :: Bulgarian", "Natural Language :: Catalan", "Natural Language :: Chinese (Simplified)", "Natural Language :: Czech", "Natural Language :: Dutch", "Natural Language :: English", "Natural Language :: French", "Natural Language :: German", "Natural Language :: Hungarian", "Natural Language :: Italian", "Natural Language :: Polish", "Natural Language :: Portuguese (Brazilian)", "Natural Language :: Russian", "Natural Language :: Slovenian", "Natural Language :: Spanish", "Operating System :: OS Independent", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Libraries :: Application Frameworks"], "name": "trytond", "requires_python": "", "version": "4.6.22", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "trytond-4.6.22-py2-none-any.whl"}, {"packagetype": "bdist_wheel", "filename": "trytond-4.6.22-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "trytond-4.6.22.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: No Input/Output (Daemon)", "Framework :: Tryton", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Natural Language :: Bulgarian", "Natural Language :: Catalan", "Natural Language :: Chinese (Simplified)", "Natural Language :: Czech", "Natural Language :: Dutch", "Natural Language :: English", "Natural Language :: French", "Natural Language :: German", "Natural Language :: Hungarian", "Natural Language :: Italian", "Natural Language :: Polish", "Natural Language :: Portuguese (Brazilian)", "Natural Language :: Russian", "Natural Language :: Slovenian", "Natural Language :: Spanish", "Operating System :: OS Independent", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Libraries :: Application Frameworks"], "name": "trytond", "requires_python": "", "version": "4.6.22", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "trytond-4.6.22-py2-none-any.whl"}, {"packagetype": "bdist_wheel", "filename": "trytond-4.6.22-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "trytond-4.6.22.tar.gz"}]} @@ -642,10 +604,7 @@ {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: No Input/Output (Daemon)", "Framework :: Tryton", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Natural Language :: Bulgarian", "Natural Language :: Catalan", "Natural Language :: Chinese (Simplified)", "Natural Language :: Czech", "Natural Language :: Dutch", "Natural Language :: English", "Natural Language :: French", "Natural Language :: German", "Natural Language :: Hungarian", "Natural Language :: Italian", "Natural Language :: Persian", "Natural Language :: Polish", "Natural Language :: Portuguese (Brazilian)", "Natural Language :: Russian", "Natural Language :: Slovenian", "Natural Language :: Spanish", "Operating System :: OS Independent", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Libraries :: Application Frameworks"], "name": "trytond", "requires_python": "", "version": "4.8.18", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "trytond-4.8.18-py2-none-any.whl"}, {"packagetype": "bdist_wheel", "filename": "trytond-4.8.18-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "trytond-4.8.18.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: No Input/Output (Daemon)", "Framework :: Tryton", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Natural Language :: Bulgarian", "Natural Language :: Catalan", "Natural Language :: Chinese (Simplified)", "Natural Language :: Czech", "Natural Language :: Dutch", "Natural Language :: English", "Natural Language :: French", "Natural Language :: German", "Natural Language :: Hungarian", "Natural Language :: Italian", "Natural Language :: Persian", "Natural Language :: Polish", "Natural Language :: Portuguese (Brazilian)", "Natural Language :: Russian", "Natural Language :: Slovenian", "Natural Language :: Spanish", "Operating System :: OS Independent", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Libraries :: Application Frameworks"], "name": "trytond", "requires_python": ">=3.4", "version": "5.0.63", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "trytond-5.0.63-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "trytond-5.0.63.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: No Input/Output (Daemon)", "Framework :: Tryton", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Natural Language :: Bulgarian", "Natural Language :: Catalan", "Natural Language :: Chinese (Simplified)", "Natural Language :: Czech", "Natural Language :: Dutch", "Natural Language :: English", "Natural Language :: French", "Natural Language :: German", "Natural Language :: Hungarian", "Natural Language :: Italian", "Natural Language :: Persian", "Natural Language :: Polish", "Natural Language :: Portuguese (Brazilian)", "Natural Language :: Russian", "Natural Language :: Slovenian", "Natural Language :: Spanish", "Operating System :: OS Independent", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Libraries :: Application Frameworks"], "name": "trytond", "requires_python": ">=3.4", "version": "5.0.63", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "trytond-5.0.63-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "trytond-5.0.63.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Environment :: No Input/Output (Daemon)", "Framework :: Tryton", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Natural Language :: Bulgarian", "Natural Language :: Catalan", "Natural Language :: Chinese (Simplified)", "Natural Language :: Czech", "Natural Language :: Dutch", "Natural Language :: English", "Natural Language :: Finnish", "Natural Language :: French", "Natural Language :: German", "Natural Language :: Hungarian", "Natural Language :: Italian", "Natural Language :: Persian", "Natural Language :: Polish", "Natural Language :: Portuguese (Brazilian)", "Natural Language :: Russian", "Natural Language :: Slovenian", "Natural Language :: Spanish", "Natural Language :: Turkish", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Libraries :: Application Frameworks"], "name": "trytond", "requires_python": ">=3.5", "version": "5.2.20", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "trytond-5.2.20-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "trytond-5.2.20.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Environment :: No Input/Output (Daemon)", "Framework :: Tryton", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Natural Language :: Bulgarian", "Natural Language :: Catalan", "Natural Language :: Chinese (Simplified)", "Natural Language :: Czech", "Natural Language :: Dutch", "Natural Language :: English", "Natural Language :: Finnish", "Natural Language :: French", "Natural Language :: German", "Natural Language :: Hungarian", "Natural Language :: Italian", "Natural Language :: Persian", "Natural Language :: Polish", "Natural Language :: Portuguese (Brazilian)", "Natural Language :: Russian", "Natural Language :: Slovenian", "Natural Language :: Spanish", "Natural Language :: Turkish", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Libraries :: Application Frameworks"], "name": "trytond", "requires_python": ">=3.5", "version": "5.2.20", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "trytond-5.2.20-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "trytond-5.2.20.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Environment :: No Input/Output (Daemon)", "Framework :: Tryton", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Natural Language :: Bulgarian", "Natural Language :: Catalan", "Natural Language :: Chinese (Simplified)", "Natural Language :: Czech", "Natural Language :: Dutch", "Natural Language :: English", "Natural Language :: Finnish", "Natural Language :: French", "Natural Language :: German", "Natural Language :: Hungarian", "Natural Language :: Indonesian", "Natural Language :: Italian", "Natural Language :: Persian", "Natural Language :: Polish", "Natural Language :: Portuguese (Brazilian)", "Natural Language :: Russian", "Natural Language :: Slovenian", "Natural Language :: Spanish", "Natural Language :: Turkish", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Libraries :: Application Frameworks"], "name": "trytond", "requires_python": ">=3.5", "version": "5.6.17", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "trytond-5.6.17-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "trytond-5.6.17.tar.gz"}]} -{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Environment :: No Input/Output (Daemon)", "Framework :: Tryton", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Natural Language :: Bulgarian", "Natural Language :: Catalan", "Natural Language :: Chinese (Simplified)", "Natural Language :: Czech", "Natural Language :: Dutch", "Natural Language :: English", "Natural Language :: Finnish", "Natural Language :: French", "Natural Language :: German", "Natural Language :: Hungarian", "Natural Language :: Indonesian", "Natural Language :: Italian", "Natural Language :: Persian", "Natural Language :: Polish", "Natural Language :: Portuguese (Brazilian)", "Natural Language :: Russian", "Natural Language :: Slovenian", "Natural Language :: Spanish", "Natural Language :: Turkish", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Libraries :: Application Frameworks"], "name": "trytond", "requires_python": ">=3.5", "version": "5.6.17", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "trytond-5.6.17-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "trytond-5.6.17.tar.gz"}]} +{"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Environment :: No Input/Output (Daemon)", "Framework :: Tryton", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Natural Language :: Bulgarian", "Natural Language :: Catalan", "Natural Language :: Chinese (Simplified)", "Natural Language :: Czech", "Natural Language :: Dutch", "Natural Language :: English", "Natural Language :: Finnish", "Natural Language :: French", "Natural Language :: German", "Natural Language :: Hungarian", "Natural Language :: Indonesian", "Natural Language :: Italian", "Natural Language :: Persian", "Natural Language :: Polish", "Natural Language :: Portuguese (Brazilian)", "Natural Language :: Russian", "Natural Language :: Slovenian", "Natural Language :: Spanish", "Natural Language :: Turkish", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Libraries :: Application Frameworks"], "name": "trytond", "requires_python": ">=3.5", "version": "5.4.20", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "trytond-5.4.20-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "trytond-5.4.20.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Environment :: No Input/Output (Daemon)", "Framework :: Tryton", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Natural Language :: Bulgarian", "Natural Language :: Catalan", "Natural Language :: Chinese (Simplified)", "Natural Language :: Czech", "Natural Language :: Dutch", "Natural Language :: English", "Natural Language :: Finnish", "Natural Language :: French", "Natural Language :: German", "Natural Language :: Hungarian", "Natural Language :: Indonesian", "Natural Language :: Italian", "Natural Language :: Persian", "Natural Language :: Polish", "Natural Language :: Portuguese (Brazilian)", "Natural Language :: Russian", "Natural Language :: Slovenian", "Natural Language :: Spanish", "Natural Language :: Turkish", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Libraries :: Application Frameworks"], "name": "trytond", "requires_python": ">=3.6", "version": "5.8.16", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "trytond-5.8.16-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "trytond-5.8.16.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Environment :: No Input/Output (Daemon)", "Framework :: Tryton", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Natural Language :: Bulgarian", "Natural Language :: Catalan", "Natural Language :: Chinese (Simplified)", "Natural Language :: Czech", "Natural Language :: Dutch", "Natural Language :: English", "Natural Language :: Finnish", "Natural Language :: French", "Natural Language :: German", "Natural Language :: Hungarian", "Natural Language :: Indonesian", "Natural Language :: Italian", "Natural Language :: Persian", "Natural Language :: Polish", "Natural Language :: Portuguese (Brazilian)", "Natural Language :: Russian", "Natural Language :: Slovenian", "Natural Language :: Spanish", "Natural Language :: Turkish", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Libraries :: Application Frameworks"], "name": "trytond", "requires_python": ">=3.6", "version": "5.8.16", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "trytond-5.8.16-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "trytond-5.8.16.tar.gz"}]} {"info": {"classifiers": ["Development Status :: 5 - Production/Stable", "Environment :: Console", "Environment :: No Input/Output (Daemon)", "Framework :: Tryton", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Natural Language :: Bulgarian", "Natural Language :: Catalan", "Natural Language :: Chinese (Simplified)", "Natural Language :: Czech", "Natural Language :: Dutch", "Natural Language :: English", "Natural Language :: Finnish", "Natural Language :: French", "Natural Language :: German", "Natural Language :: Hungarian", "Natural Language :: Indonesian", "Natural Language :: Italian", "Natural Language :: Persian", "Natural Language :: Polish", "Natural Language :: Portuguese (Brazilian)", "Natural Language :: Russian", "Natural Language :: Slovenian", "Natural Language :: Spanish", "Natural Language :: Turkish", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy", "Topic :: Software Development :: Libraries :: Application Frameworks"], "name": "trytond", "requires_python": ">=3.6", "version": "5.8.16", "yanked": false}, "urls": [{"packagetype": "bdist_wheel", "filename": "trytond-5.8.16-py3-none-any.whl"}, {"packagetype": "sdist", "filename": "trytond-5.8.16.tar.gz"}]} diff --git a/sentry_sdk/integrations/__init__.py b/sentry_sdk/integrations/__init__.py index bfcc331f4a..c1c7389e71 100644 --- a/sentry_sdk/integrations/__init__.py +++ b/sentry_sdk/integrations/__init__.py @@ -175,7 +175,7 @@ def iter_default_integrations( "statsig": (0, 55, 3), "strawberry": (0, 209, 5), "tornado": (6, 0), - "trytond_wsgi": (4, 6), # trytond + "trytond": (4, 6), "typer": (0, 15), "unleash": (6, 0, 1), } diff --git a/sentry_sdk/integrations/trytond.py b/sentry_sdk/integrations/trytond.py index f771978483..df6c652937 100644 --- a/sentry_sdk/integrations/trytond.py +++ b/sentry_sdk/integrations/trytond.py @@ -14,7 +14,7 @@ except ImportError: raise DidNotEnable("Trytond is not installed.") -# TODO: trytond-worker, trytond-cron and trytond-admin intergations +# TODO: trytond-worker, trytond-cron and trytond-admin integrations class TrytondWSGIIntegration(Integration): @@ -27,7 +27,7 @@ def __init__(self) -> None: @staticmethod def setup_once() -> None: version = parse_version(TRYTOND_VERSION) - _check_minimum_version(TrytondWSGIIntegration, version) + _check_minimum_version(TrytondWSGIIntegration, version, "trytond") app.wsgi_app = SentryWsgiMiddleware( app.wsgi_app, From 17629a7aa8be7dd80eb7d94094d461e7d34974bc Mon Sep 17 00:00:00 2001 From: Ivana Kellyer Date: Tue, 4 Aug 2026 11:47:49 +0200 Subject: [PATCH 4/6] mypy --- sentry_sdk/integrations/beam.py | 2 +- sentry_sdk/integrations/graphene.py | 2 +- sentry_sdk/integrations/loguru.py | 2 +- sentry_sdk/integrations/pyreqwest.py | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/sentry_sdk/integrations/beam.py b/sentry_sdk/integrations/beam.py index 46cb9dfb8c..32c8b4cdae 100644 --- a/sentry_sdk/integrations/beam.py +++ b/sentry_sdk/integrations/beam.py @@ -33,7 +33,7 @@ class BeamIntegration(Integration): @staticmethod def setup_once() -> None: - from apache_beam import __version__ as BEAM_VERSION + from apache_beam import __version__ as BEAM_VERSION # type: ignore from apache_beam.transforms.core import DoFn, ParDo # type: ignore version = parse_version(BEAM_VERSION) diff --git a/sentry_sdk/integrations/graphene.py b/sentry_sdk/integrations/graphene.py index 07bc586a5b..6e782e9ea6 100644 --- a/sentry_sdk/integrations/graphene.py +++ b/sentry_sdk/integrations/graphene.py @@ -14,7 +14,7 @@ ) try: - from graphene import __version__ as GRAPHENE_VERSION + from graphene import __version__ as GRAPHENE_VERSION # type: ignore from graphene.types import schema as graphene_schema # type: ignore except ImportError: raise DidNotEnable("graphene is not installed") diff --git a/sentry_sdk/integrations/loguru.py b/sentry_sdk/integrations/loguru.py index f1c2114766..f384f54f98 100644 --- a/sentry_sdk/integrations/loguru.py +++ b/sentry_sdk/integrations/loguru.py @@ -17,7 +17,7 @@ try: import loguru - from loguru import __version__ as LOGURU_VERSION + from loguru import __version__ as LOGURU_VERSION # type: ignore from loguru import logger from loguru._defaults import LOGURU_FORMAT as DEFAULT_FORMAT diff --git a/sentry_sdk/integrations/pyreqwest.py b/sentry_sdk/integrations/pyreqwest.py index 6f1fb99eff..624bc2df14 100644 --- a/sentry_sdk/integrations/pyreqwest.py +++ b/sentry_sdk/integrations/pyreqwest.py @@ -24,8 +24,8 @@ ) try: - from pyreqwest import ( - __version__ as PYREQWEST_VERSION, # type: ignore[import-not-found] + from pyreqwest import ( # type: ignore[import-not-found] + __version__ as PYREQWEST_VERSION, ) from pyreqwest.client import ( # type: ignore[import-not-found] ClientBuilder, From 18b6bf4f9afa9b565912295b602595044d63222a Mon Sep 17 00:00:00 2001 From: Ivana Kellyer Date: Tue, 4 Aug 2026 11:49:43 +0200 Subject: [PATCH 5/6] . --- sentry_sdk/integrations/langchain.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sentry_sdk/integrations/langchain.py b/sentry_sdk/integrations/langchain.py index 419d9516ce..911997ffff 100644 --- a/sentry_sdk/integrations/langchain.py +++ b/sentry_sdk/integrations/langchain.py @@ -44,7 +44,7 @@ try: - from langchain import __version__ as LANGCHAIN_VERSION + from langchain_core import __version__ as LANGCHAIN_VERSION from langchain_core.agents import AgentFinish from langchain_core.callbacks import ( BaseCallbackHandler, From 19f6249556bfe3311107027d53b1a68143610921 Mon Sep 17 00:00:00 2001 From: Ivana Kellyer Date: Tue, 4 Aug 2026 12:13:48 +0200 Subject: [PATCH 6/6] dont check quart --- sentry_sdk/integrations/quart.py | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/sentry_sdk/integrations/quart.py b/sentry_sdk/integrations/quart.py index 68e4efd3c2..6ad19b19cc 100644 --- a/sentry_sdk/integrations/quart.py +++ b/sentry_sdk/integrations/quart.py @@ -6,7 +6,7 @@ import sentry_sdk from sentry_sdk.data_collection import _apply_data_collection_filtering_to_query_string -from sentry_sdk.integrations import DidNotEnable, Integration, _check_minimum_version +from sentry_sdk.integrations import DidNotEnable, Integration from sentry_sdk.integrations._wsgi_common import _filter_headers from sentry_sdk.integrations.asgi import SentryAsgiMiddleware from sentry_sdk.scope import should_send_default_pii @@ -19,7 +19,6 @@ ensure_integration_enabled, event_from_exception, has_data_collection_enabled, - package_version, parse_url, ) @@ -77,9 +76,6 @@ def __init__(self, transaction_style: str = "endpoint") -> None: @staticmethod def setup_once() -> None: - version = package_version("quart") - _check_minimum_version(QuartIntegration, version) - request_started.connect(_request_websocket_started) websocket_started.connect(_request_websocket_started) got_background_exception.connect(_capture_exception)