pytest-llm-assert 0.2.0__tar.gz → 0.2.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/PKG-INFO +1 -1
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/pyproject.toml +1 -1
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/src/pytest_llm_assert/core.py +23 -24
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/tests/unit/test_azure_auth.py +31 -18
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/uv.lock +85 -85
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/.env.example +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/.github/CODEOWNERS +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/.github/dependabot.yml +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/.github/workflows/ci.yml +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/.github/workflows/codeql.yml +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/.github/workflows/dependency-review.yml +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/.github/workflows/release.yml +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/.github/workflows/stale.yml +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/.gitignore +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/.pre-commit-config.yaml +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/CODE_OF_CONDUCT.md +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/CONTRIBUTING.md +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/LICENSE +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/README.md +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/SECURITY.md +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/docs/GITHUB_SETUP_GUIDE.md +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/docs/README.md +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/docs/api-reference.md +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/docs/comparing-models.md +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/docs/configuration.md +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/examples/README.md +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/examples/conftest.py +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/examples/pytest_conftest.py +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/examples/test_basic.py +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/examples/test_compare_models.py +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/src/pytest_llm_assert/__init__.py +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/src/pytest_llm_assert/plugin.py +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/src/pytest_llm_assert/prompts/system_prompt.md +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/tests/__init__.py +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/tests/integration/__init__.py +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/tests/integration/test_llm_integration.py +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/tests/unit/__init__.py +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/tests/unit/test_assertion_result.py +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/tests/unit/test_error_handling.py +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/tests/unit/test_fixture_integration.py +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/tests/unit/test_llm_assert_core.py +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/tests/unit/test_llm_response.py +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/tests/unit/test_plugin.py +0 -0
- {pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/tests/unit/test_response_parsing.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: pytest-llm-assert
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.2
|
|
4
4
|
Summary: Simple LLM-powered assertions for any pytest test
|
|
5
5
|
Project-URL: Homepage, https://github.com/sbroenne/pytest-llm-assert
|
|
6
6
|
Project-URL: Documentation, https://github.com/sbroenne/pytest-llm-assert#readme
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
from __future__ import annotations
|
|
4
4
|
|
|
5
|
+
import functools
|
|
5
6
|
import json
|
|
6
7
|
import os
|
|
7
8
|
import re
|
|
@@ -19,6 +20,27 @@ if TYPE_CHECKING:
|
|
|
19
20
|
from typing import Any
|
|
20
21
|
|
|
21
22
|
|
|
23
|
+
@functools.cache
|
|
24
|
+
def _get_azure_ad_token_provider() -> Callable[[], str] | None:
|
|
25
|
+
"""Get Azure AD token provider for Entra ID authentication.
|
|
26
|
+
|
|
27
|
+
Uses LiteLLM's built-in helper which leverages DefaultAzureCredential.
|
|
28
|
+
Cached at module level to avoid recreating credentials on each call.
|
|
29
|
+
"""
|
|
30
|
+
try:
|
|
31
|
+
from litellm.secret_managers.get_azure_ad_token_provider import (
|
|
32
|
+
get_azure_ad_token_provider,
|
|
33
|
+
)
|
|
34
|
+
|
|
35
|
+
return get_azure_ad_token_provider()
|
|
36
|
+
except ImportError:
|
|
37
|
+
# azure-identity not installed
|
|
38
|
+
return None
|
|
39
|
+
except Exception:
|
|
40
|
+
# Credential not available
|
|
41
|
+
return None
|
|
42
|
+
|
|
43
|
+
|
|
22
44
|
@dataclass(slots=True)
|
|
23
45
|
class LLMResponse:
|
|
24
46
|
"""Response details from the last LLM call.
|
|
@@ -93,7 +115,7 @@ class LLMAssert:
|
|
|
93
115
|
|
|
94
116
|
# Auto-configure Azure Entra ID when no API key is provided
|
|
95
117
|
if self._is_azure_model() and not self._has_azure_api_key():
|
|
96
|
-
self._azure_ad_token_provider =
|
|
118
|
+
self._azure_ad_token_provider = _get_azure_ad_token_provider()
|
|
97
119
|
|
|
98
120
|
def _is_azure_model(self) -> bool:
|
|
99
121
|
"""Check if the model is an Azure OpenAI model."""
|
|
@@ -103,29 +125,6 @@ class LLMAssert:
|
|
|
103
125
|
"""Check if an Azure API key is available."""
|
|
104
126
|
return bool(self.api_key or os.environ.get("AZURE_API_KEY"))
|
|
105
127
|
|
|
106
|
-
@staticmethod
|
|
107
|
-
def _get_azure_ad_token_provider() -> Callable[[], str] | None:
|
|
108
|
-
"""Get Azure AD token provider for Entra ID authentication.
|
|
109
|
-
|
|
110
|
-
Uses LiteLLM's built-in helper which leverages DefaultAzureCredential:
|
|
111
|
-
- Azure CLI credentials (az login)
|
|
112
|
-
- Managed Identity
|
|
113
|
-
- Environment variables (AZURE_CLIENT_ID, AZURE_CLIENT_SECRET, ...)
|
|
114
|
-
- Visual Studio Code credentials
|
|
115
|
-
"""
|
|
116
|
-
try:
|
|
117
|
-
from litellm.secret_managers.get_azure_ad_token_provider import (
|
|
118
|
-
get_azure_ad_token_provider,
|
|
119
|
-
)
|
|
120
|
-
|
|
121
|
-
return get_azure_ad_token_provider()
|
|
122
|
-
except ImportError:
|
|
123
|
-
# azure-identity not installed
|
|
124
|
-
return None
|
|
125
|
-
except Exception:
|
|
126
|
-
# Credential not available
|
|
127
|
-
return None
|
|
128
|
-
|
|
129
128
|
@property
|
|
130
129
|
def system_prompt(self) -> str:
|
|
131
130
|
"""Get the system prompt used for LLM assertions."""
|
|
@@ -46,9 +46,11 @@ class TestAzureAdTokenProvider:
|
|
|
46
46
|
"""Azure AD token provider for Entra ID auth."""
|
|
47
47
|
|
|
48
48
|
def test_returns_provider_when_available(self) -> None:
|
|
49
|
+
from pytest_llm_assert.core import _get_azure_ad_token_provider
|
|
50
|
+
|
|
49
51
|
mock_provider = MagicMock()
|
|
50
52
|
with patch(
|
|
51
|
-
"pytest_llm_assert.core.
|
|
53
|
+
"pytest_llm_assert.core._get_azure_ad_token_provider",
|
|
52
54
|
return_value=mock_provider,
|
|
53
55
|
):
|
|
54
56
|
with patch.dict("os.environ", {}, clear=True):
|
|
@@ -64,30 +66,36 @@ class TestAzureAdTokenProvider:
|
|
|
64
66
|
|
|
65
67
|
# Manually trigger the check
|
|
66
68
|
if llm._is_azure_model() and not llm._has_azure_api_key():
|
|
67
|
-
llm._azure_ad_token_provider = (
|
|
68
|
-
LLMAssert._get_azure_ad_token_provider()
|
|
69
|
-
)
|
|
69
|
+
llm._azure_ad_token_provider = _get_azure_ad_token_provider()
|
|
70
70
|
|
|
71
71
|
def test_returns_none_on_import_error(self) -> None:
|
|
72
|
-
with patch(
|
|
73
|
-
|
|
74
|
-
) as mock:
|
|
75
|
-
# Simulate the actual method behavior on ImportError
|
|
72
|
+
with patch("pytest_llm_assert.core._get_azure_ad_token_provider") as mock:
|
|
73
|
+
# Simulate the actual function behavior on ImportError
|
|
76
74
|
mock.return_value = None
|
|
77
75
|
result = mock()
|
|
78
76
|
assert result is None
|
|
79
77
|
|
|
80
78
|
def test_returns_none_on_credential_exception(self) -> None:
|
|
81
79
|
"""Test that generic exceptions in credential retrieval return None."""
|
|
80
|
+
from pytest_llm_assert.core import _get_azure_ad_token_provider
|
|
81
|
+
|
|
82
|
+
# Clear the cache to ensure fresh execution
|
|
83
|
+
_get_azure_ad_token_provider.cache_clear()
|
|
82
84
|
with patch(
|
|
83
85
|
"litellm.secret_managers.get_azure_ad_token_provider.get_azure_ad_token_provider",
|
|
84
86
|
side_effect=Exception("Credential not available"),
|
|
85
87
|
):
|
|
86
|
-
result =
|
|
88
|
+
result = _get_azure_ad_token_provider()
|
|
87
89
|
assert result is None
|
|
90
|
+
# Clear cache after test to not affect other tests
|
|
91
|
+
_get_azure_ad_token_provider.cache_clear()
|
|
88
92
|
|
|
89
93
|
def test_actual_provider_import_error(self) -> None:
|
|
90
94
|
"""Test the actual _get_azure_ad_token_provider with import failure."""
|
|
95
|
+
from pytest_llm_assert.core import _get_azure_ad_token_provider
|
|
96
|
+
|
|
97
|
+
# Clear the cache to ensure fresh execution
|
|
98
|
+
_get_azure_ad_token_provider.cache_clear()
|
|
91
99
|
with patch.dict(
|
|
92
100
|
"sys.modules", {"litellm.secret_managers.get_azure_ad_token_provider": None}
|
|
93
101
|
):
|
|
@@ -95,10 +103,12 @@ class TestAzureAdTokenProvider:
|
|
|
95
103
|
"litellm.secret_managers.get_azure_ad_token_provider.get_azure_ad_token_provider",
|
|
96
104
|
side_effect=ImportError("Module not found"),
|
|
97
105
|
):
|
|
98
|
-
# The actual
|
|
106
|
+
# The actual function should catch ImportError and return None
|
|
99
107
|
# Result could be None or a real provider depending on environment
|
|
100
108
|
# We're testing it doesn't raise
|
|
101
|
-
|
|
109
|
+
_get_azure_ad_token_provider()
|
|
110
|
+
# Clear cache after test to not affect other tests
|
|
111
|
+
_get_azure_ad_token_provider.cache_clear()
|
|
102
112
|
|
|
103
113
|
|
|
104
114
|
class TestAzureInitialization:
|
|
@@ -106,21 +116,24 @@ class TestAzureInitialization:
|
|
|
106
116
|
|
|
107
117
|
def test_azure_without_key_gets_token_provider(self) -> None:
|
|
108
118
|
"""Azure model without API key should attempt to get token provider."""
|
|
119
|
+
from pytest_llm_assert.core import _get_azure_ad_token_provider
|
|
120
|
+
|
|
121
|
+
_get_azure_ad_token_provider.cache_clear()
|
|
109
122
|
with patch.dict("os.environ", {}, clear=True):
|
|
110
|
-
with patch
|
|
111
|
-
|
|
112
|
-
"_get_azure_ad_token_provider",
|
|
123
|
+
with patch(
|
|
124
|
+
"pytest_llm_assert.core._get_azure_ad_token_provider",
|
|
113
125
|
return_value=lambda: "mock-token",
|
|
114
126
|
) as mock_get_provider:
|
|
115
127
|
LLMAssert(
|
|
116
128
|
model="azure/gpt-4o", api_base="https://test.openai.azure.com"
|
|
117
129
|
)
|
|
118
130
|
mock_get_provider.assert_called_once()
|
|
131
|
+
_get_azure_ad_token_provider.cache_clear()
|
|
119
132
|
|
|
120
133
|
def test_azure_with_key_skips_token_provider(self) -> None:
|
|
121
134
|
"""Azure model with API key should not attempt Entra ID."""
|
|
122
|
-
with patch
|
|
123
|
-
|
|
135
|
+
with patch(
|
|
136
|
+
"pytest_llm_assert.core._get_azure_ad_token_provider"
|
|
124
137
|
) as mock_get_provider:
|
|
125
138
|
LLMAssert(
|
|
126
139
|
model="azure/gpt-4o",
|
|
@@ -131,8 +144,8 @@ class TestAzureInitialization:
|
|
|
131
144
|
|
|
132
145
|
def test_non_azure_skips_token_provider(self) -> None:
|
|
133
146
|
"""Non-Azure models should not attempt Entra ID."""
|
|
134
|
-
with patch
|
|
135
|
-
|
|
147
|
+
with patch(
|
|
148
|
+
"pytest_llm_assert.core._get_azure_ad_token_provider"
|
|
136
149
|
) as mock_get_provider:
|
|
137
150
|
LLMAssert(model="openai/gpt-5-mini")
|
|
138
151
|
mock_get_provider.assert_not_called()
|
|
@@ -780,7 +780,7 @@ wheels = [
|
|
|
780
780
|
|
|
781
781
|
[[package]]
|
|
782
782
|
name = "huggingface-hub"
|
|
783
|
-
version = "1.3.
|
|
783
|
+
version = "1.3.7"
|
|
784
784
|
source = { registry = "https://pypi.org/simple" }
|
|
785
785
|
dependencies = [
|
|
786
786
|
{ name = "filelock" },
|
|
@@ -794,9 +794,9 @@ dependencies = [
|
|
|
794
794
|
{ name = "typer-slim" },
|
|
795
795
|
{ name = "typing-extensions" },
|
|
796
796
|
]
|
|
797
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
797
|
+
sdist = { url = "https://files.pythonhosted.org/packages/6d/3f/352efd52136bfd8aa9280c6d4a445869226ae2ccd49ddad4f62e90cfd168/huggingface_hub-1.3.7.tar.gz", hash = "sha256:5f86cd48f27131cdbf2882699cbdf7a67dd4cbe89a81edfdc31211f42e4a5fd1", size = 627537, upload-time = "2026-02-02T10:40:10.61Z" }
|
|
798
798
|
wheels = [
|
|
799
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
799
|
+
{ url = "https://files.pythonhosted.org/packages/54/89/bfbfde252d649fae8d5f09b14a2870e5672ed160c1a6629301b3e5302621/huggingface_hub-1.3.7-py3-none-any.whl", hash = "sha256:8155ce937038fa3d0cb4347d752708079bc85e6d9eb441afb44c84bcf48620d2", size = 536728, upload-time = "2026-02-02T10:40:08.274Z" },
|
|
800
800
|
]
|
|
801
801
|
|
|
802
802
|
[[package]]
|
|
@@ -852,87 +852,87 @@ wheels = [
|
|
|
852
852
|
|
|
853
853
|
[[package]]
|
|
854
854
|
name = "jiter"
|
|
855
|
-
version = "0.
|
|
856
|
-
source = { registry = "https://pypi.org/simple" }
|
|
857
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
|
858
|
-
wheels = [
|
|
859
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
860
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
861
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
862
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
863
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
864
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
865
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
866
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
867
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
868
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
869
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
870
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
871
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
872
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
873
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
874
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
875
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
876
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
877
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
878
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
879
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
880
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
881
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
882
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
883
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
884
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
885
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
886
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
887
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
888
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
889
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
890
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
891
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
892
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
893
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
894
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
895
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
896
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
897
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
898
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
899
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
900
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
901
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
902
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
903
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
904
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
905
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
906
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
907
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
908
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
909
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
910
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
911
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
912
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
913
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
914
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
915
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
916
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
917
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
918
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
919
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
920
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
921
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
922
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
923
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
924
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
925
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
926
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
927
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
928
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
929
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
930
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
931
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
932
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
933
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
934
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
935
|
-
{ url = "https://files.pythonhosted.org/packages/
|
|
855
|
+
version = "0.13.0"
|
|
856
|
+
source = { registry = "https://pypi.org/simple" }
|
|
857
|
+
sdist = { url = "https://files.pythonhosted.org/packages/0d/5e/4ec91646aee381d01cdb9974e30882c9cd3b8c5d1079d6b5ff4af522439a/jiter-0.13.0.tar.gz", hash = "sha256:f2839f9c2c7e2dffc1bc5929a510e14ce0a946be9365fd1219e7ef342dae14f4", size = 164847, upload-time = "2026-02-02T12:37:56.441Z" }
|
|
858
|
+
wheels = [
|
|
859
|
+
{ url = "https://files.pythonhosted.org/packages/71/29/499f8c9eaa8a16751b1c0e45e6f5f1761d180da873d417996cc7bddc8eef/jiter-0.13.0-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:ea026e70a9a28ebbdddcbcf0f1323128a8db66898a06eaad3a4e62d2f554d096", size = 311157, upload-time = "2026-02-02T12:35:37.758Z" },
|
|
860
|
+
{ url = "https://files.pythonhosted.org/packages/50/f6/566364c777d2ab450b92100bea11333c64c38d32caf8dc378b48e5b20c46/jiter-0.13.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:66aa3e663840152d18cc8ff1e4faad3dd181373491b9cfdc6004b92198d67911", size = 319729, upload-time = "2026-02-02T12:35:39.246Z" },
|
|
861
|
+
{ url = "https://files.pythonhosted.org/packages/73/dd/560f13ec5e4f116d8ad2658781646cca91b617ae3b8758d4a5076b278f70/jiter-0.13.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c3524798e70655ff19aec58c7d05adb1f074fecff62da857ea9be2b908b6d701", size = 354766, upload-time = "2026-02-02T12:35:40.662Z" },
|
|
862
|
+
{ url = "https://files.pythonhosted.org/packages/7c/0d/061faffcfe94608cbc28a0d42a77a74222bdf5055ccdbe5fd2292b94f510/jiter-0.13.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ec7e287d7fbd02cb6e22f9a00dd9c9cd504c40a61f2c61e7e1f9690a82726b4c", size = 362587, upload-time = "2026-02-02T12:35:42.025Z" },
|
|
863
|
+
{ url = "https://files.pythonhosted.org/packages/92/c9/c66a7864982fd38a9773ec6e932e0398d1262677b8c60faecd02ffb67bf3/jiter-0.13.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:47455245307e4debf2ce6c6e65a717550a0244231240dcf3b8f7d64e4c2f22f4", size = 487537, upload-time = "2026-02-02T12:35:43.459Z" },
|
|
864
|
+
{ url = "https://files.pythonhosted.org/packages/6c/86/84eb4352cd3668f16d1a88929b5888a3fe0418ea8c1dfc2ad4e7bf6e069a/jiter-0.13.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ee9da221dca6e0429c2704c1b3655fe7b025204a71d4d9b73390c759d776d165", size = 373717, upload-time = "2026-02-02T12:35:44.928Z" },
|
|
865
|
+
{ url = "https://files.pythonhosted.org/packages/6e/09/9fe4c159358176f82d4390407a03f506a8659ed13ca3ac93a843402acecf/jiter-0.13.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:24ab43126d5e05f3d53a36a8e11eb2f23304c6c1117844aaaf9a0aa5e40b5018", size = 362683, upload-time = "2026-02-02T12:35:46.636Z" },
|
|
866
|
+
{ url = "https://files.pythonhosted.org/packages/c9/5e/85f3ab9caca0c1d0897937d378b4a515cae9e119730563572361ea0c48ae/jiter-0.13.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:9da38b4fedde4fb528c740c2564628fbab737166a0e73d6d46cb4bb5463ff411", size = 392345, upload-time = "2026-02-02T12:35:48.088Z" },
|
|
867
|
+
{ url = "https://files.pythonhosted.org/packages/12/4c/05b8629ad546191939e6f0c2f17e29f542a398f4a52fb987bc70b6d1eb8b/jiter-0.13.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:0b34c519e17658ed88d5047999a93547f8889f3c1824120c26ad6be5f27b6cf5", size = 517775, upload-time = "2026-02-02T12:35:49.482Z" },
|
|
868
|
+
{ url = "https://files.pythonhosted.org/packages/4d/88/367ea2eb6bc582c7052e4baf5ddf57ebe5ab924a88e0e09830dfb585c02d/jiter-0.13.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:d2a6394e6af690d462310a86b53c47ad75ac8c21dc79f120714ea449979cb1d3", size = 551325, upload-time = "2026-02-02T12:35:51.104Z" },
|
|
869
|
+
{ url = "https://files.pythonhosted.org/packages/f3/12/fa377ffb94a2f28c41afaed093e0d70cfe512035d5ecb0cad0ae4792d35e/jiter-0.13.0-cp311-cp311-win32.whl", hash = "sha256:0f0c065695f616a27c920a56ad0d4fc46415ef8b806bf8fc1cacf25002bd24e1", size = 204709, upload-time = "2026-02-02T12:35:52.467Z" },
|
|
870
|
+
{ url = "https://files.pythonhosted.org/packages/cb/16/8e8203ce92f844dfcd3d9d6a5a7322c77077248dbb12da52d23193a839cd/jiter-0.13.0-cp311-cp311-win_amd64.whl", hash = "sha256:0733312953b909688ae3c2d58d043aa040f9f1a6a75693defed7bc2cc4bf2654", size = 204560, upload-time = "2026-02-02T12:35:53.925Z" },
|
|
871
|
+
{ url = "https://files.pythonhosted.org/packages/44/26/97cc40663deb17b9e13c3a5cf29251788c271b18ee4d262c8f94798b8336/jiter-0.13.0-cp311-cp311-win_arm64.whl", hash = "sha256:5d9b34ad56761b3bf0fbe8f7e55468704107608512350962d3317ffd7a4382d5", size = 189608, upload-time = "2026-02-02T12:35:55.304Z" },
|
|
872
|
+
{ url = "https://files.pythonhosted.org/packages/2e/30/7687e4f87086829955013ca12a9233523349767f69653ebc27036313def9/jiter-0.13.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:0a2bd69fc1d902e89925fc34d1da51b2128019423d7b339a45d9e99c894e0663", size = 307958, upload-time = "2026-02-02T12:35:57.165Z" },
|
|
873
|
+
{ url = "https://files.pythonhosted.org/packages/c3/27/e57f9a783246ed95481e6749cc5002a8a767a73177a83c63ea71f0528b90/jiter-0.13.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:f917a04240ef31898182f76a332f508f2cc4b57d2b4d7ad2dbfebbfe167eb505", size = 318597, upload-time = "2026-02-02T12:35:58.591Z" },
|
|
874
|
+
{ url = "https://files.pythonhosted.org/packages/cf/52/e5719a60ac5d4d7c5995461a94ad5ef962a37c8bf5b088390e6fad59b2ff/jiter-0.13.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c1e2b199f446d3e82246b4fd9236d7cb502dc2222b18698ba0d986d2fecc6152", size = 348821, upload-time = "2026-02-02T12:36:00.093Z" },
|
|
875
|
+
{ url = "https://files.pythonhosted.org/packages/61/db/c1efc32b8ba4c740ab3fc2d037d8753f67685f475e26b9d6536a4322bcdd/jiter-0.13.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:04670992b576fa65bd056dbac0c39fe8bd67681c380cb2b48efa885711d9d726", size = 364163, upload-time = "2026-02-02T12:36:01.937Z" },
|
|
876
|
+
{ url = "https://files.pythonhosted.org/packages/55/8a/fb75556236047c8806995671a18e4a0ad646ed255276f51a20f32dceaeec/jiter-0.13.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5a1aff1fbdb803a376d4d22a8f63f8e7ccbce0b4890c26cc7af9e501ab339ef0", size = 483709, upload-time = "2026-02-02T12:36:03.41Z" },
|
|
877
|
+
{ url = "https://files.pythonhosted.org/packages/7e/16/43512e6ee863875693a8e6f6d532e19d650779d6ba9a81593ae40a9088ff/jiter-0.13.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3b3fb8c2053acaef8580809ac1d1f7481a0a0bdc012fd7f5d8b18fb696a5a089", size = 370480, upload-time = "2026-02-02T12:36:04.791Z" },
|
|
878
|
+
{ url = "https://files.pythonhosted.org/packages/f8/4c/09b93e30e984a187bc8aaa3510e1ec8dcbdcd71ca05d2f56aac0492453aa/jiter-0.13.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bdaba7d87e66f26a2c45d8cbadcbfc4bf7884182317907baf39cfe9775bb4d93", size = 360735, upload-time = "2026-02-02T12:36:06.994Z" },
|
|
879
|
+
{ url = "https://files.pythonhosted.org/packages/1a/1b/46c5e349019874ec5dfa508c14c37e29864ea108d376ae26d90bee238cd7/jiter-0.13.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:7b88d649135aca526da172e48083da915ec086b54e8e73a425ba50999468cc08", size = 391814, upload-time = "2026-02-02T12:36:08.368Z" },
|
|
880
|
+
{ url = "https://files.pythonhosted.org/packages/15/9e/26184760e85baee7162ad37b7912797d2077718476bf91517641c92b3639/jiter-0.13.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:e404ea551d35438013c64b4f357b0474c7abf9f781c06d44fcaf7a14c69ff9e2", size = 513990, upload-time = "2026-02-02T12:36:09.993Z" },
|
|
881
|
+
{ url = "https://files.pythonhosted.org/packages/e9/34/2c9355247d6debad57a0a15e76ab1566ab799388042743656e566b3b7de1/jiter-0.13.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:1f4748aad1b4a93c8bdd70f604d0f748cdc0e8744c5547798acfa52f10e79228", size = 548021, upload-time = "2026-02-02T12:36:11.376Z" },
|
|
882
|
+
{ url = "https://files.pythonhosted.org/packages/ac/4a/9f2c23255d04a834398b9c2e0e665382116911dc4d06b795710503cdad25/jiter-0.13.0-cp312-cp312-win32.whl", hash = "sha256:0bf670e3b1445fc4d31612199f1744f67f889ee1bbae703c4b54dc097e5dd394", size = 203024, upload-time = "2026-02-02T12:36:12.682Z" },
|
|
883
|
+
{ url = "https://files.pythonhosted.org/packages/09/ee/f0ae675a957ae5a8f160be3e87acea6b11dc7b89f6b7ab057e77b2d2b13a/jiter-0.13.0-cp312-cp312-win_amd64.whl", hash = "sha256:15db60e121e11fe186c0b15236bd5d18381b9ddacdcf4e659feb96fc6c969c92", size = 205424, upload-time = "2026-02-02T12:36:13.93Z" },
|
|
884
|
+
{ url = "https://files.pythonhosted.org/packages/1b/02/ae611edf913d3cbf02c97cdb90374af2082c48d7190d74c1111dde08bcdd/jiter-0.13.0-cp312-cp312-win_arm64.whl", hash = "sha256:41f92313d17989102f3cb5dd533a02787cdb99454d494344b0361355da52fcb9", size = 186818, upload-time = "2026-02-02T12:36:15.308Z" },
|
|
885
|
+
{ url = "https://files.pythonhosted.org/packages/91/9c/7ee5a6ff4b9991e1a45263bfc46731634c4a2bde27dfda6c8251df2d958c/jiter-0.13.0-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:1f8a55b848cbabf97d861495cd65f1e5c590246fabca8b48e1747c4dfc8f85bf", size = 306897, upload-time = "2026-02-02T12:36:16.748Z" },
|
|
886
|
+
{ url = "https://files.pythonhosted.org/packages/7c/02/be5b870d1d2be5dd6a91bdfb90f248fbb7dcbd21338f092c6b89817c3dbf/jiter-0.13.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f556aa591c00f2c45eb1b89f68f52441a016034d18b65da60e2d2875bbbf344a", size = 317507, upload-time = "2026-02-02T12:36:18.351Z" },
|
|
887
|
+
{ url = "https://files.pythonhosted.org/packages/da/92/b25d2ec333615f5f284f3a4024f7ce68cfa0604c322c6808b2344c7f5d2b/jiter-0.13.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f7e1d61da332ec412350463891923f960c3073cf1aae93b538f0bb4c8cd46efb", size = 350560, upload-time = "2026-02-02T12:36:19.746Z" },
|
|
888
|
+
{ url = "https://files.pythonhosted.org/packages/be/ec/74dcb99fef0aca9fbe56b303bf79f6bd839010cb18ad41000bf6cc71eec0/jiter-0.13.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:3097d665a27bc96fd9bbf7f86178037db139f319f785e4757ce7ccbf390db6c2", size = 363232, upload-time = "2026-02-02T12:36:21.243Z" },
|
|
889
|
+
{ url = "https://files.pythonhosted.org/packages/1b/37/f17375e0bb2f6a812d4dd92d7616e41917f740f3e71343627da9db2824ce/jiter-0.13.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9d01ecc3a8cbdb6f25a37bd500510550b64ddf9f7d64a107d92f3ccb25035d0f", size = 483727, upload-time = "2026-02-02T12:36:22.688Z" },
|
|
890
|
+
{ url = "https://files.pythonhosted.org/packages/77/d2/a71160a5ae1a1e66c1395b37ef77da67513b0adba73b993a27fbe47eb048/jiter-0.13.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ed9bbc30f5d60a3bdf63ae76beb3f9db280d7f195dfcfa61af792d6ce912d159", size = 370799, upload-time = "2026-02-02T12:36:24.106Z" },
|
|
891
|
+
{ url = "https://files.pythonhosted.org/packages/01/99/ed5e478ff0eb4e8aa5fd998f9d69603c9fd3f32de3bd16c2b1194f68361c/jiter-0.13.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:98fbafb6e88256f4454de33c1f40203d09fc33ed19162a68b3b257b29ca7f663", size = 359120, upload-time = "2026-02-02T12:36:25.519Z" },
|
|
892
|
+
{ url = "https://files.pythonhosted.org/packages/16/be/7ffd08203277a813f732ba897352797fa9493faf8dc7995b31f3d9cb9488/jiter-0.13.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:5467696f6b827f1116556cb0db620440380434591e93ecee7fd14d1a491b6daa", size = 390664, upload-time = "2026-02-02T12:36:26.866Z" },
|
|
893
|
+
{ url = "https://files.pythonhosted.org/packages/d1/84/e0787856196d6d346264d6dcccb01f741e5f0bd014c1d9a2ebe149caf4f3/jiter-0.13.0-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:2d08c9475d48b92892583df9da592a0e2ac49bcd41fae1fec4f39ba6cf107820", size = 513543, upload-time = "2026-02-02T12:36:28.217Z" },
|
|
894
|
+
{ url = "https://files.pythonhosted.org/packages/65/50/ecbd258181c4313cf79bca6c88fb63207d04d5bf5e4f65174114d072aa55/jiter-0.13.0-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:aed40e099404721d7fcaf5b89bd3b4568a4666358bcac7b6b15c09fb6252ab68", size = 547262, upload-time = "2026-02-02T12:36:29.678Z" },
|
|
895
|
+
{ url = "https://files.pythonhosted.org/packages/27/da/68f38d12e7111d2016cd198161b36e1f042bd115c169255bcb7ec823a3bf/jiter-0.13.0-cp313-cp313-win32.whl", hash = "sha256:36ebfbcffafb146d0e6ffb3e74d51e03d9c35ce7c625c8066cdbfc7b953bdc72", size = 200630, upload-time = "2026-02-02T12:36:31.808Z" },
|
|
896
|
+
{ url = "https://files.pythonhosted.org/packages/25/65/3bd1a972c9a08ecd22eb3b08a95d1941ebe6938aea620c246cf426ae09c2/jiter-0.13.0-cp313-cp313-win_amd64.whl", hash = "sha256:8d76029f077379374cf0dbc78dbe45b38dec4a2eb78b08b5194ce836b2517afc", size = 202602, upload-time = "2026-02-02T12:36:33.679Z" },
|
|
897
|
+
{ url = "https://files.pythonhosted.org/packages/15/fe/13bd3678a311aa67686bb303654792c48206a112068f8b0b21426eb6851e/jiter-0.13.0-cp313-cp313-win_arm64.whl", hash = "sha256:bb7613e1a427cfcb6ea4544f9ac566b93d5bf67e0d48c787eca673ff9c9dff2b", size = 185939, upload-time = "2026-02-02T12:36:35.065Z" },
|
|
898
|
+
{ url = "https://files.pythonhosted.org/packages/49/19/a929ec002ad3228bc97ca01dbb14f7632fffdc84a95ec92ceaf4145688ae/jiter-0.13.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:fa476ab5dd49f3bf3a168e05f89358c75a17608dbabb080ef65f96b27c19ab10", size = 316616, upload-time = "2026-02-02T12:36:36.579Z" },
|
|
899
|
+
{ url = "https://files.pythonhosted.org/packages/52/56/d19a9a194afa37c1728831e5fb81b7722c3de18a3109e8f282bfc23e587a/jiter-0.13.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ade8cb6ff5632a62b7dbd4757d8c5573f7a2e9ae285d6b5b841707d8363205ef", size = 346850, upload-time = "2026-02-02T12:36:38.058Z" },
|
|
900
|
+
{ url = "https://files.pythonhosted.org/packages/36/4a/94e831c6bf287754a8a019cb966ed39ff8be6ab78cadecf08df3bb02d505/jiter-0.13.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9950290340acc1adaded363edd94baebcee7dabdfa8bee4790794cd5cfad2af6", size = 358551, upload-time = "2026-02-02T12:36:39.417Z" },
|
|
901
|
+
{ url = "https://files.pythonhosted.org/packages/a2/ec/a4c72c822695fa80e55d2b4142b73f0012035d9fcf90eccc56bc060db37c/jiter-0.13.0-cp313-cp313t-win_amd64.whl", hash = "sha256:2b4972c6df33731aac0742b64fd0d18e0a69bc7d6e03108ce7d40c85fd9e3e6d", size = 201950, upload-time = "2026-02-02T12:36:40.791Z" },
|
|
902
|
+
{ url = "https://files.pythonhosted.org/packages/b6/00/393553ec27b824fbc29047e9c7cd4a3951d7fbe4a76743f17e44034fa4e4/jiter-0.13.0-cp313-cp313t-win_arm64.whl", hash = "sha256:701a1e77d1e593c1b435315ff625fd071f0998c5f02792038a5ca98899261b7d", size = 185852, upload-time = "2026-02-02T12:36:42.077Z" },
|
|
903
|
+
{ url = "https://files.pythonhosted.org/packages/6e/f5/f1997e987211f6f9bd71b8083047b316208b4aca0b529bb5f8c96c89ef3e/jiter-0.13.0-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:cc5223ab19fe25e2f0bf2643204ad7318896fe3729bf12fde41b77bfc4fafff0", size = 308804, upload-time = "2026-02-02T12:36:43.496Z" },
|
|
904
|
+
{ url = "https://files.pythonhosted.org/packages/cd/8f/5482a7677731fd44881f0204981ce2d7175db271f82cba2085dd2212e095/jiter-0.13.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:9776ebe51713acf438fd9b4405fcd86893ae5d03487546dae7f34993217f8a91", size = 318787, upload-time = "2026-02-02T12:36:45.071Z" },
|
|
905
|
+
{ url = "https://files.pythonhosted.org/packages/f3/b9/7257ac59778f1cd025b26a23c5520a36a424f7f1b068f2442a5b499b7464/jiter-0.13.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:879e768938e7b49b5e90b7e3fecc0dbec01b8cb89595861fb39a8967c5220d09", size = 353880, upload-time = "2026-02-02T12:36:47.365Z" },
|
|
906
|
+
{ url = "https://files.pythonhosted.org/packages/c3/87/719eec4a3f0841dad99e3d3604ee4cba36af4419a76f3cb0b8e2e691ad67/jiter-0.13.0-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:682161a67adea11e3aae9038c06c8b4a9a71023228767477d683f69903ebc607", size = 366702, upload-time = "2026-02-02T12:36:48.871Z" },
|
|
907
|
+
{ url = "https://files.pythonhosted.org/packages/d2/65/415f0a75cf6921e43365a1bc227c565cb949caca8b7532776e430cbaa530/jiter-0.13.0-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a13b68cd1cd8cc9de8f244ebae18ccb3e4067ad205220ef324c39181e23bbf66", size = 486319, upload-time = "2026-02-02T12:36:53.006Z" },
|
|
908
|
+
{ url = "https://files.pythonhosted.org/packages/54/a2/9e12b48e82c6bbc6081fd81abf915e1443add1b13d8fc586e1d90bb02bb8/jiter-0.13.0-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:87ce0f14c6c08892b610686ae8be350bf368467b6acd5085a5b65441e2bf36d2", size = 372289, upload-time = "2026-02-02T12:36:54.593Z" },
|
|
909
|
+
{ url = "https://files.pythonhosted.org/packages/4e/c1/e4693f107a1789a239c759a432e9afc592366f04e901470c2af89cfd28e1/jiter-0.13.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0c365005b05505a90d1c47856420980d0237adf82f70c4aff7aebd3c1cc143ad", size = 360165, upload-time = "2026-02-02T12:36:56.112Z" },
|
|
910
|
+
{ url = "https://files.pythonhosted.org/packages/17/08/91b9ea976c1c758240614bd88442681a87672eebc3d9a6dde476874e706b/jiter-0.13.0-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1317fdffd16f5873e46ce27d0e0f7f4f90f0cdf1d86bf6abeaea9f63ca2c401d", size = 389634, upload-time = "2026-02-02T12:36:57.495Z" },
|
|
911
|
+
{ url = "https://files.pythonhosted.org/packages/18/23/58325ef99390d6d40427ed6005bf1ad54f2577866594bcf13ce55675f87d/jiter-0.13.0-cp314-cp314-musllinux_1_1_aarch64.whl", hash = "sha256:c05b450d37ba0c9e21c77fef1f205f56bcee2330bddca68d344baebfc55ae0df", size = 514933, upload-time = "2026-02-02T12:36:58.909Z" },
|
|
912
|
+
{ url = "https://files.pythonhosted.org/packages/5b/25/69f1120c7c395fd276c3996bb8adefa9c6b84c12bb7111e5c6ccdcd8526d/jiter-0.13.0-cp314-cp314-musllinux_1_1_x86_64.whl", hash = "sha256:775e10de3849d0631a97c603f996f518159272db00fdda0a780f81752255ee9d", size = 548842, upload-time = "2026-02-02T12:37:00.433Z" },
|
|
913
|
+
{ url = "https://files.pythonhosted.org/packages/18/05/981c9669d86850c5fbb0d9e62bba144787f9fba84546ba43d624ee27ef29/jiter-0.13.0-cp314-cp314-win32.whl", hash = "sha256:632bf7c1d28421c00dd8bbb8a3bac5663e1f57d5cd5ed962bce3c73bf62608e6", size = 202108, upload-time = "2026-02-02T12:37:01.718Z" },
|
|
914
|
+
{ url = "https://files.pythonhosted.org/packages/8d/96/cdcf54dd0b0341db7d25413229888a346c7130bd20820530905fdb65727b/jiter-0.13.0-cp314-cp314-win_amd64.whl", hash = "sha256:f22ef501c3f87ede88f23f9b11e608581c14f04db59b6a801f354397ae13739f", size = 204027, upload-time = "2026-02-02T12:37:03.075Z" },
|
|
915
|
+
{ url = "https://files.pythonhosted.org/packages/fb/f9/724bcaaab7a3cd727031fe4f6995cb86c4bd344909177c186699c8dec51a/jiter-0.13.0-cp314-cp314-win_arm64.whl", hash = "sha256:07b75fe09a4ee8e0c606200622e571e44943f47254f95e2436c8bdcaceb36d7d", size = 187199, upload-time = "2026-02-02T12:37:04.414Z" },
|
|
916
|
+
{ url = "https://files.pythonhosted.org/packages/62/92/1661d8b9fd6a3d7a2d89831db26fe3c1509a287d83ad7838831c7b7a5c7e/jiter-0.13.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:964538479359059a35fb400e769295d4b315ae61e4105396d355a12f7fef09f0", size = 318423, upload-time = "2026-02-02T12:37:05.806Z" },
|
|
917
|
+
{ url = "https://files.pythonhosted.org/packages/4f/3b/f77d342a54d4ebcd128e520fc58ec2f5b30a423b0fd26acdfc0c6fef8e26/jiter-0.13.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e104da1db1c0991b3eaed391ccd650ae8d947eab1480c733e5a3fb28d4313e40", size = 351438, upload-time = "2026-02-02T12:37:07.189Z" },
|
|
918
|
+
{ url = "https://files.pythonhosted.org/packages/76/b3/ba9a69f0e4209bd3331470c723c2f5509e6f0482e416b612431a5061ed71/jiter-0.13.0-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:0e3a5f0cde8ff433b8e88e41aa40131455420fb3649a3c7abdda6145f8cb7202", size = 364774, upload-time = "2026-02-02T12:37:08.579Z" },
|
|
919
|
+
{ url = "https://files.pythonhosted.org/packages/b3/16/6cdb31fa342932602458dbb631bfbd47f601e03d2e4950740e0b2100b570/jiter-0.13.0-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:57aab48f40be1db920a582b30b116fe2435d184f77f0e4226f546794cedd9cf0", size = 487238, upload-time = "2026-02-02T12:37:10.066Z" },
|
|
920
|
+
{ url = "https://files.pythonhosted.org/packages/ed/b1/956cc7abaca8d95c13aa8d6c9b3f3797241c246cd6e792934cc4c8b250d2/jiter-0.13.0-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7772115877c53f62beeb8fd853cab692dbc04374ef623b30f997959a4c0e7e95", size = 372892, upload-time = "2026-02-02T12:37:11.656Z" },
|
|
921
|
+
{ url = "https://files.pythonhosted.org/packages/26/c4/97ecde8b1e74f67b8598c57c6fccf6df86ea7861ed29da84629cdbba76c4/jiter-0.13.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1211427574b17b633cfceba5040de8081e5abf114f7a7602f73d2e16f9fdaa59", size = 360309, upload-time = "2026-02-02T12:37:13.244Z" },
|
|
922
|
+
{ url = "https://files.pythonhosted.org/packages/4b/d7/eabe3cf46715854ccc80be2cd78dd4c36aedeb30751dbf85a1d08c14373c/jiter-0.13.0-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:7beae3a3d3b5212d3a55d2961db3c292e02e302feb43fce6a3f7a31b90ea6dfe", size = 389607, upload-time = "2026-02-02T12:37:14.881Z" },
|
|
923
|
+
{ url = "https://files.pythonhosted.org/packages/df/2d/03963fc0804e6109b82decfb9974eb92df3797fe7222428cae12f8ccaa0c/jiter-0.13.0-cp314-cp314t-musllinux_1_1_aarch64.whl", hash = "sha256:e5562a0f0e90a6223b704163ea28e831bd3a9faa3512a711f031611e6b06c939", size = 514986, upload-time = "2026-02-02T12:37:16.326Z" },
|
|
924
|
+
{ url = "https://files.pythonhosted.org/packages/f6/6c/8c83b45eb3eb1c1e18d841fe30b4b5bc5619d781267ca9bc03e005d8fd0a/jiter-0.13.0-cp314-cp314t-musllinux_1_1_x86_64.whl", hash = "sha256:6c26a424569a59140fb51160a56df13f438a2b0967365e987889186d5fc2f6f9", size = 548756, upload-time = "2026-02-02T12:37:17.736Z" },
|
|
925
|
+
{ url = "https://files.pythonhosted.org/packages/47/66/eea81dfff765ed66c68fd2ed8c96245109e13c896c2a5015c7839c92367e/jiter-0.13.0-cp314-cp314t-win32.whl", hash = "sha256:24dc96eca9f84da4131cdf87a95e6ce36765c3b156fc9ae33280873b1c32d5f6", size = 201196, upload-time = "2026-02-02T12:37:19.101Z" },
|
|
926
|
+
{ url = "https://files.pythonhosted.org/packages/ff/32/4ac9c7a76402f8f00d00842a7f6b83b284d0cf7c1e9d4227bc95aa6d17fa/jiter-0.13.0-cp314-cp314t-win_amd64.whl", hash = "sha256:0a8d76c7524087272c8ae913f5d9d608bd839154b62c4322ef65723d2e5bb0b8", size = 204215, upload-time = "2026-02-02T12:37:20.495Z" },
|
|
927
|
+
{ url = "https://files.pythonhosted.org/packages/f9/8e/7def204fea9f9be8b3c21a6f2dd6c020cf56c7d5ff753e0e23ed7f9ea57e/jiter-0.13.0-cp314-cp314t-win_arm64.whl", hash = "sha256:2c26cf47e2cad140fa23b6d58d435a7c0161f5c514284802f25e87fddfe11024", size = 187152, upload-time = "2026-02-02T12:37:22.124Z" },
|
|
928
|
+
{ url = "https://files.pythonhosted.org/packages/79/b3/3c29819a27178d0e461a8571fb63c6ae38be6dc36b78b3ec2876bbd6a910/jiter-0.13.0-graalpy311-graalpy242_311_native-macosx_10_12_x86_64.whl", hash = "sha256:b1cbfa133241d0e6bdab48dcdc2604e8ba81512f6bbd68ec3e8e1357dd3c316c", size = 307016, upload-time = "2026-02-02T12:37:42.755Z" },
|
|
929
|
+
{ url = "https://files.pythonhosted.org/packages/eb/ae/60993e4b07b1ac5ebe46da7aa99fdbb802eb986c38d26e3883ac0125c4e0/jiter-0.13.0-graalpy311-graalpy242_311_native-macosx_11_0_arm64.whl", hash = "sha256:db367d8be9fad6e8ebbac4a7578b7af562e506211036cba2c06c3b998603c3d2", size = 305024, upload-time = "2026-02-02T12:37:44.774Z" },
|
|
930
|
+
{ url = "https://files.pythonhosted.org/packages/77/fa/2227e590e9cf98803db2811f172b2d6460a21539ab73006f251c66f44b14/jiter-0.13.0-graalpy311-graalpy242_311_native-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:45f6f8efb2f3b0603092401dc2df79fa89ccbc027aaba4174d2d4133ed661434", size = 339337, upload-time = "2026-02-02T12:37:46.668Z" },
|
|
931
|
+
{ url = "https://files.pythonhosted.org/packages/2d/92/015173281f7eb96c0ef580c997da8ef50870d4f7f4c9e03c845a1d62ae04/jiter-0.13.0-graalpy311-graalpy242_311_native-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:597245258e6ad085d064780abfb23a284d418d3e61c57362d9449c6c7317ee2d", size = 346395, upload-time = "2026-02-02T12:37:48.09Z" },
|
|
932
|
+
{ url = "https://files.pythonhosted.org/packages/80/60/e50fa45dd7e2eae049f0ce964663849e897300433921198aef94b6ffa23a/jiter-0.13.0-graalpy312-graalpy250_312_native-macosx_10_12_x86_64.whl", hash = "sha256:3d744a6061afba08dd7ae375dcde870cffb14429b7477e10f67e9e6d68772a0a", size = 305169, upload-time = "2026-02-02T12:37:50.376Z" },
|
|
933
|
+
{ url = "https://files.pythonhosted.org/packages/d2/73/a009f41c5eed71c49bec53036c4b33555afcdee70682a18c6f66e396c039/jiter-0.13.0-graalpy312-graalpy250_312_native-macosx_11_0_arm64.whl", hash = "sha256:ff732bd0a0e778f43d5009840f20b935e79087b4dc65bd36f1cd0f9b04b8ff7f", size = 303808, upload-time = "2026-02-02T12:37:52.092Z" },
|
|
934
|
+
{ url = "https://files.pythonhosted.org/packages/c4/10/528b439290763bff3d939268085d03382471b442f212dca4ff5f12802d43/jiter-0.13.0-graalpy312-graalpy250_312_native-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ab44b178f7981fcaea7e0a5df20e773c663d06ffda0198f1a524e91b2fde7e59", size = 337384, upload-time = "2026-02-02T12:37:53.582Z" },
|
|
935
|
+
{ url = "https://files.pythonhosted.org/packages/67/8a/a342b2f0251f3dac4ca17618265d93bf244a2a4d089126e81e4c1056ac50/jiter-0.13.0-graalpy312-graalpy250_312_native-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7bb00b6d26db67a05fe3e12c76edc75f32077fb51deed13822dc648fa373bc19", size = 343768, upload-time = "2026-02-02T12:37:55.055Z" },
|
|
936
936
|
]
|
|
937
937
|
|
|
938
938
|
[[package]]
|
|
@@ -1561,7 +1561,7 @@ wheels = [
|
|
|
1561
1561
|
|
|
1562
1562
|
[[package]]
|
|
1563
1563
|
name = "pytest-llm-assert"
|
|
1564
|
-
version = "0.2.
|
|
1564
|
+
version = "0.2.2"
|
|
1565
1565
|
source = { editable = "." }
|
|
1566
1566
|
dependencies = [
|
|
1567
1567
|
{ name = "azure-identity" },
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/.github/ISSUE_TEMPLATE/feature_request.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/src/pytest_llm_assert/prompts/system_prompt.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pytest_llm_assert-0.2.0 → pytest_llm_assert-0.2.2}/tests/integration/test_llm_integration.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|