rp_python_sdk 1.3.0__tar.gz → 1.4.0__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 (22) hide show
  1. {rp_python_sdk-1.3.0 → rp_python_sdk-1.4.0}/PKG-INFO +14 -7
  2. {rp_python_sdk-1.3.0 → rp_python_sdk-1.4.0}/README.md +8 -1
  3. {rp_python_sdk-1.3.0 → rp_python_sdk-1.4.0}/pyproject.toml +8 -8
  4. {rp_python_sdk-1.3.0 → rp_python_sdk-1.4.0}/rp_python_sdk/endpoints/retrieve_tokens.py +2 -1
  5. rp_python_sdk-1.4.0/rp_python_sdk/endpoints/util/version_info.py +2 -0
  6. rp_python_sdk-1.3.0/rp_python_sdk/endpoints/util/version_info.py +0 -2
  7. {rp_python_sdk-1.3.0 → rp_python_sdk-1.4.0}/rp_python_sdk/__init__.py +0 -0
  8. {rp_python_sdk-1.3.0 → rp_python_sdk-1.4.0}/rp_python_sdk/cache/__init__.py +0 -0
  9. {rp_python_sdk-1.3.0 → rp_python_sdk-1.4.0}/rp_python_sdk/cache/http_cache.py +0 -0
  10. {rp_python_sdk-1.3.0 → rp_python_sdk-1.4.0}/rp_python_sdk/endpoints/get_participants.py +0 -0
  11. {rp_python_sdk-1.3.0 → rp_python_sdk-1.4.0}/rp_python_sdk/endpoints/pushed_authorisation_request.py +0 -0
  12. {rp_python_sdk-1.3.0 → rp_python_sdk-1.4.0}/rp_python_sdk/endpoints/user_info.py +0 -0
  13. {rp_python_sdk-1.3.0 → rp_python_sdk-1.4.0}/rp_python_sdk/endpoints/util/fapi.py +0 -0
  14. {rp_python_sdk-1.3.0 → rp_python_sdk-1.4.0}/rp_python_sdk/endpoints/util/mapping.py +0 -0
  15. {rp_python_sdk-1.3.0 → rp_python_sdk-1.4.0}/rp_python_sdk/endpoints/util/system_info.py +0 -0
  16. {rp_python_sdk-1.3.0 → rp_python_sdk-1.4.0}/rp_python_sdk/endpoints/util/user_agent.py +0 -0
  17. {rp_python_sdk-1.3.0 → rp_python_sdk-1.4.0}/rp_python_sdk/filters/participant_filters.py +0 -0
  18. {rp_python_sdk-1.3.0 → rp_python_sdk-1.4.0}/rp_python_sdk/model.py +0 -0
  19. {rp_python_sdk-1.3.0 → rp_python_sdk-1.4.0}/rp_python_sdk/relying_party_client_sdk.py +0 -0
  20. {rp_python_sdk-1.3.0 → rp_python_sdk-1.4.0}/rp_python_sdk/relying_party_client_sdk_exception.py +0 -0
  21. {rp_python_sdk-1.3.0 → rp_python_sdk-1.4.0}/rp_python_sdk/sdk_config.py +0 -0
  22. {rp_python_sdk-1.3.0 → rp_python_sdk-1.4.0}/rp_python_sdk/setup_logger.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: rp_python_sdk
3
- Version: 1.3.0
3
+ Version: 1.4.0
4
4
  Summary: Python SDK for Relying Parties to enable simple integration with the Digital Identity ecosystem
5
5
  License: Proprietary
6
6
  Author: Erik Pragt
@@ -11,12 +11,12 @@ Classifier: Programming Language :: Python :: 3
11
11
  Classifier: Programming Language :: Python :: 3.12
12
12
  Classifier: Programming Language :: Python :: 3.13
13
13
  Classifier: Programming Language :: Python :: 3.14
14
- Requires-Dist: authlib (>=1.6.6,<2.0.0)
14
+ Requires-Dist: authlib (>=1.7.2,<2.0.0)
15
15
  Requires-Dist: cffi (>=2.0.0,<3.0.0)
16
- Requires-Dist: cryptography (>=46.0.5,<47.0.0)
17
- Requires-Dist: joserfc (>=1.6.3,<2.0.0)
18
- Requires-Dist: requests (>=2.32.5,<3.0.0)
19
- Requires-Dist: urllib3 (>=2.6.3,<3.0.0)
16
+ Requires-Dist: cryptography (>=48.0.0,<49.0.0)
17
+ Requires-Dist: joserfc (>=1.6.8,<2.0.0)
18
+ Requires-Dist: requests (>=2.34.2,<3.0.0)
19
+ Requires-Dist: urllib3 (>=2.7.0,<3.0.0)
20
20
  Description-Content-Type: text/markdown
