wexample-api 6.2.0__tar.gz → 6.3.1__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 (28) hide show
  1. {wexample_api-6.2.0 → wexample_api-6.3.1}/PKG-INFO +6 -6
  2. {wexample_api-6.2.0 → wexample_api-6.3.1}/README.md +3 -3
  3. {wexample_api-6.2.0 → wexample_api-6.3.1}/pyproject.toml +3 -3
  4. {wexample_api-6.2.0 → wexample_api-6.3.1}/src/wexample_api/common/abstract_gateway.py +5 -0
  5. {wexample_api-6.2.0 → wexample_api-6.3.1}/src/wexample_api/__init__.py +0 -0
  6. {wexample_api-6.2.0 → wexample_api-6.3.1}/src/wexample_api/__pycache__/__init__.py +0 -0
  7. {wexample_api-6.2.0 → wexample_api-6.3.1}/src/wexample_api/common/__init__.py +0 -0
  8. {wexample_api-6.2.0 → wexample_api-6.3.1}/src/wexample_api/common/__pycache__/__init__.py +0 -0
  9. {wexample_api-6.2.0 → wexample_api-6.3.1}/src/wexample_api/common/http_request_payload.py +0 -0
  10. {wexample_api-6.2.0 → wexample_api-6.3.1}/src/wexample_api/const/__init__.py +0 -0
  11. {wexample_api-6.2.0 → wexample_api-6.3.1}/src/wexample_api/const/__pycache__/__init__.py +0 -0
  12. {wexample_api-6.2.0 → wexample_api-6.3.1}/src/wexample_api/const/http.py +0 -0
  13. {wexample_api-6.2.0 → wexample_api-6.3.1}/src/wexample_api/demo/__init__.py +0 -0
  14. {wexample_api-6.2.0 → wexample_api-6.3.1}/src/wexample_api/demo/demo_simple_gateway.py +0 -0
  15. {wexample_api-6.2.0 → wexample_api-6.3.1}/src/wexample_api/enums/__init__.py +0 -0
  16. {wexample_api-6.2.0 → wexample_api-6.3.1}/src/wexample_api/enums/__pycache__/__init__.py +0 -0
  17. {wexample_api-6.2.0 → wexample_api-6.3.1}/src/wexample_api/enums/http.py +0 -0
  18. {wexample_api-6.2.0 → wexample_api-6.3.1}/src/wexample_api/errors/__init__.py +0 -0
  19. {wexample_api-6.2.0 → wexample_api-6.3.1}/src/wexample_api/errors/gateway_authentication_error.py +0 -0
  20. {wexample_api-6.2.0 → wexample_api-6.3.1}/src/wexample_api/errors/gateway_connexion_error.py +0 -0
  21. {wexample_api-6.2.0 → wexample_api-6.3.1}/src/wexample_api/middleware/__init__.py +0 -0
  22. {wexample_api-6.2.0 → wexample_api-6.3.1}/src/wexample_api/models/__init__.py +0 -0
  23. {wexample_api-6.2.0 → wexample_api-6.3.1}/src/wexample_api/py.typed +0 -0
  24. {wexample_api-6.2.0 → wexample_api-6.3.1}/tests/common/__init__.py +0 -0
  25. {wexample_api-6.2.0 → wexample_api-6.3.1}/tests/common/test_http_request_payload.py +0 -0
  26. {wexample_api-6.2.0 → wexample_api-6.3.1}/tests/demo/__init__.py +0 -0
  27. {wexample_api-6.2.0 → wexample_api-6.3.1}/tests/demo/test_demo_simple_gateway.py +0 -0
  28. {wexample_api-6.2.0 → wexample_api-6.3.1}/tests/new_architecture/__init__.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: wexample-api
3
- Version: 6.2.0
3
+ Version: 6.3.1
4
4
  Summary: Some python basic helpers for apis.
5
5
  Author-Email: weeger <contact@wexample.com>
6
6
  License: MIT
@@ -12,8 +12,8 @@ Requires-Python: >=3.10
12
12
  Requires-Dist: attrs>=23.1.0
13
13
  Requires-Dist: cattrs>=23.1.0
14
14
  Requires-Dist: requests
15
- Requires-Dist: wexample-helpers>=13.1.0
16
- Requires-Dist: wexample-prompt>=12.0.0
15
+ Requires-Dist: wexample-helpers>=15.0.0
16
+ Requires-Dist: wexample-prompt>=13.1.0
17
17
  Provides-Extra: dev
18
18
  Requires-Dist: pytest; extra == "dev"
19
19
  Requires-Dist: pytest-cov; extra == "dev"
@@ -21,7 +21,7 @@ Description-Content-Type: text/markdown
21
21
 
22
22
  # api
23
23
 
24
- Version: 6.2.0
24
+ Version: 6.3.1
25
25
 
26
26
  Some python basic helpers for apis.
27
27
 
@@ -104,8 +104,8 @@ Visit the [Wexample Suite documentation](https://docs.wexample.com) for the comp
104
104
  - attrs: >=23.1.0
105
105
  - cattrs: >=23.1.0
106
106
  - requests:
107
- - wexample-helpers: >=13.1.0
108
- - wexample-prompt: >=12.0.0
107
+ - wexample-helpers: >=15.0.0
108
+ - wexample-prompt: >=13.1.0
109
109
 
110
110
  ## Versioning & Compatibility Policy
111
111
 
@@ -1,6 +1,6 @@
1
1
  # api
2
2
 
3
- Version: 6.2.0
3
+ Version: 6.3.1
4
4
 
5
5
  Some python basic helpers for apis.
6
6
 
@@ -83,8 +83,8 @@ Visit the [Wexample Suite documentation](https://docs.wexample.com) for the comp
83
83
  - attrs: >=23.1.0
84
84
  - cattrs: >=23.1.0
85
85
  - requests:
86
- - wexample-helpers: >=13.1.0
87
- - wexample-prompt: >=12.0.0
86
+ - wexample-helpers: >=15.0.0
87
+ - wexample-prompt: >=13.1.0
88
88
 
89
89
  ## Versioning & Compatibility Policy
90
90
 
@@ -6,7 +6,7 @@ build-backend = "pdm.backend"
6
6
 
7
7
  [project]
8
8
  name = "wexample-api"
9
- version = "6.2.0"
9
+ version = "6.3.1"
10
10
  description = "Some python basic helpers for apis."
11
11
  authors = [
12
12
  { name = "weeger", email = "contact@wexample.com" },
@@ -21,8 +21,8 @@ dependencies = [
21
21
  "attrs>=23.1.0",
22
22
  "cattrs>=23.1.0",
23
23
  "requests",
24
- "wexample-helpers>=13.1.0",
25
- "wexample-prompt>=12.0.0",
24
+ "wexample-helpers>=15.0.0",
25
+ "wexample-prompt>=13.1.0",
26
26
  ]
27
27
 
28
28
  [project.readme]
@@ -1,5 +1,6 @@
1
1
  from __future__ import annotations
2
2
 
3
+ import json
3
4
  import time
4
5
  from collections.abc import Mapping
5
6
  from typing import TYPE_CHECKING, Any
@@ -328,6 +329,10 @@ class AbstractGateway(
328
329
  except (ValueError, AttributeError):
329
330
  if response.text:
330
331
  message = response.text
332
+ # GitLab returns a nested dict (e.g. validation errors) under "message";
333
+ # keep the full content but as a string so it can flow through exceptions.
334
+ if not isinstance(message, str):
335
+ message = json.dumps(message, default=str)
331
336
  return message
332
337
 
333
338
  def _get_header_value(