splunk-soar-sdk 3.2.0__py3-none-any.whl → 3.2.1__py3-none-any.whl
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.
- soar_sdk/meta/dependencies.py +49 -3
- {splunk_soar_sdk-3.2.0.dist-info → splunk_soar_sdk-3.2.1.dist-info}/METADATA +1 -1
- {splunk_soar_sdk-3.2.0.dist-info → splunk_soar_sdk-3.2.1.dist-info}/RECORD +6 -6
- {splunk_soar_sdk-3.2.0.dist-info → splunk_soar_sdk-3.2.1.dist-info}/WHEEL +0 -0
- {splunk_soar_sdk-3.2.0.dist-info → splunk_soar_sdk-3.2.1.dist-info}/entry_points.txt +0 -0
- {splunk_soar_sdk-3.2.0.dist-info → splunk_soar_sdk-3.2.1.dist-info}/licenses/LICENSE +0 -0
soar_sdk/meta/dependencies.py
CHANGED
|
@@ -277,9 +277,7 @@ class UvPackage(BaseModel):
|
|
|
277
277
|
for abi in abi_precedence:
|
|
278
278
|
abi_wheels = [wheel for wheel in self.wheels if abi in wheel.abi_tags]
|
|
279
279
|
for python in python_precedence:
|
|
280
|
-
python_wheels =
|
|
281
|
-
wheel for wheel in abi_wheels if python in wheel.python_tags
|
|
282
|
-
]
|
|
280
|
+
python_wheels = self._filter_python_wheels(abi_wheels, python, abi)
|
|
283
281
|
for platform in platform_precedence:
|
|
284
282
|
platform_wheels = [
|
|
285
283
|
wheel
|
|
@@ -293,6 +291,54 @@ class UvPackage(BaseModel):
|
|
|
293
291
|
f"Could not find a suitable wheel for {self.name=}, {self.version=}, {abi_precedence=}, {python_precedence=}, {platform_precedence=}"
|
|
294
292
|
)
|
|
295
293
|
|
|
294
|
+
def _filter_python_wheels(
|
|
295
|
+
self, wheels: list[UvWheel], target_python: str, abi: str
|
|
296
|
+
) -> list[UvWheel]:
|
|
297
|
+
"""Filter and sort wheels by Python version compatibility.
|
|
298
|
+
|
|
299
|
+
For abi3 wheels, prefers the highest compatible minimum version
|
|
300
|
+
(e.g., cp311-abi3 over cp38-abi3 for Python 3.13).
|
|
301
|
+
"""
|
|
302
|
+
compatible = [
|
|
303
|
+
wheel
|
|
304
|
+
for wheel in wheels
|
|
305
|
+
if self._is_python_compatible(wheel, target_python, abi)
|
|
306
|
+
]
|
|
307
|
+
|
|
308
|
+
# For abi3 wheels, prefer highest minimum version (closest to target)
|
|
309
|
+
if abi == "abi3" and compatible:
|
|
310
|
+
compatible = sorted(
|
|
311
|
+
compatible,
|
|
312
|
+
key=lambda w: max(
|
|
313
|
+
(int(tag[2:]) for tag in w.python_tags if tag.startswith("cp")),
|
|
314
|
+
default=0,
|
|
315
|
+
),
|
|
316
|
+
reverse=True,
|
|
317
|
+
)
|
|
318
|
+
|
|
319
|
+
return compatible
|
|
320
|
+
|
|
321
|
+
def _is_python_compatible(
|
|
322
|
+
self, wheel: UvWheel, target_python: str, abi: str
|
|
323
|
+
) -> bool:
|
|
324
|
+
"""Check if a wheel is compatible with the target Python version.
|
|
325
|
+
|
|
326
|
+
For abi3 wheels, the Python tag indicates minimum version (e.g., cp311-abi3 works with Python ≥3.11).
|
|
327
|
+
For non-abi3 wheels, exact tag matching is required.
|
|
328
|
+
"""
|
|
329
|
+
if target_python in wheel.python_tags:
|
|
330
|
+
return True
|
|
331
|
+
|
|
332
|
+
# For abi3 wheels, check if target >= minimum version (e.g., cp313 >= cp311)
|
|
333
|
+
if abi == "abi3":
|
|
334
|
+
return any(
|
|
335
|
+
int(tag[2:]) <= int(target_python[2:])
|
|
336
|
+
for tag in wheel.python_tags
|
|
337
|
+
if tag.startswith("cp") and target_python.startswith("cp")
|
|
338
|
+
)
|
|
339
|
+
|
|
340
|
+
return False
|
|
341
|
+
|
|
296
342
|
_manylinux_precedence: ClassVar[list[str]] = [
|
|
297
343
|
"_2_28", # glibc 2.28, latest stable version, supports Ubuntu 18.10+ and RHEL/Oracle 8+
|
|
298
344
|
"_2_17", # glibc 2.17, LTS-ish, supports Ubuntu 13.10+ and RHEL/Oracle 7+
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: splunk-soar-sdk
|
|
3
|
-
Version: 3.2.
|
|
3
|
+
Version: 3.2.1
|
|
4
4
|
Summary: The official framework for developing and testing Splunk SOAR Apps
|
|
5
5
|
Project-URL: Homepage, https://github.com/phantomcyber/splunk-soar-sdk
|
|
6
6
|
Project-URL: Documentation, https://github.com/phantomcyber/splunk-soar-sdk
|
|
@@ -62,7 +62,7 @@ soar_sdk/meta/actions.py,sha256=YadG8Zkc0SWmcG5-Dj4NyWlYYAh4CyJksLYp_GmNZNM,1818
|
|
|
62
62
|
soar_sdk/meta/adapters.py,sha256=KjSYIUtkCz2eesA_vhsNCjfi5C-Uz71tbSuDIjhuB8U,1112
|
|
63
63
|
soar_sdk/meta/app.py,sha256=eZlM8GIY1B_o-RzJrRNCNVEQSx0sFupxZqCM7sIWGv4,2777
|
|
64
64
|
soar_sdk/meta/datatypes.py,sha256=piR-oBVAATiRciXSdVE7XaqjUZTgSaOvTEqcOcNvCS0,795
|
|
65
|
-
soar_sdk/meta/dependencies.py,sha256=
|
|
65
|
+
soar_sdk/meta/dependencies.py,sha256=e5PQQMpnz1_XJIvLPGeMQh8iE3RguqlCsag1CD5vXz8,19901
|
|
66
66
|
soar_sdk/meta/webhooks.py,sha256=E5pdoD9j7FDeM2DBTO2h9Yw6-5flzp-NfhM_M1oPAUU,1216
|
|
67
67
|
soar_sdk/models/__init__.py,sha256=ql7RRFAxmSdzU-IsoU1OFQ53E6WxZJ7YQQAhHl4Ssbk,380
|
|
68
68
|
soar_sdk/models/artifact.py,sha256=OlYp150sf9sYvTz6tC7PaYV1qbBvQYrz1bXmC2xNj8Q,1086
|
|
@@ -100,8 +100,8 @@ soar_sdk/views/components/pie_chart.py,sha256=LVTeHVJN6nf2vjUs9y7PDBhS0U1fKW750l
|
|
|
100
100
|
soar_sdk/webhooks/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
101
101
|
soar_sdk/webhooks/models.py,sha256=PG9SDs5xXqtFndm5C8AsJOTYXU5v_UTY7SpYosWT_CA,4542
|
|
102
102
|
soar_sdk/webhooks/routing.py,sha256=MnzbnIDy2uG_5mJzsTeX-NsE6QYvzyqEGbHmEFj-DG8,6900
|
|
103
|
-
splunk_soar_sdk-3.2.
|
|
104
|
-
splunk_soar_sdk-3.2.
|
|
105
|
-
splunk_soar_sdk-3.2.
|
|
106
|
-
splunk_soar_sdk-3.2.
|
|
107
|
-
splunk_soar_sdk-3.2.
|
|
103
|
+
splunk_soar_sdk-3.2.1.dist-info/METADATA,sha256=u9g2bI4CP5vO9AKJkPD0GswmLc-V48SGesjL_e3kZsU,7334
|
|
104
|
+
splunk_soar_sdk-3.2.1.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
105
|
+
splunk_soar_sdk-3.2.1.dist-info/entry_points.txt,sha256=CgBjo2ZWpYNkt9TgvToL26h2Tg1yt8FbvYTb5NVgNuc,51
|
|
106
|
+
splunk_soar_sdk-3.2.1.dist-info/licenses/LICENSE,sha256=gNCGrGhrSQb1PUzBOByVUN1tvaliwLZfna-QU2r2hQ8,11345
|
|
107
|
+
splunk_soar_sdk-3.2.1.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|