21
21
 
22
22
  # Python SDK for Relying Parties
@@ -451,7 +451,14 @@ poetry publish
451
451
 
452
452
  ## Release Notes
453
453
 
454
- ## 1.3.0 (23 Mar, 2026)
454
+ ### 1.4.0 (May 27, 2026)
455
+ - Fixed key selection bug: JWKs with missing `use` field are now accepted (per RFC 7517)
456
+ - Updated dependencies: authlib 1.7.2, cryptography 48, joserfc 1.6.8, requests 2.34.2, urllib3 2.7.0, black 26.5.1, mypy 2
457
+
458
+ ### 1.3.1 (May 4, 2026)
459
+ - Updated dependencies
460
+
461
+ ### 1.3.0 (23 Mar, 2026)
455
462
  - **OpenID Connect Discovery Section 4.3 Compliance**: Implemented issuer validation to ensure the issuer value in the provider configuration matches the Issuer URL used to retrieve it
456
463
  - Added validation that compares the issuer in `/.well-known/openid-configuration` response with the expected issuer URL
457
464
  - Properly handles trailing slash normalisation per RFC 3986
@@ -430,7 +430,14 @@ poetry publish
430
430
 
431
431
  ## Release Notes
432
432
 
433
- ## 1.3.0 (23 Mar, 2026)
433
+ ### 1.4.0 (May 27, 2026)
434
+ - Fixed key selection bug: JWKs with missing `use` field are now accepted (per RFC 7517)
435
+ - Updated dependencies: authlib 1.7.2, cryptography 48, joserfc 1.6.8, requests 2.34.2, urllib3 2.7.0, black 26.5.1, mypy 2
436
+
437
+ ### 1.3.1 (May 4, 2026)
438
+ - Updated dependencies
439
+
440
+ ### 1.3.0 (23 Mar, 2026)
434
441
  - **OpenID Connect Discovery Section 4.3 Compliance**: Implemented issuer validation to ensure the issuer value in the provider configuration matches the Issuer URL used to retrieve it
435
442
  - Added validation that compares the issuer in `/.well-known/openid-configuration` response with the expected issuer URL
436
443
  - Properly handles trailing slash normalisation per RFC 3986
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "rp_python_sdk"
3
- version = "1.3.0"
3
+ version = "1.4.0"
4
4
  description = "Python SDK for Relying Parties to enable simple integration with the Digital Identity ecosystem"
5
5
  authors = ["Erik Pragt <erik.pragt@connectid.com.au>"]
6
6
  license = "Proprietary"
@@ -8,12 +8,12 @@ readme = "README.md"
8
8
 
9
9
  [tool.poetry.dependencies]
10
10
  python = "^3.12"
11
- requests = "^2.32.5"
12
- authlib = "^1.6.6"
13
- cryptography = "^46.0.5"
14
- joserfc = "^1.6.3"
11
+ requests = "^2.34.2"
12
+ authlib = "^1.7.2"
13
+ cryptography = "^48.0.0"
14
+ joserfc = "^1.6.8"
15
15
  cffi = "^2.0.0"
16
- urllib3 = "^2.6.3"
16
+ urllib3 = "^2.7.0"
17
17
 
18
18
  [tool.poetry.group.test.dependencies]
19
19
  pytest = "^9.0.0"
@@ -21,9 +21,9 @@ httpx = "^0.28.1"
21
21
  toml = "^0.10.2"
22
22
 
23
23
  [tool.poetry.group.dev.dependencies]
24
- black = "^26.0.0"
24
+ black = "^26.5.1"
25
25
  pre-commit = "^4.5.1"
26
- mypy = "^1.19.1"
26
+ mypy = "^2.0.0"
27
27
  requests-mock = "^1.12.1"
28
28
  freezegun = "^1.4.0"
29
29
  flake8 = "^7.3.0"
@@ -265,7 +265,8 @@ def _validate_signature(issuer: str, audience: str, allowed_alg: list, id_token:
265
265
 
266
266
 
267
267
  def _matching_use(key_element: dict) -> bool:
268
- return key_element.get('use') == "sig"
268
+ use = key_element.get('use')
269
+ return use is None or use == "sig"
269
270
 
270
271
 
271
272
  def _matching_kid(kid: str, key_element: dict) -> bool:
@@ -0,0 +1,2 @@
1
+ def get_version_info() -> str:
2
+ return "1.4.0" # Version number
@@ -1,2 +0,0 @@
1
- def get_version_info() -> str:
2
- return "1.3.0" # Version number