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.
Files changed (18) hide show
  1. {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
  2. {tai42_webhook_verifier_github-1.2.5 → tai42_webhook_verifier_github-1.2.7}/README.md +0 -2
  3. {tai42_webhook_verifier_github-1.2.5 → tai42_webhook_verifier_github-1.2.7}/pyproject.toml +11 -3
  4. {tai42_webhook_verifier_github-1.2.5 → tai42_webhook_verifier_github-1.2.7}/src/tai42_webhook_verifier_github/tai-plugin.yml +2 -2
  5. {tai42_webhook_verifier_github-1.2.5 → tai42_webhook_verifier_github-1.2.7}/src/tai42_webhook_verifier_github/verifier.py +1 -1
  6. {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
  7. tai42_webhook_verifier_github-1.2.7/src/tai42_webhook_verifier_github.egg-info/requires.txt +1 -0
  8. tai42_webhook_verifier_github-1.2.5/src/tai42_webhook_verifier_github.egg-info/requires.txt +0 -1
  9. {tai42_webhook_verifier_github-1.2.5 → tai42_webhook_verifier_github-1.2.7}/LICENSE +0 -0
  10. {tai42_webhook_verifier_github-1.2.5 → tai42_webhook_verifier_github-1.2.7}/MANIFEST.in +0 -0
  11. {tai42_webhook_verifier_github-1.2.5 → tai42_webhook_verifier_github-1.2.7}/NOTICE +0 -0
  12. {tai42_webhook_verifier_github-1.2.5 → tai42_webhook_verifier_github-1.2.7}/setup.cfg +0 -0
  13. {tai42_webhook_verifier_github-1.2.5 → tai42_webhook_verifier_github-1.2.7}/src/tai42_webhook_verifier_github/__init__.py +0 -0
  14. {tai42_webhook_verifier_github-1.2.5 → tai42_webhook_verifier_github-1.2.7}/src/tai42_webhook_verifier_github/docs/index.mdx +0 -0
  15. {tai42_webhook_verifier_github-1.2.5 → tai42_webhook_verifier_github-1.2.7}/src/tai42_webhook_verifier_github/py.typed +0 -0
  16. {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
  17. {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
  18. {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.5
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<11,>=10.0
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.5"
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>=10.0,<11",
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
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: '>=10.0,<11'
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.5
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<11,>=10.0
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