tai42-webhook-verifier-github 1.2.5__tar.gz → 1.2.7__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.
- {tai42_webhook_verifier_github-1.2.5/src/tai42_webhook_verifier_github.egg-info → tai42_webhook_verifier_github-1.2.7}/PKG-INFO +2 -4
- {tai42_webhook_verifier_github-1.2.5 → tai42_webhook_verifier_github-1.2.7}/README.md +0 -2
- {tai42_webhook_verifier_github-1.2.5 → tai42_webhook_verifier_github-1.2.7}/pyproject.toml +11 -3
- {tai42_webhook_verifier_github-1.2.5 → tai42_webhook_verifier_github-1.2.7}/src/tai42_webhook_verifier_github/tai-plugin.yml +2 -2
- {tai42_webhook_verifier_github-1.2.5 → tai42_webhook_verifier_github-1.2.7}/src/tai42_webhook_verifier_github/verifier.py +1 -1
- {tai42_webhook_verifier_github-1.2.5 → tai42_webhook_verifier_github-1.2.7/src/tai42_webhook_verifier_github.egg-info}/PKG-INFO +2 -4
- tai42_webhook_verifier_github-1.2.7/src/tai42_webhook_verifier_github.egg-info/requires.txt +1 -0
- tai42_webhook_verifier_github-1.2.5/src/tai42_webhook_verifier_github.egg-info/requires.txt +0 -1
- {tai42_webhook_verifier_github-1.2.5 → tai42_webhook_verifier_github-1.2.7}/LICENSE +0 -0
- {tai42_webhook_verifier_github-1.2.5 → tai42_webhook_verifier_github-1.2.7}/MANIFEST.in +0 -0
- {tai42_webhook_verifier_github-1.2.5 → tai42_webhook_verifier_github-1.2.7}/NOTICE +0 -0
- {tai42_webhook_verifier_github-1.2.5 → tai42_webhook_verifier_github-1.2.7}/setup.cfg +0 -0
- {tai42_webhook_verifier_github-1.2.5 → tai42_webhook_verifier_github-1.2.7}/src/tai42_webhook_verifier_github/__init__.py +0 -0
- {tai42_webhook_verifier_github-1.2.5 → tai42_webhook_verifier_github-1.2.7}/src/tai42_webhook_verifier_github/docs/index.mdx +0 -0
- {tai42_webhook_verifier_github-1.2.5 → tai42_webhook_verifier_github-1.2.7}/src/tai42_webhook_verifier_github/py.typed +0 -0
- {tai42_webhook_verifier_github-1.2.5 → tai42_webhook_verifier_github-1.2.7}/src/tai42_webhook_verifier_github.egg-info/SOURCES.txt +0 -0
- {tai42_webhook_verifier_github-1.2.5 → tai42_webhook_verifier_github-1.2.7}/src/tai42_webhook_verifier_github.egg-info/dependency_links.txt +0 -0
- {tai42_webhook_verifier_github-1.2.5 → tai42_webhook_verifier_github-1.2.7}/src/tai42_webhook_verifier_github.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: tai42-webhook-verifier-github
|
|
3
|
-
Version: 1.2.
|
|
3
|
+
Version: 1.2.7
|
|
4
4
|
Summary: GitHub webhook-signature verifier plugin for the TAI ecosystem: a per-provider WebhookVerifier that checks each delivery's X-Hub-Signature-256 HMAC before the payload is dispatched.
|
|
5
5
|
Author-email: tai42 <oss@tai42.ai>
|
|
6
6
|
License-Expression: Apache-2.0
|
|
@@ -20,7 +20,7 @@ Requires-Python: >=3.13
|
|
|
20
20
|
Description-Content-Type: text/markdown
|
|
21
21
|
License-File: LICENSE
|
|
22
22
|
License-File: NOTICE
|
|
23
|
-
Requires-Dist: tai42-contract<
|
|
23
|
+
Requires-Dist: tai42-contract<13,>=12.0
|
|
24
24
|
Dynamic: license-file
|
|
25
25
|
|
|
26
26
|
# tai42-webhook-verifier-github
|
|
@@ -57,8 +57,6 @@ documentation site covers the platform-level story:
|
|
|
57
57
|
- Build a webhook verifier (author guide): https://tai42.ai/guides/authors/webhook-verifier
|
|
58
58
|
- Ecosystem catalog: https://tai42.ai/reference/catalog
|
|
59
59
|
|
|
60
|
-
The current release line tracks the **10.x contract** (`tai42-contract>=10.0,<11`).
|
|
61
|
-
|
|
62
60
|
## Install
|
|
63
61
|
|
|
64
62
|
Requires **Python 3.13+**. Install from PyPI into the environment that runs the
|
|
@@ -32,8 +32,6 @@ documentation site covers the platform-level story:
|
|
|
32
32
|
- Build a webhook verifier (author guide): https://tai42.ai/guides/authors/webhook-verifier
|
|
33
33
|
- Ecosystem catalog: https://tai42.ai/reference/catalog
|
|
34
34
|
|
|
35
|
-
The current release line tracks the **10.x contract** (`tai42-contract>=10.0,<11`).
|
|
36
|
-
|
|
37
35
|
## Install
|
|
38
36
|
|
|
39
37
|
Requires **Python 3.13+**. Install from PyPI into the environment that runs the
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "tai42-webhook-verifier-github"
|
|
7
|
-
version = "1.2.
|
|
7
|
+
version = "1.2.7"
|
|
8
8
|
description = "GitHub webhook-signature verifier plugin for the TAI ecosystem: a per-provider WebhookVerifier that checks each delivery's X-Hub-Signature-256 HMAC before the payload is dispatched."
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.13"
|
|
@@ -28,7 +28,7 @@ dependencies = [
|
|
|
28
28
|
# handle and the WebhookVerifier / WebhookVerificationError types. The HMAC
|
|
29
29
|
# work is pure standard library (hmac / hashlib); no other tai-* dependency.
|
|
30
30
|
# The contract floor is rewritten by scripts/range_sync.py at release.
|
|
31
|
-
"tai42-contract>=
|
|
31
|
+
"tai42-contract>=12.0,<13",
|
|
32
32
|
]
|
|
33
33
|
|
|
34
34
|
[project.urls]
|
|
@@ -73,8 +73,13 @@ target-version = "py313"
|
|
|
73
73
|
line-length = 120
|
|
74
74
|
|
|
75
75
|
[tool.ruff.lint]
|
|
76
|
-
select = ["E", "W", "F", "I", "UP", "B", "C4", "SIM", "PIE", "PT", "RUF", "TID"]
|
|
76
|
+
select = ["E", "W", "F", "I", "UP", "B", "C4", "SIM", "PIE", "PT", "RUF", "TID", "C901", "PLR0912", "PLR0915", "RET", "PERF", "FURB", "T20", "N", "A", "S", "TRY", "ERA", "D"]
|
|
77
|
+
# N815: response models use camelCase field names to match the JSON wire shape.
|
|
78
|
+
# TRY003: exception call sites carry rich contextual messages by design.
|
|
79
|
+
ignore = ["N815", "TRY003"]
|
|
77
80
|
|
|
81
|
+
[tool.ruff.lint.per-file-ignores]
|
|
82
|
+
"tests/**" = ["C901", "PLR0912", "PLR0915", "RET", "PERF", "FURB", "T20", "D", "TRY", "ERA", "S101", "S102", "S104", "S105", "S106", "S107", "S108", "S112", "S113", "S311", "S324", "S603", "S607", "N801", "N802", "N806", "N814"]
|
|
78
83
|
[tool.ruff.lint.flake8-tidy-imports.banned-api]
|
|
79
84
|
"tai42_skeleton".msg = "tai42-webhook-verifier-github is contract-facing: it never imports tai42-skeleton."
|
|
80
85
|
|
|
@@ -99,3 +104,6 @@ fail_under = 95
|
|
|
99
104
|
include = ["src", "tests"]
|
|
100
105
|
pythonVersion = "3.13"
|
|
101
106
|
typeCheckingMode = "basic"
|
|
107
|
+
|
|
108
|
+
[tool.ruff.lint.pydocstyle]
|
|
109
|
+
convention = "google"
|
|
@@ -2,7 +2,7 @@ spec_version: 1
|
|
|
2
2
|
namespace: tai42
|
|
3
3
|
name: webhook-verifier-github
|
|
4
4
|
package: tai42-webhook-verifier-github
|
|
5
|
-
version: 1.2.
|
|
5
|
+
version: 1.2.7
|
|
6
6
|
description: >-
|
|
7
7
|
GitHub webhook-signature verifier plugin for the TAI ecosystem: a per-provider
|
|
8
8
|
WebhookVerifier that checks each delivery's X-Hub-Signature-256 HMAC before
|
|
@@ -10,7 +10,7 @@ description: >-
|
|
|
10
10
|
license: Apache-2.0
|
|
11
11
|
homepage: https://tai42.ai
|
|
12
12
|
repository: https://github.com/tai42ai/tai42/tree/main/plugins/webhook-verifier-github
|
|
13
|
-
contract: '>=
|
|
13
|
+
contract: '>=12.0,<13'
|
|
14
14
|
categories:
|
|
15
15
|
- webhooks
|
|
16
16
|
- security
|
|
@@ -104,7 +104,7 @@ def _replay_window_seconds(config: dict[str, Any]) -> int:
|
|
|
104
104
|
"""
|
|
105
105
|
window = config.get("replay_window_seconds", _DEFAULT_REPLAY_WINDOW_SECONDS)
|
|
106
106
|
if isinstance(window, bool) or not isinstance(window, int):
|
|
107
|
-
raise ValueError(f"replay_window_seconds must be an int, got {window!r}")
|
|
107
|
+
raise ValueError(f"replay_window_seconds must be an int, got {window!r}") # noqa: TRY004 raised type is intentional (invariant/state/validation taxonomy); TypeError would change behaviour
|
|
108
108
|
if window <= 0:
|
|
109
109
|
raise ValueError(f"replay_window_seconds must be positive, got {window!r}")
|
|
110
110
|
return window
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: tai42-webhook-verifier-github
|
|
3
|
-
Version: 1.2.
|
|
3
|
+
Version: 1.2.7
|
|
4
4
|
Summary: GitHub webhook-signature verifier plugin for the TAI ecosystem: a per-provider WebhookVerifier that checks each delivery's X-Hub-Signature-256 HMAC before the payload is dispatched.
|
|
5
5
|
Author-email: tai42 <oss@tai42.ai>
|
|
6
6
|
License-Expression: Apache-2.0
|
|
@@ -20,7 +20,7 @@ Requires-Python: >=3.13
|
|
|
20
20
|
Description-Content-Type: text/markdown
|
|
21
21
|
License-File: LICENSE
|
|
22
22
|
License-File: NOTICE
|
|
23
|
-
Requires-Dist: tai42-contract<
|
|
23
|
+
Requires-Dist: tai42-contract<13,>=12.0
|
|
24
24
|
Dynamic: license-file
|
|
25
25
|
|
|
26
26
|
# tai42-webhook-verifier-github
|
|
@@ -57,8 +57,6 @@ documentation site covers the platform-level story:
|
|
|
57
57
|
- Build a webhook verifier (author guide): https://tai42.ai/guides/authors/webhook-verifier
|
|
58
58
|
- Ecosystem catalog: https://tai42.ai/reference/catalog
|
|
59
59
|
|
|
60
|
-
The current release line tracks the **10.x contract** (`tai42-contract>=10.0,<11`).
|
|
61
|
-
|
|
62
60
|
## Install
|
|
63
61
|
|
|
64
62
|
Requires **Python 3.13+**. Install from PyPI into the environment that runs the
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
tai42-contract<13,>=12.0
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
tai42-contract<11,>=10.0
|
|
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
|